summaryrefslogtreecommitdiff
path: root/os/kay/modules/services/minio.nix
diff options
context:
space:
mode:
authorsinanmohd <sinan@sinanmohd.com>2025-10-17 08:31:18 +0530
committersinanmohd <sinan@sinanmohd.com>2025-10-17 08:45:14 +0530
commit84c39b405972516a9be2e8be8729097f8691050f (patch)
tree5a63186f3004e36a0f7560ee90ef358bd3662aa9 /os/kay/modules/services/minio.nix
parent5fd8a7084e907f4c1b4c2c86cfd69f622b4c294a (diff)
chore(os/kay): refactor
Diffstat (limited to 'os/kay/modules/services/minio.nix')
-rw-r--r--os/kay/modules/services/minio.nix36
1 files changed, 36 insertions, 0 deletions
diff --git a/os/kay/modules/services/minio.nix b/os/kay/modules/services/minio.nix
new file mode 100644
index 0000000..d440e50
--- /dev/null
+++ b/os/kay/modules/services/minio.nix
@@ -0,0 +1,36 @@
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
+let
+ email = config.global.userdata.email;
+in
+{
+ sops.secrets."misc/default_password" = { };
+ systemd.services.minio.serviceConfig.LoadCredential = [
+ "password:${config.sops.secrets."misc/default_password".path}"
+ ];
+
+ services.minio = {
+ enable = true;
+ consoleAddress = ":9003";
+
+ package = pkgs.stdenv.mkDerivation {
+ name = "minio-with-secrets";
+ dontUnpack = true;
+ buildInputs = with pkgs; [
+ makeWrapper
+ minio
+ ];
+ installPhase = ''
+ mkdir -p $out/bin
+ makeWrapper ${lib.getExe pkgs.minio} $out/bin/minio \
+ --run 'echo "Seting Minio Secrets"' \
+ --set MINIO_ROOT_USER ${email} \
+ --run 'export MINIO_ROOT_PASSWORD="$(cat "$CREDENTIALS_DIRECTORY"/password)"'
+ '';
+ };
+ };
+}