Bedrock Linux is a meta Linux distribution that allows users to mix and match components from other distributions, including incompatible ones. This means that you can have the stability of Debian's coreutils, the cutting-edge kernel from Arch Linux, and the init system of Void Linux, all on the same system. In this tutorial, we will explain what is Bedrock Linux, its features, how to install and use Bedrock Linux to run multiple Linux distributions on a single system.
Table of Contents
1. What is Bedrock Linux?
Bedrock Linux is a unique and advanced Linux distribution that allows you to combine components from various other Linux distributions into a single, cohesive system.
Bedrock Linux is not a standalone distribution with its own package manager but rather a meta-distribution that lets you use packages, libraries, and other software from different Linux distributions simultaneously.
This can be useful for users who want to leverage the strengths of multiple distributions in one environment.
2. Key Features
- Mix and Match Distributions: Bedrock Linux allows you to use packages and components from multiple Linux distributions simultaneously. You can have software from Arch Linux, Debian, Ubuntu, Fedora, and more all running within a single Bedrock Linux installation.
- Integration: Bedrock provides mechanisms for software components to work together, even if they come from different distributions. For example, you can have libraries from one distribution and applications from another coexist seamlessly.
- Strata: Bedrock organizes the different components of your system into units called "strata," with each stratum corresponding to a different Linux distribution. You can add or remove strata as needed.
- Package Management: You can use the package manager of each individual stratum (e.g.,
pacman
for Arch Linux,apt
for Debian/Ubuntu) to manage software within that stratum.
Warning: Please note that Bedrock Linux is not as user-friendly or straightforward as typical Linux distributions and is best suited for users with advanced Linux knowledge.
Mixing components from different distributions can lead to compatibility issues, and troubleshooting can be challenging. Additionally, because Bedrock Linux is a relatively niche project, community support may be limited compared to more mainstream distributions.
Before attempting to use Bedrock Linux, it's advisable to read the following steps or the Bedrock official documentation thoroughly and consider your specific use case to determine if it's the right solution for you.
3. Prerequisites
1. Install a Base Linux System
As stated already, Bedrock Linux isn't a standalone Linux system. It is a meta Linux distribution. Meaning - it should be installed on the top of an existing Linux distribution.
To use Bedrock Linux, you first need to install a base distribution. The base system can be any Linux distribution that Bedrock supports, such as Debian, Arch Linux, or Gentoo.
Once you have a base distribution installed, you can use the Bedrock hijack installer to convert it into Bedrock.
For the purpose of this guide, I will be using Debian 12 as my base system.
2. Backup Your Data
This is really really important. You must backup all the important data before attempting to install Bedrock Linux. We already have published many Backup applications in this blog. Check our Backup Tools archive and pick any suitable backup application of your choice.
3. Bedrock Linux is only for Advanced Users
It is important to note that Bedrock Linux is not for everyone. Once it is installed, it will replace your existing install. It is irreversible. If you're a beginner, stay away from Bedrock Linux.
4. Install Bedrock Linux
Before installing Bedrock Linux, check the Bedrock Linux compatibility page to verify that your base Linux distribution is supported.
If your Linux distribution supports, download the latest Bedrock Linux 0.7 Poki installer script corresponding to your CPU architecture from the official Bedrock Linux download page.
$ wget https://github.com/bedrocklinux/bedrocklinux-userland/releases/download/0.7.29/bedrock-linux-0.7.29-x86_64.sh
Run Bedrock Linux installer with --hijack
flag as root
user or with sudo
privilege like below:
$ sudo sh bedrock-linux-0.7.29-x86_64.sh --hijack
Type "Not reversible!" in the prompt without quotes and hit ENTER key to continue.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Continuing will: * * - Move the existing install to a temporary location * * - Install Bedrock Linux on the root of the filesystem * * - Add the previous install as a new Bedrock Linux stratum * * * * YOU ARE ABOUT TO REPLACE YOUR EXISTING LINUX INSTALL WITH A * * BEDROCK LINUX INSTALL! THIS IS NOT INTENDED TO BE REVERSIBLE! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Please type "Not reversible!" without quotes at the prompt to continue: > Not reversible!
The Bedrock installer script will do the following:
- Move your existing installation to a temporary location,
- Install Bedrock Linux on the root of the filesystem,
- and then add your previous installation as a new Bedrock Linux stratum.
The installation will only take a few moments to complete.
[...] __ __ __ \ \_________\ \____________\ \___ \ _ \ _\ _ \ _\ __ \ __\ / \___/\__/\__/ \_\ \___/\__/\_\_\ Bedrock Linux 0.7.29 Poki [1/6 ( 16%)] Performing sanity checks [2/6 ( 33%)] Gathering information * Using debian for initial stratum * Using debian:/sbin/init as default init selection * Using apt as pmm user interface * Using en_IN UTF-8 for locale.gen language * Using en_IN for $LANG * Using Asia/Kolkata for timezone [3/6 ( 50%)] Hijacking init system [4/6 ( 66%)] Extracting /bedrock [5/6 ( 83%)] Configuring * Configuring bedrock stratum * Configuring debian stratum * Configuring bedrock.conf * Configuring /etc/fstab [6/6 (100%)] Finalizing * Reboot to complete installation * After reboot consider trying the Bedrock Linux basics tutorial command: brl tutorial basics
Reboot your system to complete the Bedrock installation:
$ sudo reboot
During boot process, you will see a new init selection menu. You will be prompted to choose the init number to use for this session. By default, it will automatically choose the init number of your base OS and continue booting the system. In my case, the base OS is Debian, which has an init number of 1.
If you have added multiple Strata, the init selection will display all the available entries as shown in the screenshot below.
We will explain about Stratum and Strata in detail in the subsequent sections.
Congratulations! We have successfully installed Bedrock Linux in Debian 12.
5. How to Use Bedrock Linux
Before getting started with Bedrock Linux, you need to understand two terminologies namely "strata" and "stratum".
In Bedrock Linux, "strata" and "stratum" are key concepts that refer to layers or components of the operating system. These terms are used to describe how Bedrock Linux allows you to combine and manage components from multiple Linux distributions within a single system.
5.1. What is Stratum in Bedrock Linux?
A Stratum in Bedrock Linux is an individual layer or component of the operating system. Each stratum represents a separate Linux distribution.
For example, you can have one stratum that includes software from Arch Linux, another from Debian, and another from Ubuntu. Each stratum has its own package manager and software repositories.
Bedrock Linux enables these strata to coexist on the same system, allowing you to use software from different distributions simultaneously.
5.2. What is Strata in Bedrock Linux?
The term "strata" is the plural form of "stratum." When you have multiple layers or components (i.e., different Linux distributions) integrated into your Bedrock Linux system, you refer to them collectively as "strata."
The ability to use multiple strata is a key feature of Bedrock Linux, as it enables users to leverage the strengths and software ecosystems of various distributions within a single environment.
In summary, a "stratum" is an individual component or layer representing a specific Linux distribution, while "strata" refers to the collection of these components from various distributions within your Bedrock Linux installation.
Bedrock Linux provides tools and mechanisms for managing and integrating these strata, allowing for a unique and flexible Linux experience that combines the best of multiple distributions.
5.3. The brl Command
Bedrock Linux provides a command-line tool called brl
for system management and introspection. The brl
command can be used to list, import, add, rename, copy, enable, disable, and remove strata.
To view the help section of brl
command, run:
$ brl --help
Sample Output:
Usage: brl <command> [arguments] Bedrock Linux system management and introspection. Common commands: strat Run specified stratum's executable Note: `strat` is available without the `brl` prefix list List strata which Query which stratum provides object Strata management commands: fetch Fetch new strata import Import new strata remove Remove strata (or aliases) rename Rename a stratum copy Copy a stratum Strata status management commands: status Query stratum status enable Enable strata disable Disable strata repair Repairs broken strata Strata visibility management commands: hide Hide strata show Show strata Alias management commands: alias Create a stratum alias deref Dereference stratum aliases Miscellaneous commands: apply Apply configuration changes update Update Bedrock Linux system version Query Bedrock Linux version report Generate report tutorial Run interactive Bedrock Linux tutorial See `brl <command> --help` for further details per command.
If you want to get help for a sub-command, run:
$ brl <command-name> --help
Example:
$ brl fetch --help
5.4. List Strata
To view the currently installed and enabled strata, use the brl list
command:
$ brl list
Sample Output:
bedrock debian
As you can see, my system two strata namely bedrock and debian.
In a fresh Bedrock Linux installation, there are two initial strata:
- The Bedrock Stratum: This stratum provides Bedrock-specific functionality and serves as a foundation for managing and integrating different components from various Linux distributions.
- The Hijacked Stratum: The hijacked stratum represents the base Linux distribution that you used to install Bedrock Linux. For instance, if you installed Bedrock on a Debian system, the hijacked stratum would be the Debian stratum. It contains the files and components of the base distribution that serve as the foundation for your Bedrock Linux installation.
By default, the brl list
command will only list the installed and enabled strata. If you want to display all strata including the disabled, use --a
, --all-strata
flag.
$ brl list -a
5.5. Download a New Stratum
First, check the list of available strata for download using fetch
command:
$ brl fetch --list
Sample Output:
alpine arch centos debian devuan fedora gentoo ubuntu void void-musl
To download a new stratum, for example Arch Linux, run:
$ sudo brl fetch arch
This will download and create a new Arch Linux stratum named "arch". If you want to create a stratum with custom name, you can use the -n
flag:
$ sudo brl fetch -n test-arch arch
The above command will create a new Arch Linux stratum with name "test-arch".
You can also fetch multiple strata by specifying them as space-separated entries like below.
$ sudo brl fetch alpine arch gentoo ubuntu void
5.6. Run Stratum Commands
Many features from strata should work just as they would in their native environments. You can use the respective package manager for each stratum that you have fetched to install packages.
For example, if you have fetched Arch Linux and Void Linux strata, you can run both pacman
and xbps-install
package managers in the same system like below.
$ sudo pacman -S vim
$ sudo xbps-install nano
Of course, you can use your base system's package manager, which is apt
in my case, as well.
Thus, after installing Bedrock Linux and adding the three strata, you can able to run apt
, pacman
and xbps-install
commands on the same system. Cool, isn't it?
5.7. Cross Stratum Commands and Features
Bedrock Linux goes beyond integrating just terminal commands; it aims to ensure seamless and cohesive functionality across different strata, such as:
- Graphical application menu contents,
- Shell tab completion,
- Kernel firmware detection,
- Xorg fonts,
- Some themes.
Let me show you two practical examples.
Example 1:
You can obtain Alpine's jq man page and Void's man executable using the following commands:
$ sudo apk add jq-doc $ sudo xbps-install -y man
Subsequently, you can have Void's man
command read Alpine's jq
documentation with the following command:
$ man jq
Once again, this operates just as if the man
executable and jq
man page originated from the same distribution, highlighting Bedrock Linux's ability to seamlessly blend components from different sources.
Example 2:
Here's another example that showcases Bedrock Linux's ability to integrate components from different Linux distributions.
Suppose you have a text editor, such as Vim, installed from one distribution and a spell-checking tool, like Aspell, from another distribution. Bedrock Linux allows you to use them together seamlessly:
Install Vim from one distribution, for example Arch Linux:
$ sudo pacman -S vim
Install Aspell from another distribution, for example Void Linux:
$ sudo xbps-install aspell
Now, you can use Vim's spell-checking feature with Aspell by opening a file in Vim and enabling spell-checking:
$ vim my_document.txt
Inside Vim, enable spell-checking:
:set spell
Vim will now use Aspell for spell-checking, even though these components originate from different distributions. Bedrock Linux seamlessly combines them, allowing you to edit and check the spelling of your document as if they were part of the same distribution.
If you have installed Bedrock Linux, you probably don't need containers or VMs to test different Linux distributions' commands. You can use them all in a single system.
5.8. Find which Stratum Provides a Command
We learned that we can use commands from different distributions (strata) in the previous section. You might wonder which stratum provides a particular command or a utility? This is where the brl which
command comes in help.
In a Bedrock system, each file and process is linked to a particular stratum. The "brl which
" command allows the users to query the association of files, processes, and commands with specific strata within the system.
For instance, run the following commands:
$ brl which pacman
$ brl which xbps-install
These two commands will reveal the association with the Arch Linux and Void strata, respectively. This information is useful for identifying which stratum provides specific commands or utilities.
However, what happens when multiple strata offer the same command, such as "ls
"? The "brl which ls
" command will indicate a single stratum's instance. This particular instance will be executed if you run "ls
" in the current context. The selection process for this stratum is explained in further detail in the following sections.
5.9. Find Process IDs
The "brl which
" command is not limited to commands alone; it can also be used for Process IDs. For instance, running brl which 1
can help you identify which stratum provides the currently running init system.
$ brl which 1 debian
Even file paths can be queried. Running brl which /
will indicate which stratum's root directory listing will be presented when you execute ls /
in the current context.
5.10. File Paths
In Bedrock, there are two file paths exists to avoid conflicts and to interact strata with each other. They are: local, global, and Cross file paths.
5.10.1. Local File Paths
Local file paths in Bedrock Linux are file paths that are specific to a particular stratum. This means that processes from one stratum will only see the files in that stratum's local file system, even if the files are located at the same path on the disk as files in other strata.
This is necessary to avoid conflicts between processes from different strata. For example, if Debian's apt
package manager and Ubuntu's apt
package manager were both to see the same /etc/apt/sources.list
file, they would conflict with each other.
To query Bedrock for the stratum associated with your shell, you can use the brl which
command. This will return the name of the stratum that your shell is running in.
$ brl which / debian
If your shell stratum has a /etc/os-release
file, it is likely that this file corresponds to your shell stratum distro.
Here are some examples of local file paths in Bedrock Linux:
/bedrock/strata/debian/etc/apt/sources.list
/bedrock/strata/arch/etc/pacman.conf
To access a local file path from another stratum, you can use the /bedrock/strata/<stratum-name>/
prefix. For example, to edit Debian's /etc/apt/sources.list
file from the Arch stratum, you would run the following command:
$ sudo nano /bedrock/strata/debian/etc/apt/sources.list
Local file paths of Bedrock Linux that allows you to use multiple Linux distributions on a single system without any conflicts.
5.10.2. Global File Paths
Global path files in Bedrock Linux are file paths that are accessible to all strata on the system. This means that processes from any stratum can read and write to global path files.
Global path files are necessary to allow strata to interact with each other. For example, if you are running a web server on the Arch stratum and a database server on the Debian stratum, you need to be able to share files between the two strata. You can do this by storing the files in a global path directory, such as /home
or /tmp
.
Here are some examples of global path files in Bedrock Linux:
/home/user/my_file.txt
/tmp/my_temp_file.txt
/run/mysocket
To check if the given file file path is Global, use brl which
command like below.
$ brl which /run/ global
$ brl which /run/sshd/ global
To query Bedrock for the stratum associated with a particular global path file, you can use the brl which
command. This will return the name of the stratum that owns the file.
The Global path files feature of Bedrock Linux allows strata to interact with each other and share files. This makes it possible to create complex and sophisticated systems that combine the best features of multiple Linux distributions.
As a final note, "brl which
" can also be employed to inquire about the Bedrock configuration file stratum. For instance, running brl which /bedrock/etc/bedrock.conf
will print "global," which is not a stratum name.
$ brl which /bedrock/etc/bedrock.conf global
5.10.3. Cross File Paths
Cross file paths in Bedrock are file paths that allow processes from one stratum to access local files from another stratum. To do this, you prefix the file path with /bedrock/strata/<stratum-name>/
.
For example, to read the /etc/os-release
file from the Bedrock stratum from the Arch stratum, you would run the following command:
$ cat /bedrock/strata/bedrock/etc/os-release
Sample Output:
NAME="Bedrock Linux" ID=bedrock ID_LIKE=bedrocklinux VERSION="0.7.29 (Poki)" VERSION_ID="0.7.29" PRETTY_NAME="Bedrock Linux 0.7.29 Poki" HOME_URL="https://bedrocklinux.org"
Cross file paths are useful when you want to interact with files from other strata without having to switch to that stratum.
6. Strat Command
The "strat
" command in Bedrock Linux is used to specify and execute programs from specific strata within the Bedrock environment. It plays a vital role in managing and ensuring the correct execution of programs, especially when multiple strata are involved.
Here's an explanation of how the "strat
" command works in Bedrock Linux:
Specifying a Stratum for Execution:
To run a program from a particular stratum, you prefix the "strat
" command with the desired stratum's name. For example, if you have both a Debian stratum and an Ubuntu stratum, each with its own "apt
" command, you can use the "strat
" command like this:
$ sudo strat ubuntu apt update
This command instructs Bedrock to execute the "apt
" command from the Ubuntu stratum.
Implicit Stratum Selection:
If you don't explicitly specify a stratum with "strat
," Bedrock Linux will attempt to determine the appropriate stratum based on context. It follows these three rules:
Rule 1 - Pinning:
If Bedrock is configured to ensure that one stratum always provides a specific command (e.g., init-related commands should correspond to the stratum providing PID 1), it will do so. This is known as "pinning."
For instance, the "reboot
" command and PID 1 (init) commands are usually pinned to the init stratum, ensuring consistency.
$ brl which reboot $ brl which 1
The both command should display the same output:
Rule 2 - Local Availability:
If the command is not pinned to a particular stratum but is locally available within the current stratum, Bedrock will use the local instance of the command. This approach ensures that distribution-specific dependency requirements are met.
The "ls
" command, when not explicitly specified with "strat
," typically comes from the same stratum as your shell, resulting in identical behavior.
Rule 3 - Fallback:
If the command is neither pinned nor available locally, Bedrock assumes that the specific build of the command does not matter. In such cases, Bedrock will search other strata and execute the first instance of the command it finds.
For example, let us take the commands like "apk
" and "xbps-install
," as an example. Even though these two commands originate from different strata, they work seamlessly because Bedrock Linux intelligently selects the appropriate instance based on the fallback rule.
The "strat
" command is a critical tool in Bedrock Linux that allows you to control which stratum's version of a program or command is executed.
Bedrock's rules for stratum selection ensure the correct functioning of commands in a multi-strata environment, providing a flexible and cohesive Linux experience.
7. Disable or Enable a Stratum
Occasionally, it may be advantageous to have the files of a specific stratum stored on disk without integrating them into the overall system in Bedrock Linux. You can achieve this by disabling and later enabling the stratum using the following commands:
To Disable a Stratum:
Use the "brl disable
" command followed by the name of the stratum you wish to disable. For example:
$ sudo brl disable void
Executing this command will halt all running processes associated with the specified stratum and prevent the launch of new ones. Any attempts to execute commands from the disabled stratum will result in failure, as demonstrated by:
$ strat void xbps-install --help
Sample Output:
strat: could not find state file for stratum void at /bedrock/run/enabled_strata/void Perhaps the stratum is disabled or typo'd?
To Re-enable a Stratum:
If you decide to re-enable the stratum at a later time, you can do so with the "brl enable" command, followed by the name of the stratum. For instance:
$ sudo brl enable void
After re-enabling the stratum, commands from that stratum will once again function as expected. For example:
$ strat void xbps-install --help
This process of disabling and enabling strata allows for flexibility in managing the integration of different strata within your Bedrock Linux system. It can be useful when you want to temporarily isolate or experiment with a specific stratum's files without affecting the overall system's operation.
8. Update a Stratum
To update a Stratum, simply run the respective Stratum's package manager. For instance, we can update a Void stratum using its package manager like below:
$ sudo xbps-install -Syu
Similarly, we can update Bedrock stratum using command:
$ sudo brl update
What if both strata offer the same package manager, such as 'apt
'? For instance, let's say you have both a Debian stratum and an Ubuntu stratum, each equipped with its own "apt
" command. In this scenario, you can utilize the "strat
" command as follows:
$ sudo strat ubuntu apt update
This command instructs Bedrock to execute the "apt
" command from the Ubuntu stratum, enabling you to perform operations specific to that distribution.
9. Remove a Stratum
To ensure the safe removal of a stratum in Bedrock Linux, you must follow these steps:
Before you can remove a stratum, it's essential to disable it as a protective measure. Use the following command to disable the desired stratum (e.g., "arch"):
$ sudo brl disable arch
This command stops all running processes associated with the "arch" stratum and blocks the launch of new ones.
After successfully disabling the stratum, you can proceed to remove it. Use the following command to remove the disabled stratum:
$ sudo brl remove arch
This command will eliminate the "arch" stratum and all associated files from your Bedrock Linux installation.
Optional: Disable and Remove in One Step: If you are certain that the target stratum is enabled and want to streamline the process, you can use the "-d
" flag with the "brl remove
" command to both disable and remove the stratum in a single step. For instance, to remove the "void" stratum, you can use:
$ sudo brl remove -d void
This command will first disable the "void" stratum and then proceed to remove it, ensuring a smooth removal process.
10. Delete Special Strata
The "bedrock" stratum and "init-providing" Stratum are special. Bedrock Linux imposes restrictions on removing the init-providing stratum and the bedrock stratum itself for stability and functionality reasons.
Removing the Init-Providing Stratum:
You cannot remove the stratum that is currently providing PID 1 (the init process) in Bedrock Linux due to the Linux kernel's sensitivity to changes in PID 1. This is a protective measure because the Linux kernel does not respond well to the termination of PID 1.
To verify it, if you run the command brl which 1
and it indicates that the init process is provided by a stratum, such as "debian," attempting to disable that stratum with the command brl disable debian
will fail.
$ brl which 1
$ sudo brl disable debian
Sample Output:
ERROR: Cannot disable init-providing stratum.
This restriction is in place to prevent issues that could arise from the disruption of PID 1.
If you intend to remove the init-providing stratum, you must first reboot your system and select another stratum to provide the init process for the current session.
Removing the Bedrock Stratum:
The "bedrock" stratum is a fundamental component of Bedrock Linux that holds the entire system together. As a critical glue layer, it cannot be removed. This stratum ensures the cohesion and integration of the various strata within the Bedrock environment.
There is nothing inherently special about the stratum created by hijacking another Linux installation. You have the freedom to remove it if you wish. However, it's important to ensure that any essential components provided by the hijacked stratum, such as a bootloader, kernel, or sudo, are installed in another stratum to maintain the system's functionality.
11. Bedrock Configuration File
In Bedrock Linux, all configuration settings are stored in a central file called "bedrock.conf
," located at "/bedrock/etc/bedrock.conf
."
This file serves as the repository for controlling various aspects of Bedrock's behavior. If you ever feel that there's a need to adjust or customize Bedrock's functionality to suit your requirements, you'll typically find the relevant settings within this configuration file.
To implement changes made to the "bedrock.conf
" file and ensure they take effect, you should execute the "brl apply
" command. This command effectively applies the modifications you've made to the configuration file, allowing you to tailor Bedrock Linux to your specific needs.
In essence, "bedrock.conf
" is the central hub for configuring Bedrock Linux, and the "brl apply
" command is the mechanism through which you activate these configuration adjustments, ensuring that your system operates according to your preferences.
12. Launch Bedrock Linux Interactive Tutorial
Run the Bedrock Linux Basics tutorial using command:
$ brl tutorial basics
This command will start Bedrock Linux interactive tutorial in the current Terminal.
Sample Output:
This tutorial will introduce you to the minimum Bedrock Linux-specific background required to utilize and manage a Bedrock system. This tutorial assumes familiarity with common Linux environment concepts such as a bourne shell-like command line as well as a working internet connection and a couple gigabytes of free disk space. Open another terminal with a bourne-like shell along side this one to follow along with the tutorial. If you see a `$` prompt: $ ls run the command as your normal, non-root user. If you see a `#` prompt: # whoami run the command as root (e.g. sudo, su, etc). You may press <ctrl-c> to exit the tutorial at any point. [Press <ENTER> to continue]
In the Terminal, you will be presented with a series of commands to run. Open a new Terminal window to follow along with the tutorial. In the new (second) terminal, run the commands that are shown in the first Terminal.
After running the commands in each window of the first terminal, you will be given a new set of commands to run. You need to run all the commands in order to complete the interactive tutorial.
If you don't want to continue the interactive tutorial, simply press Ctrl+C
to exit at any time.
Sample Output:
[...] A Bedrock system is composed of strata, which are collections of interrelated files and processes. These typically correspond to Linux distro installs: one may have a Debian stratum, an Arch stratum, etc. Bedrock integrates these into a single, largely cohesive system. Run $ brl list to see a list of strata currently being integrated together. This appears to be a fresh Bedrock Linux install with two strata: - bedrock, which is the stratum providing Bedrock-specific functionality. - debian which currently provides everything else. This isn't much more interesting than debian would have been by itself. The brl fetch command can be used to acquire new strata. To see distros brl fetch knows how to acquire, run $ brl fetch --list Let's get a couple more strata to experiment with in this tutorial: # brl fetch -n tut-alpine alpine # brl fetch -n tut-void void [Run the specified commands in another terminal to continue \]
You need to run the given commands in the new (second) Terminal to move on to next window. If you don't run these commands in the new terminal, the tutorial will not move to next help section. So you should run the specified commands to go through all help sections one by one.
After running all specified commands, the interactive tutorial will end.
13. Frequently Asked Questions
Here's a FAQ about Bedrock Linux.
A: Bedrock Linux is a meta Linux distribution that allows users to combine and manage components from multiple Linux distributions within a single system. It enables the seamless integration of software, libraries, and tools from various distributions.
A: Bedrock Linux is valuable for users who want to harness the strengths of different Linux distributions. It allows you to use software and features from multiple distributions simultaneously, creating a highly customizable and versatile system.
A: Bedrock Linux achieves its functionality by creating separate strata for each Linux distribution. Each stratum operates as if it were an independent system, with its package manager, software repositories, and configurations.
A: A stratum is a layer or component representing a specific Linux distribution within Bedrock Linux. It contains the software, libraries, and configurations of that distribution. Bedrock Linux users can have multiple strata coexist on the same system.
A: Yes, one of Bedrock Linux's primary features is the ability to run applications and commands from different distributions simultaneously. For instance, you can use software from both Debian and Arch Linux on the same system.
A: You can add a new stratum by installing a Linux distribution using Bedrock's installation script. To remove a stratum, first disable it with the "brl disable <stratum-name>
" command and then use "brl remove <stratum-name>
" if needed.
A: No, the Bedrock stratum and the stratum that provides PID 1 (init) cannot be removed. These strata are essential for the system's operation and stability.
A: Bedrock Linux configurations are stored in the "bedrock.conf
" file located at "/bedrock/etc/bedrock.conf
." You can modify this file to adjust various Bedrock settings. After making changes, use "brl apply
" to apply them.
A: Bedrock Linux is a complex system and may require a deep understanding of Linux concepts. Mixing components from different distributions can occasionally lead to compatibility or dependency issues. It's crucial to carefully manage your strata and configurations to ensure system stability.
A: Bedrock Linux is best suited for users with intermediate to advanced Linux knowledge. Beginners may find it challenging due to its complexity and the need to manage multiple strata effectively.
Conclusion
Bedrock Linux is a unique and innovative Linux distribution that offers the flexibility to combine components from multiple other distributions into a single cohesive system.
Bedrock Linux is a powerful and flexible tool that allows you to run multiple Linux distributions on a single system. It is a great choice for users who want to be able to experiment with different Linux distributions or who need to run multiple distributions for work or personal use.
It empowers users to leverage the strengths of different Linux distributions within a unified environment. For those who value the ability to mix and match software and features from various distributions, Bedrock Linux offers a powerful solution.
Further Reading:
We barely touched the basics of Bedrock Linux. There is a lot more to learn. Please read the official Bedrock Documentation links provided below for more details.