使得ubuntu18在桌面上打开终端时打开Desktop而不是home以及从源码修改ubuntu软件包的方法 | 您所在的位置:网站首页 › 桌面右键在终端中打开文件夹是什么 › 使得ubuntu18在桌面上打开终端时打开Desktop而不是home以及从源码修改ubuntu软件包的方法 |
方法一
这样也会产生一些新的问题,比如在home目录下打开终端会跳转到Desktop,但假如你的个人喜好和我一样是在桌面上操作的话,这个就问题不大。 方法二方法二需要我们下载源码,首先进入官方源码发布页 我们可以看到三个文件。 往下翻,可以看到里面有三个源码文件,第一个是源码文件的密钥文件,我们暂时不需要,第二个文件是源码文件的gnome-terminal原始源码,第三个是针对ubuntu系统的补丁,在gnome-terminal官方源码的基础上应用这个补丁,就能在ubuntu上面运行,不然会出bug。因此我们需要下载的是第二、第三个文件。 使用以下命令应用补丁: git apply patches/*.patch 修改源码在src目录中,我们可以找到以下代码片段 case FILE_INFO_DESKTOP://这个说明是在桌面上打开 if (desktop_is_home_dir (nautilus) || desktop_opens_home_dir (nautilus)) { //这个if判断条件很重要 path = g_strdup (g_get_home_dir ()); } else { path = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP)); } break;这个就是关键代码,其中if判断条件判断desktop_is_home_dir (nautilus)和desktop_opens_home_dir (nautilus)这两个函数是否成立,只要有其中一个成立,我们就打开home目录,不然我们就打开桌面,之后,我们继续搜索desktop_is_home_dir (nautilus)和desktop_opens_home_dir (nautilus)这两个函数, 首先找到desktop_is_home_dir (nautilus)这个函数, static inline gboolean desktop_is_home_dir (TerminalNautilus *nautilus) { return FALSE; }由于ubuntu默认桌面不是home目录,所以这个函数返回FALSE。 之后我们继续寻找desktop_opens_home_dir (nautilus)这个函数 static inline gboolean desktop_opens_home_dir (TerminalNautilus *nautilus) { #if 0 return _client_get_bool (gconf_client, "/apps/nautilus-open-terminal/desktop_opens_home_dir", NULL); #endif return TRUE;//这里要改为FALSE }注意这里返回了TRUE说明在desktop上面打开终端后进入的是home目录,我们需要改为FALSE,这样才能进入Desktop目录。 修改后我们得到以下代码: static inline gboolean desktop_opens_home_dir (TerminalNautilus *nautilus) { #if 0 return _client_get_bool (gconf_client, "/apps/nautilus-open-terminal/desktop_opens_home_dir", NULL); #endif return FALSE; }这样代码就修改完了,顺便我们还可以看看代码别的部分,如下两段代码分别设置了桌面上右键和普通文件夹里面右键显示的不同,其中桌面上是Open Terminal而普通文件夹里面是Open in Terminal,只相差了一个in。 我们按照autoreconf->autoconf->configure->make->make install的步骤进行 autoreconf --install autoconf ./configure --prefix='/usr' make sudo make install编译好之后我们重启,之后在桌面上打开终端,看看是否生效。很遗憾我的没生效,经过仔细检查,发现原因是make install 把libterminal-nautilus.so安装到了/usr/lib/nautilus/extensions-3.0/目录下,而我们需要安装到\usr\lib\x86_64-linux-gnu\nautilus\extensions-3.0\目录下,因此需要以下命令来复制这个库文件。 cp /usr/lib/nautilus/extensions-3.0/libterminal-nautilus.so \usr\lib\x86_64-linux-gnu\nautilus\extensions-3.0\复制之后,桌面上右键菜单会暂时不可用,但重启之后就会恢复正常了。 现在我们在桌面上打开终端,默认进入的就是desktop目录: |
CopyRight 2018-2019 实验室设备网 版权所有 |