My personal NixOS configuration
Find a file
Evie Litherland-Smith bcb9f6a5bb flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/c24deeca64538dcbc589ed8da9146e4ca9eb85b7' (2023-07-03)
  → 'github:nix-community/home-manager/b70db52ff06f30e3de7f21b6ea47e75baa0c46f6' (2023-07-09)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/e632bf176b04968ca6a22f6e5d5f1a7bf77b6fa6' (2023-07-06)
  → 'github:hyprwm/Hyprland/4cc0e6de90844dd340108f132db014ccf8d44ba7' (2023-07-10)
• Updated input 'neovim-nightly-overlay':
    'github:nix-community/neovim-nightly-overlay/b202fee02f9aa272e52a87c6f8911d63fef0612f' (2023-07-04)
  → 'github:nix-community/neovim-nightly-overlay/2e8052b9f56fd2623a55d09e0a7fe06d5f73bbb0' (2023-07-10)
• Updated input 'neovim-nightly-overlay/flake-parts':
    'github:hercules-ci/flake-parts/267149c58a14d15f7f81b4d737308421de9d7152' (2023-07-01)
  → 'github:hercules-ci/flake-parts/8e8d955c22df93dbe24f19ea04f47a74adbdc5ec' (2023-07-04)
• Updated input 'neovim-nightly-overlay/hercules-ci-effects':
    'github:hercules-ci/hercules-ci-effects/4571985e314cb9f30901df8ff6eede8951e6b60f' (2023-07-03)
  → 'github:hercules-ci/hercules-ci-effects/c6191e59824febda94b431146bf65628fc534e3b' (2023-07-05)
• Updated input 'neovim-nightly-overlay/neovim-flake':
    'github:neovim/neovim/92760a7f42a95bb252966c2a38423e5bc9d57cc7?dir=contrib' (2023-07-03)
  → 'github:neovim/neovim/fbeef0d4ef1aadc4e50b9f33946cf4dca8ca6b62?dir=contrib' (2023-07-08)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/645ff62e09d294a30de823cb568e9c6d68e92606' (2023-07-01)
  → 'github:NixOS/nixpkgs/408c0e8c15a1c9cf5c3226931b6f283c9867c484' (2023-07-09)
2023-07-10 10:20:04 +01:00
auth Add Northstar ssh key to authorized_keys 2023-06-04 09:40:41 +01:00
desktop Add initial configs for awesome and qtile wm for testing 2023-07-04 11:33:39 +01:00
home Add networkmanagerapplet and click action to open from waybar 2023-07-10 10:14:24 +01:00
hosts Hyprland updates 2023-07-07 17:25:04 +01:00
services Add default paths for syncthing directories 2023-06-28 19:56:54 +01:00
wm Rename overlays for new convention 2023-06-30 09:16:30 +01:00
.gitignore Enable nix-direnv integration to cache direnv builds 2023-05-31 11:18:45 +01:00
.pre-commit-config.yaml Re-enable pre-commit using stylua 2023-03-03 11:42:43 +00: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
flake.lock flake.lock: Update 2023-07-10 10:20:04 +01:00
flake.nix Adjust waybar config 2023-07-07 17:52:12 +01:00
Makefile Add update directive to Makefile 2023-07-10 10:19:51 +01:00
README.md Add cspell ignored words 2023-05-19 08:57:42 +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.