kar*_*k87 11 wallpaper administration scripts
我想限制用户更改壁纸和主题。那么谁能告诉我如何从右键单击中删除 更改桌面背景选项?
笔记:
我只是完全想从右键单击中删除该选项。
jnv*_*jnv 20
如果您可以在桌面上没有图标的情况下生活,您可以通过 Nautilus 的 show_desktop 选项完全禁用右键单击菜单,如下所示:
gconftool-2 -t bool -s /apps/nautilus/preferences/show_desktop false
Run Code Online (Sandbox Code Playgroud)
编辑:仅删除该菜单项需要修补 Nautilus 源。菜单定义在src/file-manager/fm-desktop-icon-view.c里面desktop_view_entries[](或者只是搜索Change Desktop _Background)。编辑 2:有关 HowTo,请参见下文。
其他选项是使用不同的文件管理器来绘制桌面图标。也许 PCMan 文件管理器在右键菜单中没有这个条目?
正如我之前所指出的,菜单条目是硬编码到 Nautilus 的,据我所知,删除它并保留所有其他功能的唯一方法是编辑 Nautilus 的源代码并重新编译它。请注意,这将需要一些时间,并且您需要一些空间用于所有开发包和编译本身。
该过程使用 Nautilus Elementary 2.32.2.2 进行了测试,但是库存 Nautilus 2.32 应该没有任何差异。
sudo apt-get install build-essential fakeroot dpkg-dev devscripts
sudo apt-get build-dep 鹦鹉螺
mkdir 鹦鹉螺 光碟鹦鹉螺 apt-get 源鹦鹉螺
nautilus-VERSION*文件夹(版本是,当然是一些版本号,最有可能是 2.32.something)。进入那个文件夹。src/file-manager/fm-desktop-icon-view.c搜索GtkActionEntry desktop_view_entries[]- 在我的情况下,它在第 721 行,但它可能因您的版本而异。它应该是这样的:
static const GtkActionEntry desktop_view_entries[] = {
/* name, stock id */
{ "New Launcher Desktop", NULL,
/* label, accelerator */
N_("Create L_auncher..."), NULL,
/* tooltip */
N_("Create a new launcher"),
G_CALLBACK (action_new_launcher_callback) },
/* name, stock id */
{ "Change Background", NULL,
/* label, accelerator */
N_("Change Desktop _Background"), NULL,
/* tooltip */
N_("Show a window that lets you set your desktop background's pattern or color"),
G_CALLBACK (action_change_background_callback) },
/* name, stock id */
{ "Empty Trash Conditional", NULL,
/* label, accelerator */
N_("Empty Trash"), NULL,
/* tooltip */
N_("Delete all items in the Trash"),
G_CALLBACK (action_empty_trash_conditional_callback) },
};
Run Code Online (Sandbox Code Playgroud)
请注意,第二个数组包含Change Background- 删除它,所以你会得到类似的东西:
static const GtkActionEntry desktop_view_entries[] = {
/* name, stock id */
{ "New Launcher Desktop", NULL,
/* label, accelerator */
N_("Create L_auncher..."), NULL,
/* tooltip */
N_("Create a new launcher"),
G_CALLBACK (action_new_launcher_callback) },
/* Change Background was here */
/* name, stock id */
{ "Empty Trash Conditional", NULL,
/* label, accelerator */
N_("Empty Trash"), NULL,
/* tooltip */
N_("Delete all items in the Trash"),
G_CALLBACK (action_empty_trash_conditional_callback) },
};
Run Code Online (Sandbox Code Playgroud)
保存文件。
cd 鹦鹉螺-*并运行
dch -l 本地这将
$EDITOR使用准备好输入更改的更改日志文件执行默认值(可能是 Nano)。在 之后写一些描述性的东西*,保持其他一切完好无损。请注意,该-l local选项是记录本地构建,您可以使用其他任何东西代替local,但是将条目添加到更改日志很重要,否则您的本地构建将被存储库版本覆盖。解构 -i -us -uc -b有关开关的说明,请参阅debuild 手册页示例部分
光盘.. 须藤 dpkg -i *.deb
鹦鹉螺 -q
看,没有“更改背景”!

为了 100% 确定,在 Synaptic 中锁定nautilus包可能是个好主意。
编辑:一旦你确认一切正常,你可以使用这个漂亮的命令摆脱 build-dep 包。你只需要安装aptitude...
我不知道该怎么做,但我认为桌面背景是通过 GConf 键设置的。如果是这样,您可以以 root 身份运行 gconf-editor,找到相关的密钥,并将其设置为必需的。然后,将不允许用户更改其值。
| 归档时间: |
|
| 查看次数: |
8552 次 |
| 最近记录: |