2008-03-09 01:08:45 +01:00
|
|
|
args:
|
|
|
|
with args;
|
2008-10-14 16:01:00 +02:00
|
|
|
let inherit (builtins) pathExists hasAttr getAttr head; in
|
2008-03-09 01:08:45 +01:00
|
|
|
rec {
|
|
|
|
/*
|
|
|
|
tries to get source in this order
|
|
|
|
1) Local .tar.gz in ${HOME}/managed_repos/dist/name.tar.gz (-> see nixRepositoryManager)
|
|
|
|
2) By importing
|
|
|
|
pkgs/misc/bleeding-edge-fetch-info/name.nix
|
|
|
|
(generated by nixRepositoryManager --publish)
|
|
|
|
*/
|
2008-03-06 03:46:29 +01:00
|
|
|
|
2008-03-09 01:08:45 +01:00
|
|
|
managedRepoDir = getConfig [ "bleedingEdgeRepos" "managedRepoDir" ] (builtins.getEnv "HOME" + "/managed_repos");
|
|
|
|
|
2008-08-06 18:56:05 +02:00
|
|
|
sourceByName = name :
|
2008-10-14 16:01:00 +02:00
|
|
|
let fetchinfo = if (hasAttr name fetchInfos)
|
|
|
|
then (getAttr name fetchInfos) { inherit fetchurl; }
|
|
|
|
else throw "no bleeding edge source attribute found in bleeding-edge-fetch-infos.nix with name ${name}\n"
|
|
|
|
"run NO_FETCH=1 nix-repository-manager <path to nixpkgs> --update <reponame> to add it automatically";
|
|
|
|
localTarGZ = managedRepoDir+"/dist/${ lib.dropPath (head fetchinfo.urls) }"; # hack, dropPath should be implemented as primop
|
2008-08-06 18:56:05 +02:00
|
|
|
fetchInfos = import ../../../misc/bleeding-edge-fetch-infos.nix; in
|
2008-10-14 16:01:00 +02:00
|
|
|
if (getConfig ["bleedingEdgeRepos" "useLocalRepos"] false )
|
|
|
|
then localTarGZ else fetchinfo;
|
2008-03-09 01:08:45 +01:00
|
|
|
|
2008-08-19 14:36:00 +02:00
|
|
|
repos =
|
2009-03-10 21:04:08 +01:00
|
|
|
let kde4support = builtins.listToAttrs (map (n: lib.nameValuePair ("kdesupport_"+n) { type = "svn"; url = "svn://anonsvn.kde.org/home/kde/trunk/kdesupport/${n}"; groups="kdesupport"; })
|
2008-08-19 14:36:00 +02:00
|
|
|
[ "akode" "eigen" "gmm" "qca" "qimageblitz" "soprano" "strigi" "taglib"
|
|
|
|
"automoc" "akonadi" "cpptoxml" "decibel" "emerge" "phonon" "tapioca_qt" "telepathy_qt"]); in
|
|
|
|
# in trunk but not yet supported by nix: akonadi/ automoc/ cpptoxml/ decibel/ emerge/ kdewin-installer/ kdewin32/ phonon/ tapioca-qt/ telepathy-qt/
|
|
|
|
{
|
2008-03-09 01:08:45 +01:00
|
|
|
# each repository has
|
|
|
|
# a type, url and maybe a tag
|
|
|
|
# you can add groups names to update some repositories at once
|
|
|
|
# see nix_repository_manager expression in all-packages.nix
|
|
|
|
|
|
|
|
nix_repository_manager = { type = "darcs"; url = "http://mawercer.de/~marc/repos/nix-repository-manager"; };
|
|
|
|
|
2008-08-06 13:41:17 +02:00
|
|
|
plugins = { type = "darcs"; url="http://code.haskell.org/~dons/code/hs-plugins/"; groups="haskell"; };
|
|
|
|
|
2008-10-18 23:08:42 +02:00
|
|
|
hg2git = { type = "git"; url="git://repo.or.cz/hg2git.git"; };
|
|
|
|
|
2008-03-09 01:08:45 +01:00
|
|
|
# darcs repositories haskell
|
|
|
|
http = { type= "darcs"; url="http://darcs.haskell.org/http/"; groups="happs"; };
|
|
|
|
syb_with_class = { type="darcs"; url="http://happs.org/HAppS/syb-with-class"; groups="happs"; };
|
|
|
|
happs_data = { type="darcs"; url=http://happs.org/repos/HAppS-Data; groups="happs"; };
|
|
|
|
happs_util = { type="darcs"; url=http://happs.org/repos/HAppS-Util; groups="happs"; };
|
|
|
|
happs_state = { type="darcs"; url=http://happs.org/repos/HAppS-State; groups="happs"; };
|
|
|
|
happs_plugins = { type="darcs"; url=http://happs.org/repos/HAppS-Plugins; groups="happs"; };
|
|
|
|
happs_ixset = { type="darcs"; url=http://happs.org/repos/HAppS-IxSet; groups="happs"; };
|
2008-04-11 02:40:10 +02:00
|
|
|
happs_server = { type="darcs"; url=http://happs.org/repos/HAppS-Server; groups="happs"; };
|
2008-08-06 13:41:17 +02:00
|
|
|
happs_hsp = { type="darcs"; url="http://code.haskell.org/HSP/happs-hsp"; groups="happs haskell hsp"; };
|
|
|
|
happs_hsp_template = { type="darcs"; url="http://code.haskell.org/HSP/happs-hsp-template"; groups="happs haskell hsp"; };
|
|
|
|
# haskell_src_exts_metaquote = { type="darcs"; url=http://code.haskell.org/~morrow/code/haskell/haskell-src-exts-metaquote; groups="happs haskell hsp"; };
|
|
|
|
haskell_src_exts = { type="darcs"; url=http://code.haskell.org/HSP/haskell-src-exts/; groups="happs haskell hsp"; };
|
|
|
|
|
|
|
|
hsp = { type="darcs"; url="http://code.haskell.org/HSP/hsp"; groups="happs haskell hsp"; };
|
|
|
|
hsp_xml = { type="darcs"; url="http://code.haskell.org/HSP/hsp-xml"; groups="happs haskell hsp"; };
|
|
|
|
hspCgi = { type="darcs"; url="http://code.haskell.org/HSP/hsp-cgi"; groups="happs haskell hsp"; };
|
|
|
|
hjscript = { type="darcs"; url="http://code.haskell.org/HSP/hjscript"; groups="happs haskell hsp"; };
|
|
|
|
hjquery = { type="darcs"; url="http://code.haskell.org/HSP/hjquery"; groups="happs haskell hsp"; };
|
|
|
|
hjavascript = { type="darcs"; url="http://code.haskell.org/HSP/hjavascript"; groups="happs haskell hsp"; };
|
2008-03-13 23:55:18 +01:00
|
|
|
takusen = { type="darcs"; url=http://darcs.haskell.org/takusen/; };
|
|
|
|
cabal = { type="darcs"; url=http://darcs.haskell.org/cabal; };
|
2008-08-06 13:41:17 +02:00
|
|
|
haxml = { type="darcs"; url=http://www.cs.york.ac.uk/fp/darcs/HaXml; groups = "pg_haskell"; };
|
2008-08-06 23:21:54 +02:00
|
|
|
storableVector = { type="darcs"; url=http://darcs.haskell.org/storablevector/; groups = "haskell"; };
|
2008-03-13 23:55:18 +01:00
|
|
|
|
2008-08-19 14:36:00 +02:00
|
|
|
kdepimlibs = { type="svn"; url="svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs"; groups = "kde"; };
|
|
|
|
kdebase = { type="svn"; url="svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase"; groups = "kde"; };
|
2008-03-09 01:08:45 +01:00
|
|
|
|
2008-10-14 16:01:00 +02:00
|
|
|
cinelerra = { type="git"; url="git://git.cinelerra.org/j6t/cinelerra.git"; };
|
|
|
|
|
2008-03-09 01:08:45 +01:00
|
|
|
# git repositories
|
|
|
|
hypertable = { type="git"; url="git://scm.hypertable.org/pub/repos/hypertable.git"; groups=""; };
|
2008-08-19 14:36:00 +02:00
|
|
|
} // kde4support // getConfig [ "bleedingEdgeRepos" "repos" ] {};
|
2008-03-06 03:46:29 +01:00
|
|
|
}
|