Skip to main content
added 696 characters in body
Source Link

Yocto

https://en.wikipedia.org/wiki/Yocto_Project

Very similar goals to Buildroot, not sure about tradeoffs. After a very quick look, it felt more bloated/featured depending on how you want to call it. Their scripting might be a bit saner.

NixOS

https://nixos.org/

Another one that looks a lot like Buildroot, but this one does have a truly sane package description format! It also seems to have a focus on supporting multiple versions of libraries being installed at the same time.

When I last checked in 2020, cross compilation + ability to run on QEMU was that that great however, and that is a key focus of Buildroot. But still, this is a very promising project.

Alpine Linux

Alpine Linux

Yocto

https://en.wikipedia.org/wiki/Yocto_Project

Very similar goals to Buildroot, not sure about tradeoffs. After a very quick look, it felt more bloated/featured depending on how you want to call it. Their scripting might be a bit saner.

NixOS

https://nixos.org/

Another one that looks a lot like Buildroot, but this one does have a truly sane package description format! It also seems to have a focus on supporting multiple versions of libraries being installed at the same time.

When I last checked in 2020, cross compilation + ability to run on QEMU was that that great however, and that is a key focus of Buildroot. But still, this is a very promising project.

Alpine Linux

added 43 characters in body
Source Link

Single executable rootfs

The absolute minimum system runs a single /init program as I've explained at Single Application Linux | Super User

Minimal Linux Live

https://github.com/ivandavidov/minimal

For a more interesting interactive system, this is a (mostly educational) small script that:

  • downloads the source for the kernel and busybox
  • compiles them
  • generates a bootable 8Mb ISO with them

The ISO then leaves you in a minimal shell with busybox.

With QEMU you can easily boot into the system.

I have modified it to allow running it from the kernel source directory: https://github.com/cirosantilli/runlinux

Usage:

git clone https://github.com/ivandavidov/minimal cd minimal/src ./build_minimal_linux_live.sh # Wait. # Install QEMU. # minimal_linux_live.iso was generated ./qemu64.sh 

and you will be left inside a QEMU Window with you new minimal system. Awesome.

Since it is small, this is a good option to read the source and understand what is going on.

Tested on Ubuntu 16.04.

Buildroot

https://buildroot.org/

Large set of Makefile scripts that manage:

  • GCC cross compilation toolchain
  • kernel compilation
  • bootloader compilation
  • generation of rootfs
  • has tons of package download / build recipes in the source tree, including complex stuff like GTK. There is a dependency system.

Minimal example:

git clone git://git.buildroot.net/buildroot cd buildroot git checkout 2016.05 make qemu_x86_defconfig # Can't use -jN, use `BR2_JLEVEL=2` instead. BR2_JLEVEL=2 make # Wait. # cat board/qemu/x86_64/readme.txt qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user # You are now in a shell with BusyBox utilities. 

It even has recipes for building X11 from scratch: How to install X11 on my own Linux Buildroot system?

Professional battle tested stuff used by some big enterprises.

Alpine Linux

https://github.com/gliderlabs/docker-alpine

Embedded distribution with a package manager that offers precompiled binaries from a website.

See also

Single executable rootfs

The absolute minimum system runs a single /init program as I've explained at Single Application Linux | Super User

Minimal Linux Live

https://github.com/ivandavidov/minimal

For a more interesting interactive system, this is a (mostly educational) small script that:

  • downloads the source for the kernel and busybox
  • compiles them
  • generates a bootable 8Mb ISO with them

The ISO then leaves you in a minimal shell with busybox.

With QEMU you can easily boot into the system.

I have modified it to allow running it from the kernel source directory: https://github.com/cirosantilli/runlinux

Usage:

git clone https://github.com/ivandavidov/minimal cd minimal/src ./build_minimal_linux_live.sh # Wait. # Install QEMU. # minimal_linux_live.iso was generated ./qemu64.sh 

and you will be left inside a QEMU Window with you new minimal system. Awesome.

Since it is small, this is a good option to read the source and understand what is going on.

Tested on Ubuntu 16.04.

Buildroot

https://buildroot.org/

Large set of Makefile scripts that manage:

  • GCC cross compilation toolchain
  • kernel compilation
  • bootloader compilation
  • generation of rootfs
  • has tons of package download / build recipes in the source tree, including complex stuff like GTK. There is a dependency system.

Minimal example:

git clone git://git.buildroot.net/buildroot cd buildroot git checkout 2016.05 make qemu_x86_defconfig # Can't use -jN, use `BR2_JLEVEL=2` instead. BR2_JLEVEL=2 make # Wait. # cat board/qemu/x86_64/readme.txt qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user # You are now in a shell with BusyBox utilities. 

It even has recipes for building X11 from scratch: How to install X11 on my own Linux Buildroot system?

Professional stuff.

Alpine Linux

https://github.com/gliderlabs/docker-alpine

Embedded distribution with a package manager that offers precompiled binaries from a website.

See also

Single executable rootfs

The absolute minimum system runs a single /init program as I've explained at Single Application Linux | Super User

Minimal Linux Live

https://github.com/ivandavidov/minimal

For a more interesting interactive system, this is a (mostly educational) small script that:

  • downloads the source for the kernel and busybox
  • compiles them
  • generates a bootable 8Mb ISO with them

The ISO then leaves you in a minimal shell with busybox.

With QEMU you can easily boot into the system.

I have modified it to allow running it from the kernel source directory: https://github.com/cirosantilli/runlinux

Usage:

git clone https://github.com/ivandavidov/minimal cd minimal/src ./build_minimal_linux_live.sh # Wait. # Install QEMU. # minimal_linux_live.iso was generated ./qemu64.sh 

and you will be left inside a QEMU Window with you new minimal system. Awesome.

Since it is small, this is a good option to read the source and understand what is going on.

Tested on Ubuntu 16.04.

Buildroot

https://buildroot.org/

Large set of Makefile scripts that manage:

  • GCC cross compilation toolchain
  • kernel compilation
  • bootloader compilation
  • generation of rootfs
  • has tons of package download / build recipes in the source tree, including complex stuff like GTK. There is a dependency system.

Minimal example:

git clone git://git.buildroot.net/buildroot cd buildroot git checkout 2016.05 make qemu_x86_defconfig # Can't use -jN, use `BR2_JLEVEL=2` instead. BR2_JLEVEL=2 make # Wait. # cat board/qemu/x86_64/readme.txt qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user # You are now in a shell with BusyBox utilities. 

It even has recipes for building X11 from scratch: How to install X11 on my own Linux Buildroot system?

Professional battle tested stuff used by some big enterprises.

Alpine Linux

https://github.com/gliderlabs/docker-alpine

Embedded distribution with a package manager that offers precompiled binaries from a website.

See also

Corrected links..
Source Link

Single executable rootfs

The absolute minimum system runs a single /init program as I've explained at https://superuser.com/a/991733/128124Single Application Linux | Super User

Minimal Linux Live

https://github.com/ivandavidov/minimal

For a more interesting interactive system, this is a (mostly educational) small script that:

  • downloads the source for the kernel and busybox
  • compiles them
  • generates a bootable 8Mb ISO with them

The ISO then leaves you in a minimal shell with busybox.

With QEMU you can easily boot into the system.

I have modified it to allow running it from the kernel source directory: https://github.com/cirosantilli/runlinux

Usage:

git clone https://github.com/ivandavidov/minimal cd minimal/src ./build_minimal_linux_live.sh # Wait. # Install QEMU. # minimal_linux_live.iso was generated ./qemu64.sh 

and you will be left inside a QEMU Window with you new minimal system. Awesome.

Since it is small, this is a good option to read the source and understand what is going on.

Tested on Ubuntu 16.04.

Buildroot

https://buildroot.org/

Large set of Makefile scripts that manage:

  • GCC cross compilation toolchain
  • kernel compilation
  • bootloader compilation
  • generation of rootfs
  • has tons of package download / build recipes in the source tree, including complex stuff like GTK. There is a dependency system.

Minimal example:

git clone git://git.buildroot.net/buildroot cd buildroot git checkout 2016.05 make qemu_x86_defconfig # Can't use -jN, use `BR2_JLEVEL=2` instead. BR2_JLEVEL=2 make # Wait. # cat board/qemu/x86_64/readme.txt qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user # You are now in a shell with BusyBox utilities. 

It even has recipes for building X11 from scratch: How to install X11 on my own Linux Buildroot system?

Professional stuff.

Alpine Linux

https://github.com/gliderlabs/docker-alpine

Embedded distribution with a package manager that offers precompiled binaries from a website.

See also

Single executable rootfs

The absolute minimum system runs a single /init program as I've explained at https://superuser.com/a/991733/128124

Minimal Linux Live

https://github.com/ivandavidov/minimal

For a more interesting interactive system, this is a (mostly educational) small script that:

  • downloads the source for the kernel and busybox
  • compiles them
  • generates a bootable 8Mb ISO with them

The ISO then leaves you in a minimal shell with busybox.

With QEMU you can easily boot into the system.

I have modified it to allow running it from the kernel source directory: https://github.com/cirosantilli/runlinux

Usage:

git clone https://github.com/ivandavidov/minimal cd minimal/src ./build_minimal_linux_live.sh # Wait. # Install QEMU. # minimal_linux_live.iso was generated ./qemu64.sh 

and you will be left inside a QEMU Window with you new minimal system. Awesome.

Since it is small, this is a good option to read the source and understand what is going on.

Tested on Ubuntu 16.04.

Buildroot

https://buildroot.org/

Large set of Makefile scripts that manage:

  • GCC cross compilation toolchain
  • kernel compilation
  • bootloader compilation
  • generation of rootfs
  • has tons of package download / build recipes in the source tree, including complex stuff like GTK. There is a dependency system.

Minimal example:

git clone git://git.buildroot.net/buildroot cd buildroot git checkout 2016.05 make qemu_x86_defconfig # Can't use -jN, use `BR2_JLEVEL=2` instead. BR2_JLEVEL=2 make # Wait. # cat board/qemu/x86_64/readme.txt qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user # You are now in a shell with BusyBox utilities. 

It even has recipes for building X11 from scratch: How to install X11 on my own Linux Buildroot system?

Professional stuff.

Alpine Linux

https://github.com/gliderlabs/docker-alpine

Embedded distribution with a package manager that offers precompiled binaries from a website.

See also

Single executable rootfs

The absolute minimum system runs a single /init program as I've explained at Single Application Linux | Super User

Minimal Linux Live

https://github.com/ivandavidov/minimal

For a more interesting interactive system, this is a (mostly educational) small script that:

  • downloads the source for the kernel and busybox
  • compiles them
  • generates a bootable 8Mb ISO with them

The ISO then leaves you in a minimal shell with busybox.

With QEMU you can easily boot into the system.

I have modified it to allow running it from the kernel source directory: https://github.com/cirosantilli/runlinux

Usage:

git clone https://github.com/ivandavidov/minimal cd minimal/src ./build_minimal_linux_live.sh # Wait. # Install QEMU. # minimal_linux_live.iso was generated ./qemu64.sh 

and you will be left inside a QEMU Window with you new minimal system. Awesome.

Since it is small, this is a good option to read the source and understand what is going on.

Tested on Ubuntu 16.04.

Buildroot

https://buildroot.org/

Large set of Makefile scripts that manage:

  • GCC cross compilation toolchain
  • kernel compilation
  • bootloader compilation
  • generation of rootfs
  • has tons of package download / build recipes in the source tree, including complex stuff like GTK. There is a dependency system.

Minimal example:

git clone git://git.buildroot.net/buildroot cd buildroot git checkout 2016.05 make qemu_x86_defconfig # Can't use -jN, use `BR2_JLEVEL=2` instead. BR2_JLEVEL=2 make # Wait. # cat board/qemu/x86_64/readme.txt qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user # You are now in a shell with BusyBox utilities. 

It even has recipes for building X11 from scratch: How to install X11 on my own Linux Buildroot system?

Professional stuff.

Alpine Linux

https://github.com/gliderlabs/docker-alpine

Embedded distribution with a package manager that offers precompiled binaries from a website.

See also

added 203 characters in body
Source Link
Loading
replaced http://unix.stackexchange.com/ with https://unix.stackexchange.com/
Source Link
Loading
replaced http://superuser.com/ with https://superuser.com/
Source Link
Loading
added 1002 characters in body
Source Link
Loading
added 2 characters in body
Source Link
Loading
deleted 117 characters in body
Source Link
Loading
added 5 characters in body
Source Link
Loading
added 170 characters in body
Source Link
Loading
added 117 characters in body
Source Link
Loading
Source Link
Loading