My personal NixOS configuration
Find a file
Evie Litherland-Smith a615762940 Combine mail setup with calendar and contacts
Move mail into accounts expression set
Add vdirsyncer and initial config to sync to CalDAV and CardDAV

TODO add to emacs
2023-09-02 08:41:07 +01:00
auth Add Ronin to authorized_keys 2023-08-30 07:01:27 +01:00
home Combine mail setup with calendar and contacts 2023-09-02 08:41:07 +01:00
hosts Combine mail setup with calendar and contacts 2023-09-02 08:41:07 +01:00
pkgs/sddm-catppuccin-macchiato Split desktop config into plasma and hyprland 2023-08-02 10:23:16 +01:00
services Temp remove max file size changes 2023-08-30 07:37:40 +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 anyrun plugins, update flake inputs 2023-08-08 12:21:23 +01:00
flake.nix Initial setup of mbsync and msmtp in home-manager 2023-09-01 15:18:29 +01:00
Makefile Add Vanguard back to syncthing 2023-08-30 07:28:36 +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.