← Back to team overview

c4c-dev team mailing list archive

Re: freedesktop standard Christian sub-menu

 

Greg, all,

I created a new user called "Menu Test" (username: menutest) on a fresh,
32-bit install of Lubuntu 14.04.2 that's been about 3/4 transformed into
a C4C install at this point. The Christian sub-menu does appear and
works perfectly.

Happy Friday!
Eric

On 05/28/2015 10:51 PM, KI7MT wrote:
> Hi Eric,
>
> That does sound like good news, nice work !!
>
> Another check you could do, although, Ubuntu is not generally described
> as a multi-user system, would be to create an arbitrary user, other than
> your normal / sudo user, then log into that user and check to see if the
> menu's you added appear in the new users menu system. If yes, then your
> definitely on the right track.
>
> best regards,
>
> Greg
>
> On 05/28/2015 10:40 PM, Eric Bradshaw wrote:
>> Guys,
>>
>> Good news! The method to create a Christian sub-menu described below
>> does in fact work. Silly me. I'd completely forgotten user menu entries
>> take precedence. So, on a C4C Lubuntu 14.04 ReSpin install featuring the
>> "original" Christian *Games* sub-menu; I removed
>> /home/username/.config/menus, /home/username/.local/share/applications
>> and /home/username/.local/share/desktop-directories and the "new"
>> Christian sub-menu instantly appeared. On a new "vanilla" Lubuntu
>> 14.04.2 install, the Christian sub-menu appeared as soon as I added the
>> first shortcut that referenced it into /usr/share/applications.
>>
>>  There is no applications-merged folder in /etc/xdg/menus/ in Lubuntu
>> 14.04.2, so one had to be created. Also, there is a
>> /etc/xdg/lubuntu/menus/ folder with an exact copy of the two files in
>> /etc/xdg/menus/ [lxde-applications.menu and lxgames-applications.menu],
>> so I placed an exact copy of the applications-merged folder in there
>> too. It didn't seem to make a difference one way or the other, but I
>> left it that way to "err on the side of caution."
>>
>> I did have the menu package installed in "vanilla" Lubuntu 14.04.2 for a
>> while, but it appeared to make no difference whatsoever.
>>
>> Eric
>>
>> On 05/27/2015 11:22 PM, Eric Bradshaw wrote:
>>> Guys,
>>>
>>> I haven't actually tries to install and run menu yet - though I did
>>> download it. I thought I'd try once more to follow the freedesktop
>>> standard. This *should* provide the base on which to build upon.
>>>
>>> I created christian.menu in /etc/xdg/menus/applications-merged/ with the
>>> following contents:
>>>
>>> <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
>>>      "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd";>
>>>     <Menu>
>>>       <Name>Applications</Name>
>>>       <Menu>
>>>         <Name>Christian</Name>
>>>         <Directory>Christian.directory</Directory>
>>>         <Include>
>>>             <Category>Christian</Category>
>>>         </Include>
>>>       </Menu> <!-- End christian -->
>>>     </Menu>
>>>
>>> And Christian.directory in /usr/share/desktop-directories/ with the
>>> following contents:
>>>
>>> [Desktop Entry]
>>> Type=Directory
>>> Encoding=UTF-8
>>> Name=Christian
>>> GenericName=Christian
>>> Name[AF]=Christian
>>> Name[en_GB]=Christian
>>> Name[KA]=Christian
>>> Name[MK]=Christian
>>> Name[ST]=Christian
>>> Name[TG]=Christian
>>> Name[TS]=Christian
>>> Name[en_US]=Christian
>>> Name[UZ]=Christian
>>> Name[en_ZA]=Christian
>>> Name[ZU]=Christian
>>> Comment=C4C SubMenu
>>> Comment[AF]=C4C SubMenu
>>> Comment[en_GB]=C4C SubMenu
>>> Comment[KA]=C4C SubMenu
>>> Comment[MK]=C4C SubMenu
>>> Comment[ST]=C4C SubMenu
>>> Comment[TG]=C4C SubMenu
>>> Comment[TS]=C4C SubMenu
>>> Comment[en_US]=C4C SubMenu
>>> Comment[UZ]=C4C SubMenu
>>> Comment[en_ZA]=C4C SubMenu
>>> Comment[ZU]=C4C SubMenu
>>> Icon=/usr/share/christian/icons/Christian-Menu.png
>>>
>>> And 12_apostles.desktop in /usr/share/applications/ with the following
>>> contents:
>>>
>>> [Desktop Entry]
>>> Name=12 Apostles
>>> Exec=gnash /usr/share/christian/12-apostles/The_Twelve_Apostles.swf
>>> Comment=Quiz & Memory Game
>>> Icon=/usr/share/christian/icons/The12.png
>>> NoDisplay=false
>>> Categories=Christian;
>>> Type=Application
>>> GenericName=12 Apostles
>>> Name[AF]=12 Apostles
>>> Name[en_GB]=12 Apostles
>>> Name[KA]=12 Apostles
>>> Name[MK]=12 Apostles
>>> Name[ST]=12 Apostles
>>> Name[TG]=12 Apostles
>>> Name[TS]=12 Apostles
>>> Name[en_US]=12 Apostles
>>> Name[UZ]=12 Apostles
>>> Name[en_ZA]=12 Apostles
>>> Name[ZU]=12 Apostles
>>> Comment[AF]=Quiz & Memory Game
>>> Comment[en_GB]=Quiz & Memory Game
>>> Comment[KA]=Quiz & Memory Game
>>> Comment[MK]=Quiz & Memory Game
>>> Comment[ST]=Quiz & Memory Game
>>> Comment[TG]=Quiz & Memory Game
>>> Comment[TS]=Quiz & Memory Game
>>> Comment[en_US]=Quiz & Memory Game
>>> Comment[UZ]=CQuiz & Memory Game
>>> Comment[en_ZA]=Quiz & Memory Game
>>> Comment[ZU]=Quiz & Memory Game
>>>
>>> But alas; it doesn't work. It should, but it doesn't. I remember trying
>>> a very similar approach with the LXDE menu before. What finally did work
>>> (at least up until Lubuntu 15.04) was the method described here:
>>> https://lkubaski.wordpress.com/2012/11/02/adding-lxde-start-menu-sections/
>>> and this is and what I based the Christian menu (and Christian Games
>>> sub-menu before) on in the C4C Lubuntu ReSpins. Maybe it's (a) specific
>>> file(s) Lubuntu adds that overrides the freedesktop standard way? Or,
>>> I'm not adding these files in the correct places?
>>>
>>> Eric
>>>
>>> On 05/27/2015 07:53 PM, Israel wrote:
>>>> Hi,
>>>> Yeah it is unfortunate in some ways, but it also gives us a lot of
>>>> Liberty.  Which is something I know we are big fans of :).  Wherever the
>>>> Spirit of the Lord is, there is freedom/liberty.  So having the liberty
>>>> to install a variety of Desktops is great!  It means I can run the same
>>>> OS on a computer that has 128MB RAM as on a computer that has multiple
>>>> Gigs of RAM.
>>>> I can also use a flashy neat looking DE, or a very nice looking minimal
>>>> DE, etc...
>>>>
>>>> I can also hack around and build my own distribution :)  With custom
>>>> menus and great content!
>>>>
>>>> On 05/27/2015 04:57 PM, KI7MT wrote:
>>>>> Hi Israel,
>>>>>
>>>>> Yes, this will take some testing to figure out the best route for each
>>>>> Desktop as they all do things slightly different, which is annoying,
>>>>> as that is what the freedesktop standard was written to try and
>>>>> prevent :-) .. So much for a standard way of doing things ey' :-)
>>>>>
>>>>> best regards,
>>>>>
>>>>> Greg.
>>>>>
>>>>> On 5/27/2015 2:37 PM, Israel wrote:
>>>>>> Hi,
>>>>>> Menu xdg is probably more appropriate since LXDE uses xdg menus, though
>>>>>> I could be wrong...
>>>>>> I think testing out how this would work is going to be the best first
>>>>>> step.
>>>>>> I install both menu and menu-xdg in ToriOS.  But, menu xdg may only be
>>>>>> needed for things like xdg-user-dirs (ie. ~/Music, ~/Videos, ~/Pictures,
>>>>>> etc..)
>>>>>> It has been a long time since I last looked at all of that, and I needed
>>>>>> the XDG portion to create a Places menu plugin for JWM, that would be
>>>>>> localized to the user's language.
>>>>>>
>>>>>> I think you may be on to something!
>>>>>>
>>>>>> On 05/27/2015 03:29 PM, KI7MT wrote:
>>>>>>> Hi Israel,
>>>>>>>
>>>>>>> I don't think menu, the package, is on the default manifest for either
>>>>>>> Ubuntu or Lubuntu. I had to install it on my main Ubuntu development
>>>>>>> box. I believe there's only one or two dependencies that are not on the
>>>>>>> default manifest ( install-info and l10n ), both are minor. Another
>>>>>>> tool
>>>>>>> to look at is: menu-xdg
>>>>>>>
>>>>>>> So yes, each desktop that supports menu-enable would possibly have a
>>>>>>> different requirement, but once the basics ( the core ) are figured
>>>>>>> out,
>>>>>>> it should not take allot of effort to port it to the various Desktops.
>>>>>>>
>>>>>>> Maybe a PPA for each supported distro would be an easy route, thus
>>>>>>> reusing most of the primary code then adding just the menu / package
>>>>>>> tweaks for the desktop in question.
>>>>>>>
>>>>>>> Time for another Blueprint it seems; mapping out the menu requirements
>>>>>>> for each desktop we plan to support :-)
>>>>>>>
>>>>>>>
>>>>>>> best regards,
>>>>>>>
>>>>>>> Greg
>>>>>>>
>>>>>>>
>>>>>>> On 05/27/2015 02:04 PM, Israel wrote:
>>>>>>>> Hi Greg!
>>>>>>>> I use this in ToriOS.
>>>>>>>> I use update-menus to run my script to generate the JWM specific
>>>>>>>> menus.
>>>>>>>> Menu files are problematic, as many many many (maybe most?)
>>>>>>>> programs do
>>>>>>>> not create a menufile.
>>>>>>>> Most menu generation programs rely heavily on the desktop files in
>>>>>>>> /usr/share/applications.
>>>>>>>> These files also contain the name, icon, category, etc..  The
>>>>>>>> advantage
>>>>>>>> with desktop files is the ability to have icons with no extention, or
>>>>>>>> path... so various themes can use various icons.
>>>>>>>> For example, Lubuntu uses Rafel's Box icon theme, this is much
>>>>>>>> different
>>>>>>>> from the default Ubuntu Humanity/ubuntu-mono theme.
>>>>>>>> ToriOS uses Numix.
>>>>>>>> If I install Xiphos in ToriOS the icon is a big red circle with a
>>>>>>>> cross.  This is different from Ubuntu, which uses many 'default'
>>>>>>>> icons.
>>>>>>>> Those icons *should* be installed in either hicolor/scalable/apps
>>>>>>>> or hicolor/48x48/apps.  Many programs do not know/do this... either.
>>>>>>>>
>>>>>>>> So, after saying all that... the menufile portion might be
>>>>>>>> helpful.  Is
>>>>>>>> it installed by default in Lubuntu?
>>>>>>>> I don't currently have a running Lubuntu (all my old PCs are running
>>>>>>>> ToriOS right now).
>>>>>>>>
>>>>>>>> On 05/27/2015 11:16 AM, KI7MT wrote:
>>>>>>>>> Hello All,
>>>>>>>>>
>>>>>>>>> While working on another project, I ran into a package they may
>>>>>>>>> assist
>>>>>>>>> in menu management for C4C, appropriately named "menu" :-) Note, the
>>>>>>>>> package says "Debian menu system" but that also applies to Ubuntu
>>>>>>>>> menu-aware Desktops.
>>>>>>>>>
>>>>>>>>> Package Info:
>>>>>>>>> http://packages.ubuntu.com/trusty/menu
>>>>>>>>>
>>>>>>>>> * install-menu
>>>>>>>>> Description
>>>>>>>>> update-menus(1) computes the list of menu entries and passes it in
>>>>>>>>> turn
>>>>>>>>> to  the  menu methods in /etc/menu-methods/. The task of a menu
>>>>>>>>> methods
>>>>>>>>> is to generate menus  for  a  specific  window  manager.  
>>>>>>>>> install-menu
>>>>>>>>> provides  a  generic and customizable way to do that. The
>>>>>>>>> documentation
>>>>>>>>> of the install-menu definition language is available in the Debian
>>>>>>>>> Menu
>>>>>>>>> manual, a local copy being available in /usr/share/doc/menu/html.
>>>>>>>>>
>>>>>>>>> Link:
>>>>>>>>> http://manpages.ubuntu.com/manpages/trusty/man1/install-menu.1.html
>>>>>>>>>
>>>>>>>>> * update-menus
>>>>>>>>> Description:
>>>>>>>>> Before the advent  of  update-menus,  when  the  system 
>>>>>>>>> administrators
>>>>>>>>> installed  a  package  onto  a  Debian  system, they would need to
>>>>>>>>> edit
>>>>>>>>> various window manager configuration files to make the new program
>>>>>>>>> show
>>>>>>>>> up  on, for example, fvwm's menus. The menus could easily become
>>>>>>>>> out of
>>>>>>>>> sync with what programs were actually available, with some  menu 
>>>>>>>>> items
>>>>>>>>> that didn't work, and other programs that lacked a menu entry. 
>>>>>>>>> update-
>>>>>>>>> menus and Debian's menu package aim to solve this problem.
>>>>>>>>>
>>>>>>>>> http://manpages.ubuntu.com/manpages/trusty/man1/update-menus.1.html
>>>>>>>>>
>>>>>>>>> * menufile
>>>>>>>>> Description:
>>>>>>>>> Menu files  add  entries  to  the  Debian  menu  system.  The  system
>>>>>>>>> administrator can place menu files in /etc/menu/ to override menu
>>>>>>>>> files
>>>>>>>>> that  packages add to /usr/share/menu/ .  The user can place menu
>>>>>>>>> files
>>>>>>>>> in ~/.menu/ to override all other menu files.
>>>>>>>>>
>>>>>>>>> Link http://manpages.ubuntu.com/manpages/trusty/man5/menufile.5.html
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> best regards,
>>>>>>>>>
>>>>>>>>> Greg.
>>>>>>>>>
>>>>>>>>>
>>



Follow ups

References