Sorry I missed the last few comments.
Menu System.
The window focus behaviour when right-clicking changed about 6 months ago.
In some recent Ubuntu versions I found that the xdotool 'type' command in my menu did not enter the text (ie Portuguese characters) into text boxes or a text editor like it once did, because right clicking on the desktop now de-focusses the window where the text needs to be entered.
This was not the case when I first wrote my comments above.
When I originally wrote the article, left-clicking on the desktop de-focussed the window, whereas right-clicking did not and the window remained in focus.
However I have found a modern linux distro where the focussing is okay for my 'text entry' menu code.
The distro is Quirky Puppy tahr-6.0.5 which can use the ubuntu repositories and is a proper hard drive install and has a snapshot and restore system which is great for restoring the os after a failed tweak.
http://distro.ibiblio.org/quirky/quirky ... .5.usfs.xz
I used a Precise LXPup 12.12 liveCD to format a hard drive to ext4 using GParted,
then the following script to install Quirky Puppy to the hard drive.
http://distro.ibiblio.org/quirky/quirky ... rtition.sh
This does the os install, but with no boot loader.
Then use the grubconfig menu item in the LXPup 12.12 LiveCD to install (to MBR) the grub boot loader, it will probably be in sda1/boot/grub/
Another way to do it if you already have ubuntu installed is to modify the existing grub menu.
In that case use the command grub-mkconfig -o /boot/grub/grub.cfg to find the Puppy OS and add it to the existing boot menu.
I have found that all my tweaking works with this distro and the forums are very helpful.
When installing any programs with puppy first update the repository database and when installing always examine dependencies and install all required files. It all works very well.
Extra useful notes.
I have dual 22inch monitors and did not need to mess with xorg.conf.
If you have an Nvida graphics card and install the Nouveau driver.
Simply use xrandr to find out your monitor identities DVI-I-1 and VGA-1 for example and make sure they fit exactly the configured size up to 8192x8192 pixels.
Then put this script (example only ... put in your own configs) in your /root/Startup/ folder:
#!/bin/sh
xrandr --fb 1680x2100
xrandr --output VGA-1 --above DVI-I-1
Also another script for the fehbg wallpaper background, after installing feh:
#!/bin/sh
feh --bg-tile '/root/.wallpapers/ptv2.jpg'
Lastly for a system tray, install stalonetray and make a link to the stalonetray executable in the Startup folder.
Look at permissions and make the above scripts executable.
Don't forget to uninstall rox-filer as this takes control of the desktop and prevents some things working here.
The file /root/.jwmrc has the puppy jwm menu entries which can be manually copied and tags converted to the openbox menu xml format.
Edit (additional help) July 19th 2014:
Alternatively write a bash script (save it to your /root/Startup/ folder in Puppy Linux) to parse /root/.jwmrc and automatically write a jwm-menu.xml into the /root/.config/openbox/ menus folder. The script would keep the JWM sub menu layout, by parsing the JWM menu (/root/.jwmrc) and then converting it to the Openbox menu/sub menu format.
Or ... Simple example:
Write a bash script (save it to your /root/Startup folder in Puppy Linux) to parse the /usr/share/applications/ folder and automatically write a usr-share-applications-menu.xml into the /root/.config/openbox/ menus folder.
This will give you a 'flat', 'all-entries' menu, with no sub menus, but it is a good starting point for further experimentation, and it may suffice if you simply want to access all of the puppy installed programs and scripts.
The script below extracts the relevant menu entries from the .desktop files in the usr/share/applications/ folder and then writes an open box menu. That menu will then need to be integrated with (linked to) the other right click menus.
Code: Select all
#!/bin/bash
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
FINDDIR="/usr/share/applications"
OUTFILE="$HOME/.config/openbox/usr-share-applications-menu.xml"
FILES="$(find $FINDDIR -name '*.desktop')"
if [ -e $OUTFILE ];then
rm -f $OUTFILE
echo '<openbox_menu xmlns="http://openbox.org/">
<menu id="root-menu" label="usr-share-applications-menu">
<item label="" icon="/usr/share/icons/Tango/32x32/actions/go-home.png"><action name="Execute"><command>sh -c "cp /root/.config/openbox/menu1.xml /root/.config/openbox/menu.xml && openbox --reconfigure;xdotool mousemove_relative --polar 280 80; xdotool click 3;xdotool mousemove_relative --polar 100 80"</command></action></item>' >>$OUTFILE
for lines in $FILES;do
echo '<item label="'"$(grep Name $lines | gawk -F"=" '{print $2}' | sed '2,1000d')"'" icon="/usr/local/share/icons/'"$(grep Icon $lines | gawk -F"=" '{print $2}' | sed '2,1000d')"'"><action name="Execute"><command>'"$(grep Exec $lines | gawk -F"=" '{print $2}' | sed '2,4d')"'</command></action></item>' >> $OUTFILE
done
echo "</menu>
</openbox_menu>" >> $OUTFILE
sed -i 's/\/usr\/local\/share\/icons\/\//\//g' $OUTFILE
fi
IFS=$SAVEIFS
Edit (additional help) June 7th 2014:
Remember to first install openbox from the Puppy Package Manager, then use the puppy jwm menu to logout of the jwm window manager (command wmexit), this logs out of X.
To get to the openbox window manager type the command 'startx openbox' or 'startx jwm' for jwm.
The system remembers which window manager you used last, so you normally only have to do this once, to enable openbox as your window manager.
There are probably some menu item commands that could be written to enable single click toggling between the 2 window managers.
Puppy rant over.
Have lots of fun configuring and tweaking.
Edit (additional help) January 4th 2015:
This note is related to the posting above regarding monitors and xrandr, but is specifically relevant to small screen netbooks ... xrandr is very useful for configuring netbook screens to pan over larger display areas.
An example of where this is useful (necessary) is when taking screenshots using mtPaint, where the area of the screenshot extends to a size greater than the netbook screen.
To be concise I will just post my right click menu entries and let you experiment.
Code: Select all
<item label="Snap" icon="/usr/share/pixmaps/mtpaint.png"><action name="Execute"><command>mtpaint -s</command></action></item>
<item label="1kpx" icon="/usr/share/pixmaps/mtpaint.png"><action name="Execute"><command>xrandr --output LVDS1 --mode 1024x600 --panning 1024x1000 --scale 1.0x1.0</command></action></item>
<item label="600px" icon="/usr/share/pixmaps/mtpaint.png"><action name="Execute"><command>xrandr --output LVDS1 --mode 1024x600 --panning 1024x600 --scale 1.0x1.0</command></action></item>
In my opinion 'seriously useful and fun'.
More information from Linux Mint and Crunchbang forums.
http://forums.linuxmint.com/viewtopic.php?f=90&t=35652
http://crunchbang.org/forums/viewtopic.php?id=20634