__          __             __
\ \_________\ \____________\ \___
 \  _ \  _\ _  \  _\ __ \ __\   /
  \___/\__/\__/ \_\ \___/\__/\_\_\
                      Bedrock Linux

Introductory Material

Current Release (0.7 Poki)



© Bedrock Linux 2012-2024
Linux® is a registered
trademark of Linus Torvalds

Introduction to Bedrock Linux

Bedrock Linux's Purpose

Linux distributions take software and, in some sense or another, make it accessible to end-users. Some distros provide binary packages while others distribute code in a way which ensures it is easy to automate compilation. These services are extremely useful as it would not be practical for everyone to compile and package all of their software directly from upstream all of the time.

The various groups doing this packaging work do so without considering interoperation with other groups. This forces end-users to choose one distro ecosystem and forgo features provided by others. Do I want something stable from CentOS or Debian? Do I want something cutting-edge from Arch? Ubuntu is quite popular and has a lot of desktop software tested against its libraries. Gentoo's ability to automate compiling packages with configured settings is also quite desirable.

Given someone already expended the effort to package the specific version of the specific piece of software a given user desires for one distro, the inability to use it with software from another distro seems wasteful.

Bedrock Linux provides a technical means to work around cross-distro compatibility limitations and, in many instances, resolve this limitation.

Bedrock Linux itself

Bedrock Linux is a meta Linux distribution. Similar in spirit to Linux From Scratch or Gentoo, it distributes a means to install a Linux based operating system even if it does not distribute most of the resulting binary files directly.

The files distributed by the Bedrock Linux project are primarily glue for components from other Linux distributions. Some, such as the hijack installer and strat command, are user-facing. Others, such as crossfs, operate largely behind the scenes to make as much as possible "just work." Bedrock also provides some quality of life utilities for managing a system composed of components from multiple other distros such as brl fetch and pmm.

A Bedrock system is composed of strata, which are collections of interrelated files. These are often one-to-one with traditional Linux distribution installs: one may have an Arch stratum, a Debian stratum, a Gentoo stratum, etc. Bedrock's "glue" carefully integrates these so that they can interact with each other without tripping on distro compatibility concerns.

Integrated features

Bedrock strives to make as many features from other distros available and work across stratum boundaries as possible. A non-comprehensive list of what is available at the time of writing includes:

Example use cases

Bedrock's flexibility opens so many options it can be difficult to provide a comprehensive, concrete picture of how it may be useful to potential users. Some reported real-world use cases include: