diff --git a/modules/hosts/nixos/nixnuc/containers/mountain-mesh-bot-discord.nix b/modules/hosts/nixos/nixnuc/containers/mountain-mesh-bot-discord.nix new file mode 100644 index 0000000..c1199cb --- /dev/null +++ b/modules/hosts/nixos/nixnuc/containers/mountain-mesh-bot-discord.nix @@ -0,0 +1,25 @@ +{ config, username, ... }: let + volume_base = "/orico/mountain-mesh-bot-discord"; +in { + # My mountain-mesh-bot-discord container + + virtualisation.oci-containers.containers = { + "mtnmesh_bot_discord" = { + autoStart = true; + image = "ghcr.io/genebean/mountain-mesh-bot-discord:main"; + podman.user = username; + pull = "always"; + volumes = [ + "${volume_base}/.env:/src/.env" + ]; + }; + }; + + services.restic.backups.daily.paths = [ volume_base ]; + + sops.secrets.mtnmesh_bot_dot_env = { + owner = "${username}"; + path = "${volume_base}/.env"; + restartUnits = [ "${config.virtualisation.oci-containers.containers.mtnmesh_bot_discord.serviceName}" ]; + }; +} diff --git a/modules/hosts/nixos/nixnuc/default.nix b/modules/hosts/nixos/nixnuc/default.nix index 7bc5522..f615fd3 100644 --- a/modules/hosts/nixos/nixnuc/default.nix +++ b/modules/hosts/nixos/nixnuc/default.nix @@ -8,6 +8,7 @@ in { imports = [ ./hardware-configuration.nix ./containers/audiobookshelf.nix + ./containers/mountain-mesh-bot-discord.nix ./containers/psitransfer.nix ../../common/linux/lets-encrypt.nix ../../common/linux/restic.nix diff --git a/modules/hosts/nixos/nixnuc/secrets.yaml b/modules/hosts/nixos/nixnuc/secrets.yaml index 81fe5b7..ad981c2 100644 --- a/modules/hosts/nixos/nixnuc/secrets.yaml +++ b/modules/hosts/nixos/nixnuc/secrets.yaml @@ -4,15 +4,12 @@ local_private_env: ENC[AES256_GCM,data:qOPXTS2uo/1jyVEKCtBvuK/dzZaPf1K5tHuSVF2hB home_assistant_token: ENC[AES256_GCM,data:fNpoH60rXAsoVx/NBoDobDw/e6IoeoZfef1uDR7HbmnHNI101b+kQKkB8wBXEDLf7MlqlXVc1ExlgYFUo7+h2msx4WZUCGzuHtp1cMP0O9s2PZoQU8KQM2Frd69vOUcOT5y5ShJZPRrf6H2UKrm//3jE9zDOxxy3cQj6Q+jQLXX4AfZ12JAKzSiee9URWdU8eCHbnquUl1RNHF7zZQ8Mr9m41sBOrpBXt7ErsrhxxRhwlk7qprLt,iv:1j/QmOkLYd7nA+wXS49drBHU09HzMP3XxPbPdaErV6E=,tag:ftyOeNaN5PwNebeMPNAmTg==,type:str] immich_kiosk_basic_auth: ENC[AES256_GCM,data:R/vaYXe0SRwSUg8zC367vA/OYhjIcgfbHxR3OhLt1YYUhPNXVuUGmn199zLD,iv:GBEjJKvbwHAS75negE2whTlI4wS8K2nQYNm3015DFoY=,tag:zs+bJEr9JlIrJtikHycN4g==,type:str] mealie: ENC[AES256_GCM,data:fZFBWlh/nbxK0GA6+fb1FK6aFfbiV/GsBYKYRPgavcsB9h4HwRSZN94gPQ3AfGnk1q08ORPBYShNUIaVdsf4+t3taDC7bNTwPqFGRxoeKOU15BPj6Fpw7SHlplApUg7RDmuTWZuXDH0F49N+09GU/Lc26ewHMAzL8CtGg/H7s3CQfFEqCYYcXJeUcnNDu6PRnKFIAppflSScREp29CUf/IfTYQXidQC25upZgcvGJ+dCTDyNFftlhQiFQh8nFRFVJfKk4iBqnig3fOYsTD32ohAotfDGsSUWb9yjoYQNnNn0V14/,iv:WRFiBtavTP3iP5YSaCMkd7ag8ccx1BO76Vlw6axPkJU=,tag:4BhAxbF8JUB0MV12yx86uQ==,type:str] +mtnmesh_bot_dot_env: ENC[AES256_GCM,data:G74i0xyPaX0Ims19X5sTI35bs807BpZ3D3eS5gBgAVGxWglnTT/DsmlmFAq5lqGPjk4D61J4ts2rWKrm+9vYGjCzFuA3LE/HAUesqNey0jusMNUW8hFmkIA=,iv:0SeL7dU/KRR/wNQszw5YGPmxzkVCmy2wwTMlEZJY5P4=,tag:+QOweRVUEjv5m732e6lfHg==,type:str] nextcloud_admin_pass: ENC[AES256_GCM,data:KztB3Tkqlt73PEO41lthGYElrbwVdfqQgT6f,iv:kRwXqGJO4AUOMq+uYzndGhscaJiyvG4ANKabHHd78YM=,tag:dP3PgKafDTv8x7huKJGDqA==,type:str] psitransfer_dot_env: ENC[AES256_GCM,data:bhvU0AOCjecZ62BtLw4H1DdkLeatI+uUl6L7UkdDRkBF3sayO45Z1eR4q60tflXucyTGhT8WgKFz53I+C2dn265wzojIRc3Xr4TBLyWpfJ7/dct40SckgUiRvOnrefiriWQ=,iv:DGMhDkzgeupzzTJnCdVWDPUSo2wxI3MAypKQwVfHExE=,tag:KbteGqrkqgj2XB1lvlk/yQ==,type:str] tandoor_db_pass: ENC[AES256_GCM,data:X0unx5jquLsUXadbF6xLjjeGY+f8Ec4kdc15JQ==,iv:XptlJHfAkF+3jbgJTqxhVReYjuVVdk3NzfPepP78DRI=,tag:3RG5P9QGCJ/fjdxWpY1xWA==,type:str] tandoor_secret_key: ENC[AES256_GCM,data:aSQRdtWUZQzy5rvQBPAvYFvwTqyu16UGrvUayxqi2WdsTOfqOyxQ7ywNEy/g/qPqSbwM,iv:kbct/gvfYhU6GOhkomY80o/Sx5mr9FY9SAFJGNrj3Ow=,tag:v+LKQ9UM5nzzd77By7TnGg==,type:str] sops: - kms: [] - gcp_kms: [] - azure_kv: [] - hc_vault: [] age: - recipient: age1g24zhwvgenpc4wqejt63thvgd4rn5x9n7nnwwme7dm83nfqpp93se2vmq4 enc: | @@ -23,8 +20,7 @@ sops: bHZlNTZDV2NYU1hQQy9mem80SFF6TFkKfmjkJBfTdh0vTtGaVx1t3tHJvSsAwdYD PF025X9U+yG2oIopwXEVBkxcD70eyuJn3OqH0xoVLBkbhNM9i8LHrA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-04-07T01:21:10Z" - mac: ENC[AES256_GCM,data:DgSAxsOqChJ+iuqezg5womtqXMVqnDtYCqzSozJ5gnU5rnqK2wqueVXOuyRVFxgQsxMSDkTlVnkacPikZxvfqv7kxHrLlqblShK3vBnx5zu3qfZtGVm+2xRZ15VoplSguJKUVpj6da5qYVQ4qzVanUmPXh8dgCIy4q2KmxfaWnA=,iv:/mj9SMFhLXNRbIjmrUmIn0CF3alGlzaXHo/ffixat2I=,tag:HqTfOj/te6+nqHUy9cxrZQ==,type:str] - pgp: [] + lastmodified: "2025-08-15T11:56:01Z" + mac: ENC[AES256_GCM,data:ALYT6Z1FBs+Gw0fiGlYGNBiLKj6oczyUhyeBZDCR7Ypc4dF15J9XZAlTZS0RI7D6Eg9V2UokoKZAXeJZ/aM/MeBeGdqnYygd6dAr2yjg3Zq6t7Ea2uYCKniocOuz+RuFwhPKW70kD2KhjXwYDa/FPoZkQYdKiR7fS2jLiA49I38=,iv:V16tWj8/SMObnIGARbDFtE6EPIM8HxhW7G4GcXtTeDk=,tag:LMo6mURLxVwD9Su7PwqzLw==,type:str] unencrypted_suffix: _unencrypted - version: 3.9.4 + version: 3.10.2