my nixos dotfiles :3 codeberg.org/koibtw/dotfiles
dotfiles neovim nixos catppuccin linux

external: add cargo config; home: set up direnv

Changed files
+62 -25
.github
workflows
external
home
+1 -1
.github/workflows/checks.yml
··· 31 31 - name: commit message 32 32 uses: adamperkowski/commits@main 33 33 with: 34 - scopes: base,home,config,scripts,zsh,systems,docs,ci,chore 34 + scopes: base,home,external,zsh,systems,docs,ci,chore
+2
external/cargo.toml
··· 1 + [build] 2 + target-dir = "/tmp/cargo"
+1 -1
home/adam.nix
··· 10 10 age.identityPaths = [ "${config.home.homeDirectory}/.ssh/id_ed25519" ]; 11 11 12 12 imports = [ 13 - ./modules/scripts.nix 13 + ./modules/external.nix 14 14 ./modules/xdg.nix 15 15 ./modules/age.nix 16 16 ./modules/theme.nix
+29
home/modules/external.nix
··· 1 + let 2 + configs = ../../external/config; 3 + scripts = ../../external/scripts; 4 + cargoConfig = ../../external/cargo.toml; 5 + in 6 + { 7 + home.file = builtins.listToAttrs ( 8 + map (name: { 9 + name = ".local/bin/${builtins.replaceStrings [ ".sh" ] [ "" ] name}"; 10 + value = { 11 + source = scripts + "/${name}"; 12 + executable = true; 13 + }; 14 + }) (builtins.attrNames (builtins.readDir scripts)) 15 + ++ [ 16 + { 17 + name = ".cargo/config.toml"; 18 + value = { 19 + source = cargoConfig; 20 + }; 21 + } 22 + ] 23 + ); 24 + 25 + xdg.configFile = builtins.mapAttrs (name: _: { 26 + source = configs + "/${name}"; 27 + recursive = true; 28 + }) (builtins.readDir configs); 29 + }
+1
home/modules/programs/default.nix
··· 3 3 ./git.nix 4 4 ./zsh.nix 5 5 ./iamb.nix 6 + ./direnv.nix 6 7 ./zoxide.nix 7 8 ./neovim.nix 8 9 ./jellyfin-rpc.nix
+26
home/modules/programs/direnv.nix
··· 1 + { pkgs, ... }: 2 + 3 + { 4 + programs.direnv = { 5 + enable = true; 6 + silent = true; 7 + enableZshIntegration = true; 8 + 9 + nix-direnv = { 10 + enable = true; 11 + package = pkgs.nix-direnv.override { nix = pkgs.lixPackageSets.stable.lix; }; 12 + }; 13 + 14 + stdlib = '' 15 + : ''${XDG_CACHE_HOME:=$HOME/.cache} 16 + declare -A direnv_layout_dirs 17 + 18 + direnv_layout_dir() { 19 + echo "''${direnv_layout_dirs[$PWD]:=$( 20 + echo -n "$XDG_CACHE_HOME"/direnv/layouts/ 21 + echo -n "$PWD" | sha1sum | cut -d ' ' -f 1 22 + )}" 23 + } 24 + ''; 25 + }; 26 + }
+2 -1
home/modules/programs/zsh.nix
··· 25 25 shellAliases = { 26 26 cp = "cp -i"; 27 27 nv = "nvim"; 28 + car = "cat"; 28 29 shred = "shred -uvz"; 29 30 30 - car = "cat"; 31 + mkdirenv = "echo -e 'if has nix;then\\n use flake\\nfi' >> .envrc && direnv allow"; 31 32 32 33 nix-build = "nom build"; 33 34 nix-shell = "nom shell";
-14
home/modules/scripts.nix
··· 1 - let 2 - scripts = ../../external/scripts; 3 - in 4 - { 5 - home.file = builtins.listToAttrs ( 6 - map (name: { 7 - name = ".local/bin/${builtins.replaceStrings [ ".sh" ] [ "" ] name}"; 8 - value = { 9 - source = scripts + "/${name}"; 10 - executable = true; 11 - }; 12 - }) (builtins.attrNames (builtins.readDir scripts)) 13 - ); 14 - }
-8
home/modules/xdg.nix
··· 1 1 { pkgs, ... }: 2 2 3 - let 4 - configs = ../../external/config; 5 - in 6 3 { 7 4 xdg = { 8 5 mimeApps.enable = true; 9 - 10 - configFile = builtins.mapAttrs (name: _: { 11 - source = configs + "/${name}"; 12 - recursive = true; 13 - }) (builtins.readDir configs); 14 6 15 7 portal = { 16 8 enable = true;