Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 3640 - Не создаются меню и ярлыки в Ubuntu   Make a simular bug
Summary: Не создаются меню и ярлыки в Ubuntu
Status: CLOSED FIXED
Alias: None
Product: WINE@Etersoft
Classification: Продукты (Products)
Component: Интеграция в хост-систему (show other bugs)
Version: 1.0.10
Hardware: PC All
: P4 minor
Target Milestone: ---
Assignee: Денис Баранов
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 1217
  Show dependency treegraph
 
In work:
Reported: 2009-03-11 19:06 MSK by Константин Кондратюк
Modified: 2009-04-28 11:45 MSD (History)
4 users (show)

See Also:
Заявки RT:
Связано с:
Дата напоминания:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Константин Кондратюк 2009-03-11 19:06:32 MSK
В процессе установки программ меню и ярлыки должны создаваться через winemenubuilder (функции write_menu_file, write_menu_entry, write_desktop_entry и пр.)
В Ubuntu по каким-то причинам этого не происходит.
Comment 1 Константин Кондратюк 2009-03-11 19:07:18 MSK
В Debian + wine 1.0.10 ярлыки создаются корректно.
Comment 2 Константин Кондратюк 2009-03-12 11:53:19 MSK
Для проверки создания меню и ярлыков можно воспользоваться уже установленной программой.

Для этого, не удаляя программу, вычищаем все меню и ярлыки (для Linux) от неё.
* Есть файлы *.menu для каждого раздела меню (установленной проги). Хранятся в папке ~/.config/menus/applications-merged. Для удаленной проги удаляем соответствующий файл. Бывают проги, которые создают свой элемент меню прямо в разделе wine главного меню. Для таких прог надо открыть файл wine.menu и удалить оттуда строку для нашей проги.
* Есть файлы *.desktop для всех ярлычков. Хранятся они в папке ~/.local/share/applications/wine. Там их можно удалять, не боясь больше не увидеть (можно прямо с папкой для этой проги).
* Есть файлы *.directory для нашей проги. Хранятся они в папке ~/.local/share/desktop-directories. Соответствующий файл для проги тоже нужно удалить.
* Кажется, есть ещё в ~/.icons что-то, но удалять не обязательно
* Удаляем ярлык с рабочего стола


После удаления этих файлов запускаем создание командой
$ wine winemenubuilder -w "путь:\\к\\виндовому\\ярлыку"

В Debian 4.0 работает идеально.
Comment 3 Константин Кондратюк 2009-03-12 12:10:46 MSK
Так, в Дебиане как раз не вижу в меню ветки с вайновскими программами, хотя winemenubuilder создаёт нужные файлы по нужным (?) адресам
Возможно, для этого меню нужен какой-то другой алгоритм...

А вот в вечно проблемной убунте (8.04 на multi) меню создалось без проблем.
Comment 4 Константин Кондратюк 2009-03-12 15:04:49 MSK
Хм, на Дебиане нет ни в меню, ни на рабочем столе, хотя в ~/Desktop лежит файл ярлыка!
Может ли стандартный рабочий стол чем-нибудь перекрываться (темой какой, например)?
Comment 5 Vitaly Lipatov 2009-03-12 19:07:58 MSK
(In reply to comment #4)
> Хм, на Дебиане нет ни в меню, ни на рабочем
> столе, хотя в ~/Desktop лежит файл ярлыка!
> Может ли стандартный рабочий стол
> чем-нибудь перекрываться (темой какой,
> например)?
Файл может не восприниматься системой. Рекомендую для начала создать ярлык вручную, и сравнить результат с тем ярлыком, что создан автоматически.

Comment 6 Константин Кондратюк 2009-03-13 15:46:55 MSK
Все меню нормально создаются.

Проблема с созданием ярлыков в том, что они все помещаются в $HOME/Desktop, тогда как в Ubuntu 8.0.4:
guest@multi:~$ xdg-user-dir DESKTOP
/home/guest/Рабочий стол

Видимо, при создании ярлыков нужно как-то отслеживать, где находится рабочий стол для пользователя.
Comment 7 Константин Кондратюк 2009-03-16 09:22:12 MSK
После приложения этого патча должно работать:
commit b8527ff4ae5a569be65873404d373d75edb7972e
Author: Konstantin Kondratyuk <kondratyuk@etersoft.ru>
Date:   Fri Mar 13 18:51:37 2009 +0300

    winemenubuilder: use xdg-user-dir for find desktop directory (eterbug #3640)

Денис, проверьте, пожалуйста, после появления сборок, что на Ubuntu 8.04 (там DESKTOP=="Рабочий стол") ярлыки создаются корректно.
Comment 8 Денис Баранов 2009-03-17 15:18:28 MSK
Ярлыки так и не создались, попробовал на multi установил 1С81, должен был создаться ярлык. И в момент когда должен был создаться ярлык в консоли следующей:

err:menubuilder:InvokeShellLinker failed to build the menu

Попробовал как написано в ком #2 не создается ярлык
Comment 9 Константин Кондратюк 2009-03-17 16:53:50 MSK
Ярлык не создаётся из-за того, что в путь к рабочему столу попал разрыв строки. Убираю.
Comment 10 Константин Кондратюк 2009-03-17 17:07:12 MSK
Патч в рассылке (try 2)
Comment 11 Денис Баранов 2009-03-17 17:26:47 MSK
Пересобрал wine с патчем.
Wine доступен в unstable/Ubuntu/8.04
Comment 12 Константин Кондратюк 2009-03-18 16:46:38 MSK
Работает
Comment 13 Виталий Перов 2009-04-03 12:52:41 MSD
В официальной ветке появился аналогичный патч.
Откатил Костин патч. Требуется проверить не появилась ли бага опять.
Сейчас изменения только в репозитории eterwine, когда будут в eterhack - не знаю.
Comment 14 Денис Баранов 2009-04-06 20:15:28 MSD
В 1.0.10 пойдет Костин патч.
Закрываю.