New FreeBSD packaging system

Bill Vermillion bv at wjv.com
Tue May 15 13:49:24 UTC 2007


Throwing caution to the wind and speaking without thinking about
what was being said on Tue, May 15, 2007 at 12:00 ,
freebsd-hackers-request at freebsd.org blurted this:

[much text deleted as I only am going to comment on one part - wjv]

> Message: 6
> Date: Mon, 14 May 2007 23:34:52 -0700
> From: Bert JW Regeer <xistence at 0x58.com>
> Subject: Re: New FreeBSD package system (a.k.a. Daemon Package System
> 	(dps))
> To: Garrett Cooper <youshi10 at u.washington.edu>
> Cc: freebsd-hackers at freebsd.org

....

> 
> On May 14, 2007, at 10:03 PM, Garrett Cooper wrote:
> 
> > Bert JW Regeer wrote:
> >> On May 12, 2007, at 5:14 AM, Philippe Laquet wrote:
> >>> Stanislav Sedov a ?crit :
> >>>> On Fri, 11 May 2007 02:10:05 +0200
> >>>> Ivan Voras <ivoras at fer.hr> mentioned:

> >>>>> - I think it's time to give up on using BDB+directory tree
> >>>>> full of text files for storing the installed packages
> >>>>> database, and I propose all of this be replaced by a
> >>>>> single SQLite database. SQLite is public domain (can be
> >>>>> slurped into base system), embeddable, stores all data in
> >>>>> a single file, lightweight, fast, and can be used to do
> >>>>> fancy things such as reporting.

...

> >> I am able to understand many of the gripes with using a databases,  
> >> and have to import yet another code base into the FreeBSD base,  
> >> however as one of the young ones, and knowing sed/awk/grep and  
> >> SQL, I prefer SQL over having to process hundreds of text files  
> >> using text processing tools. It saddens me each time I run one of  
> >> the pkg_* tools that needs to parse the flat file structure since  
> >> it takes so long. I have friends running Ubuntu and their apt-get  
> >> returns results much faster.

....

> > True. I was thinking of backup, and recreation from scratch,  
> > considering that the database wouldn't be more than a few megs. In  
> > place replacement just seems like a hairy situation sometimes..

...

> >> The experience I got from running SVN with BDB as the back-end  
> >> database to store my data, I say no thanks. In that case I would  
> >> much rather stick with the flat text files than go with a database.

> > Well, a few comments:

> > -Text files are bloated. Although many people are for XML, it
> > takes much longer to parse than binary databases.

> /var/db/pkg/ are all plain flat text files. I am not a supporter of  
> XML at all.

> > -Custom text files require custom format capable parsers, no
> > matter what the format, and the less coverage a parser has,
> > the more probable the likelihood of bugs IMO.

> We already have these in the pkg_* functions, so i'd hope they are  
> fairly solid!

...

> I am not opposed to text files, other than that they can be slow. I  
> am against BDB because over the years, in my experience they have  
> shown to be extremely unreliable and easily corrupted. If we are  
> going to be making changes to the way the ports/packages store the  
> information about what exists, it should be done in such a way that  
> it is scalable and at the same time extensible (is this a word?).

So why not take the same approach that is used in the password
and shadow files.  That way you have a plain text editable file
which then builds the pwd.db and spwd.db files that are used by the
system.

Or am I missing something there.

> Bert JW Regeer

Bill

-- 
Bill Vermillion - bv @ wjv . com


More information about the freebsd-hackers mailing list