public inbox for gentoo-portage-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-portage-dev] Portage persistence structures :: information about ports tree
@ 2008-06-09 20:36 João Macaíba
  2008-06-09 23:07 ` Marius Mauch
  2008-06-10  1:37 ` Zac Medico
  0 siblings, 2 replies; 5+ messages in thread
From: João Macaíba @ 2008-06-09 20:36 UTC (permalink / raw
  To: gentoo-portage-dev

Hi.

I'm reading portage docs and sources at /usr/lib/portage trying to
understand how portage persists information on 'available ports'.

So, I'm reading /usr/lib/portage/bin/emerge:

--- snip ---

	portdb = trees["porttree"].dbapi

--- snip ---

Where 'trees' is a parameter to 'search's object construction. 


But who really uses 'search class' is 'action_search' as we can see
below:

--- snip ---

def action_search(settings, trees, myopts, myfiles, spinner):
[...]
		searchinstance = search(settings, trees,
			spinner, "--searchdesc" in myopts,
			"--quiet" not in myopts, "--usepkg" in myopts,
			"--usepkgonly" in myopts)
[...]


--- snip ---

Later in 'emerge' file we have 

--- snip ---
action_search(settings, trees[settings["ROOT"]],
--- snip ---

... and so on ...

I'm trying to track the calls, instantiations, etc to figure out how
portage persists ports info.

May someone give me some help on this ? How does portage do the
searchs ? Walk into the ports tree and build some structure or store
this info on some embedded database like berkeley db or sqlite ?

Thanks in advance.

-- 
João Macaíba <joao.macaiba@gmail.com>

-- 
gentoo-portage-dev@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2008-06-10  1:51 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-09 20:36 [gentoo-portage-dev] Portage persistence structures :: information about ports tree João Macaíba
2008-06-09 23:07 ` Marius Mauch
2008-06-09 23:51   ` João Macaíba
2008-06-10  1:55     ` Brian
2008-06-10  1:37 ` Zac Medico

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox