Змініть піктограму додатка для вина в Unity Launcher


21

Я часто запускаю програму Windows з вином. Коли я відкриваю цю програму, вона відображається в пусковій установці єдності як вино замість фактично відкритої програми.

Я зробив настільний пусковий пристрій з потрібним значком, але перетягуючи його на панель єдності, повертає піктограму назад до піктограми келиха. При запуску програми він позначається як Wine Windows Loader Program замість його фактичної назви.

Знімок екрана:

введіть тут опис зображення

Відповіді:


26

Обхід на Ubuntu 12.04 LTS і вище


Примітка

Цей спосіб вирішення потребує робочого запуску для вашої програми Wine. Ось підручник про те, як створити його . Вирішення проблеми також стосується програм, встановлених із сценаріями PlayOnLinux. Більш новітні версії PlayOnLinux автоматично додають StartupWMClassрядок до їх запуску.

Інструкції

Відкрийте .desktopпанель запуску в улюбленому текстовому редакторі та додайте цей рядок до файлу:

StartupWMClass=application.exe

де application.exeосновне ім’я виконуваного файлу, який ви хочете запустити у Wine.

Не використовуйте повний шлях, а лише базову назву. І переконайтеся, що це без котирування (загальне правило, якого слід дотримуватися у файлах настільних ПК).

Результат

Піктограми та описи програм тепер мають бути добре відтворені:

введіть тут опис зображення


Джерело: https://bugs.launchpad.net/unity-2d/+bug/702452


Я можу підтвердити, що це працює і з додатками PlayOnLinux на Ubuntu 12.04
TIIUNDER

3
Я повинен уточнити, що це повинно бути лише ім'я виконуваного файлу , а не повний шлях, не цитування чи щось подібне.
Йона

1
Я можу підтвердити, що це працювало з Ubuntu 13.10. @Jonah Чи можете ви, будь ласка, відредагуйте свою відповідь і додайте цю дрібницю, бо це дійсно важливо :)
thelinuxer

1
@thelinuxer Радий, що відповідь вам допомогла. Я відредагував частину, яку вказав Іона.
Glutanimate

3
Ось моя варіація, працює за 14.04: якщо вона доступна, виберіть "створити ярлик на робочому столі" у програмі встановлення програми. Потім перенесіть цей ярлик на / usr / share / застосунки та додайте до нього рядок StartupWMClass = XXX.exe (наприклад, за допомогою gksudo gedit XXX.desktop)
Домінік Комтуа

7
  1. Тут ви знайдете свої піктограми або розмістите тут власні іконки:

    $ cd ~/.local/share/icons/hicolor/256x256/apps/
    $ ls
    1DF1_PicasaPhotoViewer.0.png
    .
    .
    .
    29F5_WINWORD.0.png
    850A_EXCEL.0.png
    AA79_POWERPNT.0.png
    
  2. Перейдіть до наступного каталогу:

    $ cd ~/.local/share/applications/wine/Programs/Microsoft\ Office
    $ ls
    Microsoft Excel 2010.desktop\
    Microsoft Office 2010 Tools\
    Microsoft PowerPoint 2010.desktop\
    Microsoft Word 2010.desktop\
    
  3. Редагувати .desktop файли:

    $ sudo nano Microsoft\ Word\ 2010.desktop
    [Desktop Entry]
    Name=Microsoft Word 2010
    .
    .
    .
    Icon=29F5_WINWORD.0.png (or name of icon as in above folder)
    
  4. Ви закінчили!


Чи маєте ви якесь уявлення, чому я можу використовувати наявну піктограму Word у Iconпапці, але не те, що я сам вклав у цю папку, щоб використовувати у своєму .desktop файлі?
Гейзенберг

Не зважай. Здається, що значок повинен бути .png замість jpg?
Гейзенберг


1

Я не використовую Unity, тому я не знаю, чи спрацює це.

Ви можете виникнути у зв'язку із запуском програми. Я припускаю, що ваш .desktop файл містить Exec=wine '/home/user/.wine/dosdevices/c:/Program...'тощо. Спробуйте зробити біш-двійковий, який містить щось подібне:

#!/bin/bash
cd '/home/aldomann/.wine/dosdevices/c:/Archivos de programa/Warcraft II BNE'
wine 'Warcraft II BNE.exe'

Назвіть його, наприклад, warcraft2і перемістіть його до /usr/bin(або будь-якої змінної PATH, про яку ви можете дізнатися, ввівши echo $PATHтермінал)

Потім у свій .desktop файл замість Exec=wine '...'використання Exec=warcraft2. Я думаю, що Єдність припустить, що це не винна програма, і буде використовувати вашу ікону, але це лише здогадка.

Сподіваюся, що це працює;)

За замовчуванням ваші програми для вина .desktopsрозміщені на/home/user/.local/share/applications/wine

Замість зміни існуючого .desktopфайлу можна створити новий і розмістити його /home/user/.local/share/applications. Це має бути приблизно так:

[Desktop Entry]
Name=Application
Comment=Comment
Exec=app-binary
Icon=app-icon
Type=Application
Terminal=false
StartupNotify=true
Categories=GTK;Utility

Порада: Якщо ви розмістите свою піктограму /home/user/.icons/(тобто app-icon.png), вам доведеться лише поставити її Icon=app-icon.


Я не впевнений, як знайти .desktop-файл, щоб сфотографувати це.
zorkerz

Це має бути на /home/user/.local/share/applications/wine
Альфредо Ернандес

0

Я написав сценарій, щоб виправити цю та інші проблеми з MSO в Unity. https://ubuntulogia.wordpress.com/2015/01/25/fix_mso_unity/ Це працює для мене, але будь-які пропозиції вітаються. Якщо хтось перевірив його і знайшов якісь поліпшення, будь ласка, поділіться ним зі мною. Для запуску сценарію потрібно скопіювати код у текстовий файл (наприклад, використовуючи gedit) та зберегти його. Потім ви повинні запустити його, використовуючи "ш". Наприклад, якщо ви збережете файл у своїй домашній папці як "fixmso.sh", командою для запуску скрипту є: sh fixmso.sh


0

Ви можете зробити це дуже просто через GUI з програмою під назвою alacratz. Ось досить простий спосіб роботи. Знизу розділ - те, що шукає http://develop.alpdesigns.ch/pages/linux/add_exe_program_to_linux.html


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

-1

Використовуйте Alacarte (старий редактор меню, можливо, вам доведеться встановити його), щоб створити старий запис меню в стилі з піктограмою та виконуваним файлом, який запускає вашу програму. Тоді шукайте це за допомогою alt + F2 та закріпіть його на пусковій установці.


-1

Ви можете легко змінити будь-яку встановлену програму вашого Ubuntu за допомогою "Головного меню" (назва пакету - "alacarte"). Ви можете завантажити його з Центру програмного забезпечення, ввівши "Головне меню", а потім:

введіть тут опис зображення

  1. Запустіть програму "Головне меню".
  2. На правій панелі під назвою "Меню" знайдіть свою програму (у цьому випадку вона знаходиться у вузлі "Вино") та виберіть її на панелі "Елементи".
  3. Натисніть кнопку властивостей.
  4. З показаного діалогу виберіть кнопку піктограми, яка розташована у верхньому лівому куті.
  5. Нарешті перегляньте розташування нового значка у вашій файловій системі.

Зробивши вищезазначені дії, ви побачите свою нову іконку на панелі запуску та панелі Unity.

Розважайся.


Saeed Я не думаю, що ти насправді розумієш питання. Звичайно, можливо, можливо змінити піктограму будь-якої програми, як ви описали, але справа в тому, що Wine - це обгортка для багатьох різних програм - тому потрібно змінити піктограму залежно від фактично запущеної програми. Ви описуєте спосіб зміни піктограми Wine - не основної програми.

Однак Alacarte можна використовувати саме для цього (вам просто потрібно покласти вино your_program у виконуване поле).
суп

-1

У мене був такий самий випуск, і я дізнався, що це було тому, що я помістив файли ярликів (які PlayOnLinux розміщують на Робочому столі) в окрему папку. Я вийняв їх із папки і поклав на робочий стіл, і це добре працює (значок відображається). Сподіваюся, це допомагає!

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