PET-Be-Gone v0.4
Posted: Fri 06 Apr 2007, 04:44
Only compatible with Puppy versions less than 4.3. (More specifically, it only works on Puppies that were built with Unleashed. Woof-built Puppies are not compatible with this package.)
PET-Be-Gone is an application to help you remove the programs that Puppy comes with. As of Puppy 2.14, examples are Abiword, Gnumeric, Seamonkey, Gxine, and Geany. There are literally hundreds more, though most are very small libraries for stuff like ogg support or jpg images. For the curious, unlike the old PupBeGone, this app was written from the ground up. It's orders of magnitude faster, much better looking, and far simpler to work with. I'm not afraid to look at this one's guts (I still avoid the old PupBeGone like a non-creative writing assignment at two in the morning)
How it works is pretty simple. First, you must install the 0pkgs_db-x.x.x.pet file! It is available through the PETget install that comes with Puppy. That file contains lists of what each package contains and where they are located. Without it, nothing can be uninstalled.
When that's set up, you can install and use PET-Be-Gone (links provided below). It is a ROX-App that installs to /root/my-roxapps/. It will also add an entry to the menus (restart the windowmanager first). It will pop up the familiar interface used by PETget, except the contents will be different. Listed on the right are all the packages built into Puppy. Select and remove the ones you wish to eradicate, and press continue. It will then cycle through and uninstall them. It will also edit livepackages.txt, which means you can re-install those apps later with PETget if you miss them. Additionally, it creates a deadpackages.txt file so it can keep track of what it has and has not removed.
When it's finished, the packages will be deleted. If you restart your windowmanager, the menus should update to reflect that.
HOWEVER, unless you are running a Full-HD install, they won't truly be deleted. This is no fault of yours, mine, nor PET-Be-Gone's. It's a result of the very nature of Puppy. Those apps were contained in a read-only compressed file. When you modify or "delete" them, Puppy merely turns a blind eye to the original. So Puppy will think you've deleted them and you won't be able to use them anymore, but no space will be freed. Actually, a slight amount of space will be used for the "whiteout" files that Puppy uses to hide them.
So, what's the solution? Remaster. Although they apps still exist within the pup_xxx.sfs file, Puppy cannot see them. Neither can the remaster script. So if you use it to remaster Puppy, those apps will not be included, and the resulting Puppy will be smaller. Replace your old Puppy with this new, lighter one, and presto! Apps are gone for good.
Okay, now that I've gotten all that out of the way, here is the download link:
petbegone-0.4.pet
DEPENDENCY: 0pkgs_db-x.x.x.pet, available through the PETget installer. If it doesn't show, then it is generally availible from the ibiblio server, in the directory corresponding to the version of Puppy you use. Be sure to get the one for the Puppy you use, or it will not remove packages correctly!
Warning: Sometimes PET-Be-Gone can corrupt your /root/.packages/livepackages.txt and /root/.packages/deadpackages.txt files. It will make a backup before every edit, but it only maintains the most recent backup, so you may wish to make your own backups also. If you get the "Xdialog error", try restoring this file, and possibly deleting the /root/.packages/deadpackages.txt file. Doing the latter will make PET-Be-Gone forget that it has already removed all the packages you've removed. Otherwise it should have no ill effects.
updated May 5, 2008: corrected sed error that would change the 'on' in package descriptions
updated Oct 18, 2008: corrected grep errors that mishandled quotations
updated Oct 19, 2008: corrected more grep and sed errors, and made more robust to hopefully avoid disabling PET-Be-Gone if there are remaining errors
PET-Be-Gone is an application to help you remove the programs that Puppy comes with. As of Puppy 2.14, examples are Abiword, Gnumeric, Seamonkey, Gxine, and Geany. There are literally hundreds more, though most are very small libraries for stuff like ogg support or jpg images. For the curious, unlike the old PupBeGone, this app was written from the ground up. It's orders of magnitude faster, much better looking, and far simpler to work with. I'm not afraid to look at this one's guts (I still avoid the old PupBeGone like a non-creative writing assignment at two in the morning)
How it works is pretty simple. First, you must install the 0pkgs_db-x.x.x.pet file! It is available through the PETget install that comes with Puppy. That file contains lists of what each package contains and where they are located. Without it, nothing can be uninstalled.
When that's set up, you can install and use PET-Be-Gone (links provided below). It is a ROX-App that installs to /root/my-roxapps/. It will also add an entry to the menus (restart the windowmanager first). It will pop up the familiar interface used by PETget, except the contents will be different. Listed on the right are all the packages built into Puppy. Select and remove the ones you wish to eradicate, and press continue. It will then cycle through and uninstall them. It will also edit livepackages.txt, which means you can re-install those apps later with PETget if you miss them. Additionally, it creates a deadpackages.txt file so it can keep track of what it has and has not removed.
When it's finished, the packages will be deleted. If you restart your windowmanager, the menus should update to reflect that.
HOWEVER, unless you are running a Full-HD install, they won't truly be deleted. This is no fault of yours, mine, nor PET-Be-Gone's. It's a result of the very nature of Puppy. Those apps were contained in a read-only compressed file. When you modify or "delete" them, Puppy merely turns a blind eye to the original. So Puppy will think you've deleted them and you won't be able to use them anymore, but no space will be freed. Actually, a slight amount of space will be used for the "whiteout" files that Puppy uses to hide them.
So, what's the solution? Remaster. Although they apps still exist within the pup_xxx.sfs file, Puppy cannot see them. Neither can the remaster script. So if you use it to remaster Puppy, those apps will not be included, and the resulting Puppy will be smaller. Replace your old Puppy with this new, lighter one, and presto! Apps are gone for good.
Okay, now that I've gotten all that out of the way, here is the download link:
petbegone-0.4.pet
DEPENDENCY: 0pkgs_db-x.x.x.pet, available through the PETget installer. If it doesn't show, then it is generally availible from the ibiblio server, in the directory corresponding to the version of Puppy you use. Be sure to get the one for the Puppy you use, or it will not remove packages correctly!
Warning: Sometimes PET-Be-Gone can corrupt your /root/.packages/livepackages.txt and /root/.packages/deadpackages.txt files. It will make a backup before every edit, but it only maintains the most recent backup, so you may wish to make your own backups also. If you get the "Xdialog error", try restoring this file, and possibly deleting the /root/.packages/deadpackages.txt file. Doing the latter will make PET-Be-Gone forget that it has already removed all the packages you've removed. Otherwise it should have no ill effects.
updated May 5, 2008: corrected sed error that would change the 'on' in package descriptions
updated Oct 18, 2008: corrected grep errors that mishandled quotations
updated Oct 19, 2008: corrected more grep and sed errors, and made more robust to hopefully avoid disabling PET-Be-Gone if there are remaining errors