summary refs log tree commit diff
path: root/services
diff options
context:
space:
mode:
Diffstat (limited to 'services')
-rw-r--r--services/akkoma/default.nix19
-rw-r--r--services/cgit.nix14
-rw-r--r--services/dendrite.nix19
-rw-r--r--services/soju.nix14
4 files changed, 17 insertions, 49 deletions
diff --git a/services/akkoma/default.nix b/services/akkoma/default.nix
index 84c1bff..4cd4022 100644
--- a/services/akkoma/default.nix
+++ b/services/akkoma/default.nix
@@ -1,7 +1,8 @@
-{ lib, pkgs, unstablePkgs, ... }:
+{ lib, pkgs, unstablePkgs, auxiliaryPkgs, ... }:
 
 let
   inherit (pkgs) dockerTools;
+  inherit (auxiliaryPkgs) common;
 
   akkomaLocalPort = "1111";
   akkomaDir = "/srv/akkoma";
@@ -13,20 +14,10 @@ let
     '';
   };
 
-  baseImageArm = dockerTools.pullImage {
-    imageName = "alpine";
-    imageDigest = "sha256:1e42bbe2508154c9126d48c2b8a75420c3544343bf86fd041fb7527e017a4b4a";
-    sha256 = "06c0q5kk60i89y1d83a28wk282ymp806xjcsmlca4cwwqp590j0q";
-    finalImageName = "alpine";
-    finalImageTag = "3.20.3";
-    os = "linux";
-    arch = "arm64";
-  };
-
   akkomaImage = dockerTools.buildLayeredImage {
     name = "akkoma";
     tag = akkoma.version;
-    fromImage = baseImageArm;
+    fromImage = common.alpine.base;
 
     contents = with unstablePkgs; [
       exiftool imagemagick ffmpeg_7-headless postgresql elixir
@@ -73,8 +64,8 @@ in
     };
 
     akkoma-db = {
-      # TODO: pull through `dockerTools`.
-      image = "postgres:14-alpine";
+      inherit (common.postgres14) image imageFile;
+
       volumes = [ "${akkomaDir}/pgdata:/var/lib/postgresql/data" ];
 
       environment = {
diff --git a/services/cgit.nix b/services/cgit.nix
index 1f7b637..aeb7115 100644
--- a/services/cgit.nix
+++ b/services/cgit.nix
@@ -1,28 +1,22 @@
-{ pkgs, ... }:
+{ pkgs, auxiliaryPkgs, ... }:
 
 # TODO: bring in cgit text configuration in `/srv` into nixos repository.
 let
   inherit (pkgs) dockerTools;
+  inherit (auxiliaryPkgs) common;
+
   cgit = pkgs.cgit-pink;
 
   cgitLocalPort = "3792";
   cgitDir = "/srv/cgit";
   gitDir = "/srv/git";
 
-  baseImage = dockerTools.pullImage {
-    imageName = "alpine";
-    imageDigest = "sha256:beefdbd8a1da6d2915566fde36db9db0b524eb737fc57cd1367effd16dc0d06d";
-    sha256 = "0fzqhqvvb0pzkwvjwyqjfv3rw2w8006xz4mhk0dk5clmyb08hqwc";
-    finalImageName = "alpine";
-    finalImageTag = "3.20.3";
-  };
-
   # TODO: replace `buildLayeredImage` with `streamLayeredImage`
   # in the upcoming 24.11 release.
   cgitImage = dockerTools.buildLayeredImage {
     name = "cgit";
     tag = cgit.version;
-    fromImage = baseImage;
+    fromImage = common.alpine.base;
 
     contents = with pkgs; [
       lighttpd zstd
diff --git a/services/dendrite.nix b/services/dendrite.nix
index 5eecfd6..2987762 100644
--- a/services/dendrite.nix
+++ b/services/dendrite.nix
@@ -1,26 +1,17 @@
-{ lib, pkgs, unstablePkgs, ... }:
+{ lib, pkgs, unstablePkgs, auxiliaryPkgs, ... }:
 
 let
   inherit (pkgs) dockerTools;
+  inherit (auxiliaryPkgs) common;
 
   dendriteDir = "/srv/dendrite";
 
   dendrite = unstablePkgs.dendrite;
 
-  baseImageArm = dockerTools.pullImage {
-    imageName = "alpine";
-    imageDigest = "sha256:1e42bbe2508154c9126d48c2b8a75420c3544343bf86fd041fb7527e017a4b4a";
-    sha256 = "06c0q5kk60i89y1d83a28wk282ymp806xjcsmlca4cwwqp590j0q";
-    finalImageName = "alpine";
-    finalImageTag = "3.20.3";
-    os = "linux";
-    arch = "arm64";
-  };
-
   dendriteImage = dockerTools.buildLayeredImage {
     name = "dendrite";
     tag = dendrite.version;
-    fromImage = baseImageArm;
+    fromImage = common.alpine.base;
 
     contents = [ dendrite ];
   };
@@ -53,8 +44,8 @@ in
     };
 
     dendrite-db = {
-      # TODO: pull through `dockerTools`.
-      image = "postgres:15-alpine";
+      inherit (common.postgres15) image imageFile;
+
       volumes = [ "${dendriteDir}/pgdata:/var/lib/postgresql/data" ];
 
       environment = {
diff --git a/services/soju.nix b/services/soju.nix
index 2ee336d..75adfaa 100644
--- a/services/soju.nix
+++ b/services/soju.nix
@@ -1,25 +1,17 @@
-{ me, pkgs, ... }:
+{ me, pkgs, auxiliaryPkgs, ... }:
 
 let
   inherit (pkgs) dockerTools soju;
+  inherit (auxiliaryPkgs) common;
 
   ircPort = "6667";
   socketPort = "3030";
   sojuDir = "/srv/soju";
 
-  # TODO: move this outside.
-  baseImage = dockerTools.pullImage {
-    imageName = "alpine";
-    imageDigest = "sha256:beefdbd8a1da6d2915566fde36db9db0b524eb737fc57cd1367effd16dc0d06d";
-    sha256 = "0fzqhqvvb0pzkwvjwyqjfv3rw2w8006xz4mhk0dk5clmyb08hqwc";
-    finalImageName = "alpine";
-    finalImageTag = "3.20.3";
-  };
-
   sojuImage = dockerTools.buildLayeredImage {
     name = soju.pname;
     tag = soju.version;
-    fromImage = baseImage;
+    fromImage = common.alpine.base;
 
     contents = [ soju ];