Page 4 of 5

Posted: Fri 11 Dec 2009, 13:01
by gposil
The only major problem I still have is getting the base installation database correct, so all the correct files are registered with apt. As flugwelpe has shown if you discover a library that is incorrectly assigned as installed, you just run apt-get --reinstall install xxxx.

Cheers
Guy

Posted: Fri 11 Dec 2009, 20:56
by Béèm
I converted the pet to sfs.
Got the synaptic package manager in the menu.
Lost however 20MB of save space.

Decided to do a test and wanted to install samba server.
Things went wrong as I got error messages.
But I lost some more 50MB of save space.

Tried to uninstall what I had installed, but it wasn't easy to see what had be installed exactly. Uninstalled everything with samba in the name.
Things did uninstall and nothing from samba is installed, but I still have some 20MB save space lost somewhere.

Don't know how to find out for what.

Conclusion, it's not really for debutantes.

Like PPM it's not for people who try to save space in the space file in a frugal environment.
With pet packages there is at least a possibility to convert them to sfs.
Here I don't see in what way it can be done.

Hope this doesn't sound too negative.

Posted: Sat 12 Dec 2009, 00:54
by gposil
Béèm

APT/Synaptic was never going to be a happy match with a pupsave type environment. It creates large database entries and keeps a copy of every file you download/install, even if you later uninstall it. You can remove some of the bloat by going to /var/cache/apt and deleting the deb files from there, but it sort of defeats the purpose behind APT, ie re-installs and filesystem fixes.

I said from the outset that I thought that it would really only be viable on a full HDD install, more and more testers are discovering for themselves why I said that...(unless you can put up with large and fast growing pupsave files)

Posted: Sat 12 Dec 2009, 02:08
by tubeguy
I said from the outset that I thought that it would really only be viable on a full HDD install, more and more testers are discovering for themselves why I said that...(unless you can put up with large and fast growing pupsave files)
I think we all realize that, having apt-synaptic at all is a big addition to Puppy in general. Being able to boot 4.3.1 from anywhere is great, but Puppy is only 100meg from a purist point of view. Honestly I haven't spent much time with 4.3.1 since dpup beta4, I suppose I got used to Puppy and wanted more from it and dpup was it. Because of dpup I actually spend more time with Puppy on my home "production" box than I do with Windows now. (Work is a different story...) I have a 10gig pupsave on that machine, only because I can't see needing any more.

TL:DR Anyone who wants apt on Puppy shouldn't mind the extra bulk.

Posted: Sat 12 Dec 2009, 07:35
by shankargopal
Just to report a success... decided to be ambitious, added in the packages.enlightenment.org lenny repository and used apt-get to install e17. Dependencies identified correctly excepting libXp6 which I installed using --reinstall. And, what do you know - voila - it works! :)

Yes, I know it's better to build E17 on the system, but the sources have defeated me five times in the last three weeks (including the recent snapshots). Very frustrating, will upload a dotpet whenever I manage to do it. But in the meantime - what's better than a one line command to install something that otherwise takes at least three hours of compiling?

Posted: Sat 12 Dec 2009, 10:11
by gposil
Well done shankargopal, that is how close we are to getting a full working APT, just base install database, so anyone else having issues, please remember the apt-get --reinstall option.

Posted: Sat 12 Dec 2009, 10:24
by 01micko
gposil wrote:[snip]
I said from the outset that I thought that it would really only be viable on a full HDD install ....[snip]
Er, that explains my absence from this testing/discussion...

Hopefully after Santa has been I might be getting a whiz bang multi-core whopper with a huge hd so I can have 30 odd partitions,.. 8)

Posted: Sat 12 Dec 2009, 10:31
by gposil
Mick, can you get Santa to drop one off for me on his way to your place... :)

Posted: Sat 12 Dec 2009, 10:41
by shankargopal
Ask him to stop by Delhi on the way too...

But aside from that, all my testing has been on a frugal install with a 512MB dpupsave and atm running on a Eee 701SD. Despite gposil's pointed cautions, have so far not had any trouble that I could trace to a frugal install. Maybe it's fine?

Size-wise yes, apt/synaptic is huge (so far taking up more than 300 MB), but that's the price one pays for that kind of power, and frankly it's not that high a price. While I'm on an 8GB pen drive, I think a 2GB pen drive would easily house a comfortable dpup install with apt. Yes, that's more than the 256 MB that would be enough without it, but you couldn't have much fun then anyway.

Incidentally, only one small hurdle - if you have only 512 MB RAM, like me, that may not be a big enough tmpfs to install the apt dotpet. In taht case just create a swap partition and reboot.

Posted: Sat 12 Dec 2009, 11:16
by shankargopal
shankargopal wrote:Despite gposil's pointed cautions, have so far not had any trouble that I could trace to a frugal install. Maybe it's fine?
Possibly, I spoke too soon. Apt suddenly stopped updating. Typing apt-get update gets just "Reading package lists... done". Looked, found that /var/apt is empty. /etc/apt includes only the two directories apt.conf.d and sources.list.d, which in turn are empty.

Any idea what might have happened? And should I just reinstall the apt dotpet, or wipe the dpupsave and start again?

Edit: should mention that this happened after a reboot on a different machine. There also was an unusual shutdown earlier where dpup refused to shut down; it reached the point of saying "unmounting swap partition" and the word "terminated" appeared, but had to do a hard power off to get it to switch off (as "terminated" had come up, assumed the saving was done). Not sure if this problem appeared after that shutdown or after the next one, as I did not use apt in between.

Posted: Sat 12 Dec 2009, 11:35
by gposil
I knew this would eventually turn up, frugal installs still have a problem with Dpup's non Puppy directory structure(it's Debian not Puppy)...I have tested APT hundreds of times on a Live CD pupsave environment, and it just doesn't work and I thought some of the probs would carry over to frugal installs....now I can fix it, I know where the problems arise, but it would take Dpup too far away from its mainstream....meaning that a Dpup frugal install would have minimum memory and space requirements that are not inline with Barry's wishes, and that ain't going to happen....

Posted: Sat 12 Dec 2009, 11:39
by shankargopal
Oh damn, I'm sorry to hear that, and can understand re the restrictions. Can you let me know what the problem is and the kind of fixes that would be needed, and I can see if maybe I can try to make a kludge / fix for it for my system (and others who may be interested)? Though both my skills and time are probably far, far too limited for the task...

Posted: Sat 12 Dec 2009, 12:48
by gposil
Don't worry shankargopal, I will put the fix out as a pet on the repo, but it will not be included as standard Dpup, just an addon.

Cheers
Guy

Posted: Sat 12 Dec 2009, 12:58
by shankargopal
Great, thanks a lot, gposil. In the meantime as a kludge I was considering something rather inelegant. Since the main advantages of apt over PPM that I can see are 1) better dependency resolution and 2) easy access to new repositories, I can keep an empty dpupsave into which I would, when necessary, install apt, run it in "--download-only" mode, and copy over the debs for installation with PPM to my main system. Possibly any frugal installers desperate for apt could do the same when they really need it... (I would just do a full install but I can't, as I need my Puppy to be flash drive based and full installs don't work on USB devices).

Posted: Sat 12 Dec 2009, 13:54
by gposil
Not just a good kludge...a good idea and one which others should take note of for non full installers.

Posted: Sat 12 Dec 2009, 14:15
by tubeguy
shankargopal wrote:Great, thanks a lot, gposil. In the meantime as a kludge I was considering something rather inelegant. Since the main advantages of apt over PPM that I can see are 1) better dependency resolution and 2) easy access to new repositories, I can keep an empty dpupsave into which I would, when necessary, install apt, run it in "--download-only" mode, and copy over the debs for installation with PPM to my main system. Possibly any frugal installers desperate for apt could do the same when they really need it... (I would just do a full install but I can't, as I need my Puppy to be flash drive based and full installs don't work on USB devices).
I would say this qualifies as "protip". ;-)

Posted: Sat 12 Dec 2009, 18:26
by Béèm
gposil wrote:Béèm

APT/Synaptic was never going to be a happy match with a pupsave type environment. It creates large database entries and keeps a copy of every file you download/install, even if you later uninstall it. You can remove some of the bloat by going to /var/cache/apt and deleting the deb files from there, but it sort of defeats the purpose behind APT, ie re-installs and filesystem fixes.

I said from the outset that I thought that it would really only be viable on a full HDD install, more and more testers are discovering for themselves why I said that...(unless you can put up with large and fast growing pupsave files)
Thank you Guy for that explanation.
I somehow missed the message about FULL install.
In any case it's a nice addition and hope you keep it in the stream of thought you had on it.
Bernard

Posted: Tue 15 Dec 2009, 22:56
by flugwelpe
tubeguy wrote:
shankargopal wrote:Great, thanks a lot, gposil. In the meantime as a kludge I was considering something rather inelegant. Since the main advantages of apt over PPM that I can see are 1) better dependency resolution and 2) easy access to new repositories, I can keep an empty dpupsave into which I would, when necessary, install apt, run it in "--download-only" mode, and copy over the debs for installation with PPM to my main system. Possibly any frugal installers desperate for apt could do the same when they really need it... (I would just do a full install but I can't, as I need my Puppy to be flash drive based and full installs don't work on USB devices).
I would say this qualifies as "protip". ;-)
Another way which seems to work is moving the /var/cache/apt* directories out of the pupsave and softlinking to the new destination. Didn't see any troubles with this approach yet.

apt_synaptic via sfs

Posted: Thu 17 Dec 2009, 12:47
by flugwelpe
Ok, i figured a way to use apt/synaptic via an sfs file and having an out-of-savefile repository for apt.

It works using the SFS-linker pet http://www.murga-linux.com/puppy/viewtopic.php?p=352837.

I wrote a script which does necessary conversion

* First you have to extract the apt_synaptic-dpup.pet (i used pet2tgz and then tar -xvvzf ).
* Then apply my script on that <directory>
* Then mksquashfs4 <directory> apt_synaptic-dpup.sfs4.sfs
* mount a directory outside of the savefile for keeping the apt repository data under /mnt/repositories
* sfs_linker apt_synaptic-dpup.sfs4.sfs
* apt-RUNMEFIRST # to initialise the apt repo - do this just once
* apt-get update
* use your apt ;)

The sfs doesn't work via BootManager. Note, I also had some problems inbetween with automatically sfs_link'ing the sfs, so I sfs_link(er) that manually ATM every run i need it.

Code: Select all

#!/bin/bash

dir_exploded=`realpath $1`
dir_repo="$2"
var_old=/var/apt_initial_dirs
[ "${dir_repo}" = "" ] && dir_repo=/mnt/repositories/apt

function bla () {
		[ "${dir_exploded}" = "" ]  && echo "needs path" && return 1
		[ "${dir_exploded}" = "/" ]  && echo "needs path different from /" && return 1 
		
		echo '[II] Deleting all lock files'
		rm `find "${dir_exploded}" -name "[lL]ock"`
		echo '[II] Deleting backup files'
		rm "$dir_exploded"/var/backups/*

		echo '[II] Installing redirection'
	if [ ! -x "${dir_exploded}/${var_old}" ] ; then
		echo "[II] Moving directories which should be in repository out of the way (to '$dir_repo')"
		mkdir -p "${dir_exploded}/${var_old}"/lib "${dir_exploded}/${var_old}"/cache
		mv "${dir_exploded}"/var/cache/apt "${dir_exploded}"/"${var_old}"/cache/apt
		mv "${dir_exploded}"/var/cache/apt-build "${dir_exploded}"/"${var_old}"/cache/apt-build
		mv "${dir_exploded}"/var/lib/apt "${dir_exploded}"/"${var_old}"/lib/apt
		echo '[II] creating links to directories in repositories instead'
		#mkdir "${dir_exploded}"/var/lib/ "${dir_exploded}"/var/cache/
		ln -s "$dir_repo"/var_lib_apt "${dir_exploded}"/var/lib/apt
		ln -s "$dir_repo"/var_cache_apt "${dir_exploded}"/var/cache/apt
		ln -s "$dir_repo"/var_cache_apt-build "${dir_exploded}"/var/cache/apt-build
	else
		echo '[WW] It seems I already installed redirection ( found dir "${dir_exploded}/${var_old}" )'
	fi
		
	if [ -f "${dir_exploded}"/pet.specs ] ; then
		echo '[II] handling pet specs (actually just a rename, yet)'
		mv "${dir_exploded}"/pet.specs "${dir_exploded}"/apt_synaptic-dpup__pet.specs
	else
		echo "[WW] already handled pet specs (couldn't find pet.specs file)"
	fi	
	
		echo '[II] Creating install script apt-RUNMEFIRST'
		path_installer="${dir_exploded}"/usr/sbin/apt-RUNMEFIRST
		echo "#!/bin/sh" > "${path_installer}"
		for d in "cache/apt" "cache/apt-build" "lib/apt" ; do 
			echo "mkdir -p '$dir_repo/var/$d'" >> "${path_installer}"
			echo "cp -a '${var_old}/$d/'* '$dir_repo/var/$d'" >> "${path_installer}"
		done
		chmod a+x "${path_installer}"
}

bla;
echo 'woof! woof!'
[/b]

edit: 2009-12-21 - fixed copy operation quoting apt-RUNMEFIRST

Posted: Fri 18 Dec 2009, 08:05
by shankargopal
This looks really great, flugwelpe - as soon as I get some time between work (hopefully tomorrow), very eager to try it