Page 1 of 3

SFS Install 0.1.2 [updated 16.10.2009.]

Posted: Sat 04 Apr 2009, 16:06
by dejan555
This is script for users with full puppy install who can't load sfs files at bootup and have trouble understanding and following steps to do it manually. And for those who know how but want it easy way like me. ;)
I repeated it too much times, now it's time to automate it!

Usage:
Right click on sfs file in ROX Filer -> Install
or:
sfsinstall name-of-file.sfs

NOTE THAT THERE'S NO UNINSTALL OPTION!

NOTE: You need to have correct sfs version, puppies with kernel 2.6.30 (puppy 430) and up use sfs4, there's a sfs converter in menu if you have older sfs3 files, so if you get error like failed mounting must be because of incompatible sfs version.

UPDATE:
Changed mounting of sfs's to /tmp instead current folder so you can install sfs even if it's burnt on cd or in non-writeable folder.

UPDATE:
Added option to not overwrite existing files so there shouldn't be any conflicts
You can use this for devx installation now too ;)

Posted: Sat 04 Apr 2009, 18:41
by ecomoney
Could this be extended to test for a frugal install, and whether it is already installed too? It could then offer the user a choice

open and view files

install

Cancel

If frugal, it would simple be a matter of copying it to the new "/root/hard-disk/" folder

A great many new puppy users struggle with sfs's This would make a great addition

Posted: Sat 04 Apr 2009, 18:45
by Béèm
ecomoney wrote:if frugal, it would simple be a matter of copying it to the new "/root/hard-disk/" folder
Normally in a frugal install a sfs file should be copied to /mnt/home (where the pup_save is) for the bootmanager to find it.

Posted: Sat 04 Apr 2009, 19:10
by dejan555
Steps are pretty simple for frugal install, there's also a boot manager that loads sfs's, but it's way harder for full HD installs.
You can install sfs's with this script on LiveCD also, to test if they work (if you have enough ram), but if you have a frugal install it's best to just put files in /mnt/home

Posted: Mon 20 Apr 2009, 18:18
by dejan555
Script updated. See first post.
Thanks to Bruce who made me think harder about this.

Posted: Tue 21 Apr 2009, 17:04
by catear
Thank > <

Posted: Tue 21 Apr 2009, 19:47
by 8-bit
I got an SFSinstaller full a while back that SunBurnt made for install of SFS on a full install of Puppy.
I revisited it a few weeks back with Puppy 4.2 full install, and found that not only could I install SFS format packages, I could also uninstall them.
It also created an error log of files it had problems with installing.
The files it had problems with were system link files that inadvertently pointed to other system link files.
But I guess my point here is that before the Puppy 4 series, SunBurnt's SFS installer failed to create a list of installed files for the uninstall option and now it does create the list.
Uninstall removes all the files installed but leaves the directories that were created by the install.
I still have his package if anyone is interested in looking at it.

Posted: Wed 22 Apr 2009, 05:53
by dejan555
Yes please, give me link to his thread or attach it here.
I solved the issue with overwriting files but I don't have that uninstall function, so it would be great to modify either his script or mine to make one that has both install/uninstall func and without issues where duplicate files exist.

Posted: Wed 22 Apr 2009, 11:56
by DC
Hi dejan555,

Could you post your scripts please. As I'm slowly learning bash and would be interested how you do install scripts

Thanks

DC

Posted: Thu 23 Apr 2009, 05:45
by dejan555
When you install this pet script will be in /usr/local/bin/sfsinstall, open it in some text editor to see the code. I don't have many scripts though which I can post, and I'm not really good at bash either, I mean I kinda learn what I need at the moment.

Posted: Thu 23 Apr 2009, 18:04
by 8-bit
Sunburnt's SFSinstaller_full can be found here
http://www.murga-linux.com/puppy/viewto ... 57&t=33016
I tested it with a full install of Puppy 4.2
Important:
Copy the downloaded file to /root/my applications and extract it there.
From using it, I found that it will install an SFS file. Uninstall removes the files it installed, but leaves the created directories as empty directories.
It does NOT remove directories that have files in them.
You can examine the scripts then.

Posted: Thu 23 Apr 2009, 19:34
by dejan555
Thanks!

Posted: Fri 24 Apr 2009, 22:21
by droope
A common mistake with uninstalling:

Deleting files that were there before. Your script should back up files that already exist, and when uninstalling, replace them with the old ones. (As it happens when you place a .sfs in /home/, i think?).

Hope this is usefull.

:)

Posted: Fri 24 Apr 2009, 22:33
by dejan555
Yeah, that's the catch, I coud make uninstall script straight away, but I need to figure out how to uninstall only files that are new and leave the old ones in place.

Posted: Fri 24 Apr 2009, 23:28
by brad_chuck
Did not try to uninstall but the sfsinstall works great for me.

This a big help! Every time I did it in the past I had to look up the commands on Berry's site...

Posted: Sat 25 Apr 2009, 21:16
by 8-bit
dejan555 wrote:Yeah, that's the catch, I coud make uninstall script straight away, but I need to figure out how to uninstall only files that are new and leave the old ones in place.
In the same link I gave above is a method of installing SFS by converting them to PETs.
The poster said he used that method for install and it worked just fine.
But here is the part that I wonder about.
If I convert an SFS into a pet, can I also uninstall it just by selecting the installed pet from the installed pets???
His install method was to make a new directory in / with the filename of the SFS file. Then mount the SFS file and copy the contents to the New directory.
Then run Dir2pet to convert it into a pet file. Click then on the pet file to install it.
But I still wonder if you could then select it in the install window of installed PETs to uninstall it?

Food for thought!?

Posted: Sun 26 Apr 2009, 19:40
by dejan555
8-bit, when petget asks you do you want pet to be registered with petget say yes and you will be able to uninstall it. But there are issues with that also. If you try to install some larger pet (sfs's are huge packs in most cases) it will tell you that you don't have space to expand it even if you have <-- this happend to me in many cases.

Re: SFS install 0.1.1 [UPDATED 20.04.2009.]

Posted: Sun 03 May 2009, 13:39
by Colonel Panic
dejan555 wrote:This is script for users with full puppy install who can't load sfs files at bootup and have trouble understanding and following steps to do it manually. And for those who know how but want it easy way like me. ;)
I repeated it too much times, now it's time to automate it!

Usage:
Right click on sfs file in ROX Filer -> Install
or:
sfsinstall name-of-file.sfs

UPDATE:
Added option to not overwrite existing files so there shouldn't be any conflicts
You can use this for devx installation now too ;)
Thanks for this one! I've just used to to install the Lighthouse 301 sfs file in Icepup.

Cheers,

Colonel Panic.

Posted: Mon 04 May 2009, 09:30
by droope
dejan555 wrote:8-bit, when petget asks you do you want pet to be registered with petget say yes and you will be able to uninstall it. But there are issues with that also. If you try to install some larger pet (sfs's are huge packs in most cases) it will tell you that you don't have space to expand it even if you have <-- this happend to me in many cases.
Hey dejan, it shouldn't be that hard. Create a folder called backup(Filexxx.sfs) that has a complete subsystem in it... with that i mean that if a file /root/geany.sh was replaced, you could place it in /mnt/home/backup/backup(geany6.0.sfs)/root/geany.sh.

Then, uninstalling would be easy, because all you have to do is to put the /backup(geany6.0)/'s contents in /

Hope this helps, if you can't do it, i think i will, its kinda of an exciting project, isn't it ? :P

It could also be implemented to fix te pet uninstalling system, that just deletes things. :(

Posted: Mon 04 May 2009, 18:00
by dejan555
Uninstall can be done, just have to work out the code, still, I have a different idea, I don't like copying files then copying them back, if you know which files should be kept then simply tell uninstall not to erase those, that's my point of view. Now what I wanted to do is create list of files that are in sfs (like Sunburnt did in his script), then substract files that already exist in system from that list. I was close to do that, when I have time I'll probably work it out. ;)