slapt-get/glapt for puppy 3.00
slapt-get/glapt for puppy 3.00
This is a pet package of the latest slapt-get and Gslapt for Slackware 12. Slapt-get is a Slackware package manager and Gslapt is a GUI for it.
Gslapt will download any needed dependencies, so I made a list of slack packages that seem to be in Puppy 3.00beta. When you install the pet package it will populate /var/log/packages with package files, all empty, So don't try and remove any of these packages with Gslapt. Seems to work pretty well, but Puppy's menu structure is not compatible with slack, so menu entries won't show up.
After you install the package, restart JWM, connect to the internet and go to Menu - Setup - Gslapt. Then click update to get a new list of available packages.
Gslapt will download any needed dependencies, so I made a list of slack packages that seem to be in Puppy 3.00beta. When you install the pet package it will populate /var/log/packages with package files, all empty, So don't try and remove any of these packages with Gslapt. Seems to work pretty well, but Puppy's menu structure is not compatible with slack, so menu entries won't show up.
After you install the package, restart JWM, connect to the internet and go to Menu - Setup - Gslapt. Then click update to get a new list of available packages.
Last edited by kirk on Fri 19 Oct 2007, 20:18, edited 6 times in total.
Tried to install kaffeine. It downloaded the acl package which is some kind of basic file handling package. I updated the pet package so that acl is showed installed.
This is experimental software, if you have dependency which gets installed and hoses everything up, let me know. Updated the original post. I guessed about the versions (and sometimes content) of many of the fake packages. Puppy packages don't directly correspond to slacks , but I think we can get close enough.
This is experimental software, if you have dependency which gets installed and hoses everything up, let me know. Updated the original post. I guessed about the versions (and sometimes content) of many of the fake packages. Puppy packages don't directly correspond to slacks , but I think we can get close enough.
- BarryK
- Puppy Master
- Posts: 9392
- Joined: Mon 09 May 2005, 09:23
- Location: Perth, Western Australia
- Contact:
kirk,
what would be good is if Gslapt can do the same direct-install to the pup_save file in the case of Flash memory. It's quite easy, look in /usr/sbin/petget and search for the string "v2.21". But, Gslapt is compiled code isn't it? which is a problem... the source would probably have to be hacked to get that functionality, unless some kind of wrapper can be put around the executable.
what would be good is if Gslapt can do the same direct-install to the pup_save file in the case of Flash memory. It's quite easy, look in /usr/sbin/petget and search for the string "v2.21". But, Gslapt is compiled code isn't it? which is a problem... the source would probably have to be hacked to get that functionality, unless some kind of wrapper can be put around the executable.
Yes, if we can get some folks with high-speed connections to play with it, we'll get it worked out. I've tried a couple of SDL games, Dillo-patched, Kino, and Kaffeine. All seem to work. Gslapt/slapt-get is a nice package manager. I never realized how many mirrors are out there for slackware ether.Yeah, as it is experimental, let's aim at getting things sorted out for v3.01.
I wonder if unleashed could be modified to use slack packages? If puppy could be built with all or almost all slack packages, wouldn't have to bother with compiling and hosting all the packages and sources. Guess it might make for one fat dog though.
Yep, probably have to hack the source. Slapt-get has many command line options, I'll check. You've seen my bash scripting, my C is worse! If I can get some time I'll check it out, I'm working full time, I'm on call from time to time (tonight), I'm building a house, got two kids, and involved at church. So sometimes the spare time disappears. But I usually can find an hour here and there.what would be good is if Gslapt can do the same direct-install to the pup_save file in the case of Flash memory.
I'll see if the slapt-get developer can help us out. Might be something easy for him to implement.
I looked at /root/.packages/packages.txt and thought that was just a list of the unleashed packages, didn't notice the on/off.
I'll check that list against the one I'm using and update the pet package I posted above. Might be a couple days.
Also, I contacted the developer of slapt-get about changing the install path root. He said you can do that by setting the the ROOT environment variable when running slapt-get and gslapt. So I tried it with:
export ROOT=/root/spot
and everything installed to /root/spot/......
Gslapt looked for /root/spot/var/log/packages and naturally didn't find it. Then I tried :
export ROOT=/initrd/pup_rw
And all seemed to work normally when I installed a package. Everything appeared on the top layer and Unionfs didn't seem to freak-out. Though I just installed a small package.
So just need to make little wrapper scripts for gslapt and slapt-get that tests the pupmode and sets the ROOT.
I'll check that list against the one I'm using and update the pet package I posted above. Might be a couple days.
Also, I contacted the developer of slapt-get about changing the install path root. He said you can do that by setting the the ROOT environment variable when running slapt-get and gslapt. So I tried it with:
export ROOT=/root/spot
and everything installed to /root/spot/......
Gslapt looked for /root/spot/var/log/packages and naturally didn't find it. Then I tried :
export ROOT=/initrd/pup_rw
And all seemed to work normally when I installed a package. Everything appeared on the top layer and Unionfs didn't seem to freak-out. Though I just installed a small package.
So just need to make little wrapper scripts for gslapt and slapt-get that tests the pupmode and sets the ROOT.
- BarryK
- Puppy Master
- Posts: 9392
- Joined: Mon 09 May 2005, 09:23
- Location: Perth, Western Australia
- Contact:
Yes, but the wapper script has to do a little bit more to ensure that the files always do appear on top. Search for the text "v2.21" in petget, and you'll find where I have done a remount with the 'incgen' option -- this has to be done after the install.kirk wrote:export ROOT=/initrd/pup_rw
And all seemed to work normally when I installed a package. Everything appeared on the top layer and Unionfs didn't seem to freak-out. Though I just installed a small package.
So just need to make little wrapper scripts for gslapt and slapt-get that tests the pupmode and sets the ROOT.
Big update to the package list. I think it's pretty good now. Also, the pinstall.sh extracts puppy's package.txt file in to /var/log/packages too. So there are some duplicate packages with slightly different package names, but I don't think it matters. Gslapt only lists the ones that match the list it downloads. Tried using puppy's package.txt only, but too many differences with slack packages.
The goal with the package list is to minimize downloads and to prevent downloading somthing that uthenizes puppy.
Made wrapper scripts for slapt-get and gslapt to support direct-install to the pup_save file when using flash memory.
My wrapper scripts look like this: (Largely lifted from petget)
#!/bin/sh
. /etc/rc.d/PUPSTATE
if [ $PUPMODE -eq 3 -o $PUPMODE -eq 7 -o $PUPMODE -eq 13 ];then
export ROOT=/initrd${SAVE_LAYER}
gslapt1
mount -t unionfs -o remount,incgen unionfs /
sync
else
gslapt1
fi
And one like it for slapt-get. Hopefully that's sufficient. Seems to work. Had to change my pinstall.sh to work with flash too.
Updated the file attached to the original post.
The goal with the package list is to minimize downloads and to prevent downloading somthing that uthenizes puppy.
Made wrapper scripts for slapt-get and gslapt to support direct-install to the pup_save file when using flash memory.
My wrapper scripts look like this: (Largely lifted from petget)
#!/bin/sh
. /etc/rc.d/PUPSTATE
if [ $PUPMODE -eq 3 -o $PUPMODE -eq 7 -o $PUPMODE -eq 13 ];then
export ROOT=/initrd${SAVE_LAYER}
gslapt1
mount -t unionfs -o remount,incgen unionfs /
sync
else
gslapt1
fi
And one like it for slapt-get. Hopefully that's sufficient. Seems to work. Had to change my pinstall.sh to work with flash too.
Updated the file attached to the original post.
Yes, the pinstall.sh script uses whatever is in /root/.packages/packages.txt.What happens if in future versions of Puppy the packages.txt 'on' choices differ -- will the Gslapt system pick this up?
The pinstall.sh script populates /var/log/packages with a list from /tmp/ps-packages.txt and then populates /var/log/packages with puppy's package.txt.
I just made another updated to the gslapt package. Had too many duplicates before. The list found in my pet package /tmp/ps-packages contains 83 package names that fall into one of these categories:
1) Seems to be in puppy but not in puppy's package list.
2) In puppy's package list but by a slightly different name.
3) A package we don't want installed because it might make puppy sick.
The ps-packages.txt list may need to changed in the future due to more or less compatibility with slack.
Fixed some problems with the package list. Updated attachment on original post.
Note: After installing this package /var/log/packages is populated with many empty files that (hopefully) represent what puppy has installed. Gslapt/slapt-get reads this directory when it starts up. So if you want to tweak something, such as making Gslapt/slapt-get think a package is already installed, Just add a blank file with the appropriate name. If you find a dependency that gets installed and messes everything up, let me know.
Note: After installing this package /var/log/packages is populated with many empty files that (hopefully) represent what puppy has installed. Gslapt/slapt-get reads this directory when it starts up. So if you want to tweak something, such as making Gslapt/slapt-get think a package is already installed, Just add a blank file with the appropriate name. If you find a dependency that gets installed and messes everything up, let me know.
-
- Posts: 208
- Joined: Sat 10 Mar 2007, 14:49
Re: slapt-get/glapt for puppy 3.00
Did all that - but 'Gslapt' does not show up. How do I start 'manually?'kirk wrote: After you install the package, restart JWM, connect to the internet and go to Menu - Setup - Gslapt. Then click update to get a new list of available packages.
EDIT: I did get it to run from the command line GSLAPT.
jm