My personal NixOS configuration
Find a file
Evie Litherland-Smith af10a9346e Make hyprland workspaces more program focused
Change bindings and name convention to decouple workspaces from ID
number and focus more on what the workspace is used for
TODO proper window rules
2023-06-28 16:20:02 +01:00
auth Add Northstar ssh key to authorized_keys 2023-06-04 09:40:41 +01:00
desktop Move window manager config (sway, hyprland) from desktop to wm directory, add GTK theme handling configs for sway, adjust wezterm theme for rounded corners 2023-06-20 15:26:07 +01:00
home Make hyprland workspaces more program focused 2023-06-28 16:20:02 +01:00
hosts Rename work laptop to fit theme, capitalise names in syncthing config for consistency 2023-06-27 13:46:28 +01:00
services Rename work laptop to fit theme, capitalise names in syncthing config for consistency 2023-06-27 13:46:28 +01:00
users Make hyprland workspaces more program focused 2023-06-28 16:20:02 +01:00
wm Update sway keymaps and window rules 2023-06-21 14:51:45 +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 Add newm as flake input for testing 2023-06-27 22:03:15 +01:00
flake.nix Add build target to Makefile, reorganise some definitions 2023-06-28 13:33:12 +01:00
Makefile Add build target to Makefile, reorganise some definitions 2023-06-28 13:33:12 +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.