ledger-web: we have bundlerEnv, let us use it

This commit is contained in:
Peter Hoeg 2016-09-07 11:06:50 +08:00
parent 7949e69382
commit 222d084927

View File

@ -1,48 +1,25 @@
{ stdenv, lib, fetchFromGitHub, bundlerEnv, ruby { lib, bundlerEnv, ruby
, withPostgresql ? true, postgresql , withPostgresql ? true, postgresql
, withSqlite ? false, sqlite , withSqlite ? false, sqlite
}: }:
let bundlerEnv rec {
_name = "ledger-web"; name = "ledger-web-${version}";
cmd = "ledger_web";
env = bundlerEnv { version = (import gemset).ledger_web.version;
name = "${_name}-env";
inherit ruby; inherit ruby;
gemfile = ./Gemfile; gemfile = ./Gemfile;
lockfile = ./Gemfile.lock; lockfile = ./Gemfile.lock;
gemset = ./gemset.nix; gemset = ./gemset.nix;
meta = with lib; {
homepage = https://github.com/peterkeen/ledger-web;
platforms = platforms.linux;
maintainers = [ peterhoeg ];
license = licenses.mit;
};
};
in stdenv.mkDerivation rec { buildInputs = lib.optional withPostgresql postgresql
name = "${_name}-${version}";
version = "1.5.2";
buildInputs = [ env ruby ]
++ lib.optional withPostgresql postgresql
++ lib.optional withSqlite sqlite; ++ lib.optional withSqlite sqlite;
src = fetchFromGitHub { meta = with lib; {
owner = "peterkeen"; description = "A web frontend to the Ledger CLI tool";
repo = _name; homepage = https://github.com/peterkeen/ledger-web;
rev = "v${version}"; license = licenses.mit;
sha256 = "0an4d46h3pp7a8s96jl0dnw1imwdgnb2j474b9wrbidwc6cmfrm7"; maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.linux;
}; };
dontStrip = true;
installPhase = ''
mkdir -p $out/bin
cp --no-preserve=mode -r lib $out
ln -s ${env}/bin/${cmd} $out/bin/${cmd}
'';
} }