ChoicePup431 - a gnu way

For talk and support relating specifically to Puppy derivatives
Post Reply
Message
Author
User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

ChoicePup431 - a gnu way

#1 Post by jrb »

ChoicePup 431 has begun!

ChoicePup is a stripped version of Puppy with major software provided by separate SFS files which can be installed and uninstalled quickly, easily and as needed. This makes it versatile and low on computer resource use.

I have uploaded ChoicePup430test1.iso and SFS_Linker-431bk-1.1.pet. You have to install the SFS_Linker pet. The 21 SFS files that I have got working are at ChoicePup431/sfs/, more to come soon.

I have also uploaded SFS_Linker-no_def-1.1.pet which does not have modified /usr/local/bin/defaultprograms for people who wish to have SFS_Linking without changing the desktop icon or MIME-type behavior.

This is not a polished puppy. It is a stripped version of Puppy430 with major programs removed and a few ChoicePup features added to use as a testbed for the new system.
You will have to add the SFS_Linker-1.1-430.pet to make the new system work. (I figured there might be improved versions coming soon so didn't put it in the ISO).

I'm looking for testers to try it out. It should work with any other puppy (I've only tried it with 412) that has SFS capabilities (2.18 up to 4.21) but you will have to use the old SFS3 packages with them and those are not all compatible with the new system. (Please use a new pup_save if you are going to try this on something other that ChoicePup430, I don't want to mess up anyone's hard work)

The original ChoicePup412 used a file layering system which mounted the SFS and placed its contents into the puppy files. When the SFS was unmounted its files disappeared. Unfortunatley this only worked with the AUFS1 file system which does not work with the newer kernels. So ChoicePup430 had to use a different system.

Instead of file layering I have set up a system that mounts the SFS and then symlinks each of the files in the SFS to its proper position in the puppy files. The symlinks are kept track of by Petget manager. When the SFS is uninstalled it is unmounted and Petget manager removes the symlinks. (Thanks to trio for the idea)

No longer necessary to use "max_loop=28"

I'm quite pleased with performance so far and look forward to getting a slim trim polished version going soon, and more SFS files as well.

Oh yeah, If you don't know how to use it check out the ChoicePup412 thread. Works the same.

Note: I have not installed OpenGL so to used the Googleearth package you will have to install xorg_xorg_full_dri-7.3.pet and reboot.
Last edited by jrb on Thu 12 Nov 2009, 15:31, edited 12 times in total.


User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#3 Post by jrb »

Developer Notes

1.) For use in other puppies please install SFS_Linker-1.4-430.petSFS_Linker-1.2-430.pet[/url], my_links.pet, and ldconfig430.pet. This should give you full functionality with both older and newer kernels.

2.) I'm afraid SFS_linker isn't really compatible with puppy412 and puppy 421. They use an older version of petget manager than the new woof built puppies and unlinking seems to be a problem.

Here's a summary of what SFS_Linker-431bk-1.1.pet does:

SFS_Linker has 5 basic parts:
1.)sfs_boot_handler
2.)sfs_linker
3.)sfs_unlinker
4.)sfs_remove.sh
5.)/usr/sbin/filemnt

1.)sfs_boot_handler:
identifies and creates symlinks in /root/my_links/sfs_mnt_home to either SFS4 or SFS3 depending on the kernel
removes any SFS links left from last work session
loads any SFS's linked into /root/my_links/sfs_boot_links

2.)sfs_linker
checks to make sure SFS chosen is proper type
checks if a new /dev/loop is needed to mount the SFS and creates one if necessary
mounts the SFS to /mnt/$SFSNAME
checks to make sure it mounted properly by looking for /mnt/$SFSNAME/usr
renames seamonkeys /root/.mozilla if the SFS contains /root/.mozilla
creates a symlink from each file in /mnt/$SFSNAME to /$FILEPATH
copies any special need files from /mnt/$SFSNAME/choice to /$FILEPATH
creates a text file, /root/.packages/$SFSNAME.files
adds an entry to /root/.packages/user-installed-packages
adds lines to etc/ld.so.conf listing the standard, i.e. /mnt/$SFSNAME/usr/bin, lib_paths in the SFS then runs ldconfig (included in .pet) to add them to lib_path
creates a symlink to the SFS in /root/my_links/sfs_loaded
makes any new fonts available with mkfonddir

3.)sfs_unlinker
unmounts the SFS
checks to make sure it unmounted properly, quits and gives error message if not, SFS will be unlinked at next bootup in this case.
calls sfs_remove.sh to delete all symlinks to the SFS
removes the lib_path lines from /etc/ld.so.conf
removes empty folders from all except /root, /tmp, /var, /mnt
fixmenus and restart jwm

4.)sfs_remove.sh
uses code from puppy package manager to remove the symlinks listed in /root/.packages/$SFSNAME.files

5.)/usr/sbin/filemnt
Checks to see if there is a free loop for file mounting. If not it creates one.
Last edited by jrb on Thu 12 Nov 2009, 15:58, edited 7 times in total.

User avatar
Bert
Posts: 1103
Joined: Fri 30 Jun 2006, 20:09

#4 Post by Bert »

Removed.
(was not a good joke)
Last edited by Bert on Tue 06 Oct 2009, 07:53, edited 1 time in total.
[url=http://pupsearch.weebly.com/][img]http://pupsearch.weebly.com/uploads/7/4/6/4/7464374/125791.gif[/img][/url]
[url=https://startpage.com/do/search?q=host%3Awww.murga-linux.com%2F][img]http://i.imgur.com/XJ9Tqc7.png[/img][/url]

seaside
Posts: 934
Joined: Thu 12 Apr 2007, 00:19

#5 Post by seaside »

Jrb,

Incredible amount of work. Congratulations. (I'll bet you'd like to have union back) :D

I quickly tried out mtpaint :D with link and unlink (on pup 412-old sfs) and it left all the mimetypes intact :D

Well done and will do some more testing tomorrow - just one
question which probably will be answered in a "reserved spot" later, is about identifying old and new sfs files.

Impressive,

s

User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#6 Post by jrb »

seaside wrote:identifying old and new sfs files
Well, there's the next item on my todo list. Right now all the old choice SFS3 packages start with ch-, the new SFS4 packages start with ch4-. Only the ch4- files show up in the desktop my_links/mnt_home_sfs/ folder.

I should build in some kind of bailout and error message if the SFS file fails to mount (because its the wrong type or whatever),

Thanks for the idea.

tlchost
Posts: 2057
Joined: Sun 05 Aug 2007, 23:26
Location: Baltimore, Maryland USA
Contact:

#7 Post by tlchost »

jrb wrote:ChoicePup 430 has begun!
I have uploaded ChoicePup430test1.iso
Downloaded three times....burner tells me the size of the iso is not correct.

I'm looking for testers to try it out. It should work with any other puppy (I've only tried it with 412) that has SFS capabilities (2.18 up to 4.21) but you will have to use the old SFS3 packages with them and those are not all compatible with the new system. (Please use a new pup_save if you are going to try this on something other that ChoicePup430, I don't want to mess up anyone's hard work)

I am confused(nothing new for me). How does one use it with 412?

Thanks
Thom

ICPUG
Posts: 1308
Joined: Mon 25 Jul 2005, 00:09
Location: UK

#8 Post by ICPUG »

Well done jrb for starting this.

Two queries.

Barry has said 4.3 can only cope with 7 sfs files. Am I to assume in ChoicePup430 you have adjusted the init code to expand this to 24?

When you say it works with previous pups do you mean that we start off with a standard barebones of (say) 4.2.1 and then it will automatically work - no need to adjust init code?

User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#9 Post by jrb »

tlchost wrote:Downloaded three times....burner tells me the size of the iso is not correct.
I downloaded once, took 2 hrs on my crappy connection, burned in pburn3.0.4 in ChoicePup430, booted no problem. Burned again in pburn2.5.6 in ChoicePup412, again no problem. Maybe try different burner?

As for use in 412, just install SFS_Linker-1.1-430.pet and try installing an SFS with sfs_linker.
ICPUG wrote:I to assume in ChoicePup430 you have adjusted the init code
No need for the new system. File layering, as in ChoicePup412, mounts the SFS's on /initrd/pup_roXX which are created by the init code. SFS_Linker simply mounts the SFS on a /dev/loopXX which can be created after boot. I have provided for 18 extra /dev/loops to be created at boot so that any version of Puppy can use this .pet.
start off with a standard barebones of (say) 4.2.1 and then it will automatically work
Yes! Great idea, I'll try it today, should work fine. I'll upload a .pet with the ChoicePup /usr/local/bin/defaultprograms for use in barebones puppy versions. I'll rebuild the SFS_Linker.pet to accomodate the older SFS3 files too.

tlchost
Posts: 2057
Joined: Sun 05 Aug 2007, 23:26
Location: Baltimore, Maryland USA
Contact:

#10 Post by tlchost »

jrb wrote: I downloaded once, took 2 hrs on my crappy connection, burned in pburn3.0.4 in ChoicePup430, booted no problem. Burned again in pburn2.5.6 in ChoicePup412, again no problem. Maybe try different burner?
Was able to burn it with burn2iso....but, it doesn;t recognize my keyboard...can not enter any commands via the keyboard.

I am using a pc style to usb converter for the keyboard....

Thom

seaside
Posts: 934
Joined: Thu 12 Apr 2007, 00:19

#11 Post by seaside »

Jrb,

Can't offer any comments on burning since I just use the iso directly.

There was something I was wondering about though - this code in link_sfs

Code: Select all

	echo "/mnt/"$SFSNAME"/usr/lib" >> /etc/ld.so.conf
	echo "/mnt/"$SFSNAME"/usr/local/lib" >> /etc/ld.so.conf
	echo "/mnt/"$SFSNAME"/usr/X11R7/lib" >> /etc/ld.so.conf
	echo "/mnt/"$SFSNAME"/opt/samba/lib" >> /etc/ld.so.conf  
ldconfig
If all files are linked, wouldn't these be seen without "echoing to ld.so.conf"?

So far, the link and unlink has worked on any pre 43 puppy, I've tried (no reason it shouldn't, as long as the SFS can be mounted)

I noticed that Pizzasgood has posted a new SFS file editor which apparently will edit the old sfs files if run from a pre43 puppy, and the new sfs files if run from 43 (due to no backward compatibility of the new sfs).

Since you have id'd your new sfs files by placing " ch4" in front, is that going to be a "standard" for creating sfs files in pup 43 or is it kind of open?

Is there an SFS converter around, or is it just a case of changing it to a Pet and then converting.

Still amazed at how you can work around all the stumbling blocks that come up with new versions :D


Cheers,
s

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#12 Post by sunburnt »

Hey jrb; What does the file: /etc/ld.so.conf do exactly?
It`s a list of the paths in: LD_LIBRARY_PATH.

Also... I made a "stand alone" SFS file of Skype, would you like to include it?

User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#13 Post by jrb »

seaside wrote:If all files are linked, wouldn't these be seen without "echoing to ld.so.conf"?
The files are seen but /etc/ld.so.conf contains a list of the directories where Puppy should look for lib files. By adding the normal lib file path, i.e. /usr/lib with the mount point of the SFS in front and then running ldconfig, Puppy will look for program libs in the mounted SFS.
the link and unlink has worked on any pre 43 puppy
Just got around to trying it on 2.18 and 421barebones. 2.18 doesn't like the folder specific right click feature but it works from console just fine, it will need to have sfs_linker put on the OpenWith menu I think. Unfortunately Not many of the SFS packages from choicepup412 work with Puppy2. 421 works quite well but really shows off which program dependencies were included in ChoicePup and not in the SFS packages.
" ch4" in front, is that going to be a "standard"
It will be the ChoicePup standard, don't know about anyone else. I may go back and rename the earlier packages with ch3.
Is there an SFS converter around?
sfs-converter-1.3.2.pet is in Puppy430 and in the pet_packages-woof repository. I doubt if there's a converter to go from sfs4 back to sfs3.
how you can work around all the stumbling blocks that come up with new versions
I just wish I had the talent that goes into coming up with the new versions.

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#14 Post by sunburnt »

I assume you mean the new versions of Puppy...

It seems like the file: ld.so.conf would get really full after loading lots of SFS files.

### JRB: Did you want to include the Skype SFS file in your downloads?

tlchost
Posts: 2057
Joined: Sun 05 Aug 2007, 23:26
Location: Baltimore, Maryland USA
Contact:

Keyboard not recognized

#15 Post by tlchost »

JRB,
Are you using the small 4.30 iso?

I found the post I had made in bug reports...the audio issue was solved, the keyboard issue never was answered

http://208.109.22.214/puppy/viewtopic.p ... 7983ebb55f

Thom

ICPUG
Posts: 1308
Joined: Mon 25 Jul 2005, 00:09
Location: UK

#16 Post by ICPUG »

jrb Quote:

421 (barebones) works quite well but really shows off which program dependencies were included in ChoicePup and not in the SFS packages.

unQuote

OK - thanks for testing. Look like we need to use the standard 4.2.1 or, better perhaps, ttuuxxx's version without pwidgets to get a fully working 4.2.1 system.

I wonder if dependencies makes starting from a barebones a bit of a headache as each sfs would need to add the dependent files and there could be a lot of duplication. I guess this is something that has to be decided before 4.4CE.

User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#17 Post by jrb »

sunburnt wrote:It seems like the file: ld.so.conf would get really full after loading lots of SFS files.
Hopefully not a problem. I have sfs_unlinker setup to remove the extra lines when an SFS is uninstalled.

I should mention that other puppy versions will require ldconfig to be installed. I'll post .pets of the appropriate ones.

Do you have a url for skye sfs? Will be glad to set it up but my internet is too limited to try it out.

User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#18 Post by jrb »

tlchost wrote:Are you using the small 4.30 iso?
No, using the full 430. I need the big one for my intel graphics. Got a good deal on a 4 year old hp compaq. Runs well but the graphics are a bit of a pain to set up.

Have you tried 430 with the older kernels?

User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#19 Post by jrb »

ICPUG wrote:each sfs would need to add the dependent files and there could be a lot of duplication
Yes, but I don't think that would hurt since the SFS aren't loaded into ram. And I really like the idea of just being able to slap SFS_linker onto a barebones and have it work.

tlchost
Posts: 2057
Joined: Sun 05 Aug 2007, 23:26
Location: Baltimore, Maryland USA
Contact:

#20 Post by tlchost »

jrb wrote:
tlchost wrote:Are you using the small 4.30 iso?
No, using the full 430.
Have you tried 430 with the older kernels?
I had such terrible luck with 430 that I gave up on it....I see that one I made that boots the laptop from a usb drive is the one with the 2.6.21.7 kernel .... The advantage is that it does NOT use the new sfs files.

I hope you don't abandon the older version(s) of ChoicePup.

Thom

Post Reply