DragonFly kernel List (threaded) for 2004-05
On Mon, May 31, 2004 at 04:35:37PM -0500, Jon Noack wrote:
> >2) Building something like KDE/GNOME is nearly impossible to do, let
> >alone the wait for it to finish building. I have had build literally
> >take days to finish and people pushing "ports" style system can't ignore
> >that. The world isn't fixed and it's highly desirable to run even the
> >latest stuff off of the CVS from those projects. I use to do it all of
> >the time and without problems under Debian.
> I disagree with your "nearly impossible" comment. I've been using KDE
> from FreeBSD ports since version 2.1.x. Sure, it takes a while to
> compile, but I would just start the upgrade (CVSup ports tree,
> 'portupgrade -ar') before leaving work or going to sleep. I can't
Contrast this with the 20 minutes it takes for my cable modem to download
and install the packages with other folks using ports system and it's really
inarguable as to what's better for package updating. With the constant CVS
updates I get from KDE, it's really kind of impossible to imagine this with
with a compile-only ports system. The frequency and size of the changes
make it nearly impossible for folks without a compile farm to update these
packages at that rate.
You still have a somewhat hackish dependency debugger in *BSD packaging
systems. You have portupgrade, which only kind of resolves these dependency
often leaving random stuff behind, while in contrast, I can full back out
dpkgs and reinstall them at will. It maintains a DB of files installed
in a package, permits file ownership querying, etc...
It's a phenomenal system.
> recall a time when it wasn't successfully completed by the next morning.
> When I didn't want to wait, I simply used the packages from the
> KDE/FreeBSD team (http://rabarber.fruitsalad.org/). I recognize that
> having packages available is the exception rather than the rule.
Also, the quality of binary packages are rather unpolished. The way that
the FreeBSD deals with all of this is seems to be unpracticed, so you get
all of these funky things happening with dependencies. This is especially
the case if you rapidly "world" updates or do port upgrades often. The
current schema is confused and difficult to work with regarding dependencies.
And I can't imagine it being scalable for rapid, high server load availablity
until these technical issues are solved so that package maintainers can
do the fundamental work instead of being distracted with side issues.
> My completely ignorant opinion is that FreeBSD should integrate the
> bento build cluster (http://pointyhat.freebsd.org/) with the ports
> system. The ports system would default to using the package if
> available, but there would still be an option to always compile from
> source. If the package wasn't available yet, then the port would be
> compiled from source as before. The packages are already being built
> (http://pointyhat.freebsd.org/errorlogs/i386-packages-5-latest/)! All
> that is needed is to set the default PACKAGESITE to the above URL, make
> packages the default, and ensure there is enough bandwidth to handle the
> load. I know this requires further considerations for security and what
> not, but handling the load is the only technical difficulty I see...
I think that's in principal a good idea, except that the *BSD packaging
system becomes highly strained with all of these rapid updates. It simply
hasn't handled this in the past well, was never design for these task,
antiquated and is super fragile. I can't imagine myself trusting a system
like that with changes to make or replace the current packaging system.