(OLD) (ARCHIVED) Puppy Linux Discussion Forum Forum Index (OLD) (ARCHIVED) Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info

This forum can also be accessed as http://oldforum.puppylinux.com
It is now read-only and serves only as archives.

Please register over the NEW forum
https://forum.puppylinux.com
and continue your work there. Thank you.

 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups    
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sat 19 Sep 2020, 21:58
All times are UTC - 4
 Forum index » House Training » Beginners Help ( Start Here)
How to edit menu entries? (solved)
Moderators: Flash, Ian, JohnMurga
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies. View previous topic :: View next topic
Page 1 of 1 [7 Posts]  
Author Message
memo

Joined: 28 Jun 2018
Posts: 269

PostPosted: Tue 26 Nov 2019, 15:15    Post subject:  How to edit menu entries? (solved)  

Hi all

How can I add for instance redshift portable version or any app (one file) to the menu. How to change the menu entries to another category, cause the icons of some apps in the menu are stated in strange categories and i want to change that.

Last edited by memo on Wed 27 Nov 2019, 10:28; edited 1 time in total
Back to top
View user's profile Send private message 
mikeslr


Joined: 16 Jun 2008
Posts: 3913
Location: 500 seconds from Sol

PostPosted: Tue 26 Nov 2019, 16:14    Post subject:  

Hi memo,

I'm going to assume that yours is a 'stock' Puppy which uses Jwm as window manager. Lx and xfce Puppies will work the same, but will require either that files for defining Categories consistent with Puppy definitions already exist or are created and implemented.

To display menu entries JWM Puppies read the contents of the desktop files in /usr/share/applications. These are just text files: you can Right-Click them and select Open in geany or open in a text editor.

If you open one, you'll find something like this one for abiword:

[Desktop Entry]
Exec=abiword
Icon=/usr/share/icons/hicolor/scalable/apps/abiword.svg
Terminal=false
Type=Application
Categories=WordProcessor;
StartupNotify=true
X-Desktop-File-Install-Version=0.9
MimeType=application/x-abiword;text/x-abiword;text/x-xml-abiword;text/plain;application/msword;application/rtf;application/vnd.plain;application/xhtml+xml;text/html;application/x-crossmark;application/docbook+xml;application/x-t602;application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.text-template;application/vnd.oasis.opendocument.text-web;application/vnd.sun.xml.writer;application/vnd.stardivision.writer;text/vnd.wap.wml;application/wordperfect6;application/wordperfect5.1;application/vnd.wordperfect;application/x-abicollab;
Name=AbiWord
GenericName=Word Processor
Comment=Compose, edit, and view documents
Comment[de]=AbiWord Textverarbeitung
GenericName[es]=Procesador de textos
Comment[es]=Procesador de textos Abiword
GenericName[fr]=Traitement de texte
Comment[fr]=Traitement de texte de Gnome Office
Comment[nb]=AbiWord Tekstbehandling
Comment[nl]=AbiWord tekstverwerker
Comment[nn]=AbiWord Tekstbehandling
Comment[no]=AbiWord Tekstbehandler
Comment[pl]=Edytor tekstu AbiWord
Comment[pt]=AbiWord Processador de Texto
GenericName[ru]=Текстовый редактор
Comment[ru]=Обработка форматированных текстовых документов
Comment[ja]=AbiWord ワードプロセッサ

I've bolded some of the arguments after the = signs for emphasis. These are the lines you'll most often want to change.

The Exec= argument calls the binary/executable. In theory, if the executable is "on the path" --in a bin or sbin folder-- its name should be sufficient. But, if you've created your own pet or SFS, it often pays to spell out the full path to the executable, e.g. /usr/local/bin/my_app

Name= defines what name will appear on the menu.
Icon= points to the icon to be displayed. Note often the full path isn't necessary; but it can't hurt. Note also, that not all Puppies or their applications can use .svg graphics, and even when they can it may be necessary to Update the Menu or restart-x, even a reboot may be necessary before they appear.
Category= defines in which Menu category an application will appear. If you open the Menu, you'll see the left-most pane has Category Names. The Right-Menu pane which slides out has divisions. If you've created a pet you may recall that during the process you were asked into what category the pet was to be assigned and a selection box opened with several dozen choices. Each choice will determine into which division on the Right-pane the application will appear. Maybe somebody with a good memory can recall them all.

What I do, before I open the desktop file I want to edit is to look on the Menu and see what application appears where I want my application to appear. Then I first open that application's desktop file in geany. To define my application's category, I cut-and-paste the Category argument of the application which appears where I want my application to appear. [Sometimes this means that I've mis-characterized what the application actually does. But, the procedure is "good enough for government work."]

To provide a menu entry for a portable, the Exec argument has to spell out the entire path to the executable*. For example, my portable palemoon is in a sub-subfolder on mnt/home. It's executable is the plmn bash-script. This is its Exec argument:

Exec=/mnt/home/Pup-Apps/palemoon64/plmn

If you want to create a menu entry for a program running under wine/wine portable you also have to spell out the full path*. This is my Exec argument for InfoCentral under wine portable:

Exec=wine.sh /mnt/home/wine-portable/wine-data//drive_c/'Program Files'/ICWin7/ICWIN.EXE

Note a couple of things about it: The argument is wine.sh; the balance tells which program to run under wine-portable. If you were using wine, rather than wine-portable, the argument would just be wine. The phrase Program Files --which has a space between words-- is bracketed by hard-quotation marks telling bash this is one thing; otherwise bash stops reading at the end of the word Program and you get a 'file not found' error.

You can use the same technique to create a menu entry for a particular file; e.g. Exec=gnumeric /my-documents/my-checkbook.xls

Lastly, I'll just mention that if your Puppy uses JWMDesk Manager, there's an easy way to turn the display of a menu entry on or off: Menu>Setup>Menu Manager Edit the Menu. I have an older version: all its shows is a radio button which is a toggle showing either green (display) or red (No display). What the toggle does is write or remove from the desktop file this argument: NoDisplay=true

Newer versions of Menu Manager have several panels. They may provide an easy way to directly edit the various arguments of desktop files. But, I've stuck with the older version as I rarely have to edit, and more frequently choose to turn a display on/off or update the menu while testing a new application.

-----
* There's another technique. You can create a bash-script on the path spelling out the full path to the executable; then your desktop file's Exec argument would only need be: Exec=redshift. The bash-script, say in /root/my-applications/bin, would read:
#!/bin/sh
FULL_PATH_TO_REDSHIFT_EXECUTABLE/redshift --or whatever the name of the executable is.

Last edited by mikeslr on Tue 26 Nov 2019, 17:42; edited 1 time in total
Back to top
View user's profile Send private message 
bigpup


Joined: 11 Oct 2009
Posts: 13981
Location: S.C. USA

PostPosted: Tue 26 Nov 2019, 17:33    Post subject:  

memo,

You have posted 94 times in this forum.
Is it really that hard for you to understand, that there are hundreds of versions of Puppy Linux and they are each different in some way.
A lot of them are still being used by people.

Always, always, always, always, always, TELL US THE PUPPY VERSION YOU ARE USING!!!!!!!!

_________________
The things they do not tell you, are usually the clue to solving the problem.
When I was a kid I wanted to be older.... This is not what I expected Shocked
YaPI(any iso installer)
Back to top
View user's profile Send private message 
tallboy


Joined: 21 Sep 2010
Posts: 1767
Location: Drøbak, Norway

PostPosted: Tue 26 Nov 2019, 19:05    Post subject:  

If you use jwm, most puppys have JWMDesk Manager in the Desktop part of the menu. There you'll find Menu Manager. In older pouppys, it allowed you to do some mods to what is visible, in later puppys you can modify a lot, click for Helpfiles.
_________________
True freedom is a live Puppy on a multisession CD/DVD.
Back to top
View user's profile Send private message 
Mike Walsh


Joined: 28 Jun 2014
Posts: 6397
Location: King's Lynn, UK.

PostPosted: Tue 26 Nov 2019, 19:24    Post subject:  

@ memo:-

Y'know, I really don't understand why you would want to add a Menu entry for Redshift-portable. It, and the previous screen brightness/tint-control apps that Fred and I originally developed, were designed to run from the tray.

There was never any intention of giving them a Menu entry, since they were intended to be run from the /root/Startup folder at boot, and to automatically fire-up, and sit in the tray, when Puppy itself started.

You're trying to re-invent the wheel, man. Why would you want to be able to manually stop, then re-start, something that was meant to be running permanently in the background? After all, any & all adjustments are immediately available by the simple use of the right-click menu.....

If it's because you want it to start immediately the very second you install it, well, we never got around to adding a pinstall.sh file, simply because we didn't deem it necessary. The very first time, manually start it by clicking on 'rshift-portable' in /root/Startup. You'll only have to do this once, because after this, it will start by itself every time you either re-boot, or re-start 'X'.

Yes, adding a Menuentry is perfectly possible.....but it's kinda pointless, really. And redundant.

------------------------------------------

BTW, the .desktop entry as quoted above by t'other Mike, probably appears quite longwinded. This is because this particular file in most apps adheres to the FreeDesktop standards, which is what the majority of mainstream distros attempt to comply with. It is, however, possible to compact this quite considerably, since a lot of the 'excess' boils down to certain of the lines repeated multiple times for different languages & locales. Essentially, you only need:-

Quote:
[Desktop Entry]
Encoding=UTF-8 (the standard language encoding for most of the Western world)
Name=xxxxxxx (this is what appears in the Menu)
Comment=xxxxxxx (optional)
Exec=/path/to/your/app
Icon=xxxxxx.png (PNG is preferable, because of the transparent background with this format; as long as you place this in one of three locations, you just need the image name - /usr/share/pixmaps, /usr/local/share/pixmaps, /usr/local/lib/X11/pixmaps.....these are all 'in the path', i.e, locations that will always be looked in)
Type=Application
Terminal=false (applies to all GUI-based apps; you'll want the terminal to show up for commandline-based apps)
Categories=X-[Menu category] - important if you want the app to show up at all. If this is not 'recognised', the app will not show.


Trust me, I've made these up more times than I've had hot dinners, so I have a fairly good idea of what I'm talking about..!


Mike. Wink

_________________
MY 'PUPPY' PACKAGES

Back to top
View user's profile Send private message 
memo

Joined: 28 Jun 2018
Posts: 269

PostPosted: Wed 27 Nov 2019, 10:14    Post subject:  

@ mikeslr

nice detailed explanation. so If i want to add a executable to the menu i will;

check if it is executable or not (usually they are) if not then i will it such privilege from permissions.

then, I change the executable path as you identified in you explanation, providing the name and the category it belongs to.

Thanks man!
Back to top
View user's profile Send private message 
memo

Joined: 28 Jun 2018
Posts: 269

PostPosted: Wed 27 Nov 2019, 10:27    Post subject:  

@ Mike Walsh

about redshift portable, yes that is true, I have done that ( although it did not work for the executable itself and I have to make a link only, then made it .desktop and put it in the auto-start) . but for the other apps like for instance zotero or any other portable browsers, it would be handy to put them in the menu entry and better than digging to my folders each time I need to open it.

Thanks for developing Redshift, it works nicely!
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 1 of 1 [7 Posts]  
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies. View previous topic :: View next topic
 Forum index » House Training » Beginners Help ( Start Here)
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0847s ][ Queries: 11 (0.0399s) ][ GZIP on ]