1
0
mirror of https://github.com/ellmau/nixos.git synced 2025-12-19 09:29:36 +01:00

Add firefox sync self-hosted node

This commit is contained in:
Stefan Ellmauthaler 2023-02-17 09:53:34 +01:00
parent 7381f85949
commit a01f5e7c32
Signed by: ellmau
GPG Key ID: C804A9C1B7AF8256
3 changed files with 43 additions and 2 deletions

View File

@ -8,6 +8,7 @@ with lib; {
options.elss.server = { options.elss.server = {
acme.staging = mkEnableOption "Whether to use the staging or the default server for acme"; acme.staging = mkEnableOption "Whether to use the staging or the default server for acme";
enable = mkEnableOption "Enable Mail, Web, and DB"; enable = mkEnableOption "Enable Mail, Web, and DB";
firefox.enable = mkEnableOption "Enable firefox sync server";
nginx.enable = mkEnableOption "Set up nginx"; nginx.enable = mkEnableOption "Set up nginx";
sql.enable = mkEnableOption "Set up sql (postresql)"; sql.enable = mkEnableOption "Set up sql (postresql)";
nextcloud.enable = mkEnableOption "Set up nextcloud"; nextcloud.enable = mkEnableOption "Set up nextcloud";
@ -19,6 +20,7 @@ with lib; {
imports = [ imports = [
./acme.nix ./acme.nix
./firefox.nix
./gitea.nix ./gitea.nix
./grocy.nix ./grocy.nix
./nextcloud.nix ./nextcloud.nix
@ -40,6 +42,7 @@ with lib; {
unbound.enable = mkDefault true; unbound.enable = mkDefault true;
grocy.enable = mkDefault true; grocy.enable = mkDefault true;
gitea.enable = mkDefault true; gitea.enable = mkDefault true;
firefox.enable = mkDefault true;
}; };
}; };
} }

View File

@ -0,0 +1,37 @@
{
config,
lib,
pkgs,
...
}:
with lib; {
config = let
cfg = config.elss.server.firefox;
port = 5000;
in
mkIf cfg.enable {
elss.server.sql.enable = mkDefault true;
services.firefox-syncserver = {
enable = true;
secrets = config.sops.secrets.firefox_sync.path;
singleNode = {
enable = true;
hostname = "firefox.ellmauthaler.net";
enableTLS = true;
capacity = 1;
enableNginx = true;
};
settings.port = port;
};
networking.firewall.allowedTCPPorts = [port];
services.mysql.package = pkgs.mariadb;
sops.secrets = {
firefox_sync = {
owner = "firefox-syncserver";
sopsFile = ../../secrets/server.yaml;
};
};
};
}

View File

@ -2,14 +2,15 @@ storemin: ENC[AES256_GCM,data:oCFpGrb+fLkVuHPgUkVi5MFbnCJiJyT4Vac6keNU,iv:5HS/xl
cloudstore_user: ENC[AES256_GCM,data:Ist58mJGxnvQA8xQ9s4SBC+3cGnQKqAm/g7nbmv5,iv:2DG0iR6trxoDmc2dxAVo0DAauzAaQc4MLmifii4MuXQ=,tag:jkpcZtX7gwr6fG0qd1+Y9w==,type:str] cloudstore_user: ENC[AES256_GCM,data:Ist58mJGxnvQA8xQ9s4SBC+3cGnQKqAm/g7nbmv5,iv:2DG0iR6trxoDmc2dxAVo0DAauzAaQc4MLmifii4MuXQ=,tag:jkpcZtX7gwr6fG0qd1+Y9w==,type:str]
ellmauMail: ENC[AES256_GCM,data:xDLWpqkcsMEnG4CLbxLXJw4C0FdSevTWVhgLR9zm/C+ZMasvcGhaoVLSp1JKBOev1jhAYWL9f5wotF1u,iv:UV4XSZodySDgV4cNDP414WJBAFSgobovqFp72VGIT94=,tag:UMnv1G9OSju+/ZeRz4W2lw==,type:str] ellmauMail: ENC[AES256_GCM,data:xDLWpqkcsMEnG4CLbxLXJw4C0FdSevTWVhgLR9zm/C+ZMasvcGhaoVLSp1JKBOev1jhAYWL9f5wotF1u,iv:UV4XSZodySDgV4cNDP414WJBAFSgobovqFp72VGIT94=,tag:UMnv1G9OSju+/ZeRz4W2lw==,type:str]
printerMail: ENC[AES256_GCM,data:5g6gUeU4TQu9EV6L7vYRUWACOW58f9CNz/cnaisGYX0Swfo9tkKhBm+6Sds4H7woFvVxHR+dJfoefYZc,iv:1OivNWwFAO7VMvvJGxi5+nSWyStVPSQBn9f0XwN7KO0=,tag:HNh8b+83wraQIIiq97GVGQ==,type:str] printerMail: ENC[AES256_GCM,data:5g6gUeU4TQu9EV6L7vYRUWACOW58f9CNz/cnaisGYX0Swfo9tkKhBm+6Sds4H7woFvVxHR+dJfoefYZc,iv:1OivNWwFAO7VMvvJGxi5+nSWyStVPSQBn9f0XwN7KO0=,tag:HNh8b+83wraQIIiq97GVGQ==,type:str]
firefox_sync: ENC[AES256_GCM,data:ZvjJrftXwxqcYGD1tyPqOcjs+S8AxqJbEDBuge/rLDyG2ib72MnU/BO5gOnqYH7dXIoVSWuS3xk0v+7APnKHCfQdeZnkliS+lCUxiLWNJsty,iv:rRHoCMJ7YAdrsQBTZ0aRUAHTC1CUbAJl3Fa+g2HIYHY=,tag:WSktMbCQ9OLkzLeAAMLWsw==,type:str]
sops: sops:
kms: [] kms: []
gcp_kms: [] gcp_kms: []
azure_kv: [] azure_kv: []
hc_vault: [] hc_vault: []
age: [] age: []
lastmodified: "2022-08-13T09:38:54Z" lastmodified: "2023-02-17T08:31:32Z"
mac: ENC[AES256_GCM,data:cfFKA+laXhnlrDkQAus9fUQesR27UDflL3U9OFOE4MMXv6dWn2mANX0PyvWqJa3YigAkmpxhaaazusEedz+fl5y0k27pI1P284sELM7Tnb20OcnkWEH79v94qek2xrWLXNiTj5l6k4y+SVPeNoFeelGCVEApp/tQl2fKmtlWIdc=,iv:TtbBU6CwFPuyq25qcYq5aXBqCx8nJ85qh+dmgm3kNOI=,tag:NyNsSpNCLzRJqTajmbrkeQ==,type:str] mac: ENC[AES256_GCM,data:15GjMfGID8QNATtZS3Oy866fAZQNcne2z9BmV4pY10Iy8RyQ0mLrBnwKOeNHfP9v7Rf7C8RRw4rfUo/i3LJgQQnHrzGCp8RHVbQD43YO64vZR7tDzLYwttAdq/rRJp95GCuL79qiqIMf0I/85isINByPDa2UgfgEJykifQEDJ5o=,iv:EHSCBNirQuBdDToZYE3foVMYiAS33cvJIYRK0n+clhY=,tag:m/m+zAZo/svRVIMWFr8RmQ==,type:str]
pgp: pgp:
- created_at: "2022-07-31T12:48:30Z" - created_at: "2022-07-31T12:48:30Z"
enc: | enc: |