about summary refs log tree commit diff
path: root/home/home.nix
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2023-12-14 06:19:50 -0800
committerFranck Cuny <franck@fcuny.net>2023-12-14 06:19:59 -0800
commit94142ef5780de4a049436de08b8d7e0cd3d04245 (patch)
tree7e55f6a70bba904934a088d43f464bccbb78bdb3 /home/home.nix
parentbuild(deps): bump cachix/install-nix-action from 23 to 24 (diff)
downloadworld-94142ef5780de4a049436de08b8d7e0cd3d04245.tar.gz
simplify the layout
Diffstat (limited to 'home/home.nix')
-rw-r--r--home/home.nix69
1 files changed, 69 insertions, 0 deletions
diff --git a/home/home.nix b/home/home.nix
new file mode 100644
index 0000000..42517b9
--- /dev/null
+++ b/home/home.nix
@@ -0,0 +1,69 @@
+{ config, lib, pkgs, ... }:
+{
+  imports = [
+    ./git.nix
+    ./ssh.nix
+    ./zsh.nix
+  ];
+
+  home.packages = with pkgs; [
+    dive # explore layers in docker images
+    jq
+    ripgrep
+    util-linux
+    xdg-utils
+
+    age
+    rage
+    age-plugin-yubikey
+
+    # tools inside the tools directory
+    tools.git-blame-stats
+    tools.git-broom
+    tools.ipconverter
+    tools.seqstat
+
+    # tools from external repositories
+    # x509-info
+    # gh-ssh-keys
+    # masked-emails
+  ];
+
+  programs.direnv = {
+    enable = true;
+    nix-direnv.enable = true;
+    config = {
+      global.disable_stdin = true;
+      global.strict_env = true;
+    };
+  };
+
+  xdg = {
+    enable = true;
+    # File types
+    mime.enable = true;
+    # File associatons
+    mimeApps = { enable = true; };
+    # User directories
+    userDirs = {
+      enable = true;
+      createDirectories = true;
+      desktop = "${config.home.homeDirectory}/documents";
+      documents = "${config.home.homeDirectory}/documents";
+      download = "${config.home.homeDirectory}/downloads";
+      music = "${config.home.homeDirectory}/media/music";
+      pictures = "${config.home.homeDirectory}/media/pictures";
+      publicShare = "${config.home.homeDirectory}/documents/public";
+      templates = "${config.home.homeDirectory}/documents/templates";
+      videos = "${config.home.homeDirectory}/media/videos";
+    };
+  };
+
+  home.sessionVariables = with config.xdg; {
+    LESS = "-FRSXM";
+    LESSCHARSET = "utf-8";
+    LESSHISTFILE = "${dataHome}/less/history";
+    LESSKEY = "${configHome}/less/lesskey";
+    PAGER = "less";
+  };
+}