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

Re: Building Debian Completely From Source



John Goerzen <jgoerzen@complete.org> wrote:
> Hello,
> 
> For various reasons [1], I am interested in building Debian from source
> -- and continuing to do so for upgrades and newly-installed packages.
> 
> What I'm after is basically something where I can say:
> 
>   apt-foo install kde

Close enough :)   apt-fu -R src-install kde

> The system will then:
> 
>  1. Look at kde and build/install any of its build-deps
>  2. Build kde
>  3. Build/install any Depends or Pre-Depends of kde
>  4. Install kde
>
> (These four steps would be repeated for all dependencies that had to be
> filled.)
> 
> In other words, at no time would a .deb be downloaded.  All .debs would
> be built locally and installed locally.
> 
> I'd also like to be able to say:
> 
>   apt-foo dist-upgrade

apt-fu src-dist-upgrade

Though it takes some configuring.

> Which would essentially run the above steps and upgrade my system.
> Again, no .deb would ever be downloaded; they'd be built and installed
> locally.
> 
> We seem to already have the metadata necessary to do this, but as far as
> I can tell, our existing tools don't support it.  For instance:
> 
>  * apt-build has an option to build a package and all packages it
>    depends upon, but always downloads binary .debs of -dev packages.
>    (Or maybe I got this backwards; I'm not sitting at my apt-build
>    machine right now.)

apt-fu installs binary packages of build-depends first to avoid circular
build-dependencies, and then builds and installs the build-depends from
source if -R is specified.  It's a nasty problem but you can't have the
chicken without the egg, nor the egg without the chicken.

>  * pbuilder and sbuild don't bother with actual installation,
>    so they don't resolve dependencies at all.  Also, they only download
>    .debs of build-deps.
> 
> The nearest I have seen is fink, but I know little about it.
> 
> Am I missing something?  Is anyone working on this?

deb http://www.yhbt.net/normalperson/debian ./
deb-src http://www.yhbt.net/normalperson/debian ./

apt-get install apt-fu

Documentation is available here: http://www.yhbt.net/normalperson/debian/html

I've been meaning to integrate apt-fu features into apt-src and send
patches for a while but I still haven't found the time.  Right now,
apt-fu is a combination of ideas from apt-build, apt-src and sbuild. It's
been released for over 2 months now, but I've hardly had any bug
reports.  It works fine (albeit slowly) for on both my home machines and
machines at work.

> 
> Thanks,
> 
> John
> 
> [1] I want to experiment with different optimizations on the Alpha...
> plus this would significantly reduce the number of CD's I'd have to
> carry around to have a whole Debian release with me.  One binary CD for
> each arch, plus a source CD set that would work for them all.

Maybe you'll see more performance increases with Alpha than I got with
i386 (athlon).

-- 
Eric Wong                normalperson@yhbt.net
Petta Technology, Inc      eric@petta-tech.com



Reply to: