diff --git a/pkgs/tools/networking/minio-client/default.nix b/pkgs/tools/networking/minio-client/default.nix new file mode 100644 index 00000000000..258a81570c0 --- /dev/null +++ b/pkgs/tools/networking/minio-client/default.nix @@ -0,0 +1,39 @@ +{ lib, stdenv, fetchurl, go }: + +stdenv.mkDerivation rec { + name = "minio-client-${shortVersion}"; + + shortVersion = "20160821"; + longVersion = "2016-08-21T03:02:49Z"; + + src = fetchurl { + url = "https://github.com/minio/mc/archive/RELEASE.${lib.replaceStrings [":"] ["-"] longVersion}.tar.gz"; + sha256 = "1qnslwfspbvzawxrrym27agw79x8sgcafk7d0yakncjyg6vmdkka"; + }; + + buildInputs = [ go ]; + + unpackPhase = '' + d=$TMPDIR/src/github.com/minio/mc + mkdir -p $d + tar xf $src -C $d --strip-component 1 + export GOPATH=$TMPDIR + cd $d + ''; + + buildPhase = '' + mkdir -p $out/bin + go build -o $out/bin/minio-client \ + --ldflags "-X github.com/minio/mc/cmd.Version=${longVersion}" + ''; + + installPhase = "ln -s minio-client $out/bin/mc"; + + meta = { + homepage = https://github.com/minio/mc; + description = "A replacement for ls, cp, mkdir, diff and rsync commands for filesystems and object storage"; + maintainers = [ lib.maintainers.eelco ]; + platforms = lib.platforms.linux; + license = lib.licenses.asl20; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 08abe16df0d..29121b7c315 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2620,6 +2620,8 @@ in mimetic = callPackage ../development/libraries/mimetic { }; + minio-client = callPackage ../tools/networking/minio-client { }; + minissdpd = callPackage ../tools/networking/minissdpd { }; miniupnpc = callPackage ../tools/networking/miniupnpc { };