(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 Thu 28 Jan 2021, 07:48
All times are UTC - 4
 Forum index » Advanced Topics » Puppy Derivatives
Building DPupBuster64 from Woof-CE
Moderators: Flash, 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 2 of 3 [33 Posts]   Goto page: Previous 1, 2, 3 Next
Author Message
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Thu 09 Jul 2020, 00:17    Post subject:  

Thanks, José.
BFN.

_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Back to top
View user's profile Send private message 
foxpup

Joined: 29 Jul 2016
Posts: 1141

PostPosted: Thu 09 Jul 2020, 04:44    Post subject:  

musher0 wrote:
Maybe a bash script will do the trick then, similar to the ones that I
wrote for the wmx, pekwm and waimea WMs.
okay, that would be a big chore to me Rolling Eyes
or
foxpup wrote:
You do remember that fixmenus and the *wm-xdgmenu need a template in /etc/xdg/templates?
and that the description of the menus and their categories Puppy style, have to be in /etc/xdg/menus
(or wherever the template states) ?

Did you ldd the *wm-xdgmenu?
Have you tried this?
You can copy /etc/xdg/menus from any Puppy.
A template for jwm is in any Puppy as well.
I've attached mine for icewm if you want to try. I have it in slacko64. It may need some tweeking for details (icons ... ).

Your choice. Wink
_root_.icewm_menu.gz
Description  dummy .gz
put it in /etc/xdg/templates
for fixmenus, using icewm-xdgmenu
gz

 Download 
Filename  _root_.icewm_menu.gz 
Filesize  1.91 KB 
Downloaded  187 Time(s) 
Back to top
View user's profile Send private message 
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Thu 09 Jul 2020, 12:55    Post subject:  

Thanks, fox pup.

This is weird. I incorporated your template file, typed < fixmenus >, and the
icewm menu has become worse...

Please see attached.

But no worries, let's all keep calm, the house is not on fire!
This is still a very alpha stage!

BFN.
No-it-s-worse!.jpg
 Description   (partial)
 Filesize   61.56 KB
 Viewed   363 Time(s)

No-it-s-worse!.jpg


_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Back to top
View user's profile Send private message 
foxpup

Joined: 29 Jul 2016
Posts: 1141

PostPosted: Thu 09 Jul 2020, 15:12    Post subject: no panic  

musher0 wrote:
This is weird. I incorporated your template file, typed < fixmenus >, and the icewm menu has become worse...
You should use the patched versions of icewm-xdgmenu here and not the original from rarsa.

The cause is a change in the fixmenus script.
You will see that 'menuheights' has been introduced.
You will also find this file: ~/.jwm/menuheights
The original jwm-xdgmenu from your build should be a patched version and should be fine.

But the other *wm-xdgmenu, if present at all, have not been patched yet.
I have patched icewm-xdgmenu myself.
.
Back to top
View user's profile Send private message 
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Thu 09 Jul 2020, 15:40    Post subject:  

Thanks for this clarification, foxpup.

No disrespect or offense intended, none at all,
but I may wish to try another way of obtaining
a menu for icewm.

TWYL

_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Back to top
View user's profile Send private message 
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Thu 09 Jul 2020, 15:50    Post subject:  

TWIMC, here are the desktop categories icewm-menu-fdo recognizes.

Extracted from the executable with
Code:
hexdump -C /usr/bin/icewm-menu-fdo
then, long story short, fiddling with
Code:
awk -F"|" '{print $2}' icewm-menu-fdo.categs > icewm-menu-fdo.categs-proper
and
Code:
cat icewm-menu-fdo.categs-proper | tr . "\n" > icewm-menu-fdo.categs-proper2
and editing in geany for the finishing touch.

Allow me a gripe:
This probably would have been a lot easier if this DPupBuster recipe had
offered the < strings > utility, but it doesn't, so I had to be inventive!
Quote:
2DGraphics
folder
3DGraphics
Accessibility
Accessories
ActionGame
Adult
Adventure
Game
Amusement
ArcadeGame
Archiving
Art
ArtificialIntelligence
Astronomy
Audio
AudioVideo
AudioVideoEditing
Biology
BlocksGame
BoardGame
Building
Calculator
Calendar
CardGame
Chat
Chemistry
Clock
Compression
ComputerScience
Construction
ContactManagement
Core
DataVisualization
Database
Debugger
DesktopSettings
Dialup
Dictionary
DiscBurning
Documentation
Economy
Editors
Education
Electricity
Electronics
Email
Engineering
Feed
FileManager
FileTools
FileTransfer
Filesystem
Finance
FlowChart
GUIDesigner
Geography
Geology
Geoscience
HamRadio
HardwareSettings
History
Humanities
IDE
IRCClient
ImageProcessing
InstantMessaging
KidsGame
Languages
Literature
LogicGame
Maps
Math
MedicalSoftware
Midi
Mixer
Monitor
Motif
Multimedia
Music
Network
News
NumericalAnalysis
OCR
Office
P2P
PDA
PackageManager
ParallelComputing
Photography
Physics
Player
Presentation
Printing
Profiling
ProjectManagement
Publishing
RasterGraphics
Recorder
RemoteAccess
RevisionControl
Robotics
RolePlaying
Scanning
Screensavers
Security
Sequencer
Shooter
Simulation
Spirituality
Sports
SportsGame
Spreadsheet
StrategyGame
System
TV
Telephony
TelephonyTools
TerminalEmulator
TextEditor
TextTools
Translation
Tuner
Utility
VectorGraphics
VideoConference
Viewer
WINE
WebBrowser
WebDevelopment
WordProcessor
They are pretty much the categories mentioned at
https://specifications.freedesktop.org/menu-spec/latest/apa.html.

And allow me another gripe (it's probably the awful steamy heat in the air in
these parts today):
The above does not mean that parsing by icewm-menu-fdo is successful every
time, even if the Categories in the *.desktop files are good. Twisted Evil
(This to humor foxpup!)

IHTH
TWYL

_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

Last edited by musher0 on Thu 09 Jul 2020, 16:01; edited 1 time in total
Back to top
View user's profile Send private message 
foxpup

Joined: 29 Jul 2016
Posts: 1141

PostPosted: Thu 09 Jul 2020, 15:51    Post subject:  

musher0 wrote:
No disrespect or offense intended, none at all,
but I may wish to try another way of obtaining
a menu for icewm.

TWYL
No problem musher0. It's your Puppy.

I am looking forward to try it. Your Puppys are different. I like that.
Back to top
View user's profile Send private message 
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Thu 09 Jul 2020, 22:37    Post subject:  

Hi guys.

Here is a new and easy menu creator script for icewm.

Sorry, icewm-menu-dfo and xgd-menu! Twisted Evil

Everything is in the script, so please read the remarks.
Thanks.

Basically all written in bash, with a bit of awk and grep.
Enjoy!
Code:
#!/bin/bash
# /root/.icewm/lister.sh
# Copy from this forum thread and save
# at the directory and with the filename above.
##################################
# Please read note on lines 42-43.
##################################
# (c) Christian L'Écuyer (aka musher0), Gatineau (Qc), Canada, Thursday July 9, 2020.
# Licence: GPL2
####
cd /usr/share/applications
grep -m 1 Categories *.desktop | grep -E -v "default|jwm" | awk -F":" '{print $2";"$1}' | awk -F"=" '{print $2}' | awk -F";" '{print $1";"$NF}' | sort > liste
# grep -E "Categories|Name|Exec" *.desktop | grep -E -v "TryExec|Generic|]|jwm|default" | more
> liste2
while read line;do
   if [ "${line:0:2}" = "X-" ];then
      line="${line:2}"
   fi
   echo $line >> liste2
done < liste
sort liste2 > liste
rm liste2
#
mkdir -p /root/.icewm/construction
ConsTr="/root/.icewm/construction"
grep Archiving liste > Archiving.lst
grep Audio liste | grep -v Video | awk -F";" '{print $2}' > $ConsTr/Audio.lst
grep AudioVideo liste | awk -F";" '{print $2}' > $ConsTr/AudioVideo.lst
grep Calculator liste | awk -F";" '{print $2}' > $ConsTr/Calculator.lst
grep Desktop liste | awk -F";" '{print $2}' > $ConsTr/Desktop.lst
grep Disk liste  | awk -F";" '{print $2}' > $ConsTr/Disk.lst
grep -E "Document|Editor" liste | awk -F";" '{print $2}' > $ConsTr/Document.lst
grep File liste  | awk -F";" '{print $2}' > $ConsTr/File.lst
grep Fun liste  | awk -F";" '{print $2}' > $ConsTr/Fun.lst
grep Graphic liste  | awk -F";" '{print $2}' > $ConsTr/Graphic.lst
grep Internet liste  | awk -F";" '{print $2}' > $ConsTr/Internet.lst
grep Network liste  | awk -F";" '{print $2}' > $ConsTr/Network.lst
grep Personal liste  | awk -F";" '{print $2}' > $ConsTr/Personal.lst
grep Security liste  | awk -F";" '{print $2}' > $ConsTr/Security.lst
grep Setup liste  | awk -F";" '{print $2}' > $ConsTr/Setup.lst
grep System liste  | awk -F";" '{print $2}' > $ConsTr/System.lst
grep Terminal liste  | awk -F";" '{print $2}' > $ConsTr/Terminal.lst
grep Utility liste | grep -E -v "Graphic|Personal|Setup" | awk -F";" '{print $2}' > $ConsTr/Utility.lst
#
cd $ConsTr
echo "prog ReList - /root/.icewm/lister.sh
prog Terminal - defaultterminal
# You can insert other useful   <=-
# personal apps on these lines. <=-
separator" > 0.submenu
#
ls -1 *.lst > groupes
while read groupe;do
   Titr="${groupe%.*}"
   > $Titr.submenu
   echo "menu $Titr - {
   separator" >> $Titr.submenu
      while read line;do
         Nom="${line%.*}"
         echo "    prog $Nom - rox /usr/share/applications/$line" >> $Titr.submenu
      done < $groupe
   echo "   separator
   }" >> $Titr.submenu
done < groupes

cat *.submenu > ../menu
# The updated icewm menu is now ready.


Besides the 0.submenu on lines 40-47, or thereabouts, above, you could
create a zzz.submenu at /root/.icewm/Construction directory, with your
material in it, and written with proper icewm menu syntax.

This personal submenu would show at about the middle of your menu,
before the "Windows", "Help", etc., groupings.

IHTH.

BFN
Bye-bye_icewm-menu-dfo!.jpg
 Description   Menu resulting from running the above script.
 Filesize   101.4 KB
 Viewed   310 Time(s)

Bye-bye_icewm-menu-dfo!.jpg


_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Back to top
View user's profile Send private message 
foxpup

Joined: 29 Jul 2016
Posts: 1141

PostPosted: Fri 10 Jul 2020, 02:50    Post subject:  

Hello musher0

Thank you for the code.
I will try it out.
I may be back with some remarks Idea
.
Back to top
View user's profile Send private message 
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Fri 10 Jul 2020, 12:49    Post subject:  

foxpup wrote:
Hello musher0

Thank you for the code.
I will try it out.
I may be back with some remarks Idea
.
Yes please! Smile
_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Back to top
View user's profile Send private message 
foxpup

Joined: 29 Jul 2016
Posts: 1141

PostPosted: Fri 10 Jul 2020, 16:01    Post subject:  

Hi musher0
musher0 wrote:
Yes please!
I am still reading about bash, grep, awk, loops... LOL
Here I go anyway Smile

I don't like these categories, but they are kind of official categories, I suppose.
I like the categories of Puppy better, but I am a complete Puppy addict. Razz

You do not use Name and Icon.
It is very clever how you do that, but - you can guess it. can you not? - I miss both.
I cannot solve it (yet), but I am searching, thinking, learning, puzzling.
I've discovered 'join' exists in bash.
And I found this script through ArchWiki:
https://github.com/AndyCrowd/list-desktop-files
It's too much, but it's in the right direction.
.
Back to top
View user's profile Send private message 
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Fri 10 Jul 2020, 16:33    Post subject:  

Thank you kindly for the remark, foxpup.

I do not use the name and icon tags of the desktop files to save time in creating
the menu and displaying it on screen.

It also makes this script more portable for use with various window managers,
with a minimum of alterations. (This being the technical reason.)

So you feel more "at home" in this Puppy, I may look at a way of incorporating
the app icon in the menu, but not immediately, if I may. (I have another sub-
project on the burner ATM.)

Again, thanks.

TWYL.

_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Back to top
View user's profile Send private message 
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Fri 10 Jul 2020, 18:40    Post subject:  

Things went faster than expected, so here you go:
a menu creator script for icewm incorporating icons.

This one spreads more horizontally than the previous one as well.
Code:
#!/bin/bash
# /root/.icewm/lister2-icons.sh
# A more sideways variant.
#
# Copy from this forum thread and save
# at the directory and with the filename above.
##################################
# Please read note on lines 42-43.
##################################
# (c) Christian L'Écuyer (aka musher0), Gatineau (Qc), Canada, Thursday July 9, 2020.
# Licence: GPL2
####
APPS=/usr/share/applications
cd $APPS
grep -m 1 Categories *.desktop | grep -E -v "default|jwm" | awk -F":" '{print $2";"$1}' | awk -F"=" '{print $2}' | awk -F";" '{print $1";"$NF}' | sort > liste
> liste2
while read line;do
   if [ "${line:0:2}" = "X-" ];then
      line="${line:2}"
   fi
   echo $line >> liste2
done < liste
sort liste2 > liste
rm liste2
#
mkdir -p /root/.icewm/construction
ConsTr="/root/.icewm/construction"
grep Archiving liste > Archiving.lst
grep Audio liste | grep -v Video | awk -F";" '{print $2}' > $ConsTr/Audio.lst
grep AudioVideo liste | awk -F";" '{print $2}' > $ConsTr/AudioVideo.lst
grep Calculator liste | awk -F";" '{print $2}' > $ConsTr/Calculator.lst
grep Desktop liste | awk -F";" '{print $2}' > $ConsTr/Desktop.lst
grep -E "Disk|File" liste  | awk -F";" '{print $2}' > $ConsTr/Disk.lst
grep -E "Document|Editor" liste | awk -F";" '{print $2}' > $ConsTr/Document.lst
grep File liste  | awk -F";" '{print $2}' > $ConsTr/File.lst
grep Fun liste  | awk -F";" '{print $2}' > $ConsTr/Fun.lst
grep Graphic liste  | awk -F";" '{print $2}' > $ConsTr/Graphic.lst
grep Internet liste  | awk -F";" '{print $2}' > $ConsTr/Internet.lst
grep Network liste  | awk -F";" '{print $2}' > $ConsTr/Network.lst
grep Personal liste  | awk -F";" '{print $2}' > $ConsTr/Personal.lst
grep Security liste  | awk -F";" '{print $2}' > $ConsTr/Security.lst
grep Setup liste  | awk -F";" '{print $2}' > $ConsTr/Setup.lst
grep System liste  | awk -F";" '{print $2}' > $ConsTr/System.lst
grep Terminal liste  | awk -F";" '{print $2}' > $ConsTr/Terminal.lst
grep Utility liste | grep -E -v "Graphic|Personal|Setup" | awk -F";" '{print $2}' > $ConsTr/Utility.lst
#
cd $ConsTr
ls -1 *.lst > groupes
while read groupe;do
   Titr="${groupe%.*}"
   > $Titr.submenu
   echo "menu $Titr folder {
   separator" >> $Titr.submenu
      while read line;do
         Nom="${line%.*}"
         Icn="`grep -m 1 "Icon=" $APPS/$line`"
         Icn="${Icn#*=}"
         echo "    prog $Nom $Icn rox $APPS/$line" >> $Titr.submenu
      done < $groupe
   echo "   separator
   }" >> $Titr.submenu
done < groupes
rm *.lst
# Grands groupes
echo "menu Activities folder {
separator" > Activities.submenu
cat Au*.submenu Calc*.submenu Do*.submenu Fun.submenu Gra*.submenu Int*.submenu Personal.submenu >> Activities.submenu
echo "separator
}" >> Activities.submenu

echo "menu Technical folder {
separator" > Technical.submenu
cat Di*.submenu Net*.submenu S*.submenu Term*.submenu Util*.submenu >> Technical.submenu
echo "separator
}" >> Technical.submenu

# Menu final
cat 000.submen Activ*.submenu Tech*.submenu zzz.submen > ../menu
rm *.submenu
cp ../menu ../menu.bkp
# The updated icewm menu is now ready.

Also this companion file for creating the 000 and zzz personal submenus:
Code:
#!/bin/bash
# /root/.icewm/Construction/000-zzz.sh
# Companion file to lister2-icons.sh
####
echo "prog ReList /root/.icewm/Redo.png /root/.icewm/lister2.sh
# prog ReList - /root/.icewm/lister.sh
# Uncomment the variant you prefer.

# You can insert other useful   <=-
# personal apps on these lines. <=-
separator" > 000.submen

echo "separator
prog Terminal /root/.icewm/xterm.xpm defaultterminal
# You can insert other useful   <=-
# personal apps on these lines. <=-
" > zzz.submen

I'll provide a pet archive later, but you have all you need in this post.

TWYL.
icewm-menu-creator-script-icons.jpg
 Description   
 Filesize   149.93 KB
 Viewed   228 Time(s)

icewm-menu-creator-script-icons.jpg

Redo.png
 Description   
 Filesize   13.89 KB
 Viewed   240 Time(s)

Redo.png

xterm.xpm
Description 
xpm

 Download 
Filename  xterm.xpm 
Filesize  3.27 KB 
Downloaded  192 Time(s) 

_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Back to top
View user's profile Send private message 
josejp2424


Joined: 01 Aug 2010
Posts: 558

PostPosted: Fri 10 Jul 2020, 20:24    Post subject: menu icewm
Subject description: menu icewm
 

I was playing with the icewm menu
my results.


_________________
Shiba Inu | Pupjibaro jessie | My Blog
Back to top
View user's profile Send private message Visit poster's website 
musher0

Joined: 04 Jan 2009
Posts: 15041
Location: Gatineau (Qc), Canada

PostPosted: Sat 11 Jul 2020, 00:16    Post subject: Re: menu icewm
Subject description: menu icewm
 

josejp2424 wrote:
I was playing with the icewm menu
my results.


Interesting!

Were you using one of my scripts, icewm-menu-fdo, xdg-menu, or even something else?

BFN.

_________________
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 2 of 3 [33 Posts]   Goto page: Previous 1, 2, 3 Next
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 » Advanced Topics » Puppy Derivatives
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.7427s ][ Queries: 12 (0.5504s) ][ GZIP on ]