将 GTK Murrine 安装到主目录?

将 GTK Murrine 安装到主目录?

讽刺的是,我不是这台机器的超级用户,但我们的开发服务器是安装了 X11 和 GTK 2 的 FreeBSD。我发现我可以通过将它们放入~/.themes然后include "/home/my-user-name/.themes/path/to/theme/gtk-2.0/gtkrc"在第一行中放入来在服务器上使用我自己的主题~/.gtkrc-2.0

但是,我使用的一些主题需要安装 murrine。是否可以在没有任何超级用户(susudo)访问权限的情况下编译和包含引擎?

答案1

根据grawity的回答,该目录~/.gtk-2.0位于gtk的引擎中$PATH。如果是这样,你应该能够从下载murrine的源代码这里然后运行:

tar xvzf murrine-0.90.3.tar.gz
cd murrine-0.90.3/
./configure ---prefix=~/.gtk-2.0 --libdir=~/.gtk-2.0
make
make install

~/.gtk-2.0这样就可以安装不需要 root 访问权限的引擎。

答案2

您可以在中安装主题引擎~/.gtk-2.0。上次我检查时,搜索路径是:

~/.gtk-2.0/{abi 版本}/{machtype}/engines/lib{引擎}.dll
~/.gtk-2.0/{abi 版本}/{machtype}/engines/lib{引擎}.la
~/.gtk-2.0/{abi 版本}/engines/lib{引擎}.dll
~/.gtk-2.0/{abi 版本}/engines/lib{引擎}.la
~/.gtk-2.0/{machtype}/engines/lib{引擎}.dll
~/.gtk-2.0/{machtype}/engines/lib{引擎}.la
~/.gtk-2.0/engines/lib{引擎}.dll
~/.gtk-2.0/engines/lib{引擎}.la
{前缀} /lib/gtk-2.0/{abi 版本} /{machtype} /engines/lib{引擎}.dll
{前缀} /lib/gtk-2.0/{abi-version} /{machtype} /engines/lib{engine}.la
{前缀} /lib/gtk-2.0/{abi-version} /engines/lib{引擎}.dll
{前缀} /lib/gtk-2.0/{abi-version} /engines/lib{引擎}.la
{前缀} /lib/gtk-2.0/{machtype} /engines/lib{引擎}.dll
{前缀} /lib/gtk-2.0/{machtype} /engines/lib{引擎}.la
{前缀} /lib/gtk-2.0/engines/lib{引擎}.dll
{前缀} /lib/gtk-2.0/engines/lib{引擎}.la

其中{abi-version}似乎是2.10.0{machtype}是 GNU 样式的机器类型($MACHTYPE在 Bash 中),{engine}是引擎名称(例如murrine)。{prefix}通常在 Linux 上是,在 Windows 上是/usr程序的安装目录(例如)。C:\Program Files\Pidgin

答案3

我想编译和调整 redmond 主题。我遵循了 @grawity 使用 strace 的想法,但我将符号链接放在已编译的 .so 文件中,这样我就不需要在重新编译时总是复制它。

我将符号链接放在/home/sashoalm/.gtk-2.0/engines,并使其指向我的构建目录,其中/home/sashoalm/Workspace/redmond/gtk2-engines-2.20.2/engines/redmond/.libslibredmond95.so由编译器创建,并且它可以工作!

相关内容