~abcdw/rde

Tools for managing reproducible development environments
Revert "gnu: home-services-utils: Make ‘listof’ accept empty lists."
gnu: home-services-utils: Make ‘listof’ accept empty lists.
gnu: home-services: version-control: Remove conflicting import.

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~abcdw/rde
read/write
git@git.sr.ht:~abcdw/rde

You can also use your local clone with git send-email.

1 rde

Set of tools for managing computing environments with GNU Guix. More info is available at trop.in/rde.

Disclaimer: The project is in an active development stage.

Tip: older Nix source code is available under stale/ directory.

1.1 Principles

1.1.1 Main

Ergonomic
Sane keybindings, good contrast, readable fonts.
Reproducible
Setup can be easily replicated.
Hackable
Easy to throw out or modify any part of setup.
Stateless
All state must be explicit and syncable or temporary.

1.1.2 Secondary

Lightweight and battery efficient
wayland, fast native apps.
Offline
most of workflows and apps should work without network.
Attention-friendly
minimal use of notification and other distractive things.

1.2 Usage

rde heavily relies on Guix Home and provides a home-environment, which can be used as follows:

git clone https://git.sr.ht/~abcdw/rde
cd rde
./pre-inst-env guix home reconfigure ./rde/config.scm

Read more about home-environment at Home Configuration.

GNU Guix should be installed before invoking command above.

Also, for now Guix Home is not a part GNU Guix and have to be installed manually. When it will become upstreamed the installation step won't be needed.

1.2.1 Guix Home

  1. Option 1

    The primary way to use Guix Home now is to set GUILE_LOAD_PATH to the directory, where the guile code for it is located. ./pre-inst-env script in the root of rde folder is doing exactly that, just prefix any command with it, like:

    ./pre-inst-env guix home --help
    
  2. Option 2

    Another possible option is to add rde repo as a channel, but you still need to run at least on guix home reconfigure with correct GUILE_LOAD_PATH as mentioned above or:

    GUILE_LOAD_PATH=${XDG_CONFIG_HOME:-$HOME/.config}/guix/current/share/guile/site/3.0:$GUILE_LOAD_PATH
    guix home reconfigure ./PATH_TO_FILE_WITH/HOME_ENVIRONMENT.scm
    

    After you installed your first home environment, your shell is properly configured (See Configuring the Shell) and you did relogin or reboot, you should be able to use guix home without setting anything.

1.3 Tools

Purpose Tool
Window Manager Sway
Terminal Alacritty
Login Shell Bash
Interactive Unix Shell Zsh
Everything Else (: Emacs

1.4 Community

There are a few mailing lists you can subscribe and/or post with your existing email account:

~abcdw/rde-announce@lists.sr.ht
for news and updates.
~abcdw/rde-discuss@lists.sr.ht
for discussions and questions.
~abcdw/rde-devel@lists.sr.ht
for patches and development related discussions.

1.5 Contributing

1.5.1 New features, fixes or ideas

Send mails, optionally with inline patches to rde-devel mailing list.

1.5.2 Documentation

For Guix Home documentation for now maintained in forked Guix repository inside doc/guix.texi and deployed to https://guix-home.trop.in/Home-Configuration.html once in a while. Patches to rde-devel is a good option here too.

For rde it should go to Guix Cookbook in upstream Guix repo.

1.6 Latest screenshot

Just a picture to catch your eye.

78423008-06bfcc80-766c-11ea-8a79-ec63f1237126.png

Figure 1: Latest rde screenshot