Я настраиваю Ubuntu 14.04 Live CD с помощью UCK (Ubuntu Customization Kit). Программа предоставляет вам среду chroot в терминале для внесения изменений.
Я хочу добавить и удалить, какие программы появляются на док-станции.
Я не уверен, что это можно сделать, изменив файл .desktop
?
Как это можно сделать с помощью терминала?
Сценарий ниже может использоваться, чтобы или добавить или удалить объекты к средству запуска, в зависимости от аргумента (аргументов):
#!/usr/bin/env python3
import subprocess
import sys
desktopfile = sys.argv[1]
def current_launcher():
get_current = subprocess.check_output(["gsettings", "get", "com.canonical.Unity.Launcher", "favorites"]).decode("utf-8")
return eval(get_current)
def set_launcher(desktopfile):
curr_launcher = current_launcher()
last = [i for i, x in enumerate(curr_launcher) if x.startswith("application://")][-1]
new_icon = "application://"+desktopfile
if sys.argv[2] == "a":
if not new_icon in curr_launcher:
curr_launcher.insert(last, new_icon)
subprocess.Popen(["gsettings", "set", "com.canonical.Unity.Launcher","favorites",str(curr_launcher)])
elif sys.argv[2] == "r":
curr_launcher.remove(new_icon)
subprocess.Popen(["gsettings", "set", "com.canonical.Unity.Launcher","favorites",str(curr_launcher)])
set_launcher(desktopfile)
set_launcher.py
Выполните его командой:
python3 /path/to/set_launcher.py <name_of_.desktop_file> a
добавить значок, или:
python3 /path/to/set_launcher.py <name_of_.desktop_file> r
удалить значок
Пример:
python3 /path/to/set_launcher.py gedit.desktop a
добавить gedit
к средству запуска, или
python3 /path/to/set_launcher.py gedit.desktop r
удалить gedit
от средства запуска
Список значков средства запуска определяется в ключе:
com.canonical.Unity.Launcher favorites
и может быть выбран командой:
gsettings get com.canonical.Unity.Launcher favorites
для установки альтернативного списка (учитывая факт Вы используете правильный формат):
gsettings set com.canonical.Unity.Launcher favorites "[item1, item2, etc]"
.desktop
файл?Нет, это не имеет никакого отношения к самому файлу. То, что имеет значение, - то, что файл или находится в списке фаворитов средства запуска или нет.
Редактирование этого списка из командной строки точно, что делает сценарий.