main
1{den, ...}: {
2 den.aspects.dev.includes = [den.aspects.dev.xdg];
3 den.aspects.dev.xdg = {
4 includes = with den.aspects.dev.xdg; [
5 go
6 npm
7 ];
8
9 go = {
10 nixos.environment.variables = {
11 GOPATH = "\${XDG_DATA_HOME:-$HOME/.local/share}/go";
12 };
13 };
14
15 npm = {
16 nixos = {
17 environment.variables = {
18 NPM_CONFIG_CACHE = "\${XDG_CACHE_HOME:-$HOME/.cache}/npm";
19 NPM_CONFIG_TMP = "$XDG_RUNTIME_DIR/npm";
20 NPM_CONFIG_USERCONFIG = "\${XDG_CONFIG_HOME:-$HOME/.config}/npm/config";
21 };
22 environment.etc."npmrc".text = ''
23 prefix=''${XDG_DATA_HOME:-$HOME/.local/share}/npm
24 cache=''${XDG_CACHE_HOME:-$HOME/.cache}/npm
25 tmp=$XDG_RUNTIME_DIR/npm
26 init-module=''${XDG_CONFIG_HOME:-$HOME/.config}/npm/config/npm-init.js
27 '';
28 };
29 };
30 };
31}