[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: gdselect alpha 3 [libapt]



On Sun, 8 Nov 1998, Havoc Pennington wrote:

> Well, I made some progress this weekend, and lost much sleep. The results
> are in CVS; they require CVS Gnome to build, using the standard Gnome deal
> (autogen.sh).

ERm.. Hmm, I guess I won't be building it, don't have that sort of disk
space right now :<
 
> The disadvantage to GnomeCanvas is memory use. I'm competing with Emacs. 
> ;-) (around 6 or 7 megs, though 3 megs are shared libs and 1 is probably
> Gtk/Gnome's fault). It is quite fast though, with redraws debugged; it
> seems as responsive as a GUI should be.  There are some obvious ways to
> reduce memory use too, some of the code is moronic and doesn't even try to
> keep it under control. 

6-7 meg? Umm. Wow. Just for comparision a core file from the GUI I was
fiddling with was 900k.
 
> Display seems to work except for the Delete Keep Install on the left; I'm
> not quite sure how these work. Why do some packages in your screenshot
> have round radio buttons and some have square check boxes? If I could
> interact with it how would it work?

I think the originial deal was that the ones with checkboxes were the only
option and the ones with radio buttons had choice. Ie if you could only
erase or not erase then you'd have a checkbox.

Alot of people said this looked cluttered so perhaps we should switch to
something.
 
> I have sorting by name, priority, and section; the others are easy enough
> to add, I'm just using STL sort. I am allowing "Ordering" (package sort) 
> and "Grouping" (categories of package) to be set separately, so you can
> have alpha order within each section for example. Could switch to
> stable_sort within STL for a pipe effect (sort by status then name, or
> whatever). 

I think wichert wanted the stable sort..

> 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 

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)
 
> Is pkgCache::State::VerPriority supposed to have two members that are 5
> and none that are 4? I think I am accessing it the wrong way anyway
> because I get numbers that aren't in the enum. 

No that definately looks like a transcription error.. I've fixed it in CVS

> Where is the package description hiding? I don't see an accessor, though
> I'm sure it's obvious. I should probably display this somewhere.

The mechanism to get at it is not entirely tested, but the idea is that
you open the original package file and read it directly out of there.

I haven't had time to test this yet, probably will have to very shortly as
I need to filenames I'll let you know when it is working properly.

> How do you debug this thing without hosing your system over and over?

What do you mean? When I'm testing it I do:

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 

> Well I'm very tired, I'm sorry to be rambling. Anyone that wants to check
> in changes please feel free... clean things up, or implement some of the
> stubbed menu items, or whatever... feel free to leave "// Insert GUI here"
> comments and just do the non-GUI part... to play with gnome-apt, you
> double-click on tree rows to expand them, and right-click to get the
> sort/group menu...

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 ;>

Jason


Reply to: