diff options
author | Marc Weber <marco-oweber@gmx.de> | 2008-03-06 01:58:13 +0000 |
---|---|---|
committer | Marc Weber <marco-oweber@gmx.de> | 2008-03-06 01:58:13 +0000 |
commit | 328da81b30144523dfcc47878c0c527124a3ac6d (patch) | |
tree | 4f2077fd107bdaf023fa3dc9b1c2544a4f8a3abc /pkgs/tools | |
parent | 57d4f03ba8407db1ab8625980b9a725a825eb184 (diff) | |
download | nixlib-328da81b30144523dfcc47878c0c527124a3ac6d.tar nixlib-328da81b30144523dfcc47878c0c527124a3ac6d.tar.gz nixlib-328da81b30144523dfcc47878c0c527124a3ac6d.tar.bz2 nixlib-328da81b30144523dfcc47878c0c527124a3ac6d.tar.lz nixlib-328da81b30144523dfcc47878c0c527124a3ac6d.tar.xz nixlib-328da81b30144523dfcc47878c0c527124a3ac6d.tar.zst nixlib-328da81b30144523dfcc47878c0c527124a3ac6d.zip |
- fetchdarcs supports now partial
- fetchdarcs_2pre added - flapjax added - no longer used : annotatedDerivations - added bleeding edge repos with a tiny nix repository manager which dowloads and updates repostiries, then creates tar.gz dist files which are used by bleeding_edge_source (darcs tested only by now) - added experimental my_environment with example svn path=/nixpkgs/branches/stdenv-updates/; revision=10973
Diffstat (limited to 'pkgs/tools')
-rw-r--r-- | pkgs/tools/package-management/nixRepositoryManager/default.nix | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/pkgs/tools/package-management/nixRepositoryManager/default.nix b/pkgs/tools/package-management/nixRepositoryManager/default.nix new file mode 100644 index 000000000000..e3e20dfa913c --- /dev/null +++ b/pkgs/tools/package-management/nixRepositoryManager/default.nix @@ -0,0 +1,42 @@ +args: with args; with lib; +let + repoDir = builtins.getEnv "HOME" + "/managed_repos"; + toConfigLine = name : set : + "[(\"name\",\"${name}\")," + ( concatStringsSep "," (map (a: "(\"${a}\",\"${__getAttr a set}\")" ) (__attrNames set)))+"]"; + config = writeText "nix_repository_manager_config" + (repoDir+"\n" + + concatStringsSep "\n" (mapRecordFlatten toConfigLine bleeding_edge_repos)); + +in +args.stdenv.mkDerivation { + + inherit repoDir; # amend repoDir so that you know which one to take when installing bleeding edge packages + + name = "nix_repository_manager"; + + #src = args.fetchdarcs { + # url = http://mawercer.de/~marc/repos/nix_repository_manager; + # md5 = "b33ba7a5b756eda00a79ba34505ea7ee"; + #}; + source = /pr/haskell/nix_repository_manager/nix_repository_manager.hs; + + phases = "buildPhase"; + + buildPhase = " + s=\$out/share/nix_repository_manager + ensureDir \$out/bin \$s + #ghc --make nix_repository_manager.hs -o \$s/nix_repository_manager + ghc --make \$source -o \$s/nix_repository_manager + b=\$out/bin/nix_repository_manager + echo -e \"#!/bin/sh\\n\$s/nix_repository_manager --config ${config} \\\$@\" > \$b + chmod +x \$b + "; + + buildInputs = [ghc]; + + meta = { + description = "makes it easy to keep some packages up to date"; + homepage = http://mawercer.de/repos/nix_repository_manager; + license = "do with it what you want"; + }; +} |