/dotfiles-2

Primary LanguageNixBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

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. 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/

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

Setup

  • 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