Re: gdselect alpha 3 [libapt]
On Sun, 8 Nov 1998, Jason Gunthorpe wrote:
>
> 6-7 meg? Umm. Wow. Just for comparision a core file from the GUI I was
> fiddling with was 900k.
>
Gtk+Gnome have a whole lot more features and are more general purpose,
though. It's a tradeoff of course. You could go low-level within Gtk and
save memory, but then it takes longer to write the program, and on a
P133/32 or so I doubt users can tell the difference... and apt-get and
text mode will always exist for the minimalists among us.
Of course most of it is my fault, a more minimal Gnome program is about
2400K shared plus 450K or so of run time system... I think I can strip a
couple of megs without much effort tho.
> I think wichert wanted the stable sort..
>
Okie, one search-and-replace later and we have it. It is maybe a little
bit slower but I don't think it will be noticeable.
> > My tree arbitrarily stops at depth 2: category->package->dependencies, and
> > that's it. I don't know what the right thing to do here is.
>
> I had 1 more layer, and that was virtual packages. If you a dependency
> could be fullfilled by a virtual package then the dep could be expanded to
> see the virtual packages. There is a function call to get all the possible
> solutions to a dep.. 'AllTargets' you must free the result
>
Cool, that sounds like a good idea.
> The other thing I was doing with my code was generating the tree on the
> fly as the user +/-'d items, otherwise you'd have just a huge number of
> itmes (like 7000)
>
Yes I think this is a main problem; I am generating the canvas objects
only as needed, but keeping the whole dependency tree around, my tree
nodes aren't exactly small anyway. Fixable I hope.
> What do you mean? When I'm testing it I do:
>
I mean, what if I screw up a loop and deinstall all my essential
packages... :-)
> export APT_CONFIG="`pwd`/myconf.cnf"
>
> and put
> Dir::Cache "/tmp";
>
> in myconf.cnf [you have to use pkgInitialize to get this to work] you can
> specify alternate status files if you have some.. there is a tests module
> in CVS that has about 5 meg of status files that are great for testing
> things with. use
> Dir::State::Status "/.../status1";
> you need to rm *.bin in the cache dir though
>
Great! I just needed to know what to set.
> Would it be possible to get a binary that will work on a slink system?
> Then wichert could fiddle with it. It sounds like compiling it could be an
> adventure ;>
>
Yeah it can be a fun time... Slink already has everything you need that
doesn't come in Gnome CVS though - assuming you have the disk space to
install it. ;-) It's really just a matter of installing the packages, then
typing ./autogen.sh; make; make install in each directory, with the major
caveat that everything has to be working in CVS that day.
It would be a major undertaking to backport to the packaged version of
Gnome... however there is supposed to be a Gnome release soon, and I could
try to assemble a binary to sync with it.
Havoc
Reply to: