lass 5: add go url shortener

This commit is contained in:
lassulus 2015-10-09 01:06:22 +02:00
parent ef85f86f8a
commit d2720415ac
4 changed files with 107 additions and 0 deletions

View File

@ -13,4 +13,5 @@ rec {
ublock = callPackage ./firefoxPlugins/ublock.nix {};
vimperator = callPackage ./firefoxPlugins/vimperator.nix {};
};
go = callPackage ./go/default.nix {};
}

61
lass/5pkgs/go/default.nix Normal file
View File

@ -0,0 +1,61 @@
{ stdenv, makeWrapper, lib, buildEnv, fetchgit, nodePackages, nodejs }:
with lib;
let
np = nodePackages.override {
generated = ./packages.nix;
self = np;
};
node_env = buildEnv {
name = "node_env";
paths = [
np.redis
np."formidable"
];
pathsToLink = [ "/lib" ];
ignoreCollisions = true;
};
in nodePackages.buildNodePackage {
name = "go";
src = fetchgit {
url = "http://cgit.echelon/go/";
rev = "05d02740e0adbb36cc461323647f0c1e7f493156";
sha256 = "6015c9a93317375ae8099c7ab982df0aa93a59ec2b48972e253887bb6ca0004f";
};
phases = [
"unpackPhase"
"installPhase"
];
deps = (filter (v: nixType v == "derivation") (attrValues np));
buildInputs = [
nodejs
nodePackages.redis
np.formidable
makeWrapper
];
installPhase = ''
mkdir -p $out/bin
find ${node_env}
cp index.js $out/
cat > $out/go << EOF
${nodejs}/bin/node $out/index.js
EOF
chmod +x $out/go
wrapProgram $out/go \
--prefix NODE_PATH : ${node_env}/lib/node_modules
ln -s $out/go /$out/bin/go
'';
}

View File

@ -0,0 +1,44 @@
{ self, fetchurl, fetchgit ? null, lib }:
{
by-spec."formidable"."*" =
self.by-version."formidable"."1.0.17";
by-version."formidable"."1.0.17" = self.buildNodePackage {
name = "formidable-1.0.17";
version = "1.0.17";
bin = false;
src = fetchurl {
url = "http://registry.npmjs.org/formidable/-/formidable-1.0.17.tgz";
name = "formidable-1.0.17.tgz";
sha1 = "ef5491490f9433b705faa77249c99029ae348559";
};
deps = {
};
optionalDependencies = {
};
peerDependencies = [];
os = [ ];
cpu = [ ];
};
"formidable" = self.by-version."formidable"."1.0.17";
by-spec."redis"."*" =
self.by-version."redis"."2.1.0";
by-version."redis"."2.1.0" = self.buildNodePackage {
name = "redis-2.1.0";
version = "2.1.0";
bin = false;
src = fetchurl {
url = "http://registry.npmjs.org/redis/-/redis-2.1.0.tgz";
name = "redis-2.1.0.tgz";
sha1 = "38acb208f90750250f9451219b73ff08ae907f94";
};
deps = {
};
optionalDependencies = {
};
peerDependencies = [];
os = [ ];
cpu = [ ];
};
"redis" = self.by-version."redis"."2.1.0";
}

1
lass/5pkgs/go/result Symbolic link
View File

@ -0,0 +1 @@
/nix/store/nizallgwxcx4fz9awyfp9i17avfymlvx-nodejs-go