У меня скрыта панель запуска Unity, так как я предпочитаю использовать док в Каире.
Вот почему я пытаюсь найти способ установить вещи из Ubuntu Software Center для автоматической установки ярлыка на моем рабочем столе.
У меня скрыта панель запуска Unity, так как я предпочитаю использовать док в Каире.
Вот почему я пытаюсь найти способ установить вещи из Ubuntu Software Center для автоматической установки ярлыка на моем рабочем столе.
Ответы:
Запустите приведенный ниже сценарий в фоновом режиме, и он автоматически создаст стартовый файл на вашем рабочем столе только для недавно установленного программного обеспечения.
Это также:
NoDisplay=true
)gedit
), сохраните его где-нибудь как make_starter.py
.Если вы сначала хотите проверить это: запустите его из окна терминала командой:
python3 /path/to/make_starter.py
Установите приложение, как вы привыкли. Значок должен появиться на вашем рабочем столе после завершения установки
Если все работает нормально, добавьте его в свои запускаемые приложения: Dash> Startup Applications> Add. Добавьте команду:
python3 /path/to/make_starter.py
Запись
Локализованные версии Ubuntu могут иметь другое имя для «Desktop» («Bureaublad» на голландском языке). Если это так, замените в строке:
desktopname = "Desktop"
«Рабочий стол» по локализованному имени.
#!/usr/bin/env python3
import subprocess
import os
import time
import shutil
desktopname = "Desktop"
dr = "/usr/share/applications"
while True:
current = os.listdir(dr)
time.sleep(10)
last = os.listdir(dr)
for item in last:
if not item in current and item.endswith(".desktop"):
file = dr+"/"+item
with open(file) as src:
text = src.read()
if not "NoDisplay=true" in text:
target = os.environ["HOME"]+"/"+desktopname+"/"+item
shutil.copyfile(file, target)
command = "chmod +x "+target
subprocess.Popen(["/bin/bash", "-c", command])
Perl
случайно напишет сценарий :)
Это будет невероятно грязно, так как может быть более сотни значков приложений. Значки (на самом деле, файлы запуска рабочего стола ) обычно находятся в /usr/share/applications
. Таким образом, вы можете запустить следующую команду в терминале:
find /usr/share/applications -type f -name '*.desktop' -exec cp --target-directory ~/Desktop/ {} +
но это создаст копию каждого отдельного модуля запуска на вашем рабочем столе. ( возможно несколько сотен, в зависимости от вашей среды )
Вы можете просмотреть /usr/share/applications
в файловом менеджере и вручную скопировать их для соответствующих приложений на рабочий стол. Насколько я могу судить, нет никакого автоматического способа заставить Центр программного обеспечения делать это.
dpkg
и diff
новый список выбора, и предыдущий список выбора после каждой установки. Затем можно создать ярлыки с помощью сценария, который копирует соответствующие .desktop
файлы на рабочий стол.
ls /usr/share/applications/*.desktop | wc
дает:168 168 7851