AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1314520
Accepted
user227495
user227495
Asked: 2021-02-08 15:42:03 +0800 CST2021-02-08 15:42:03 +0800 CST 2021-02-08 15:42:03 +0800 CST

如何更改 20.04 默认微调器

  • 772

在此处输入图像描述

请注意文本“Thunderbird Mail”旁边的微调器。我替换了微调器图标

usr > share > icons > Yaru

scalable-max-32 > status

并且在

scalable > status

两个图标都有名字process-working-symbolic

即使在那之后,我到处都有这个旧的微调器。是否可以将其更改为我们选择的图标。? 谢谢。

20.04
  • 2 2 个回答
  • 566 Views

2 个回答

  • Voted
  1. Best Answer
    UnKNOWn
    2021-02-11T11:31:43+08:002021-02-11T11:31:43+08:00

    有问题的图像的路径被硬编码为'resource:///org/gnome/shell/theme/process-working.svg',这是来自.gresource正在使用的文件。

    对于登录屏幕和桌面会话,此资源文件可能不同。

    假设您使用的是默认 Ubuntu 20.04

    您需要process-working.svg从文件中编辑/替换.gresource文件。

    默认 Ubuntu 20.04/usr/share/gnome-shell/theme/Yaru/gnome-shell-theme.gresource文件是要编辑的文件。

    我已经完成了这个过程并process-working.svg用一些 .svg 替换了文件并陷入了登录循环。

    默认process-working.svg文件是这样的。

    在此处输入图像描述

    它的属性是这样的。

    在此处输入图像描述

    svg 图像似乎有一个技巧,它是具有不同微调器的单个 svg 图像。所以我用谷歌搜索并得到了一些具有类似 gnome-shell 主题的 512 x 32 像素,并且可以成功更改微调器。

    获取/创建 SVG 会花费很多时间。所以我使用了 vanilla gnome 的微调器和默认的 Yaru

    雅鲁的 在此处输入图像描述

    香草 GNOME 在此处输入图像描述

    编辑:

    已经使用这样的墨水空间编辑了原始process-working.svg文件,以保持原始大小为 512 x 32 px 的 svg 格式并对其进行测试。

    在此处输入图像描述

    在此处输入图像描述

    在此处输入图像描述

    出于自动化目的,可以使用以下脚本。

    要求

    1. 首先将您喜欢的 .svg 文件 (512px X 32px) 保存process-working.svg在/tmp目录中。
    2. libglib2.0-dev使用以下命令安装软件包

    sudo apt install libglib2.0-dev

    然后将以下脚本保存为纯文本文件pwsvg.sh(process-working.svg)

    #!/bin/bash
    
    source="/usr/share/gnome-shell/theme/Yaru/gnome-shell-theme.gresource"
    backup=$source.BAK
    
    pkg=$(dpkg -l | grep libglib2.0-dev >/dev/null && echo "yes" || echo "no")
    if [ "$pkg" == "no" ]
    then
    echo "
    -------------------------------------------------------------------------------------------------------------------------------------
    Sorry, the package 'libglib2.0-dev' is not installed. Install the package 'sudo apt install libglib2.0-dev' and then run this Script.
    For now, Exiting...
    -------------------------------------------------------------------------------------------------------------------------------------"
    exit 1
    fi
    
    cd /tmp
    
    if ! [ -f "process-working.svg" ]
    then
    echo "-----your preferred .svg file 'process-working.svg' not found in /tmp folder. put the process-working.svg file in /tmp directory first.-----"
    exit
    fi
    
    if [ "$UID" != "0" ]
    then
    echo "This Script must be run with sudo"
    exit 1
    fi
    
    # take backup of original resource file
    if ! [ -f $backup ]
    then
    cp $source $backup;
    fi
    
    for a in $(gresource list $backup); do
        b="${a/#\/org\/gnome\/shell\/}"
        mkdir -p $(dirname $b)
        gresource extract $backup $a > $b
    done
    
    mv -f process-working.svg ./theme/
    
    FILES=$(find "theme" -type f -printf "%P\n" | xargs -i echo "    <file>{}</file>")
    
    cat <<EOF >"theme/gnome-shell-theme.gresource.xml"
    <?xml version="1.0" encoding="UTF-8"?>
    <gresources>
      <gresource prefix="/org/gnome/shell/theme">
    $FILES
      </gresource>
    </gresources>
    EOF
    
    cd theme
    glib-compile-resources gnome-shell-theme.gresource.xml
    mv -f gnome-shell-theme.gresource $source
    echo " Reboot to see the changes "
    

    运行命令sudo bash pwsvg.sh并重新启动。

    万一出现任何问题,从任何 tty 将已编辑的 gresource 文件替换为备份文件/usr/share/gnome-shell/theme/Yaru/gnome-shell-theme.gresource.BAK

    sudo mv /usr/share/gnome-shell/theme/Yaru/gnome-shell-theme.gresource.BAK /usr/share/gnome-shell/theme/Yaru/gnome-shell-theme.gresource
    

    在 Ubuntu 20.04.2 中测试

    • 4
  2. user1091774
    2021-02-10T18:37:27+08:002021-02-10T18:37:27+08:00

    图标与它们的位置分开缓存,因此您对主题资产所做的任何更改都不会反映在该缓存更新之前......如果您从未将更新应用于系统,这有时可能需要数年时间。

    幸运的是,这是强制缓存重建的方法:

    1. 打开终端(如果尚未打开)
    2. 重建缓存:
      sudo update-icon-caches /usr/share/icons/*
      
    3. 没有第 2 步。

    如果这不起作用...

    1. 更新主题目录的时间戳:
      sudo touch /usr/share/icons/Yaru ~/.local/share/icons/Yaru
      
    2. 使用gtk-update-icon-cache命令:
      sudo gtk-update-icon-cache
      

    希望您会看到 Yaru 的process-working-symbolic图标已替换为您想看到的图标?

    • 2

相关问题

  • 如何在 18.04..20.04 上设置本地通配符 (127.0.0.1) 域解析?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve