My personal NixOS configuration
Find a file
2023-05-31 20:48:30 +01:00
desktop Move steam config into Vanguard.nix, disable sddm 2023-05-25 12:22:44 +01:00
hardware Formatting pass with alejandra 2023-05-17 17:10:18 +01:00
home Add some more vscode settings 2023-05-31 17:15:38 +01:00
hypr@5e557df0b5 Rename hyprland submodule to hypr for easier linking 2023-05-31 20:28:06 +01:00
locales Formatting pass with alejandra 2023-05-17 17:10:18 +01:00
nvim@c6960a1a74 Remove cspell.json 2023-05-31 20:39:15 +01:00
services Add notes directory syncing to H0615 2023-05-31 10:03:32 +01:00
templates/python39 Move setting of venv prompt in template 2023-05-22 10:39:40 +01:00
wallpaper Add some wallpaper images 2023-04-05 22:25:55 +01:00
waybar@983d33a190 Add nvim, hyprland and waybar as submodules 2023-05-31 19:13:16 +01:00
.envrc Enable nix-direnv integration to cache direnv builds 2023-05-31 11:18:45 +01:00
.gitignore Enable nix-direnv integration to cache direnv builds 2023-05-31 11:18:45 +01:00
.gitmodules Add default branch for submodules 2023-05-31 20:36:54 +01:00
.pre-commit-config.yaml Re-enable pre-commit using stylua 2023-03-03 11:42:43 +00:00
.rsyncignore Enable nix-direnv integration to cache direnv builds 2023-05-31 11:18:45 +01:00
.stylua.toml Add custom styling to wezterm tab bar, move stylua.toml to top level directory 2023-02-19 12:16:22 +00:00
common.nix Enable nix-direnv integration to cache direnv builds 2023-05-31 11:18:45 +01:00
H0615.nix Delete root user config per machine as it's common to all 2023-05-31 10:54:57 +01:00
J0162.nix Delete root user config per machine as it's common to all 2023-05-31 10:54:57 +01:00
Makefile Pull submodules when making 2023-05-31 20:48:30 +01:00
README.md Add cspell ignored words 2023-05-19 08:57:42 +01:00
shell.nix Enable nix-direnv integration to cache direnv builds 2023-05-31 11:18:45 +01:00
Vanguard.nix Delete root user config per machine as it's common to all 2023-05-31 10:54:57 +01:00

Personal NixOS configs

Contains

  • System definitions for various personal and work machines
  • Desktop environment configs
    • Plasma
    • Hyprland
  • Personal server config
  • Personal home environment definitions

Installation

Makefile handles most things. Running make will determine if this is a NixOS or Nix home-manager only install. make nixos and make home execute either explicitly.

NixOS

Clone repo into /etc/nixos/config, make nixos will do this for you otherwise. Edit your /etc/nixos/configuration.nix to import top level expression, e.g.:

{ config, pkgs, ... }: {
  imports =
    [
      # Other imports (e.g. ./hardware-configuration.nix)
      ./config/hostname.nix
    ];
  # Rest of your configuration.nix goes here
}

Nix home-manager

Must have nix installed to proceed

Clone repo and run make or make home, a machine and user specific home-manager config will be created if it doesn't already exist, and then linked to $XDG_CONFIG_HOME/home-manager/. Execute:

nix-shell -p home-manager -- run "home-manager switch -b backup"

to install configuration. Home-manager will self-manager after this.