- Notifications
You must be signed in to change notification settings - Fork3
Our GNU Guix system configuration and dotfiles
License
engstrand-config/guix-dotfiles
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is our opinionated, minimalist GNU Guix configuration. It featuresrde
, Emacs (evil mode) and various Wayland applications.
We have patched some of our favorite applications with GNU Guile support and also created some tools from scratch in Guile, for example:
Application | Description | Links |
---|---|---|
dwl-guile | dynamic tiling window manager | repo,home service |
dtao-guile | a minimal status bar | repo,home service |
farg | system colorscheme manager | repo/home service |
bemenu-prompt | createbemenu prompts in Guile | source |
We like configuring as much as possible (WM, status bar etc.) in Guile, since it brings a unified approach to the configuration of our computing environment.
We own a number of desktop/laptop computers and they all have their own configuration file in./engstrand/systems
. In the system-specific configuration file we define hardware-specific settings such as mount points for drives, LUKS encryption, the resolution and refresh rate of monitors and more.
Our user-level configurations reside in./engstrand/configs
. This includes name, email address, GPG public key, default applications, personalized appearance of the window manager etc.
The entry point for applying a configuration to ourrde
-powered Guix system is~/.config/guix/config.scm
, so in order to reconfigure the system we run
RDE_USER=$USER \RDE_TARGET=system \sudo guix system reconfigure~/.config/guix/config.scm
and similarly, to reconfigure the home environment
RDE_USER=$USER \RDE_TARGET=home \guix home reconfigure~/.config/guix/config.scm
So, what is in~/.config/guix/config.scm
? That depends on the user and system configuration we would like to apply. For example, on the desktop system namedghost
that the userjohan
uses,config.scm
contains the following:
(use-modules (engstrand reconfigure))(make-config #:user"johan" #:system"ghost")
Thebuild-iso.sh
script builds a GNU Guix System ISO that has
- the full Linux kernel
- the channels in
./engstrand/channels.scm
included
Passwords for e.g. git send-mail are fetched from Bitwarden using therbw
binary. On newly installed computers, you need to first register your device to the Bitwarden API.
- Login to your Bitwarden account in your browser.
- Navigate tohttps://vault.bitwarden.com/#/settings/security/security-keys.
- Create/view your API key.
- Run
rbw register
. - Enter the client id and secret as requested.
- If you are using 2FA for your account, login using
rbw login
. - Done.
To improve the adblock in qutebrowser, you need to install the Brave adblocker. This needs to be manually downloaded from pip (for now).
Runpip install adblock
, followed by:adblock-update
in qutebrowser.
About
Our GNU Guix system configuration and dotfiles
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Contributors2
Uh oh!
There was an error while loading.Please reload this page.