libgnome-shell.so 提取、更改某些文件的内容并重新编译..可以吗?

libgnome-shell.so 提取、更改某些文件的内容并重新编译..可以吗?

是否可以提取文件libgnome-shell.so,然后更改某些文件的内容并重新编译?

我正在使用 Ubuntu 18.04

我正在尝试通过编辑文件.js中的文件对 gnome-shell 进行一些调整libgnome-shell.so

答案1

使用gresource命令列出并提取 ELF 文件或 .gresource 包中的资源:

gresource extract libgnome-shell.so /org/gnome/shell/ui/main.js > ~/GNOME_Shell/ui/main.js

编译器glib-compile-resources需要编译资源的 XML 格式列表,并且其输出不能轻易地重新附加到现有的 .so ELF 文件。

一种更简单的方法是通过设置此环境变量(来自 ~/.xprofile 或 ~/.pam_environment)使用“覆盖”重新映射一些要从文件系统加载的资源:

G_RESOURCE_OVERLAYS="/org/gnome/shell=$HOME/GNOME_Shell"

/org/gnome/shell/ui/main.js现在, GNOME Shell 将自动使用~/GNOME_Shell/ui/main.js包含您所编辑的文件,而不是来自 libgnome-shell.so 的资源。

相关内容