Меню

Ярлыки для приложений linux

Desktop entries (Русский)

Спецификация freedesktop ярлык приложения предусматривает стандарт для приложений для интеграции в среду рабочего стола. Ярлыки приложений — это файлы конфигурации, описывающие, как запускается приложение, и какие данные оно может обрабатывать. Они также настраивают, как появляются приложения в меню со значком, на который распространяется соответствующий стандарт спецификации меню.

Наиболее распространенные ярлыки приложений представлены файлами .desktop и .directory . В этой статье кратко объясняется, как создавать полезные и соответствующие стандарту ярлыки приложений. Она в основном предназначена для разработчиков и сопровождающих пакетов(ы), но может также быть полезна разработчикам программного обеспечения и другим.

Существует примерно три типа ярлыков приложений:

Приложение ярлык приложения Ссылка ярлык на веб-ссылку Каталог контейнер метаданных в меню

В следующих разделах будет примерно показано, как они создаются и проверяются.

Связанное с этим материалом, а также определенные в файлах .desktop , являются ассоциациями типа MIME для файлов данных. Приложения по умолчанию описывают, как они настроены.

Contents

Ярлык приложения

Ярлыки для приложений или файлов .desktop , как правило, представляют собой комбинацию метаинформационных ресурсов и ярлыков приложений. Эти файлы обычно находятся в /usr/share/applications или /usr/local/share/applications для приложений, установленных в системе, или

/.local/share/applications для пользовательских приложений. Пользовательские ярлыки имеют приоритет над системными ярлыками.

Пример файла

Ниже приведен пример его структуры с дополнительными комментариями. Этот пример предназначен только для быстрого ознакомления и не показывает, как использовать все возможные ключи ввода. Полный список ключей можно найти в спецификация freedesktop.org.

Определение ключа

Все признанные Desktop ярлыки приложений можно найти на сайте freedesktop.org. Например, ключ Type определяет три типа ярлыков: Приложение (тип 1), Ссылка (тип 2) и Каталог (тип 3).

  • Ключ Version обозначает версию спецификации ярлыка приложения, которая соответствует этому файлу, но не как не версию приложения.
  • Name , GenericName и Comment часто содержат избыточные значения в виде комбинаций из них, например:

Этого следует избегать, поскольку это только будет запутывать пользователей. Ключ Name должен содержать только имя или хотя бы аббревиатуру/акроним, если они доступны.

  • GenericName должен указывать на категорию приложения, которая обозначает особый признак этого конкретного приложения (например Firefox является «веб-браузером»).
  • Comment должен содержать любую полезную дополнительную информацию.

Осуждение

Существует много ключей, которые стали устаревшими с течением времени по мере созревания стандарта. Лучший/самый простой способ — использовать инструмент desktop-file-validate , который является частью пакета desktop-file-utils . Чтобы проверить, выполните

Это даст вам очень подробные и полезные предупреждения и сообщения об ошибках.

Значки

Распространенные форматы изображений

Ниже приведен краткий обзор форматов изображений, обычно используемых для значков.

Поддержка форматов изображений для значков, указанных в стандарте freedesktop.org.

Расширение Полное имя и/или описание Тип графики Формат контейнера Поддерживаемый
.png Portable Network Graphics Raster Нет Да
.svg(z) Scalable Vector Graphics Vector Нет Да (опционально)
.xpm X PixMap Raster Нет Да (устаревший)
.gif Graphics Interchange Format Raster Нет Нет
.ico MS Windows Icon Format Raster Да Нет
.icns Apple Icon Image Raster Да Нет

Преобразование значков

Если вы наткнулись на значок, который находится в формате, который не поддерживается стандартом freedesktop.org (например, gif или ico ), вы можете использовать инструмент преобразования (который является частью пакета imagemagick ), чтобы преобразовать его в поддерживаемый/рекомендованный формат, например:

Читайте также:  Как перезапустить консоль линукс

Если вы преобразуете из формата контейнера, такого как ico , вы получите все изображения, которые были инкапсулированы в файл ico в форме — .png . Если вы хотите узнать размер изображения или количество изображений в файле контейнера, например ico , вы можете использовать инструмент идентификации (также часть пакета imagemagick ):

Как вы можете видеть, на примере файла ico, что по названию можно предположить одно изображение размером 48×48, но на самом деле оно содержит не менее 6 разных размеров, из которых один больше 48×48, а именно 128×128.

Кроме того, вы можете использовать icotool (из icoutils ) для извлечения png-изображений из контейнера ico:

Для извлечения изображений из контейнера .icns вы можете использовать icns2png (предоставленный libicns ):

Получение значков

Хотя пакеты, которые уже поставляются с файлом .desktop, наверняка содержат значок или набор значков, иногда бывает, что разработчик не создал файл .desktop, но тем не менее может отправить значки. Поэтому неплохо начать поиск значков в исходном пакете. Вы можете, например, сначала фильтровать расширение с помощью find, а затем использовать grep для дальнейшей фильтрации по определенным ключевым словам, таких как имя пакета, «значок», «логотип» и т.д., если изображений достаточно много в исходном пакете.

Если разработчики приложения не включают значки в свои исходные пакеты, тогда следующим шагом будет поиск значков на их сайте. В некоторых проектах, например, tvbrowser, есть страница с изображением/логотипом, где могут быть найдены дополнительные значки. Если проект мультиплатформенный, может случиться так, что в пакете linux/unix отсутствует значок, тогда пакет Windows может предоставить его. Если в проекте используется система управления версиями, например CVS/SVN и т.д., и у вас есть некоторый опыт работы с ней, вы также можете рассмотреть возможность просмотра ее для значков. Если все не удастся, проект может просто не иметь значка/логотипа еще.

Инструменты

gendesk

gendesk стартовал как инструмент, специально предназначенный для Arch Linux для генерации файлов .desktop, путем сбора необходимой информации непосредственно из файлов PKGBUILD. Теперь это общий инструмент, который принимает аргументы командной строки.

Значки могут быть автоматически загружены из openiconlibrary, если они доступны. (Источник значков можно легко изменить в будущем).

Как использовать

  • Добавьте gendesk в makedepends
  • Запустите функцию prepare() с:
  • Альтернативно, если значок уже предоставлен (например, $pkgname.png). Флаг -n предназначен для не загрузки значка или использования значка по умолчанию. Пример:
  • $srcdir/$pkgname.desktop будет создан и может быть установлен в функции package() с:
  • Значок можно установить с помощью:
  • Используйте —name=’Program Name’ для выбора имени для входа в меню..
  • Для установки поля exec используйте —exec=’/opt/some_app/elf —with-ponies’ .
  • Смотрите проект gendesk для получения дополнительной информации.

Список или поиск в файлах .desktop

lsdesktopf AUR может отображать доступные файлы .desktop или искать их содержимое.

Он также может выполнять поиск по типу MIME. Смотрите приложения по умолчанию#lsdesktopf.

fbrokendesktop

Скрипт fbrokendesktop AUR с использованием команды which для обнаружения сломанного Exec , который указывает на не существующий путь. Без каких-либо параметров он использует предварительно установленные каталоги в массиве DskPath . Он показывает только сломанный .desktop с полным отсутствием пути и имени файла.

Советы и хитрости

Скрытие ярлыков приложений

Во-первых, скопируйте ярлык приложения в

/.local/share/applications , чтобы ваши изменения не были перезаписаны.

Затем, чтобы скрыть ярлык приложения во всех средах, откройте его в текстовом редакторе и добавьте следующую строку: NoDisplay=true .

Читайте также:  Mac os x yosemite amd vmware image

Чтобы скрыть ярлык приложения на конкретной среде рабочего стола добавьте следующую строку в него: NotShowIn=desktop-name

где desktop-name может быть таким, как GNOME, Xfce, KDE и т.д. Ярлык приложения может быть скрытым более, чем в одной среде рабочего стола сразу — просто разделяйте имена сред рабочего стола точкой с запятой.

Автозапуск

Если вы используете среду рабочего стола, совместимую с XDG, например GNOME или KDE, то она автоматически запускает файлы *.desktop, найденные в следующих каталогах:

  • Общесистемный: $XDG_CONFIG_DIRS/autostart/ ( /etc/xdg/autostart/ по умолчанию)
  • GNOME также запускает файлы, найденные в /usr/share/gnome/autostart/
  • Пользовательский: $XDG_CONFIG_HOME/autostart/ (

    /.config/autostart/ по умолчанию)

Пользователи могут переопределять общесистемные файлы *.desktop скопировав их в пользовательский каталог

Для более конкретного описания используемых каталогов смотрите спецификацию автозапуска ярлыков приложений.

Изменение переменных среды

Отредактируйте команду Exec , добавив env, чтобы задать переменные окружения. Например:

/.local/share/applications/ вместо изменения его в /usr/share/applications/ .

Источник

Как сделать ярлыки на рабочем столе в Ubuntu 20.04?

Давайте добавим свежие знания на форум, теперь Ubuntu 20.04 отсутствует =). Мой вопрос сегодня прост; каков самый элегантный способ создания ярлыков на рабочем столе (например, для папок, приложений или документов) в Ubuntu 20.04?

9 ответов

Вы можете скопировать файл из /usr/share/applications в папку на рабочем столе (

/Desktop ) используя cp команда. Затем щелкните правой кнопкой мыши .desktop файл и выберите «разрешить запуск«.

Примером может быть

Обязательно укажите окончание.desktop.

Возможно, вам также придется разрешить запуск существующего .desktop после обновления до Ubuntu 20.04.

Для ярлыков приложений:

Я думаю, что ответ TheBuntuNewb довольно хорош. Сделайте это с помощью файлового менеджера:

  1. открыто /usr/share/applications
  2. Скопируйте ярлык приложения на рабочий стол
  3. Щелкните правой кнопкой мыши ярлык на рабочем столе и выберите Разрешить запуск.

Для ярлыков папок / файлов:

Либо напрямую используйте терминал для создания символической ссылки

Откройте папку в файловом менеджере (nautilus), перейдите в каталог, для которого вы хотите создать ярлык.

Щелкните правой кнопкой мыши и выберите » Открыть в терминале».

Для ярлыка текущего каталога введите и выполните

Для ярлыка файла / папки внутри текущего каталога введите и выполните

По умолчанию символическая ссылка DE (Gnome 3) не работает, но .desktop копирование файлов работает, как сказал TheBuntuNewb:

Для рабочего стола Lubuntu 20.04 работает следующее:

Отображение элементов на рабочем столе может быть выполнено с помощью .desktop копирование файлов, .desktop ссылка на файл или папку или .desktop создание файла.

    anydesk.desktop копируется файл: `cp /usr/share/applications/anydesk.desktop

/Desktop/

  • google-chrome.desktop является символической ссылкой с использованием ln -s /usr/share/applications/google-chrome.desktop /home/user/Desktop/
  • Documents ссылка создана: ln -st /home/user/Desktop /home/user/Documents

    Downloads.desktop файл, который открывает директорию Downloads с помощью nautilus, создается следующим образом:

    В моем случае изменение свойств файла не требуется для .desktop file — все равно просит его выполнить:

    Простой графический способ:

    1. показать рабочий стол в домашнем каталоге

    1.1. включить символические ссылки в наутилусе: Настройки → Поведение → [x] Показать действие для создания символических ссылок

    откройте два окна наутилуса. один для рабочего стола, второй для ярлыка, который вы хотите создать.

    щелкните элемент, для которого должен быть создан ярлык, левой кнопкой мыши и перетащите его в папку рабочего стола в вашем домашнем каталоге, удерживая нажатой клавишу ALT.

    когда вы оставляете элемент в папке на рабочем столе, появляется контекстное меню, предлагающее три варианта. Один из них — «создать символическую ссылку» или около того.

    Тогда все готово.

    Ужасно, что эту простую функцию приходится выполнять сложным образом.

    Очень простой и элегантный способ создать ярлык для файла или папки — создать символическую ссылку на рабочий стол. Я тестировал это на Lubuntu 20.04 LTS

    Для этого сделайте следующее:

    Перетащите файл или папку из pcmanfm на рабочий стол

    Тогда выбирай create symlink here

  • Наконец-то должен был быть создан ярлык!
  • Как я уже сказал, это, вероятно, будет работать только на Lubuntu 20.04 (с рабочим столом LXQt).

    Для ярлыка папки сначала необходимо включить создание симлинка в разделе » Файлы» -> «Настройки» на вкладке » Поведение » («Показать действие для создания символических ссылок»), чтобы при щелчке правой кнопкой мыши по папке могло появиться меню «Создать ссылку». Вы можете сделать то же самое с SHIFT+CTRL+M, но эта комбинация клавиш работает, только если создание simlink включено, как описано выше (в противном случае бесполезно), и вам также нужно будет включить Capslock, прежде чем использовать клавиши для запуска заглавной буквы M.

    Для обычного пользователя настольного компьютера это неприятно, и все это можно включить по умолчанию.

    Я новичок в Linux, но вы все сделали это слишком сложным для 20.04. Вы были близки к тому, чтобы сделать это простым. Простое решение!

    Нажмите «Файлы» или «Показать приложения», введите «Файлы» и откройте «Файлы». Теперь в правом верхнем углу у вас есть трехстрочное гамбургер-меню. Нажмите на нее и нажмите «Настройки», затем нажмите «Поведение», затем «Показать действие для создания символьных ссылок».

    Теперь каждый раз, когда вы щелкаете правой кнопкой мыши по файлу или папке, вы можете перетащить этот файл или папку с помощью «Файлы» на «Рабочий стол» в левом столбце. После перемещения символической ссылки или ярлыка вы можете переименовать их, чтобы они выглядели как исходный исходный файл или имя папки.

    Почему бы просто не использовать gnome-extensions ?

    Установка:

    Применение:

    Чтобы продолжить работу с графическим интерфейсом, необходимо включить создание символических ссылок в Nautilus, посетив его настройки: Настройки → Поведение → [x] Показать действие для создания символических ссылок, после чего пользователь сможет создавать символические ссылки для исполняемых файлов, папок и файлов на

    Но самый элегантный способ для среднего нетехнического пользователя, которого пугает терминал, — это не использовать GNOME Shell и вместо этого установить Unity или MATE DE с одним из двух решений ниже:

    sudo apt-get install ubuntu-unity-desktop

    sudo apt-get install ubuntu-mate-desktop^

    затем выберите один из этих сеансов на экране входа в систему и в результате вы забудете этот новый кошмар оболочки GNOME (Рабочий стол без DESKTOP — это боль, но не настоящий рабочий стол).

    Более технические пользователи, которые предпочитают традиционный рабочий стол с традиционными привычками, должны полностью удалить GNOME Shell и установить другие DE по своему усмотрению. У меня есть решение для такого метода, которое было протестировано на недавно установленной виртуальной машине Ubuntu 20.04 LTS.

    Источник

    Adblock
    detector