You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

bedrock.conf 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  1. [locale]
  2. timezone = Europe/Kiev
  3. localegen = en_US.UTF-8 UTF-8
  4. LANG = en_US.UTF-8
  5. [init]
  6. timeout = 3
  7. default = void:/sbin/init
  8. 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
  9. modules = usbhid, hid, hid_generic
  10. [global]
  11. share = /boot, /dev, /home, /lib/modules, /media, /mnt, /proc, /root, /run, /sys, /tmp
  12. bind = /bedrock, /bedrock/cross, /bedrock/run, /bedrock/strata/bedrock
  13. 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
  14. [symlinks]
  15. #
  16. # Enforce various symlinks are in place at local paths. This is applied at
  17. # stratum enable/repair time.
  18. #
  19. # Keys are local paths, values are symlink contents.
  20. #
  21. # The symlink contents must be absolute paths.
  22. #
  23. #
  24. # Some package managers attempt to update this. They become upset if it is
  25. # created between an unlink() and symlink(), making it unsuitable for
  26. # [etc-symlinks] below.
  27. #
  28. # Different distros use slightly different values here that are all effectively
  29. # the same. Rather than attempt to fight distros in this regard, Bedrock has
  30. # hard-coded internal support for multiple valid values here and may not
  31. # respect changes to this field.
  32. /etc/mtab = /proc/self/mounts
  33. #
  34. # Some distros may expect a file at one path while others expect it at another.
  35. # Standardize the location of global files.
  36. #
  37. /var/lib/dbus/machine-id = /etc/machine-id
  38. /var/run = /run
  39. #
  40. # Various programs need to be configured to properly interact with Bedrock
  41. # subsystems. Point them to Bedrock configuration.
  42. #
  43. /etc/systemd/system/bedrock-fix-mounts.service = /bedrock/share/systemd/bedrock-fix-mounts.service
  44. /etc/systemd/system/bedrock-stop-fuse-filesystems.service = /bedrock/share/systemd/bedrock-stop-fuse-filesystems.service
  45. /etc/systemd/system/multi-user.target.wants/bedrock-fix-mounts.service = /bedrock/share/systemd/bedrock-fix-mounts.service
  46. /etc/systemd/system/multi-user.target.wants/bedrock-stop-fuse-filesystems.service = /bedrock/share/systemd/bedrock-stop-fuse-filesystems.service
  47. /etc/X11/xorg.conf.d/99-bedrock-fonts.conf = /bedrock/run/xorg-fonts
  48. /etc/fonts/conf.d/99-bedrock-fonts.conf = /bedrock/share/fonts/fontconf.conf
  49. /etc/X11/Xsession.d/99bedrock_env = /bedrock/run/profile
  50. /etc/X11/xinit/xinitrc.d/99bedrock_env = /bedrock/run/profile
  51. /etc/bash_completion.d/brl = /bedrock/share/bash/completion/brl
  52. /etc/bash_completion.d/strat = /bedrock/share/bash/completion/strat
  53. /etc/fish/conf.d/99bedrock.fish = /bedrock/run/fprofile
  54. /etc/fish/completions/brl.fish = /bedrock/share/fish/completion/brl.fish
  55. /etc/fish/completions/strat.fish = /bedrock/share/fish/completion/strat.fish
  56. /etc/resolvconf/update.d/00bedrock = /bedrock/share/resolvconf/00bedrock
  57. #
  58. # In general, system software such as Bedrock should not manipulate /usr/local.
  59. # Bedrock should favor configuring /etc files instead.
  60. #
  61. # However, dbus's dbus-daemon-launch-helper seems to ignore /etc/dbus-1/
  62. # configuration extending the search path. See
  63. # https://bugs.freedesktop.org/show_bug.cgi?id=92458 for a discussion on the
  64. # matter. For example:
  65. #
  66. # > Note that d-d-l-h only reads .service files from standard hard-coded paths,
  67. # > not from any additional paths that you might have configured
  68. #
  69. # Since /usr/local/share/dbus is included in the hard-coded paths, is not used
  70. # by most package managers, and is rarely used by end-users, it's the cleanest
  71. # option available to teach dbus about /bedrock/cross.
  72. #
  73. /usr/local/share/dbus-1/system-services = /bedrock/cross/dbus-system
  74. /usr/local/share/dbus-1/services = /bedrock/cross/dbus-session
  75. #
  76. # Some distros use a swap file and include reference to it in their fstab.
  77. # This must be global so that it is valid when using an init from another
  78. # stratum. However, it is not clear if it would work well with any of the
  79. # established techniques in [global]. Instead, symlink it into a known global
  80. # directory.
  81. #
  82. [etc-symlinks]
  83. #
  84. # Dynamically enforce various symlinks are in place at local paths. Any change
  85. # away from specified configuration is immediately undone.
  86. #
  87. # Keys are local paths relative to /etc, values are symlink contents.
  88. #
  89. # The symlink contents must be absolute paths.
  90. #
  91. #
  92. # Some init systems attempt to change these values at boot time, just after
  93. # being enabled. Thus, symlinks-general will not suffice.
  94. #
  95. localtime = /bedrock/run/localtime
  96. environment = /bedrock/run/environment
  97. [etc-inject]
  98. #
  99. # Not all programs can be adequately/reliably configured by creating new,
  100. # cleanly isolated configuration files. Instead, a configuration file must be
  101. # extended to include desired configuration without clobbering its stratum
  102. # local configuration. Typically these configuration files are in /etc.
  103. #
  104. # Bedrock ensures that, should certain files exist in /etc, they will include
  105. # content specified at another file path. If the desired content is not found
  106. # in the file it is automatically appended to the end.
  107. #
  108. # The keys are file paths relative to /etc, and the values are paths to files
  109. # whose content must be included if the key's file exists in /etc.
  110. #
  111. # If you alter either the key/values in this section, or the actual content of
  112. # the values, run `brl apply` to apply the change. Do this before rebooting
  113. # to ensure any old content is removed.
  114. #
  115. sudoers = /bedrock/share/sudo/include-bedrock
  116. profile = /bedrock/share/shells/include-bedrock
  117. #
  118. # etc-inject only injects existing files and does create make files in order to
  119. # avoid creating a file a package manager does not expect. Different distro
  120. # zsh packages provide different files, requiring multiple zsh file injections.
  121. #
  122. zprofile = /bedrock/share/zsh/include-bedrock
  123. zshenv = /bedrock/share/zsh/include-bedrock
  124. zsh/zprofile = /bedrock/share/zsh/include-bedrock
  125. zsh/zshenv = /bedrock/share/zsh/include-bedrock
  126. [env-vars]
  127. #
  128. # Many programs search environment variables consisting of a (usually colon
  129. # separated) list of directories. We can use these to teach these programs
  130. # about cross-stratum content.
  131. #
  132. # These variables are typically searched in listed order. To manage this
  133. # order, the configuration below is broken up into three sections for each
  134. # variable:
  135. #
  136. # - PREFIX:<envvar> entries. Bedrock ensures these are at the front of the
  137. # environment variable. These are used to ensure a given resource is provided
  138. # by a specific stratum. For example, this ensures `reboot` is provided by the
  139. # init stratum.
  140. #
  141. # - INFIX:<envvar> entries. These are used to ensure a given entry comes from
  142. # the local stratum. For example, some software may request to be launched by
  143. # sh via `#!/usr/bin/env sh` but utilize bash-isms which are valid on some
  144. # distros which symlink `sh` to `bash`, but not others which don't. Such
  145. # software must use the local stratum's `sh` to ensure the `bash` shell they
  146. # expect is utilized.
  147. #
  148. # - SUFFIX:<envvar> entries. Bedrock ensures these are at the end of the
  149. # environment variable. Given the PREFIX:<envvar> (specific stratum) and
  150. # INFIX:<envvar> (local stratum) do not contain the item, it likely does not
  151. # matter which stratum provides it, and so this contains resources from any
  152. # strata which provide the resource.
  153. #
  154. PREFIX:PATH = /bedrock/cross/pin/bin:/bedrock/bin
  155. INFIX:PATH = /usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/usr/local/games:/usr/games
  156. SUFFIX:PATH = /bedrock/cross/bin
  157. PREFIX:MANPATH = /bedrock/cross/pin/man:/bedrock/share/man
  158. INFIX:MANPATH = /usr/local/share/man:/usr/share/man:/bedrock/cross/man
  159. SUFFIX:MANPATH = /bedrock/cross/man
  160. PREFIX:INFOPATH = /bedrock/cross/pin/info:/bedrock/share/info
  161. INFIX:INFOPATH = /usr/local/share/info:/usr/share/info
  162. SUFFIX:INFOPATH = /bedrock/cross/info
  163. PREFIX:XDG_DATA_DIRS = /bedrock/cross/pin
  164. INFIX:XDG_DATA_DIRS = /usr/local/share:/usr/share
  165. SUFFIX:XDG_DATA_DIRS = /bedrock/cross
  166. PREFIX:TERMINFO_DIRS = /bedrock/cross/pin/terminfo
  167. INFIX:TERMINFO_DIRS = /usr/local/share/terminfo:/usr/share/terminfo
  168. SUFFIX:TERMINFO_DIRS = /bedrock/cross/terminfo
  169. PREFIX:fpath = /bedrock/share/zsh/completion
  170. SUFFIX:fpath = /bedrock/cross/zsh-completion
  171. [restriction]
  172. restrict = apt-key, cave, debuild, dpkg-buildpackage, gdb, git, kiss, makepkg, pkgmk, prt-get, rpmbuild
  173. [cross]
  174. priority = void, arch
  175. [cross-pass]
  176. man = $MANPATH
  177. info = $INFOPATH
  178. icons = $XDG_DATA_DIRS/icons
  179. pixmaps = $XDG_DATA_DIRS/pixmaps
  180. themes = $XDG_DATA_DIRS/themes
  181. backgrounds = $XDG_DATA_DIRS/backgrounds
  182. zoneinfo = /usr/share/zoneinfo
  183. terminfo = $TERMINFO_DIRS
  184. src = /usr/local/src, /usr/src
  185. bash-completion = /usr/share/bash-completion
  186. zsh-completion = $fpath
  187. firmware = /lib/firmware/updates/UTS_RELEASE, /lib/firmware/updates, /lib/firmware/UTS_RELEASE, /lib/firmware
  188. [cross-bin]
  189. bin = $PATH
  190. #
  191. # These programs are strongly related to the init system. If the stratum
  192. # providing init provides these commands, that version should take priority.
  193. # Typical Bedrock systems have /bedrock/pin/bin/ at the front of the $PATH.
  194. #
  195. pin/bin/systemctl = init:$PATH/systemctl
  196. pin/bin/rc-service = init:$PATH/rc-service
  197. pin/bin/rc-status = init:$PATH/rc-status
  198. pin/bin/rc-update = init:$PATH/rc-update
  199. pin/bin/rc-udevadm = init:$PATH/rc-udevadm
  200. pin/bin/sv = init:$PATH/sv
  201. pin/bin/poweroff = init:$PATH/poweroff
  202. pin/bin/reboot = init:$PATH/reboot
  203. pin/bin/shutdown = init:$PATH/shutdown
  204. pin/bin/halt = init:$PATH/halt
  205. # [restriction]/restrict items are only restricted if run through strat or
  206. # cross. List any such items here to ensure they are run through cross to be
  207. # restricted.
  208. #
  209. # If a local instance is available, that is preferred over crossing strata
  210. # boundaries, just in case there is some dependency on its specific quirks.
  211. # Ensure all items here use the local alias. If the item is not available
  212. # locally, the call will fall through to un-pinned `bin` above.
  213. pin/bin/apt-key = local:$PATH/apt-key
  214. pin/bin/debuild = local:$PATH/debuild
  215. pin/bin/dpkg-buildpackage = local:$PATH/dpkg-buildpackage
  216. pin/bin/gdb = local:$PATH/gdb
  217. pin/bin/git = local:$PATH/git
  218. pin/bin/kiss = local:$PATH/kiss
  219. pin/bin/makepkg = local:$PATH/makepkg
  220. pin/bin/pkgmk = local:$PATH/pkgmk
  221. pin/bin/prt-get = local:$PATH/prt-get
  222. pin/bin/rpmbuild = local:$PATH/rpmbuild
  223. [cross-ini]
  224. applications = $XDG_DATA_DIRS/applications
  225. xsessions = init:$XDG_DATA_DIRS/xsessions, $XDG_DATA_DIRS/xsessions
  226. wayland-sessions = init:$XDG_DATA_DIRS/wayland-sessions, $XDG_DATA_DIRS/wayland-sessions
  227. dbus-system = /usr/share/dbus-1/system-services
  228. dbus-session = /usr/share/dbus-1/services
  229. [cross-font]
  230. fonts = /usr/share/fonts
  231. [pmm]
  232. user-interface = xbps
  233. priority = void:, arch:yay
  234. ignore-non-system-package-managers = false
  235. unprivileged-user = $SUDO_USER
  236. warn-about-skipping-package-managers = true
  237. cache-package-manager-list = true
  238. cache-package-database = true
  239. [brl-fetch-mirrors]
  240. mirror-prefix = https://ftp.fau.de
  241. alpine = http://uk.alpinelinux.org/alpine/
  242. [brl-update]
  243. mirrors = https://raw.githubusercontent.com/bedrocklinux/bedrocklinux-userland/0.7/releases, https://raw.githubusercontent.com/bedrocklinux/bedrocklinux-userland/0.7beta/releases
  244. [miscellaneous]
  245. cache-life = 30
  246. color = true