diff --git a/modules/cross-platform/home-manager/shell.nix b/modules/cross-platform/home-manager/shell.nix index 671ea87..b8bedec 100644 --- a/modules/cross-platform/home-manager/shell.nix +++ b/modules/cross-platform/home-manager/shell.nix @@ -130,5 +130,17 @@ program = "pinentry-gtk-2"; }; }; + + # Install and setup atuin + programs.atuin = { + enable = true; + daemon.enable = true; + enableZshIntegration = true; + settings = { + auto_sync = true; + sync_frequency = "5m"; + sync_address = "https://atuin.cronyakatsuki.xyz"; + }; + }; }; } diff --git a/modules/servers/heimdall/atuin.nix b/modules/servers/heimdall/atuin.nix new file mode 100644 index 0000000..1b0572b --- /dev/null +++ b/modules/servers/heimdall/atuin.nix @@ -0,0 +1,23 @@ +{ + services.atuin = { + enable = true; + openRegistration = false; + }; + + services.traefik.dynamicConfigOptions.http = { + services.atuin.loadBalancer.servers = [ + { + url = "http://localhost:8888"; + } + ]; + + routers.atuin = { + rule = "Host(`atuin.cronyakatsuki.xyz`)"; + tls = { + certResolver = "porkbun"; + }; + service = "atuin"; + entrypoints = "websecure"; + }; + }; +} diff --git a/modules/servers/heimdall/default.nix b/modules/servers/heimdall/default.nix index bf6c3e7..498dfca 100644 --- a/modules/servers/heimdall/default.nix +++ b/modules/servers/heimdall/default.nix @@ -6,5 +6,6 @@ ./secrets.nix ./redlib.nix ./beszel-hub.nix + ./atuin.nix ]; }