After several years of distro hopping, endless re-installations and re-configurations, I finally decided to stop the distro hopping (to have more time to do other stuff) and configure all my systems & applications universally with the help of Nix.
If you haven't heard of Nix & NixOS yet, but you're interested, I recommend you to browse through nix.dev.
So this repository contains my dotfiles, i.e. all important configurations for all my systems & applications, managed with Nix.
I try to keep my dotfiles always up to date (e.g. with the modern tools Nix Flakes, Home Manager and Snowfall Lib). If you have any questions about Nix or NixOS, feel free to create an issue or contact the amazing community.
Warning
I am constantly changing my dotfiles. Use the code or the flake at your own risk.
The structure is given by Snowfall Lib (awesome lib, check it out!).
This directory contains the configurations for the applications for each user on all my hosts.
Many other Nix users use the concept of "suites" or "archetypes" (enabling multiple applications by setting one option). I prefer to avoid this, as I like to directly see which applications are being used by all hosts and users.
I also try to install as many applications as possible via the Home Manager in order to keep the systems as lean as possible & to support multi-user systems.
This directory contains custom Nix functions to simplify usability.
This directory contains the configurations for NixOS, Home Manager and Darwin.
This directory contains packages that I need but are not in Nixpkgs or are outdated there:
This directory contains the configurations for my systems. The hosts are named after the Greek alphabet:
- x86_64-linux/sebastian-alpha: My main computer running NixOS
- aarch64-darwin/sebastian-beta: My MacBook Air M2
License: CC BY-SA 4.0
OpenMoji - Snowflake (License: CC BY-SA 4.0)
- gameboy-color-dracula.png (Colors adapted from Dracula Theme)