Dotfiles
Table of Contents
About
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
- 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/
Questions or assistance
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
My toolbox
- GNU Emacs with plugins such as evil-mode, ivy, projectile, magit, org-mode, lsp-mode and more
- neovim for basic text editing
- xmonad as window-manager, with Dunst for notifications and polybar as status bar
- Zsh with Oh My Zsh as shell
- Alacritty as terminal emulator
- Appearance-wise i use Iosevka as my default font and Solarized dark as color theme
Setup
- Install nix and set up flakes
- Install cachix and add the nix-community binary cache
- 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
$ sudo nixos-rebuild switch --flake '.#t14'
Or if system hostname is set to nixosConfigurations.<hostname> in flake.nix outputs:
$ sudo nixos-rebuild switch --flake '.#'
- Linux
$ nix build && ./result/activate
- macOS
$ nix build && sudo ./result/activate
- NixOS