diff --git a/hosts/vps-private/default.nix b/hosts/vps-private/default.nix index 81028f2..455b7bd 100644 --- a/hosts/vps-private/default.nix +++ b/hosts/vps-private/default.nix @@ -46,6 +46,11 @@ domain = "budget.${privateDomain}"; doBackups = true; }; + + atuin = { + enable = true; + domain = "atuin.${privateDomain}"; + }; }; }; } diff --git a/modules/home/programs/atuin.nix b/modules/home/programs/atuin.nix new file mode 100644 index 0000000..6d701a8 --- /dev/null +++ b/modules/home/programs/atuin.nix @@ -0,0 +1,22 @@ +{ + config, + osConfig, + pkgs, + lib, + ... +}: +{ + options.custom.programs.atuin.enable = lib.mkEnableOption ""; + + config = lib.mkIf config.custom.programs.atuin.enable { + programs.atuin = { + enable = true; + forceOverwriteSettings = true; + flags = [ "--disable-up-arrow" ]; + settings = { + sync_address = "https://atuin.${osConfig.custom.networking.overlay.domain}"; + key_path = pkgs.writeText "atuin-key" "3AAgzNnMicyALmrMt8ywzL/Mv3LMkEI/zKdPzLDMwCB9KCAwWsybzOrMn8zmzLZszIgMMQ==\n"; + }; + }; + }; +} diff --git a/modules/system/services/syncthing.nix b/modules/system/services/syncthing.nix index bde588f..c9320cd 100644 --- a/modules/system/services/syncthing.nix +++ b/modules/system/services/syncthing.nix @@ -44,7 +44,6 @@ in "Pictures" "Projects" "Videos" - ".local/share/zsh" ]; }; }; @@ -135,10 +134,7 @@ in restic.backups.syncthing = lib.mkIf cfg.doBackups { conflictingService = "syncthing.service"; paths = [ dataDir ]; - extraConfig.exclude = [ - "${dataDir}/Downloads" - "${dataDir}/.local/share/zsh" - ]; + extraConfig.exclude = [ "${dataDir}/Downloads" ]; }; }; diff --git a/modules/system/web-services/atuin.nix b/modules/system/web-services/atuin.nix new file mode 100644 index 0000000..d660014 --- /dev/null +++ b/modules/system/web-services/atuin.nix @@ -0,0 +1,27 @@ +{ config, lib, ... }: +let + cfg = config.custom.web-services.atuin; +in +{ + options.custom.web-services.atuin = { + enable = lib.mkEnableOption ""; + domain = lib.mkOption { + type = lib.types.nonEmptyStr; + default = ""; + }; + port = lib.mkOption { + type = lib.types.port; + default = 8849; + }; + }; + + config = lib.mkIf cfg.enable { + services.atuin = { + enable = true; + openRegistration = true; + inherit (cfg) port; + }; + + custom.services.caddy.virtualHosts.${cfg.domain}.port = cfg.port; + }; +} diff --git a/users/seb/home.nix b/users/seb/home.nix index 41f558e..729fe9c 100644 --- a/users/seb/home.nix +++ b/users/seb/home.nix @@ -27,6 +27,7 @@ aliases.enable = true; direnv.enable = true; }; + atuin.enable = true; ssh.enable = true; git.enable = true; kitty.enable = true;