AUFS really only writes to the top layer. Splitting the writable layers is not really feasible. What you can do is setup puppy how you like, then convert the contents of your save file to a pet, which you could install if you needed to start over for some reason. It's generally better to save documents and such in a location outside the save file.Moose On The Loose wrote:
This brings to mind a suggestion I made before. Perhaps if things are being worked on, it should be considered:
Make the layers like this:
*************************
Current work
*************************
root & my-documents & perhaps my-applications
*************************
All hardware related settings installed pets etc
*************************
Any loaded extending SFS files
*************************
The main SFS file
************************
This way, when someone changes machines or changes versions of puppy the documents he is working on etc can appear in the new machine or version without trouble. It would mean having two save files but other than that it would not be a major change to the way things are done except keeping track of the files from the pets. We know what directories have the
settings.
The order I show has the pets replacing the SFS files when there is a conflict. I think that this is the right order because the pets are usually done only after the first re-boot if you want to use some SFS.
The State of Package Management
Really? Try searching the various builtin names and let me know what the correct woof pet.spec is. The names could be easily searchable for the specific spec.jemimah wrote:
For woof-installed packages, you can find a copy of the pet.specs in /root/woof-installed-packages. The pet.specs contains the package name, dependencies, and origin. The list of files is in /root/packags/builtin_files/<packagename>. Barry uses a compressed format that is different than the filelist for user installed packages, but all the information is there. The only thing that is discarded is the pinstall and puninstall scripts - most packages don't have these anyway.
Searching the file is probably not as hard as you think it is.
Code: Select all
cat woof-installed-packages | egrep ".*\|.*zip.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|"
This is a start, but still doesn't work for names like "bc". It also takes too long and still needs more filtering out for use in a script. I also don't know if the builtin is using the dev package or not. Why not just use specific names in the builtin list? Note that the script has to account for a name like "acl" referencing "libacl1" (or at least I think that's what it's referencing).jemimah wrote:Searching the file is probably not as hard as you think it is.
Code: Select all
cat woof-installed-packages | egrep ".*\|.*zip.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|"
"ed" could be "libedit" or "libedit2", each with separate devs (or who knows what else).
Code: Select all
#!/bin/sh
OLD_IFS="${IFS}"
IFS="|"
cd /root/.packages
var=`cat woof-installed-packages | grep ${1} `
for i in $var; do
var=`echo "$i" | grep "^${1}"`
[ "$var" ] || echo "$i" | grep "^lib${1}"
done
IFS="${OLD_IFS}"
Sure it does
How long does this take for you?
I think the builtins are that way because it takes less space. Don't like it? Fix it.
Code: Select all
cat woof-installed-packages |egrep ".*\|bc\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|"
There wouldn't be an aliases problem if you weren't using compat packages - maintaining our own repo allows us to have consistent package names. But you can get a list of aliases from /root/.packages/PKGS_MANAGEMENT.real 0m0.008s
user 0m0.006s
sys 0m0.002s
I think the builtins are that way because it takes less space. Don't like it? Fix it.
Code: Select all
cat /root/.packages/builtin_files/<packagename> |
while read LINE ; do
if [[ $LINE =~ '/.*' ]] ; then
DIR=$LINE
continue
else
echo ${DIR}/$LINE
fi
done
try it with "acl", "atk" , etc...jemimah wrote:Sure it does
How long does this take for you?Code: Select all
cat woof-installed-packages |egrep ".*\|bc\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|"
Also doesn't address the issues already mentioned. Thanks
I'll keep looking...
Last edited by jpeps on Tue 21 Feb 2012, 22:20, edited 1 time in total.
Aitch; Exactly... Puppy`s always looking for a better version ( throw-away ).
I`ve used 3 at a time, each one doing something needed ( reboot ). Sad...
jemimah; I agree, Squash files are important to building an advanced O.S.
As I`ve said listing their advantages, there`s lots to like about Squash files.
jpeps; Why do you say this? In what manner is Puppy better? Boot options?
I agree with amigo in that loading apps. into ram is a waste of ram space.
The Squash file takes ~1/3 the apps. size, and running it uses more ram.
Same with a swap, uses ram, slows the O.S. down, and works the H.D.
But to do without a swap a PC needs at least 1GB of ram ( arguably more ).
I always thought the config. files in one save and app. installs in another.
Mixing everything together is a mess and prone to save file corruption.
But if there`s a Linux partition, why have a save file? Use save directories.
Yes, most Puppy installs are frugal, and that says a lot. "Method of choice".
Frugal installs are far less prone to corruption and viruses ( but not perfect ).
I`ve used 3 at a time, each one doing something needed ( reboot ). Sad...
jemimah; I agree, Squash files are important to building an advanced O.S.
As I`ve said listing their advantages, there`s lots to like about Squash files.
jpeps; Why do you say this? In what manner is Puppy better? Boot options?
T.C. is crude to be sure, but some of it`s basic design is superior to Puppy.The present system is light years ahead of something like TC.
I agree with amigo in that loading apps. into ram is a waste of ram space.
The Squash file takes ~1/3 the apps. size, and running it uses more ram.
Same with a swap, uses ram, slows the O.S. down, and works the H.D.
But to do without a swap a PC needs at least 1GB of ram ( arguably more ).
I always thought the config. files in one save and app. installs in another.
Mixing everything together is a mess and prone to save file corruption.
But if there`s a Linux partition, why have a save file? Use save directories.
Yes, most Puppy installs are frugal, and that says a lot. "Method of choice".
Frugal installs are far less prone to corruption and viruses ( but not perfect ).
I haven't been there in a while, but I was referring to it's propensity for boot failures related to installed apps.sunburnt wrote:
jpeps; Why do you say this? In what manner is Puppy better? Boot options?The present system is light years ahead of something like TC.
doesn't help at alljemimah wrote: But you can get a list of aliases from /root/.packages/PKGS_MANAGEMENT.
thanks, very helpful. I could do my own distro too, but that's not what this thread is about. How much extra space does using a specific file name take ....geez..jemimah wrote: I think the builtins are that way because it takes less space. Don't like it? Fix it.
This seems to do pretty well, although I'm still not clear whether it's the correct package. I didn't see any alsa-lib specs in woof
Code: Select all
#!/bin/sh
OLD_IFS="${IFS}"
IFS="|"
cd /root/.packages
var2=`cat woof-installed-packages |egrep ".*\|${1}*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*\|.*"`
if [ ! "$var2" ]; then
var=`cat woof-installed-packages | grep ${1}`
for i in $var; do
var=`echo "$i" | grep "^${1}" | grep "-" | grep -v "\-dev" | grep -v "\.deb"`
[ "$var" ] || var=`echo "$i" | grep "^lib${1}" | grep "_" | grep -v "\-dev" | grep -v "\.deb"`
if [ "$var" ]; then
spec=`cat woof-installed-packages | grep "$var"`
name=`echo $spec | cut -d' ' -f1`
name=`echo $name | grep $var`
if [ "$name" ]; then
echo "$spec"
break
fi
fi
done
else
echo "$var2"
fi
IFS="${OLD_IFS}"
A file with all the builtin and matching woof names with pet.spec files is all of 80K, 24K compressed
- Attachments
-
- builtin-specs.png
- (18.71 KiB) Downloaded 505 times
What, are people having problems with full installs? Or do you just mean in theory?Frugal installs are far less prone to corruption and viruses ( but not perfect ).
I don't see how they would be any less prone... maybe easier to recover from.
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
The State of Package Management
For reference:jemimah wrote: For woof-installed packages, you can find a copy of the pet.specs in /root/woof-installed-packages. The pet.specs contains the package name, dependencies, and origin. The list of files is in /root/packags/builtin_files/<packagename>.
Code: Select all
#new: pkgname|nameonly|version|pkgrelease|category|size|path|fullfilename|dependencies|description|
#ex: abiword-1.2.4|abiword|1.2.4|5|Document|999K|slackware/ab|abiword-1.2.4-5-i486.tgz|+aiksausus,+gtk2|a nice wordprocessor|
Perl pet specs from /root/.packages/woof-installed-packages, truncated.
Code: Select all
perl_5.10.1|perl|5.10.1|8ubuntu2|BuildingBlock|13156K|pool/main/p/perl|perl_5.10.1-8ubuntu2_i386.deb|....
perl_5.10.1|perl|5.10.1|8ubuntu2|BuildingBlock|13156K|pool/main/p/perl|perl_5.10.1-8ubuntu2_i386.deb|....
perl-base_5.10.1|perl-base|5.10.1|8ubuntu2|System|4608K|pool/main/p/perl|perl-base_5.10.1-8ubuntu2_i386.deb|....
perl-base_5.10.1|perl-base|5.10.1|8ubuntu2|System|4608K|pool/main/p/perl|perl-base_5.10.1-8ubuntu2_i386.deb|....
perl-modules_5.10.1|perl-modules|5.10.1|8ubuntu2|BuildingBlock|15848K|pool/main/p/perl|perl-modules_5.10.1-8ubuntu2_all.deb|....
perl-modules_5.10.1|perl-modules|5.10.1|8ubuntu2|BuildingBlock|15848K|pool/main/p/perl|perl-modules_5.10.1-8ubuntu2_all.deb|.....
From the 'pkgname' field in the above pet specs, duplicates ignored
perl_5.10.1
perl-base_5.10.1
perl-modules_5.10.1
Code: Select all
# ls ~/.packages/builtin_files | grep perl
libperl
perl-digest-sha1
perl-html-parser
perl_tiny
#
What files did perl-base_5.10.1-8ubuntu2_i386.deb provide?
Which ones came from perl_5.10.1-8ubuntu2_i386.deb, or perl-modules_5.10.1-8ubuntu2_all.deb?
[musing]
I wonder what will happen if I make a pet and upgrade perl to the newer full version, then decide to uninstall it.
I want to take a shot at compiling a new kernel. Barry says you need a full install to do that.
Hmm, what packages are already in my devx.... Which files belong to those ... this app looks interesting, I wonder if it will I break anything if I compile & install it...
[/musing]
.

Re: The State of Package Management
Perhaps you should report this type of thing as a bug - you never know, it might get fixed.2byte wrote:For reference:jemimah wrote: For woof-installed packages, you can find a copy of the pet.specs in /root/woof-installed-packages. The pet.specs contains the package name, dependencies, and origin. The list of files is in /root/packags/builtin_files/<packagename>.Just one example --Code: Select all
#new: pkgname|nameonly|version|pkgrelease|category|size|path|fullfilename|dependencies|description| #ex: abiword-1.2.4|abiword|1.2.4|5|Document|999K|slackware/ab|abiword-1.2.4-5-i486.tgz|+aiksausus,+gtk2|a nice wordprocessor|
Perl pet specs from /root/.packages/woof-installed-packages, truncated.Insn't that odd, they are listed twice and the duplicates are identical....Code: Select all
perl_5.10.1|perl|5.10.1|8ubuntu2|BuildingBlock|13156K|pool/main/p/perl|perl_5.10.1-8ubuntu2_i386.deb|.... perl_5.10.1|perl|5.10.1|8ubuntu2|BuildingBlock|13156K|pool/main/p/perl|perl_5.10.1-8ubuntu2_i386.deb|.... perl-base_5.10.1|perl-base|5.10.1|8ubuntu2|System|4608K|pool/main/p/perl|perl-base_5.10.1-8ubuntu2_i386.deb|.... perl-base_5.10.1|perl-base|5.10.1|8ubuntu2|System|4608K|pool/main/p/perl|perl-base_5.10.1-8ubuntu2_i386.deb|.... perl-modules_5.10.1|perl-modules|5.10.1|8ubuntu2|BuildingBlock|15848K|pool/main/p/perl|perl-modules_5.10.1-8ubuntu2_all.deb|.... perl-modules_5.10.1|perl-modules|5.10.1|8ubuntu2|BuildingBlock|15848K|pool/main/p/perl|perl-modules_5.10.1-8ubuntu2_all.deb|.....
disciple; It`s no theory that a Squash file is impervious to viruses.
Though where there`s a will there`s a way, I`m sure it could be done...
The Save file is loose files so it`s open to all the usual problems.
And Squash files are less likely to be corrupted from all the reasons that it
can happen as it`s read-only, and being one file as opposed to thousands.
Both frugal and full installs can rot, but by it`s nature frugal`s more secure.
Though where there`s a will there`s a way, I`m sure it could be done...
The Save file is loose files so it`s open to all the usual problems.
And Squash files are less likely to be corrupted from all the reasons that it
can happen as it`s read-only, and being one file as opposed to thousands.
Both frugal and full installs can rot, but by it`s nature frugal`s more secure.
Last edited by sunburnt on Thu 23 Feb 2012, 23:26, edited 1 time in total.
Here's a detailed explanation by pemasu on the builtins. Another example of all the thought that has gone into the present product.
http://murga-linux.com/puppy/viewtopic. ... &start=660
http://murga-linux.com/puppy/viewtopic. ... &start=660
disciple; It`s no theory that a Squash file is impervious to viruses.
The real question is not whether a squash file is impervious to viruses, but rather whether using squash files makes the system more secure.
It doesn't. Because of the magic of unionfs if Puppy somehow managed to catch a virus, regardless of whether you have a full or a frugal install it would affect you the same and be equally likely to happen.
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
if you are able to create a binary that works as a daemon with a weird name like /usr/bin/fds6rtg , make a pet with a pinstall script , that sed's some lines into a file in /etc/init.d to start it at bootup ...
I really think that Puppy gets too fast updated to make people run Puppy longer than two month .
There is too much MS updated my [anti-]virus psychology warfare , that it hurts to read such thoughts .
I really think that Puppy gets too fast updated to make people run Puppy longer than two month .
There is too much MS updated my [anti-]virus psychology warfare , that it hurts to read such thoughts .