Як я можу додати програму до менеджера вікон GNOME?


50

Документація на борт GNOME охоплює лише те, про що можна легко здогадатися. У мене є додаток для цього, я можу почати лише з командного рядка. Не те, що я проти використання терміналу, але ...

У будь-якому випадку, як я можу додати команду (а краще приємний логотип) до GNOME WM?


Якщо ви клацніть правою кнопкою миші, чи отримуєте ви пункт "Меню редагування"?
slm

ні, меню правого клацання взагалі немає.
март

Відповіді:


88

У GNOME та інших робочих середовищах, сумісних з підтримкою freedesktop.org , таких як KDE та Unity , додатки додаються до меню робочого столу чи оболонки робочого столу за допомогою записів на робочому столі , визначених у текстових файлах із .desktopрозширенням (звані файлами на робочому столі ). Настільні середовища створюють для користувача меню з комбінованої інформації, отриманої з доступних записів на робочому столі.

Файли на робочому столі можуть бути створені в будь-якому з двох місць:

  • /usr/share/applications/ для записів на робочому столі, доступних кожному користувачеві в системі
  • ~/.local/share/applications/ для записів на робочому столі, доступних одному користувачеві

Можливо, вам доведеться перезапустити GNOME для роботи нових доданих програм.

Згідно з умовами, файли настільних комп’ютерів у своєму імені не повинні містити пробілів або міжнародних символів.

Кожен файл робочого столу розділений на групи , кожен починається із заголовка групи у квадратних дужках ( []). Кожен розділ містить ряд ключів , пар значень , розділених знаком рівності ( =).

Нижче наведено зразок файлу на робочому столі:

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Application Name
Comment=Application description
Icon=/path/to/icon.xpm
Exec=/path/to/application/executable
Terminal=false
Categories=Tags;Describing;Application

Пояснення

  • [Desktop Entry]Desktop Entryзаголовок групи ідентифікує файл як запис робочого столу
  • Type тип запису, допустимі значення Application, LinkіDirectory
  • Encodingкодування файлу робочого столу
  • Name назва програми, видиме в меню або пускових установках
  • Comment опис програми, що використовується в підказках
  • Icon значок, показаний для програми в меню або пускових установках
  • Exec команда, яка використовується для запуску програми з оболонки.
  • Terminal чи слід запускати програму в терміналі, допустимі значення є trueабоfalse
  • Categories напівкрапкою ( ;) розділений список категорій меню, в яких має бути показаний запис

Аргументи командного рядка в Execключі можуть бути позначені такими змінними:

  • %f одне ім’я файлу.
  • %F кілька імен файлів.
  • %u одна URL-адреса.
  • %U кілька URL-адрес.
  • %d єдиний каталог. Використовується спільно з %fдля пошуку файлу.
  • %D декілька каталогів. Використовується спільно з %Fдля пошуку файлів.
  • %n одне ім’я файлу без шляху.
  • %N кілька імен файлів без шляхів.
  • %k URI або локальне ім'я розташування файлу робочого столу.
  • %v назва записи пристрою.

Зауважте, що ~такі змінні середовища, як $HOME, наприклад , не розширюються в файлах настільних ПК, тому будь-які виконувані файли файлів повинні бути $PATHабо в посиланні, або посилання через їх абсолютний шлях.

Повна специфікація входу на робочий стіл доступна в Центрі розробників GNOME .

Запуск сценаріїв

Якщо програма, яку потрібно запустити, вимагає виконати певні кроки до виклику, ви можете створити скрипт оболонки, який запустить програму, і вкажіть запис на робочому столі на сценарій оболонки. Припустимо, що програму потрібно запустити з певного поточного робочого каталогу. Створіть сценарій запуску у відповідному місці ( ~/bin/наприклад). Сценарій може виглядати приблизно так:

#!/bin/bash
pushd "/path/to/application/directory"
./application "$@"
popd

Встановіть виконуваний біт для сценарію:

$ chmod +x ~/bin/launch-application

Потім вкажіть Execключ у записі робочого столу на сценарій запуску:

Exec=/home/user/bin/launch-application

Я це зробив, я бачу піктограму під додатками, але коли я натискаю програму не запускається, курсор змінюється лише на символ завантаження протягом декількох секунд. Немає повідомлення про помилку
март

@mart Чи можете ви сказати нам, до якої програми ви намагаєтеся додати пускову установку?
Томас Найман

1
FTL - інді-гра, яку я придбав десь в Інтернеті. Починаючи з консольних робіт.
март

1
@mart вказував <path>/.FTLби на прихований файл .FTL, який називається , який не є тим самим ./FTL, який вказує на файл, який називається FTLу поточному каталозі. Ви можете спробувати запустити FTLчерез /full/path/path/to/FTLтермінал, щоб побачити, чи отримуєте ви якісь значущі помилки. Наприклад, якщо виконуваний файл шукає бібліотеки в поточному робочому каталозі, вам, можливо, доведеться зробити скрипт запуску, який робить щось по рядках pushd <path>; ./FTL; popdта Execзамість цього вказати специфікатор файлу робочого столу на скрипт запуску.
Thomas Nyman

1
Корекція: вона працює всередині каталогу
вітрина

12

Дуже хороша відповідь від Томаса Німана.

Gnome постачається з інструментом gui, який gnome-desktop-item-editдопомагає створювати * .desktop файли. Нам потрібно використовувати його з командного рядка або створити для нього файл на робочому столі.

Інструкції з виготовлення програми Gnome gnome-desktop-item-edit

  1. Відкрийте вікна терміналу та введіть таку команду:

    gnome-desktop-item-edit - створити нове / домашнє / [ваше ім’я користувача] /. local / share / applications

  2. У відкритому вікні заповніть: введіть тут опис зображення

    Name: Gnome Applicaiton

    Command: gnome-desktop-item-edit --create-new /home/[your user name]/.local/share/applications

    Клацніть по значку, щоб вибрати інший значок.

  3. Клацніть OK, щоб закрити вікна

  4. Закрийте вікно терміналу

Тестування новостворених Gnome Application

  1. Відкрити тире
  2. Введіть додаток
  3. Ви повинні побачити Gnome Applicationвведене раніше
  4. Виберіть його
  5. Створіть іншу програму

Це працює дуже добре, дякую. Чи можна змінити, у якому меню з’явиться нова програма? Шахта з’явилась у програмах Applications-> Other
SteveP

-1

Попередні відповіді від Томаса Німана та Дуді Боя дуже хороші та детальні. Я публікую це, оскільки не знайшов відповіді на свої сумніви в жодних інших публікаціях, і мені довелося шукати проблеми з git.

Після того, як я дотримувався кроків, як Томас Німан запропонував мені, я зміг зробити значок, щоб моя програма відображалася в меню додатків. Проблема тут полягає в тому, що я використовую Dash to Dock як бічну панель, і я не зміг закріпити піктограму як улюблену, як інші іконки. Після пошуку я виявив, що потрібно додати рядок StartupWMClass=ApplicationNameу .desktopфайл. Після цього опція додавання у вибране з’явиться клацанням правою кнопкою миші на піктограмі в тире Док.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.