about summary refs log tree commit diff stats
path: root/modules/home.legacy/default.nix
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-10-18 17:07:46 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-10-18 17:07:46 +0200
commitc52c7f314ccadcc2fcd91e28c8fd1b88f6d5ce0c (patch)
treee8b947710b467b32740598ff574982097836f66c /modules/home.legacy/default.nix
parentchore(pkgs/yt): 1.2.1 -> 1.3.0 (diff)
downloadnixos-config-c52c7f314ccadcc2fcd91e28c8fd1b88f6d5ce0c.tar.gz
nixos-config-c52c7f314ccadcc2fcd91e28c8fd1b88f6d5ce0c.zip
refactor(modules): Move all system modules to `by-name`
From now on all modules should be added to the new `by-name` directory.
This should help remove the (superficial and utterly useless)
distinction between `home-manager` and `NixOS` modules.
Diffstat (limited to 'modules/home.legacy/default.nix')
-rw-r--r--modules/home.legacy/default.nix60
1 files changed, 60 insertions, 0 deletions
diff --git a/modules/home.legacy/default.nix b/modules/home.legacy/default.nix
new file mode 100644
index 00000000..574ed66a
--- /dev/null
+++ b/modules/home.legacy/default.nix
@@ -0,0 +1,60 @@
+{
+  impermanence,
+  nixVim,
+  nix-index-database,
+  ...
+}: let
+  username = "soispha";
+  homeDirectory = "/home/${username}";
+
+  # xdg
+  configHome = "${homeDirectory}/.config";
+  dataHome = "${homeDirectory}/.local/share";
+  stateHome = "${homeDirectory}/.local/state";
+  cacheHome = "${homeDirectory}/.cache";
+  binHome = "${homeDirectory}/.local/bin";
+  # TODO: add XDG_RUNTIME_DIR
+in {
+  imports = [
+    ./conf
+    ./files
+    ./impermanence
+    ./pkgs
+    ./wms
+
+    impermanence.nixosModules.home-manager.impermanence
+    nixVim.homeManagerModules.nixvim
+    nix-index-database.hmModules.nix-index
+  ];
+
+  # I don't know what this does, but I've seen it a lot online, so it should be good, right?
+  programs.home-manager.enable = true;
+
+  home = {
+    inherit username homeDirectory;
+    stateVersion = "23.05";
+    enableNixpkgsReleaseCheck = true;
+  };
+  xdg = {
+    enable = true;
+    inherit configHome dataHome stateHome cacheHome; #binHome; # TODO: add binHome, when the standard is extended
+
+    /*
+    TODO: add this
+    desktopEntries = {};
+    */
+
+    userDirs = {
+      enable = true;
+      createDirectories = true;
+      desktop = null;
+      documents = "${homeDirectory}/school/general";
+      download = "${homeDirectory}/media/downloads";
+      music = "${homeDirectory}/media/music";
+      pictures = "${homeDirectory}/media/pictures";
+      videos = "${homeDirectory}/media/videos";
+      templates = "${homeDirectory}/media/templates";
+      publicShare = "${homeDirectory}/media/public";
+    };
+  };
+}