summary refs log tree commit diff
path: root/pkgs/servers/minio
diff options
context:
space:
mode:
authorJohannes Schleifenbaum <johannes@js-webcoding.de>2021-05-05 11:59:37 +0200
committerJohannes Schleifenbaum <johannes@js-webcoding.de>2021-05-11 12:28:48 +0200
commitf05000302a036202838cccef5c74f0d91d06971e (patch)
treefea05364657228ddbdd86685c22553bdcc407488 /pkgs/servers/minio
parent42f21db6a89863742a5e0c34d9681d462f9d0a59 (diff)
downloadnixpkgs-f05000302a036202838cccef5c74f0d91d06971e.tar
nixpkgs-f05000302a036202838cccef5c74f0d91d06971e.tar.gz
nixpkgs-f05000302a036202838cccef5c74f0d91d06971e.tar.bz2
nixpkgs-f05000302a036202838cccef5c74f0d91d06971e.tar.lz
nixpkgs-f05000302a036202838cccef5c74f0d91d06971e.tar.xz
nixpkgs-f05000302a036202838cccef5c74f0d91d06971e.tar.zst
nixpkgs-f05000302a036202838cccef5c74f0d91d06971e.zip
minio: set version to a valid datetime string
Co-authored-by: 06kellyjac <dev@j-k.io>
Diffstat (limited to 'pkgs/servers/minio')
-rw-r--r--pkgs/servers/minio/default.nix15
1 files changed, 14 insertions, 1 deletions
diff --git a/pkgs/servers/minio/default.nix b/pkgs/servers/minio/default.nix
index b0d7f1048bc..290fce257f1 100644
--- a/pkgs/servers/minio/default.nix
+++ b/pkgs/servers/minio/default.nix
@@ -1,5 +1,18 @@
 { lib, buildGoModule, fetchFromGitHub, nixosTests }:
 
+let
+  # The web client verifies, that the server version is a valid datetime string:
+  # https://github.com/minio/minio/blob/3a0e7347cad25c60b2e51ff3194588b34d9e424c/browser/app/js/web.js#L51-L53
+  #
+  # Example:
+  #   versionToTimestamp "2021-04-22T15-44-28Z"
+  #   => "2021-04-22T15:44:28Z"
+  versionToTimestamp = version:
+    let
+      splitTS = builtins.elemAt (builtins.split "(.*)(T.*)" version) 1;
+    in
+    builtins.concatStringsSep "" [ (builtins.elemAt splitTS 0) (builtins.replaceStrings [ "-" ] [ ":" ] (builtins.elemAt splitTS 1)) ];
+in
 buildGoModule rec {
   pname = "minio";
   version = "2021-04-22T15-44-28Z";
@@ -18,7 +31,7 @@ buildGoModule rec {
   subPackages = [ "." ];
 
   patchPhase = ''
-    sed -i "s/Version.*/Version = \"${version}\"/g" cmd/build-constants.go
+    sed -i "s/Version.*/Version = \"${versionToTimestamp version}\"/g" cmd/build-constants.go
     sed -i "s/ReleaseTag.*/ReleaseTag = \"RELEASE.${version}\"/g" cmd/build-constants.go
     sed -i "s/CommitID.*/CommitID = \"${src.rev}\"/g" cmd/build-constants.go
   '';