site  contact  subhomenews

File lists of "builtin" packages

May 27, 2010 — BarryK
Back in the days when we used "Unleashed" to build puppies, there was a script that generated a PET package that had file-lists of all the packages built-in to the main SFS file.

It was pizzasgood who developed a tool named 'pet-be-gone' to read that PET package and "uninstall" packages. It doesn't really uninstall of course, as the main Puppy SFS is read-only, but it does hide the files.

Forum post on pet-be-gone:

The reason that you would want to do this is for remastering the CD. For example, you could "uninstall" SeaMonkey, then install a different browser, then remaster the CD.

There is an ongoing interest in remastering our puppies, so I have brought back the file-lists of built-in packages. Woof now creates a PET, named '0builtin_files_<file prefix>-<version>.pet' -- for example ''.

However, as the PET is only 50KB I decided to default to including it in the live-CD, that is, the main SFS file.

The file-lists are at /root/.packages/builtin_files, and we can once again have a tool like pet-be-gone to "uninstall" builtin packages.
Note that pizzasgood's original utility will need modification to work.


Username: BarryK
Note, if I recall rightly, the file-lists of inbuilt packages, back in the Unleashed days, was lists of files only, not directories. Thus, pet-be-gone did not know what empty directories (after files are deleted), could be removed. The file lists now also contain names of directories. The format now is like this: /root/.packages/builtin_files/abiword: [code]/root /root/.AbiSuite AbiWord.Profile /root/.AbiSuite/dictionary /root/.AbiSuite/templates normal.awt /usr /usr/bin abiword /usr/lib /usr/lib/abiword-2.8 /usr/lib/abiword-2.8/plugins /usr/share /usr/share/abiword-2.6 /usr/share/abiword-2.8 /usr/share/abiword-2.8/mime-info abiword.keys /usr/share/abiword-2.8/strings en-AU.strings en-CA.strings en-GB.strings en-IE.strings /usr/share/abiword-2.8/templates normal.awt normal.awt-en_AU normal.awt-en_CA normal.awt-en_GB normal.awt-en_IE normal.awt-en_NZ normal.awt-en_ZA /usr/share/abiword-2.8/ui ap_UnixDialog_Annotation.xml ap_UnixDialog_Break.xml ap_UnixDialog_Field.xml ap_UnixDialog_FormatFootnotes.xml ap_UnixDialog_FormatFrame.xml ap_UnixDialog_FormatTable.xml ap_UnixDialog_FormatTOC.xml ap_UnixDialog_Goto.xml ap_UnixDialog_HdrFtr.xml ap_UnixDialog_Insert_DateTime.xml ap_UnixDialog_InsertTable.xml ap_UnixDialog_Latex.xml ap_UnixDialog_MailMerge.xml ap_UnixDialog_MetaData.xml ap_UnixDialog_New.xml ap_UnixDialog_Options_ColorSel.xml ap_UnixDialog_Options.xml ap_UnixDialog_PageNumbers.xml ap_UnixDialog_PageSetup.xml ap_UnixDialog_Replace.xml ap_UnixDialog_Spell.xml ap_UnixDialog_Styles.xml ap_UnixDialog_Stylist_modal.xml ap_UnixDialog_Stylist.xml ap_UnixDialog_Tab.xml ap_UnixDialog_WordCount.xml xap_UnixDlg_DocComparison.xml xap_UnixDlg_Encoding.xml xap_UnixDlg_History.xml xap_UnixDlg_Image.xml xap_UnixDlg_Language.xml xap_UnixDlg_ListDocuments.xml xap_UnixDlg_Password.xml xap_UnixDlg_PluginManager.xml xap_UnixDlg_WindowMore.xml xap_UnixDlg_Zoom.xml /usr/share/applications Abiword-wordprocessor.desktop /usr/share/doc abiword.htm /usr/share/icons abiword_48.png [/code] Username: 27 May 2010, 19:13
"01620"'PET-Be-Gone"Pizzasgood"So regarding the above, if it sees an empty directory listed it should just go ahead and delete it? Should I maybe add a check so that it doesn't delete core things like /usr/local/bin if they happen to be made empty, or would that be desirable behavior? Also, is /usr/local/apps/ still the standard location for ROX-Apps in Puppy? (I'm running CheesyRamHog right now or I'd check myself.) PET-Be-Gone was always installed at /root/my-roxapps/, but mainly just as a holdover from the days when /root was the only place where we [i]could[/i] install things."29 May 2010, 24:09"01620"'Re pet-be-gone"BarryK"Yeah, I guess if a directory becomes empty then delete it. In fact, you could first iterate through all the files and delete them, then iterate through all the directories -- "rm <dir> 2>/dev/null" can be applied and it will automatically fail if not empty. I think these days, most developers are putting their apps into /usr/local/<my-application-dir>, with a symlink perhaps in /usr/bin. Username: 30 May 2010, 8:10
"01620"'remover"martin"A drag and drop "builtin packages remover":"30 May 2010, 8:32"01620"'Re remover"BarryK"Sorry, that should be "rmdir <dir> 2>/dev/null" Username: 30 May 2010, 8:38
"01620"'Re remover"BarryK"puppymartin, Very good. Could you make a wrapper for it, say that runs from the menu, that opens the two windows automatically and pops up some instructions? Username: 30 May 2010, 8:43
"01620"'remover"Pizzasgood"Cool. Does that mean I don't need to dust off PET-Be-Gone after all? I'm willing to upgrade it to the new system, but I do have other projects I'd rather be focusing on right now. (Pizza isn't free, unfortunately. :|)"2 Jun 2010, 12:08"01620"'for 4.3.1?"axiz"But, where i find the file for built-in applications in 4.3.1?. I can't find it..

Tags: woof