summary refs log tree commit diff
path: root/pkgs/development/tools/ejson/default.nix
diff options
context:
space:
mode:
authorMichael Fellinger <michael.fellinger@xing.com>2018-09-26 13:35:23 +0200
committerMichael Fellinger <michael.fellinger@xing.com>2018-09-26 13:36:46 +0200
commit3a275ac1eb4ea538222e8b282d9804bab6e6e543 (patch)
treed472179adceb699c6d38a7ed9d679b70a1a7986c /pkgs/development/tools/ejson/default.nix
parent82feb4b66ebd841389d00ca7b3d5e9b4c3ea61c8 (diff)
downloadnixpkgs-3a275ac1eb4ea538222e8b282d9804bab6e6e543.tar
nixpkgs-3a275ac1eb4ea538222e8b282d9804bab6e6e543.tar.gz
nixpkgs-3a275ac1eb4ea538222e8b282d9804bab6e6e543.tar.bz2
nixpkgs-3a275ac1eb4ea538222e8b282d9804bab6e6e543.tar.lz
nixpkgs-3a275ac1eb4ea538222e8b282d9804bab6e6e543.tar.xz
nixpkgs-3a275ac1eb4ea538222e8b282d9804bab6e6e543.tar.zst
nixpkgs-3a275ac1eb4ea538222e8b282d9804bab6e6e543.zip
ejson: init at 1.2.0
Diffstat (limited to 'pkgs/development/tools/ejson/default.nix')
-rw-r--r--pkgs/development/tools/ejson/default.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/development/tools/ejson/default.nix b/pkgs/development/tools/ejson/default.nix
new file mode 100644
index 00000000000..80129f318e3
--- /dev/null
+++ b/pkgs/development/tools/ejson/default.nix
@@ -0,0 +1,46 @@
+{ lib, bundlerEnv, ruby, buildGoPackage, fetchFromGitHub }:
+let
+  # needed for manpage generation
+  gems = bundlerEnv {
+    name = "ejson-gems";
+    gemdir = ./.;
+    inherit ruby;
+  };
+in buildGoPackage rec {
+  name = "ejson-${version}";
+  version = "1.2.0";
+  rev = "v${version}";
+
+  nativeBuildInputs = [ gems ];
+
+  goPackagePath = "github.com/Shopify/ejson";
+  subPackages = [ "cmd/ejson" ];
+
+  goDeps = ./deps.nix;
+
+  src = fetchFromGitHub {
+    owner = "Shopify";
+    repo = "ejson";
+    inherit rev;
+    sha256 = "07ig24fryb9n0mfyqb0sgpj7di9y7wbvh2ppwfs2jqfpvpncd7yh";
+  };
+
+  # set HOME, otherwise bundler will insert stuff in the manpages
+  postBuild = ''
+    cd go/src/$goPackagePath
+    HOME=$PWD make man
+  '';
+
+  postInstall = ''
+    mkdir -p $out/share
+    cp -r build/man $out/share
+  '';
+
+  meta = with lib; {
+    description = "A small library to manage encrypted secrets using asymmetric encryption.";
+    license = licenses.mit;
+    homepage = https://github.com/Shopify/ejson;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.manveru ];
+  };
+}