diff --git a/home.nix b/home.nix index 3fa233b..ecc2702 100644 --- a/home.nix +++ b/home.nix @@ -36,7 +36,7 @@ file = import ./home/files.nix { }; } // import ./home/home.nix { - inherit pkgs; + inherit config pkgs; }; targets.genericLinux.enable = true; @@ -71,7 +71,7 @@ inherit pkgs; }; gtk = import ./home/gtk.nix { - inherit pkgs; + inherit config pkgs; }; services = import ./home/services.nix { diff --git a/home/files.nix b/home/files.nix index 8dcc96a..de308f3 100644 --- a/home/files.nix +++ b/home/files.nix @@ -5,5 +5,4 @@ _: ".profile".source = ./files/profile; ".myclirc".source = ./files/myclirc; ".agignore".source = ./files/agignore; - ".docker/config.json".source = ./files/docker/config.json; } diff --git a/home/files/borg-exclude b/home/files/borg-exclude index 9cc7e13..25c8a84 100644 --- a/home/files/borg-exclude +++ b/home/files/borg-exclude @@ -1,9 +1,6 @@ -/home/daniels/.3T -/home/daniels/.audacity-data /home/daniels/.cache /home/daniels/.config /home/daniels/.dbus -/home/daniels/.dvdcss /home/daniels/.gvfs /home/daniels/.icons /home/daniels/.java @@ -13,11 +10,9 @@ /home/daniels/.node /home/daniels/.npm /home/daniels/.rnd -/home/daniels/.vimundo /home/daniels/Applications/Games/ /home/daniels/Downloads/ /home/daniels/Music/ /home/daniels/Pictures/ /home/daniels/Projects/ /home/daniels/Videos/ -/home/daniels/snap/ diff --git a/home/files/myclirc b/home/files/myclirc index f609e6d..16da378 100644 --- a/home/files/myclirc +++ b/home/files/myclirc @@ -17,7 +17,7 @@ multi_line = False destructive_warning = True # log_file location. -; log_file = ~/.mycli.log +log_file = $XDG_DATA_DIRS/mycli.log # Default log level. Possible values: "CRITICAL", "ERROR", "WARNING", "INFO" # and "DEBUG". diff --git a/home/gtk.nix b/home/gtk.nix index bbbaa07..c32db4c 100644 --- a/home/gtk.nix +++ b/home/gtk.nix @@ -1,4 +1,4 @@ -{ pkgs }: +{ config, pkgs }: # Possible alternatives: # https://github.com/FedoraQt/adwaita-qt @@ -24,6 +24,8 @@ size = 14; }; + gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc"; + gtk3.extraConfig = { gtk-application-prefer-dark-theme = 1; gtk-enable-animations = 0; diff --git a/home/home.nix b/home/home.nix index a87301c..ab0be98 100644 --- a/home/home.nix +++ b/home/home.nix @@ -1,4 +1,4 @@ -{ pkgs }: +{ config, pkgs }: let enLocale = "en_US.utf8"; @@ -48,13 +48,33 @@ in { EDITOR = "nvim"; SHELL = "zsh"; - TYPO3_CONTEXT = "Development/dsiepmann"; - TYPO3_ADDITIONAL_CONFIGURATION = "/home/daniels/.local/share/typo3-configuration/AdditionalConfiguration.inc.php"; + # Configure look up paths to not clutter home folder but follow XDG + + XAUTHORITY = "${config.xdg.stateHome}/Xauthority"; + ERRFILE = "${config.xdg.cacheHome}/X11/xsession-errors"; + + MYSQL_HISTFILE = "${config.xdg.dataHome}/mysql_history"; + LESSHISTFILE = "${config.xdg.cacheHome}/less/history"; + + BUNDLE_USER_CONFIG = "${config.xdg.configHome}/bundle"; + BUNDLE_USER_CACHE = "${config.xdg.cacheHome}/bundle"; + BUNDLE_USER_PLUGIN = "${config.xdg.dataHome}/bundle"; + + ICEAUTHORITY = "${config.xdg.cacheHome}/ICEauthority"; + DVDCSS_CACHE = "${config.xdg.dataHome}/dvdcss"; + DOCKER_CONFIG = "${config.xdg.configHome}/docker"; + + # Program specific vars LSCOLORS = "HxGxDxDxbxDxDxababcxcx"; LS_COLORS = "di=1;37:ln=1;36:so=1;33:pi=1;33:ex=31:bd=1;33:cd=1;33:su=30;41:sg=30;41:tw=32:ow=32"; GREP_COLOR = "0;30;44"; PHAN_COLOR_SCHEME = "code"; + + # Custom vars + + TYPO3_CONTEXT = "Development/dsiepmann"; + TYPO3_ADDITIONAL_CONFIGURATION = "${config.xdg.dataHome}/typo3-configuration/AdditionalConfiguration.inc.php"; }; shellAliases = { diff --git a/home/programs.nix b/home/programs.nix index 564bd2d..0e4e13a 100644 --- a/home/programs.nix +++ b/home/programs.nix @@ -38,6 +38,7 @@ in { }; gpg = import ./programs/gpg.nix { + inherit config; }; ssh = import ./programs/ssh.nix { diff --git a/home/programs/gpg.nix b/home/programs/gpg.nix index 2123429..2e776b2 100644 --- a/home/programs/gpg.nix +++ b/home/programs/gpg.nix @@ -1,8 +1,10 @@ -_: +{ config }: { enable = true; + homedir = "${config.xdg.dataHome}/gnupg"; + publicKeys = [ { diff --git a/home/programs/neovim/configuration/plugin/shada.vim b/home/programs/neovim/configuration/plugin/shada.vim new file mode 100644 index 0000000..95b16d5 --- /dev/null +++ b/home/programs/neovim/configuration/plugin/shada.vim @@ -0,0 +1 @@ +set shadafile=~/.local/share/vim/shadafile diff --git a/home/programs/neovim/configuration/plugin/undo.vim b/home/programs/neovim/configuration/plugin/undo.vim index e523fc8..6e6b543 100644 --- a/home/programs/neovim/configuration/plugin/undo.vim +++ b/home/programs/neovim/configuration/plugin/undo.vim @@ -1,5 +1,5 @@ " Use undo file (Persist history through restart) set undofile " Directory to use for undo files -set undodir=~/.vimundo +set undodir=~/.local/share/vim/undo diff --git a/home/programs/zsh.nix b/home/programs/zsh.nix index 7791ba7..6510ace 100644 --- a/home/programs/zsh.nix +++ b/home/programs/zsh.nix @@ -3,6 +3,8 @@ { enable = true; + dotDir = ".config/zsh"; + autocd = true; enableSyntaxHighlighting = true; @@ -21,6 +23,7 @@ ignoreSpace = true; extended = true; share = false; + path = "${config.xdg.dataHome}/zsh/zsh_history"; }; initExtra = '' diff --git a/home/systemd.nix b/home/systemd.nix index d039d52..bb32494 100644 --- a/home/systemd.nix +++ b/home/systemd.nix @@ -8,7 +8,7 @@ }; tmpfiles.rules = [ - "L ${config.home.homeDirectory}/.themes - - - - ${config.home.profileDirectory}/share/themes" - "L ${config.home.homeDirectory}/.icons/${config.gtk.iconTheme.name} - - - - ${config.home.profileDirectory}/share/icons/${config.gtk.iconTheme.name}" + "L ${config.xdg.dataHome}/themes - - - - ${config.home.profileDirectory}/share/themes" + "L ${config.xdg.dataHome}/icons/${config.gtk.iconTheme.name} - - - - ${config.home.profileDirectory}/share/icons/${config.gtk.iconTheme.name}" ]; } diff --git a/home/xdg.nix b/home/xdg.nix index de7fec6..7ea643f 100644 --- a/home/xdg.nix +++ b/home/xdg.nix @@ -81,6 +81,8 @@ "nvim/syntax/php.vim".source = ./files/nvim/syntax/php.vim; + "docker/config.json".source = ./files/docker/config.json; + }; dataFile = {