Commit f42c7b62cf6a
Changed files (4)
lib/default.nix
@@ -75,6 +75,7 @@
self.nixosModules.wireguard-client
self.nixosModules.wireguard-server
self.nixosModules.govanityurl
+ self.nixosModules.gosmee
inputs.agenix.nixosModules.default
inputs.lanzaboote.nixosModules.lanzaboote
homeInput.nixosModules.home-manager
modules/gosmee.nix
@@ -0,0 +1,52 @@
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
+
+with lib;
+let
+ cfg = config.services.gosmee;
+in
+{
+ options = {
+ services.gosmee = {
+ enable = mkEnableOption ''
+ gosmee is a webhook forwader/relayer
+ '';
+ package = mkOption {
+ type = types.package;
+ default = pkgs.gosmee;
+ description = ''
+ gosmee package to use.
+ '';
+ };
+
+ public-url = mkOption {
+ description = ''
+ Public URL to show to user, useful when you are behind a proxy.
+ '';
+ type = types.str;
+ default = "";
+ };
+ };
+ };
+ config = mkIf cfg.enable {
+ systemd.packages = [ cfg.package ];
+ systemd.services.gosmee = {
+ description = "Gosmee service";
+ after = [ "network.target" ];
+ wantedBy = [ "multi-user.target" ];
+ serviceConfig = {
+ # User = cfg.user;
+ Restart = "on-failure";
+ ExecStart = ''
+ ${cfg.package}/bin/gosmee server \
+ ${optionalString (cfg.public-url != "") "--public-url ${escapeShellArg cfg.public-url}"}
+ '';
+ };
+ path = [ cfg.package ];
+ };
+ };
+}
systems/kerkouane/extra.nix
@@ -17,6 +17,11 @@
peers = globals.fn.generateWireguardPeers globals.machines;
};
+ services.gosmee = {
+ enable = true;
+ public-url = "https://webhook.sbr.pm";
+ };
+
security.pam.enableSSHAgentAuth = true;
services.govanityurl = {
enable = true;
flake.nix
@@ -142,6 +142,7 @@
wireguard-client = ./modules/wireguard-client.nix;
wireguard-server = ./modules/wireguard-server.nix;
govanityurl = ./modules/govanityurl.nix;
+ gosmee = ./modules/gosmee.nix;
};
# system-manager configurations