Some suggestions that will make Puppy excellent
-
- Posts: 229
- Joined: Wed 25 Aug 2010, 15:38
- Location: ISM Dhanbad, Jharkhand, India
Some suggestions that will make Puppy excellent
It is always very difficult for linux newbies to use and adapt to linux operating systems. Being easy enough for linux newbies is a major test for every linux OS, and almost all OSes fail in it. I would suggest following improvements which should make the lives of Puppy linux users easy-
1. Desktop drive icons: They should show volume labels along with drive numbers.
2. Grub bootloader config: It should have ability to detect existing operating systems and generate appropriate configurations to boot them. (I think the easiest way to do that is to read existing bootloader config files, or better still edit existing bootloader.)
3. Lucid Puppy menus: Pupdial and Roaring Penguin icons are missing by default. It would be very convenient if they were present, as in Puppy 4.
4. Power buttons: Puppy should be able to shutdown by pressing power button on computer case, like Windows and a few other linux distributions.
5. Power management: It could be better if Puppy could support standby and hibernate modes. Major linux distributions like Ubuntu support it.
6. Window management: Puppy could have a better window manager like Openbox.
7. Packages : All puppies of same major version (e.g. 4.x, 5.x, ...) should have packages and kernels of same versions. This will improve compatibility.
8. Desktop drive icons: These could be locked, so users cannot accidentally delete it and then keep wondering how it disappeared (This mistake is often done by me, so I know it.)
1. Desktop drive icons: They should show volume labels along with drive numbers.
2. Grub bootloader config: It should have ability to detect existing operating systems and generate appropriate configurations to boot them. (I think the easiest way to do that is to read existing bootloader config files, or better still edit existing bootloader.)
3. Lucid Puppy menus: Pupdial and Roaring Penguin icons are missing by default. It would be very convenient if they were present, as in Puppy 4.
4. Power buttons: Puppy should be able to shutdown by pressing power button on computer case, like Windows and a few other linux distributions.
5. Power management: It could be better if Puppy could support standby and hibernate modes. Major linux distributions like Ubuntu support it.
6. Window management: Puppy could have a better window manager like Openbox.
7. Packages : All puppies of same major version (e.g. 4.x, 5.x, ...) should have packages and kernels of same versions. This will improve compatibility.
8. Desktop drive icons: These could be locked, so users cannot accidentally delete it and then keep wondering how it disappeared (This mistake is often done by me, so I know it.)
Last edited by akash_rawal on Tue 29 Mar 2011, 06:51, edited 1 time in total.
1. Dunno
2.Thats a tough egg.. ubuntu often doesn't even do that well.
Nowdays theres lilo grub grub2 windows that would need to be supported at least. windows ammounts to chainloading so it is easy.
Linux boot loaders aren't quite as easy as you would acutally have to parse their config files.....in fact it may even be desirable to have a dedicated boot partition if you try out lots of OSes so you can keep the same grub all the time.
3. sounds like a simple oversight to me.
2.Thats a tough egg.. ubuntu often doesn't even do that well.
Nowdays theres lilo grub grub2 windows that would need to be supported at least. windows ammounts to chainloading so it is easy.
Linux boot loaders aren't quite as easy as you would acutally have to parse their config files.....in fact it may even be desirable to have a dedicated boot partition if you try out lots of OSes so you can keep the same grub all the time.
3. sounds like a simple oversight to me.
Taking Puppy Linux to the limit of perfection. meanwhile try "puppy pfix=duct_tape" kernel parem eater.
X86: Sager NP6110 3630QM 16GB ram, Tyan Thunder 2 2x 300Mhz
Sun: SS2 , LX , SS5 , SS10 , SS20 ,Ultra 1, Ultra 10 , T2000
Mac: Platinum Plus, SE/30
X86: Sager NP6110 3630QM 16GB ram, Tyan Thunder 2 2x 300Mhz
Sun: SS2 , LX , SS5 , SS10 , SS20 ,Ultra 1, Ultra 10 , T2000
Mac: Platinum Plus, SE/30
(1) should be possible - someone posted how to use volume labels a couple of months ago.
Do you know a good gtkdialog program? Please post a link here
Classic Puppy quotes
ROOT FOREVER
GTK2 FOREVER
Classic Puppy quotes
ROOT FOREVER
GTK2 FOREVER
It is always very difficult for linux newbies to use and adapt to linux operating systems. Being easy enough for linux newbies is a major test for every linux OS, and almost all OSes fail in it. I would suggest following improvements which should make the lives of linux users easy
I am sort of an forever newbie in that I even fail to get what a volume label is?
I have frugally installed some 75 different Linux distros and will try out the Latest SuperOS today in frugal install.
I am sure of that I have no idea what a volume label is.
And not even recognixe one unless you pointed it out to me.
You expect much of us newbies
I agree that it would be cool if the install could make educated considerations of already installed OS and suggest what would be the best way to dual boot or trippel or quad or to boot then in a certain order.
To many OS think them should be the sole OS on that computer.
Even Linux guys get very surprised that one want to dual boot.
Wipe it all clean they say and refuse to talk to the dual booter.
I use Google Search on Puppy Forum
not an ideal solution though
not an ideal solution though
-
- Posts: 229
- Joined: Wed 25 Aug 2010, 15:38
- Location: ISM Dhanbad, Jharkhand, India
Volume label is a name that can be given to a partition of a drive.nooby wrote:I am sure of that I have no idea what a volume label is.
Microsoft Windows displays volume labels by default in Windows Explorer along with drive letters.
In Puppy also you can see volume labels in GParted (Menu>System>GParted partition manager). It will show them against each partition in "Label" column.
What does it all mean? I'm using quirky 1.3 in a computer with 4 GB of RAM and no hard disk drive, and 2 flash drives plugged into USB ports and an mp3 player also plugged into a USB port to charge.# blkid -h
blkid 1.0.0 (12-Feb-2003)
usage: blkid [-c <file>] [-ghlLv] [-o format] [-s <tag>] [-t <token>]
[-w <file>] [dev ...]
-c cache file (default: /etc/blkid.tab, /dev/null = none)
-h print this usage message and exit
-g garbage collect the blkid cache
-s show specified tag(s) (default show all tags)
-t find device with a specific token (NAME=value pair)
-l lookup the the first device with arguments specified by -t
-v print version and exit
-w write cache to different file (/dev/null = no write)
dev specify device(s) to probe (default: all devices)
# blkid
/dev/loop0: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"
/dev/sda1: LABEL="CORSAIR" UUID="BC91-2FE5" TYPE="vfat"
/dev/sdb1: LABEL="KINGSTON" UUID="040B-07A3" TYPE="vfat"
/dev/sdc1: UUID="D461-730D" TYPE="vfat"
#
I hope running blkid didn't cause the mp3 player to lose track of where it was when I turned it off.
-
- Posts: 229
- Joined: Wed 25 Aug 2010, 15:38
- Location: ISM Dhanbad, Jharkhand, India
Honestly, I don't know which devices do /dev/loop0 and /dev/loop3 point to. Probably they point to your personal save file and main sfs file.Flash wrote:What does it all mean?# blkid -h
blkid 1.0.0 (12-Feb-2003)
usage: blkid [-c <file>] [-ghlLv] [-o format] [-s <tag>] [-t <token>]
[-w <file>] [dev ...]
-c cache file (default: /etc/blkid.tab, /dev/null = none)
-h print this usage message and exit
-g garbage collect the blkid cache
-s show specified tag(s) (default show all tags)
-t find device with a specific token (NAME=value pair)
-l lookup the the first device with arguments specified by -t
-v print version and exit
-w write cache to different file (/dev/null = no write)
dev specify device(s) to probe (default: all devices)
# blkid
/dev/loop0: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"
/dev/sda1: LABEL="CORSAIR" UUID="BC91-2FE5" TYPE="vfat"
/dev/sdb1: LABEL="KINGSTON" UUID="040B-07A3" TYPE="vfat"
/dev/sdc1: UUID="D461-730D" TYPE="vfat"
#
/dev/sda1, /dev/sdb1 and /dev/sdc1 point to your two flash drives and an MP3 player (maybe not respectively). They all have fat16 or fat32 filesystem.
Well, this discussion is about making Puppy use the volume label to identify your disks. Only two of yours have a label: "CORSAIR" and "KINGSTON".What does it all mean?
Do you know a good gtkdialog program? Please post a link here
Classic Puppy quotes
ROOT FOREVER
GTK2 FOREVER
Classic Puppy quotes
ROOT FOREVER
GTK2 FOREVER
GParted has the power to change/add labels, look at this picture: http://www.dedoimedo.com/images/compute ... look-1.jpg.
Yes, but what is the point in changing the labels if Puppy doesn't actually use them?
Do you know a good gtkdialog program? Please post a link here
Classic Puppy quotes
ROOT FOREVER
GTK2 FOREVER
Classic Puppy quotes
ROOT FOREVER
GTK2 FOREVER
-
- Posts: 229
- Joined: Wed 25 Aug 2010, 15:38
- Location: ISM Dhanbad, Jharkhand, India
I think it will be more useful if we discuss how to implement them.
Now I have no time.
I will start implementing them at April 2011 onwards.
Now I have no time.
I will start implementing them at April 2011 onwards.
Last edited by akash_rawal on Sat 20 Nov 2010, 15:01, edited 1 time in total.
It shouldn't be too hard. The script you need to modify is /sbin/pup_event_frontend_d.
Modify the following function:
Just fix it so the Label is the drive label instead of the drive name. Of course you will need to add the logic to find the label.
Modify the following function:
Code: Select all
add_pinboard_func() { #needs ONEDRVNAME, DRV_CATEGORY, FSTYPE
#ppPATTERN=' label="'"$ONEDRVNAME"'"'
#v411 rerwin: avoid icon getting duplicated if it is renamed...
ppPATTERN="/root/.pup_event/drive_${ONEDRVNAME}<"
[ "`grep "$ppPATTERN" /root/Choices/ROX-Filer/PuppyPin`" != "" ] && return #precaution.
free_coord
echo "<?xml version=\"1.0\"?>
<env:Envelope xmlns:env=\"http://www.w3.org/2001/12/soap-envelope\">
<env:Body xmlns=\"http://rox.sourceforge.net/SOAP/ROX-Filer\">
<PinboardAdd>
<Path>/root/.pup_event/drive_${ONEDRVNAME}</Path>
<X>${COORD_X}</X>
<Y>${COORD_Y}</Y>
<Label>${ONEDRVNAME}</Label>
<Args>${DRV_CATEGORY} ${FSTYPE}</Args>
</PinboardAdd>
</env:Body>
</env:Envelope>" | rox -R
}
-
- Posts: 229
- Joined: Wed 25 Aug 2010, 15:38
- Location: ISM Dhanbad, Jharkhand, India
Somehow I managed to get some time off my busy routine.
So I implemented the first one. Thanks to jemimah and upnorth for information, or else I might never come to know how to do that.
Notice a new executable blkid-name-generator in Label tag.
Using a text editor create a script /usr/bin/blkid-name-generator as:
However the function remove_pinboard_func() in /sbin/pup_event_frontend_d also needs to be edited:
After that right-click on a drive icon, select "Run Desktop Drive Icon Manager" and then in "desktop icons" tab click "Tick box to erase then redraw and realign existing icons" and then click OK button.
Then restart X for changes to take effect.
And this works very well on puppy 430.
So I implemented the first one. Thanks to jemimah and upnorth for information, or else I might never come to know how to do that.
I modified it as:jemimah wrote: The script you need to modify is /sbin/pup_event_frontend_d.
Modify the following function:
Code: Select all
add_pinboard_func() { #needs ONEDRVNAME, DRV_CATEGORY, FSTYPE #ppPATTERN=' label="'"$ONEDRVNAME"'"' #v411 rerwin: avoid icon getting duplicated if it is renamed... ppPATTERN="/root/.pup_event/drive_${ONEDRVNAME}<" [ "`grep "$ppPATTERN" /root/Choices/ROX-Filer/PuppyPin`" != "" ] && return #precaution. free_coord echo "<?xml version="1.0"?> <env:Envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope"> <env:Body xmlns="http://rox.sourceforge.net/SOAP/ROX-Filer"> <PinboardAdd> <Path>/root/.pup_event/drive_${ONEDRVNAME}</Path> <X>${COORD_X}</X> <Y>${COORD_Y}</Y> <Label>${ONEDRVNAME}</Label> <Args>${DRV_CATEGORY} ${FSTYPE}</Args> </PinboardAdd> </env:Body> </env:Envelope>" | rox -R }
Code: Select all
add_pinboard_func() { #needs ONEDRVNAME, DRV_CATEGORY, FSTYPE
#ppPATTERN=' label="'"$ONEDRVNAME"'"'
#v411 rerwin: avoid icon getting duplicated if it is renamed...
ppPATTERN="/root/.pup_event/drive_${ONEDRVNAME}<"
[ "`grep "$ppPATTERN" /root/Choices/ROX-Filer/PuppyPin`" != "" ] && return #precaution.
free_coord
echo "<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope">
<env:Body xmlns="http://rox.sourceforge.net/SOAP/ROX-Filer">
<PinboardAdd>
<Path>/root/.pup_event/drive_${ONEDRVNAME}</Path>
<X>${COORD_X}</X>
<Y>${COORD_Y}</Y>
<Label>$(blkid-name-generator $ONEDRVNAME)</Label>
<Args>${DRV_CATEGORY} ${FSTYPE}</Args>
</PinboardAdd>
</env:Body>
</env:Envelope>" | rox -R
if [ "$( cat /root/.drvlist | grep $ONEDRVNAME )" = "" ]; then
echo $ONEDRVNAME >> /root/.drvlist
fi
}
Using a text editor create a script /usr/bin/blkid-name-generator as:
Code: Select all
#!/bin/sh
#Gather blkid output and filter out required device
blkid | grep "$@:" |
while read DEVICE PROPS
do
echo $PROPS | sed -e "s/ /\;/g" > /tmp/blkid-tmp.txt
. /tmp/blkid-tmp.txt
DRLABEL=$( echo $LABEL | sed -e "s/;/ /g" )
#Generate drive label
if [ "$DRLABEL" = "" ]; then
echo "$@"
else
echo "$DRLABEL
($@)"
fi
done
#Handle the situation if blkid doesn't list required device
if [ "$( blkid | grep $@: )" = "" ]; then
echo "$@"
fi
exit
Code: Select all
remove_pinboard_func() { #needs DRV_NAME (name of entire drive)
#ppPATTERN=' label="'"$DRV_NAME"'.*" '
#[ "`grep "$ppPATTERN" /root/Choices/ROX-Filer/PuppyPin`" = "" ] && return
#ALLNAMES="`grep -o "$ppPATTERN" /root/Choices/ROX-Filer/PuppyPin | cut -f 2 -d '"' | tr '\n' ' '`" #'geany
#for ONEDRVNAME in $ALLNAMES
#do
#echo "<?xml version="1.0"?>
#<env:Envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope">
#<env:Body xmlns="http://rox.sourceforge.net/SOAP/ROX-Filer">
#<PinboardRemove>
#<Path>/root/.pup_event/drive_${ONEDRVNAME}</Path>
#</PinboardRemove>
#</env:Body>
#</env:Envelope>" | rox -R
#done
#Rewritten to cope with blkid-name-generator
cat /root/.drvlist | grep "$DRV_NAME" |
while read ONEDRVNAME
do
echo "<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope">
<env:Body xmlns="http://rox.sourceforge.net/SOAP/ROX-Filer">
<PinboardRemove>
<Path>/root/.pup_event/drive_${ONEDRVNAME}</Path>
</PinboardRemove>
</env:Body>
</env:Envelope>" | rox -R
sed -i -e "s/${ONEDRVNAME}//g" /root/.drvlist
done
}
Then restart X for changes to take effect.
And this works very well on puppy 430.
Last edited by akash_rawal on Mon 17 Jan 2011, 18:17, edited 2 times in total.
If you make this modification, then the drives with out labels will line up vertically.
Code: Select all
if [ "$DRLABEL" = "" ]; then
echo -e "$@\n "
else
echo "$DRLABEL
($@)"
fi
-
- Posts: 229
- Joined: Wed 25 Aug 2010, 15:38
- Location: ISM Dhanbad, Jharkhand, India
Yes, it does make the drive icons look tidier.jemimah wrote:If you make this modification, then the drives with out labels will line up vertically...
Last edited by akash_rawal on Mon 17 Jan 2011, 18:14, edited 2 times in total.
- abushcrafter
- Posts: 1418
- Joined: Fri 30 Oct 2009, 16:57
- Location: England
- Contact:
Thanks muchly. I have been wanting this for a long time .
What about drive labels for mount points? Would it be possible to have links in "/media" pointing to mount points in "/mnt"? Then drive icons will show up in the side panel of the GTK File Dialogue .
What about drive labels for mount points? Would it be possible to have links in "/media" pointing to mount points in "/mnt"? Then drive icons will show up in the side panel of the GTK File Dialogue .
[url=http://www.adobe.com/flashplatform/]adobe flash is rubbish![/url]
My Quote:"Humans are stupid, though some are clever but stupid." http://www.dependent.de/media/audio/mp3/System_Syn_Heres_to_You.zip http://www.systemsyn.com/
My Quote:"Humans are stupid, though some are clever but stupid." http://www.dependent.de/media/audio/mp3/System_Syn_Heres_to_You.zip http://www.systemsyn.com/