nixpkgs/pkgs/applications/version-management/git-and-tools/default.nix

155 lines
3.8 KiB
Nix
Raw Normal View History

/* All git-relates tools live here, in a separate attribute set so that users
* can get a fast overview over what's available.
*/
args @ {config, lib, pkgs}: with args; with pkgs;
let
2016-04-16 23:41:47 +00:00
gitBase = callPackage ./git {
svnSupport = false; # for git-svn support
guiSupport = false; # requires tcl/tk
sendEmailSupport = false; # requires plenty of perl libraries
perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey];
smtpPerlLibs = [
perlPackages.libnet perlPackages.NetSMTPSSL
perlPackages.IOSocketSSL perlPackages.NetSSLeay
perlPackages.AuthenSASL perlPackages.DigestHMAC
];
};
self = rec {
# Try to keep this generally alphabetized
2017-02-12 06:00:29 +00:00
bfg-repo-cleaner = callPackage ./bfg-repo-cleaner { };
bitbucket-server-cli = callPackage ./bitbucket-server-cli { };
darcsToGit = callPackage ./darcs-to-git { };
diff-so-fancy = callPackage ./diff-so-fancy { };
2017-04-15 02:57:38 +00:00
ghq = callPackage ./ghq { };
git = appendToName "minimal" gitBase;
2018-11-16 00:39:26 +00:00
git-absorb = callPackage ./git-absorb {
inherit (darwin.apple_sdk.frameworks) Security;
};
git-appraise = callPackage ./git-appraise {};
2017-07-05 12:02:20 +00:00
git-fame = callPackage ./git-fame {};
# The full-featured Git.
gitFull = gitBase.override {
svnSupport = true;
guiSupport = true;
sendEmailSupport = !stdenv.isDarwin;
withLibsecret = !stdenv.isDarwin;
};
# Git with SVN support, but without GUI.
gitSVN = lowPrio (appendToName "with-svn" (gitBase.override {
svnSupport = true;
}));
2016-09-08 12:54:36 +00:00
git-annex = pkgs.haskellPackages.git-annex;
2017-12-08 00:12:47 +00:00
git-annex-metadata-gui = libsForQt5.callPackage ./git-annex-metadata-gui {
inherit (python3Packages) buildPythonApplication pyqt5 git-annex-adapter;
};
2016-06-06 00:28:52 +00:00
git-annex-remote-b2 = callPackage ./git-annex-remote-b2 { };
2016-11-23 20:01:40 +00:00
git-annex-remote-rclone = callPackage ./git-annex-remote-rclone { };
git-bug = callPackage ./git-bug { };
# support for bugzilla
git-bz = callPackage ./git-bz { };
git-codeowners = callPackage ./git-codeowners { };
git-cola = callPackage ./git-cola { };
git-crypt = callPackage ./git-crypt { };
2018-05-20 02:03:09 +00:00
git-dit = callPackage ./git-dit {
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
};
2017-02-24 15:38:10 +00:00
git-extras = callPackage ./git-extras { };
git-hub = callPackage ./git-hub { };
git-imerge = callPackage ./git-imerge { };
2017-03-13 12:58:07 +00:00
git-octopus = callPackage ./git-octopus { };
2017-04-15 19:25:59 +00:00
git-open = callPackage ./git-open { };
git-radar = callPackage ./git-radar { };
2017-04-16 15:12:53 +00:00
git-recent = callPackage ./git-recent {
utillinux = if stdenv.isLinux then utillinuxMinimal else utillinux;
2017-04-16 15:12:53 +00:00
};
git-remote-hg = callPackage ./git-remote-hg { };
git-reparent = callPackage ./git-reparent { };
git-secret = callPackage ./git-secret { };
2018-05-04 22:02:55 +00:00
git-secrets = callPackage ./git-secrets { };
2016-02-25 22:45:05 +00:00
git-stree = callPackage ./git-stree { };
git-sync = callPackage ./git-sync { };
2018-12-07 00:00:00 +00:00
git-test = callPackage ./git-test { };
2016-04-16 23:41:47 +00:00
git2cl = callPackage ./git2cl { };
2016-04-16 23:41:47 +00:00
gitFastExport = callPackage ./fast-export { };
gitRemoteGcrypt = callPackage ./git-remote-gcrypt { };
gitflow = callPackage ./gitflow { };
2015-10-25 18:26:08 +00:00
2018-01-31 21:37:47 +00:00
grv = callPackage ./grv { };
2016-04-16 23:41:47 +00:00
hub = callPackage ./hub {
inherit (darwin) Security;
};
2018-05-30 23:35:20 +00:00
hubUnstable = throw "use gitAndTools.hub instead";
2018-07-30 23:19:24 +00:00
pre-commit = callPackage ./pre-commit { };
pass-git-helper = python3Packages.callPackage ./pass-git-helper { };
qgit = qt5.callPackage ./qgit { };
2016-04-16 23:41:47 +00:00
stgit = callPackage ./stgit {
};
subgit = callPackage ./subgit { };
2016-04-16 23:41:47 +00:00
svn2git = callPackage ./svn2git {
git = gitSVN;
};
svn-all-fast-export = libsForQt5.callPackage ./svn-all-fast-export { };
tig = callPackage ./tig { };
2015-04-07 04:38:20 +00:00
2016-04-16 23:41:47 +00:00
topGit = callPackage ./topgit { };
2015-08-07 17:15:39 +00:00
transcrypt = callPackage ./transcrypt { };
} // lib.optionalAttrs (config.allowAliases or true) (with self; {
# aliases
gitAnnex = git-annex;
svn_all_fast_export = svn-all-fast-export;
});
in
self