6.4 KiB
Welcome to the Satellite
In case you are not familiar with nix/nixos, this is a collection of configuration files which build all my systems in a declarative manner. The tool used to configure the global system is called nixos, and the one used to configure the individual users is called home-manager.
Features this repository includes:
- Consistent base16 theming using stylix
- Agenix & homeage based secret management
- Sets up all the apps I use — including git, neovim, fish, tmux, starship, xmonad, rofi, polybar, discord, zathura, alacritty & more.
The current state of this repo is a refactor of my old, messy nixos config, based on the structure of this template.
Hosts
This repo's structure is based on the concept of hosts - individual machines configured by me. I'm naming each host based on things in space/mythology (they are the same picture). The hosts I have right now are:
- tethys - my personal laptop
- lapetus - older laptop running as a server
- euporie - barebones host for testing things insdie a VM
File structure
Location | Description |
---|---|
common | Configuration loaded on both nixos and home-manager |
dotfiles | Contains some of the bigger dotfile dirs. Will eventually be moved |
hosts/nixos | Nixos configurations |
home | Home manager configurations |
pkgs | Nix packages |
overlays | Nix overlays |
devshells | Nix shells |
stylua.toml | Lua formatter config for the repo |
flake.nix | Nix flake entrypoint! |
shell.nix | Bootstrapping nix shell |
nixpkgs.nix | Pinned nixpkgs for bootstrapping |
secrets.nix | Agenix entrypoint |
Points of interest
Here's some things you might want to check out:
- My neovim config
- The flake entrypoint for this repository
Things I use
This does not include links to every plugin I used for every program here. You can see more details in the respective configurations.
Fundamentals
- Nixos — nix based operating system
- Home-manager — manage user configuration using nix
- Impernanence — see the article about erasing your darlings
- Agenix & homeage — secret management
- Slambda — custom keyboard chording utility
- disko — format disks using nix
- zfs — filesystem
Graphical
- Stylix — base16 module for nix
- Base16 templates — list of base16 theme templates
- Catpuccin — base16 theme I use
- Rosepine — another theme I use
- Hyprland — wayland compositor
- Wezterm — terminal emulator
- Zathura — pdf viewer
- Firefox — web browser
- Tesseract — OCR engine
- Obsidian — note taking software
Terminal
There are many clis I use which I did not include here, for the sake of brevity.
- Neovim — my editor
- Tmux — terminal multiplexer
- Fish — user friendly shell
- Starship — shell prompt
- Ranger — file manager
- GPG + pass
Services
- Syncthing — file synchronization
Hall of fame
Includes links to stuff which used to be in the previous section but is not used anymore. Only created this section in June 2023, so stuff I used earlier might not be here.
Future
Tooling I might use in the future:
- nix-darwin - like nixos but for macs
- eww - widget framework