[locale] timezone = Europe/Kiev localegen = en_US.UTF-8 UTF-8 LANG = en_US.UTF-8 [init] timeout = 3 default = void:/sbin/init paths = /sbin/init, /sbin/fallback-init, /sbin/myinit, /sbin/ninit, /sbin/openrc-init, /sbin/runit-init, /sbin/simpleinit, /sbin/upstart, /lib/sysvinit/init, /lib/systemd/systemd, /usr/lib/systemd/systemd modules = usbhid, hid, hid_generic [global] share = /boot, /dev, /home, /lib/modules, /media, /mnt, /proc, /root, /run, /sys, /tmp bind = /bedrock, /bedrock/cross, /bedrock/run, /bedrock/strata/bedrock etc = adjtime, crypttab, default/grub, fstab, group, group-, group.org, gshadow, gshadow-, gshadow.org, hostname, hosts, login.defs, machine-id, modprobe.d/blacklist.conf, passwd, passwd-, passwd.org, rc.local, resolv.conf, resolvconf/run, shadow, shadow-, shadow.org, sudoers [symlinks] # # Enforce various symlinks are in place at local paths. This is applied at # stratum enable/repair time. # # Keys are local paths, values are symlink contents. # # The symlink contents must be absolute paths. # # # Some package managers attempt to update this. They become upset if it is # created between an unlink() and symlink(), making it unsuitable for # [etc-symlinks] below. # # Different distros use slightly different values here that are all effectively # the same. Rather than attempt to fight distros in this regard, Bedrock has # hard-coded internal support for multiple valid values here and may not # respect changes to this field. /etc/mtab = /proc/self/mounts # # Some distros may expect a file at one path while others expect it at another. # Standardize the location of global files. # /var/lib/dbus/machine-id = /etc/machine-id /var/run = /run # # Various programs need to be configured to properly interact with Bedrock # subsystems. Point them to Bedrock configuration. # /etc/systemd/system/bedrock-fix-mounts.service = /bedrock/share/systemd/bedrock-fix-mounts.service /etc/systemd/system/bedrock-stop-fuse-filesystems.service = /bedrock/share/systemd/bedrock-stop-fuse-filesystems.service /etc/systemd/system/multi-user.target.wants/bedrock-fix-mounts.service = /bedrock/share/systemd/bedrock-fix-mounts.service /etc/systemd/system/multi-user.target.wants/bedrock-stop-fuse-filesystems.service = /bedrock/share/systemd/bedrock-stop-fuse-filesystems.service /etc/X11/xorg.conf.d/99-bedrock-fonts.conf = /bedrock/run/xorg-fonts /etc/fonts/conf.d/99-bedrock-fonts.conf = /bedrock/share/fonts/fontconf.conf /etc/X11/Xsession.d/99bedrock_env = /bedrock/run/profile /etc/X11/xinit/xinitrc.d/99bedrock_env = /bedrock/run/profile /etc/bash_completion.d/brl = /bedrock/share/bash/completion/brl /etc/bash_completion.d/strat = /bedrock/share/bash/completion/strat /etc/fish/conf.d/99bedrock.fish = /bedrock/run/fprofile /etc/fish/completions/brl.fish = /bedrock/share/fish/completion/brl.fish /etc/fish/completions/strat.fish = /bedrock/share/fish/completion/strat.fish /etc/resolvconf/update.d/00bedrock = /bedrock/share/resolvconf/00bedrock # # In general, system software such as Bedrock should not manipulate /usr/local. # Bedrock should favor configuring /etc files instead. # # However, dbus's dbus-daemon-launch-helper seems to ignore /etc/dbus-1/ # configuration extending the search path. See # https://bugs.freedesktop.org/show_bug.cgi?id=92458 for a discussion on the # matter. For example: # # > Note that d-d-l-h only reads .service files from standard hard-coded paths, # > not from any additional paths that you might have configured # # Since /usr/local/share/dbus is included in the hard-coded paths, is not used # by most package managers, and is rarely used by end-users, it's the cleanest # option available to teach dbus about /bedrock/cross. # /usr/local/share/dbus-1/system-services = /bedrock/cross/dbus-system /usr/local/share/dbus-1/services = /bedrock/cross/dbus-session # # Some distros use a swap file and include reference to it in their fstab. # This must be global so that it is valid when using an init from another # stratum. However, it is not clear if it would work well with any of the # established techniques in [global]. Instead, symlink it into a known global # directory. # [etc-symlinks] # # Dynamically enforce various symlinks are in place at local paths. Any change # away from specified configuration is immediately undone. # # Keys are local paths relative to /etc, values are symlink contents. # # The symlink contents must be absolute paths. # # # Some init systems attempt to change these values at boot time, just after # being enabled. Thus, symlinks-general will not suffice. # localtime = /bedrock/run/localtime environment = /bedrock/run/environment [etc-inject] # # Not all programs can be adequately/reliably configured by creating new, # cleanly isolated configuration files. Instead, a configuration file must be # extended to include desired configuration without clobbering its stratum # local configuration. Typically these configuration files are in /etc. # # Bedrock ensures that, should certain files exist in /etc, they will include # content specified at another file path. If the desired content is not found # in the file it is automatically appended to the end. # # The keys are file paths relative to /etc, and the values are paths to files # whose content must be included if the key's file exists in /etc. # # If you alter either the key/values in this section, or the actual content of # the values, run `brl apply` to apply the change. Do this before rebooting # to ensure any old content is removed. # sudoers = /bedrock/share/sudo/include-bedrock profile = /bedrock/share/shells/include-bedrock # # etc-inject only injects existing files and does create make files in order to # avoid creating a file a package manager does not expect. Different distro # zsh packages provide different files, requiring multiple zsh file injections. # zprofile = /bedrock/share/zsh/include-bedrock zshenv = /bedrock/share/zsh/include-bedrock zsh/zprofile = /bedrock/share/zsh/include-bedrock zsh/zshenv = /bedrock/share/zsh/include-bedrock [env-vars] # # Many programs search environment variables consisting of a (usually colon # separated) list of directories. We can use these to teach these programs # about cross-stratum content. # # These variables are typically searched in listed order. To manage this # order, the configuration below is broken up into three sections for each # variable: # # - PREFIX: entries. Bedrock ensures these are at the front of the # environment variable. These are used to ensure a given resource is provided # by a specific stratum. For example, this ensures `reboot` is provided by the # init stratum. # # - INFIX: entries. These are used to ensure a given entry comes from # the local stratum. For example, some software may request to be launched by # sh via `#!/usr/bin/env sh` but utilize bash-isms which are valid on some # distros which symlink `sh` to `bash`, but not others which don't. Such # software must use the local stratum's `sh` to ensure the `bash` shell they # expect is utilized. # # - SUFFIX: entries. Bedrock ensures these are at the end of the # environment variable. Given the PREFIX: (specific stratum) and # INFIX: (local stratum) do not contain the item, it likely does not # matter which stratum provides it, and so this contains resources from any # strata which provide the resource. # PREFIX:PATH = /bedrock/cross/pin/bin:/bedrock/bin INFIX:PATH = /usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/usr/local/games:/usr/games SUFFIX:PATH = /bedrock/cross/bin PREFIX:MANPATH = /bedrock/cross/pin/man:/bedrock/share/man INFIX:MANPATH = /usr/local/share/man:/usr/share/man:/bedrock/cross/man SUFFIX:MANPATH = /bedrock/cross/man PREFIX:INFOPATH = /bedrock/cross/pin/info:/bedrock/share/info INFIX:INFOPATH = /usr/local/share/info:/usr/share/info SUFFIX:INFOPATH = /bedrock/cross/info PREFIX:XDG_DATA_DIRS = /bedrock/cross/pin INFIX:XDG_DATA_DIRS = /usr/local/share:/usr/share SUFFIX:XDG_DATA_DIRS = /bedrock/cross PREFIX:TERMINFO_DIRS = /bedrock/cross/pin/terminfo INFIX:TERMINFO_DIRS = /usr/local/share/terminfo:/usr/share/terminfo SUFFIX:TERMINFO_DIRS = /bedrock/cross/terminfo PREFIX:fpath = /bedrock/share/zsh/completion SUFFIX:fpath = /bedrock/cross/zsh-completion [restriction] restrict = apt-key, cave, debuild, dpkg-buildpackage, gdb, git, kiss, makepkg, pkgmk, prt-get, rpmbuild [cross] priority = void, arch [cross-pass] man = $MANPATH info = $INFOPATH icons = $XDG_DATA_DIRS/icons pixmaps = $XDG_DATA_DIRS/pixmaps themes = $XDG_DATA_DIRS/themes backgrounds = $XDG_DATA_DIRS/backgrounds zoneinfo = /usr/share/zoneinfo terminfo = $TERMINFO_DIRS src = /usr/local/src, /usr/src bash-completion = /usr/share/bash-completion zsh-completion = $fpath firmware = /lib/firmware/updates/UTS_RELEASE, /lib/firmware/updates, /lib/firmware/UTS_RELEASE, /lib/firmware [cross-bin] bin = $PATH # # These programs are strongly related to the init system. If the stratum # providing init provides these commands, that version should take priority. # Typical Bedrock systems have /bedrock/pin/bin/ at the front of the $PATH. # pin/bin/systemctl = init:$PATH/systemctl pin/bin/rc-service = init:$PATH/rc-service pin/bin/rc-status = init:$PATH/rc-status pin/bin/rc-update = init:$PATH/rc-update pin/bin/rc-udevadm = init:$PATH/rc-udevadm pin/bin/sv = init:$PATH/sv pin/bin/poweroff = init:$PATH/poweroff pin/bin/reboot = init:$PATH/reboot pin/bin/shutdown = init:$PATH/shutdown pin/bin/halt = init:$PATH/halt # [restriction]/restrict items are only restricted if run through strat or # cross. List any such items here to ensure they are run through cross to be # restricted. # # If a local instance is available, that is preferred over crossing strata # boundaries, just in case there is some dependency on its specific quirks. # Ensure all items here use the local alias. If the item is not available # locally, the call will fall through to un-pinned `bin` above. pin/bin/apt-key = local:$PATH/apt-key pin/bin/debuild = local:$PATH/debuild pin/bin/dpkg-buildpackage = local:$PATH/dpkg-buildpackage pin/bin/gdb = local:$PATH/gdb pin/bin/git = local:$PATH/git pin/bin/kiss = local:$PATH/kiss pin/bin/makepkg = local:$PATH/makepkg pin/bin/pkgmk = local:$PATH/pkgmk pin/bin/prt-get = local:$PATH/prt-get pin/bin/rpmbuild = local:$PATH/rpmbuild [cross-ini] applications = $XDG_DATA_DIRS/applications xsessions = init:$XDG_DATA_DIRS/xsessions, $XDG_DATA_DIRS/xsessions wayland-sessions = init:$XDG_DATA_DIRS/wayland-sessions, $XDG_DATA_DIRS/wayland-sessions dbus-system = /usr/share/dbus-1/system-services dbus-session = /usr/share/dbus-1/services [cross-font] fonts = /usr/share/fonts [pmm] user-interface = xbps priority = void:, arch:yay ignore-non-system-package-managers = false unprivileged-user = $SUDO_USER warn-about-skipping-package-managers = true cache-package-manager-list = true cache-package-database = true [brl-fetch-mirrors] mirror-prefix = https://ftp.fau.de alpine = http://uk.alpinelinux.org/alpine/ [brl-update] mirrors = https://raw.githubusercontent.com/bedrocklinux/bedrocklinux-userland/0.7/releases, https://raw.githubusercontent.com/bedrocklinux/bedrocklinux-userland/0.7beta/releases [miscellaneous] cache-life = 30 color = true