Is there an easy way yet to make a linux system "from scratch" using a package manager like pacman, dpkg, etc.?

For example, something with which you can just say you want a working computer system with the python and perl packages, and then you get an installer (or filesystem image, or the like) with everything needed for those programs to run (the dependencies of the packages, and things needed to run programs at all)?

  • 2
    How is this different from a normal minimal install? Oct 11, 2011 at 3:19
  • it would have nothing not needed to run the given program. (like wifi support or x-windows, etc.)
    – Abbafei
    Oct 11, 2011 at 3:28
  • 2
    That sounds an awful lot like "nothing" to me... Oct 11, 2011 at 4:01
  • I think this is closer to what you want to do: prefetch.net/articles/yumchrootlinux.html
    – user90885
    Nov 9, 2014 at 15:19

2 Answers 2


I recommend going through these links:

They discuss installation of LFS ("Linux From Scratch") using either DIY package manager using symlinks, or mature package management systems like RPM.


LFS is a great learning project, I highly recommend going through it at least once.

Up one level, Gentoo / Funtoo tends to do this, however recompiling everything from source has almost no practical benefit. Furthermore, it's very often a cause of many odd issues and incompatibilities, but because the configuration is often extra special, you're basically completely on your own.

The advantages of distros is that they have smoothed most of the rough edges of making packages work well together, especially when it comes to standardized packages on production servers that you want to just work. If there are additional specific features are absolutely required, individual packages can be easily rebuilt from source on nearly every distro using their packaging tools.

For a day-to-day laptop, Ubuntu works well. I've also tried Arch as an alternative for maximum under-the-hood vs. usable *BSD-like Linux with systemd support.

Good luck and happy experimenting.

  • The /opt and /usr/local hierarchies of the FHS can be used to add system-wide variants of packages. GNU stow and update-alternatives are useful for switching between different versions of packages. Also, there are many similar tools for each programming language to install them on a per-user basis (rbenv, rvm, virtualenvwrapper, pythonbrew, etc.)
    – dhchdhd
    Oct 26, 2011 at 12:57

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .