This repository contains my systems setup. I have three hosts set up by this repository:
- A Lenovo laptop running NixOS
- The same Lenovo laptop running GNU/Linux debian. This setup is kept as a reference - I don’t use it myself any longer.
- A Macbook running macOS
I use nix as package manager for all hosts. I use Home Manager to declare nix packages and configuration to use. For the macbook I additionally use nix-darwin to set up system packages and fonts. All hosts are configured from their respective /hosts directory, hosts/common.nix contain shared configuration and program-specific configuration live under /programs/
I am happy to answer any questions about the contents of this repository or get newcomers started in the world of nix! Send me a message on Discord: sebastiant#6342
- GNU Emacs with plugins such as projectile, magit, org-mode, lsp-mode and more
- Sway as compositor
- Zsh with Oh My Zsh as shell
- Alacritty as terminal emulator
- Appearance-wise i use Iosevka as my default font. The great Modus themes for Emacs and otherwise Solarized dark theme
- Install nix and set up flakes
- Clone this repository
$ git clone git@github.com:sebastiant/dotfiles.git $ cd dotfiles
- Change name, username and email if you’re not me
$ grep sebastian -r . $ # edit away!
- Create the first generation
- NixOS
$ nixos-rebuild switch --upgrade --flake '.#t14' --use-remote-sudo
Or if system hostname is set to nixosConfigurations.<hostname> in flake.nix outputs:
$ nixos-rebuild switch --upgrade --flake '.#' --use-remote-sudo
- Linux
I don’t use this any longer and it is only kept for reference.
$ nix build && ./result/activate
- macOS
$ nix build && sudo ./result/activate
- NixOS