Linux – How to Search for Linux Distro Build Tools

compilingdistroslfslinux

After having worked through Linux From Scratch, I get the eerie feeling that in practice, this is not how new distros are built.

How do I search for tools that other distributions are built with? Is Debian really built from scratch? Googling "Linux distro build tools" have not been very fruitful.

The following are some questions that I have not been able to find on either LFS or Google:

  • What tools are used to build Debian?
  • What are some popular tools people use to automate the compilation process?
  • Is it possible for me to simply build the entire system from precompiled binaries?
  • How do I create a live iso of my working system? What about an automated installer? Are there automation tools for making live iso and installer?
  • If I wanted to use another distro as a base, where would I start? Are there specialized tools for branching from existing distros?

LFS is cool, but it doesn't answer many practical questions that I have. Where can I find more information? In particular, what key words can I use in my google searches to find information on tools I can use to build a linux distro? Is there a book like LFS that focuses more on branching an existing distro rather than learning the build process?

PS

I have come across SUSE studio, and the like, but those tools require you to be locked in to that particular distribution, and can only offer as much flexibility as the program will allow. How did people branch from SUSE linux before SUSE studio?

Best Answer

Debian is built from scratch in the sense that each package maintainer builds his package from the source, so that you don't have to. Most distros work that way (exceptions are for example Gentoo or LFS). So the "tools" to build the software are depending on each component, and the packaging into a .deb or .rpm is often handled by a distro specific tool.

To branch an existing distro, you would have to set up a repository, and start filling that with packages. Let the package manager point to your repository, and the one of the base distro. Then you can start one by one replacing the base packages with your patched ones.

Related Question