This page serves to describe plans for the upcoming release of Bedrock Linux, 1.0alpha4 "Flopsie". Flopsie is tentatively set for release by End-of-Summer 2013.
The primary changes planned are the addition of two FUSE virtual filesystems, brpath and brinfo.
The current release of Bedrock Linux, 1.0alpha3 "Bosco", requires users run the
brp utility every time an executable is added or remove from the system.
Additionally, Bosco does not have a clean way to ensure a given executable is
always provided by the same client, irrelevant of what the client may have
natively. These two issues will be addressed with a FUSE virtual filesystem
called "brpath". It will be mounted at
/bedrock/brpath/ and have something
along the following root-level directory structure:
presbin directories will contain
executables which should always be provided by a given client. For example, if
you would like
startx to always be provided by a client called "squeeze", a
startx will be located in
The contents of
presbin will be populated based on a
configuration file located at
/bedrock/etc/brbins.conf. Each line in the
configuration file will include an executable name followed by white space and
then a client name. For example, to have the core Bedrock always provide
# command # client halt bedrock reboot bedrock poweroff bedrock shutdown bedrock
Note that if you include an executable in
brbins.conf that is not available
from the given client, it will not show up in
availability of every command in the brpath is checked on-the-fly (hence no
brp). If the command is made available in another client, the
search through the
$PATH will continue past the
presbin and may be
provided by another client later in the
The contents of
postsbin will provide
brc-wrappers for every
executable normally in the
and their sbin-counterparts). Like
presbin, the contents here
will be generated on-the-fly as needed so that
brp is not needed.
While the existence of executables is checked on-the-fly, the contents of the
relevant configuration files (
will be cached in order to improve performance. To inform the brpath virtual
filesystem to reparse the configuration files, write
as root, like so:
echo 1 > /bedrock/brpath/reparse_configs
Another FUSE virtual filesystem, brinfo, is also planned to be included in
Flopsie. It is intended to function in a similar manner to the typical Linux
/sys directory: it will both provide information about the Bedrock subsystems
as well as provide a means to make changes to it. It will be mounted at
/bedrock/brinfo and have something along the following root-level directory
/bedrock/brinfo/clients/ directory will contain one directory for each
client on the system (roughly akin to
/proc/ containing one directory for
each PID). Additionally, there will be a symlink called "current" which will
point to the client the reading process is currently in.
One can thus run
ls /bedrock/brinfo/clients | grep -v "^current$" to get a
list of clients on the system. Moreover, one can run
/bedrock/brinfo/clients/current to determine in which client the calling
executable is currently being provided by.
Each directory will contain the following:
/bedrock/brinfo/sbins/ directories will each
contain one file for every executable in their parts of the filesystem.
Reading the file will provide the name of the client which provides it.