summaryrefslogtreecommitdiffstats
path: root/pkgs/applications/version-management/mercurial
diff options
context:
space:
mode:
authorJörg Thalheim <joerg@thalheim.io>2019-12-21 07:24:51 +0000
committerJörg Thalheim <joerg@thalheim.io>2019-12-21 07:32:58 +0000
commit88a473fc12e24ba850ae4b120ae0c766d9dd6840 (patch)
tree6aac315f8d4759b7825d7a76da200c7723e93e18 /pkgs/applications/version-management/mercurial
parent2a60519881cb43bf96b6daa31c62c9e58751513c (diff)
mercurial: 4.9.1 -> 5.2.1
also switch to python3
Diffstat (limited to 'pkgs/applications/version-management/mercurial')
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix74
1 files changed, 35 insertions, 39 deletions
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index ee0ab3756663..792e647324ae 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -1,21 +1,19 @@
-{ stdenv, fetchurl, python2Packages, makeWrapper, unzip
+{ stdenv, fetchurl, python3Packages, makeWrapper, unzip
, guiSupport ? false, tk ? null
, ApplicationServices
-, mercurialSrc ? fetchurl rec {
- meta.name = "mercurial-${meta.version}";
- meta.version = "4.9.1";
- url = "https://mercurial-scm.org/release/${meta.name}.tar.gz";
- sha256 = "0iybbkd9add066729zg01kwz5hhc1s6lhp9rrnsmzq6ihyxj3p8v";
- }
}:
let
- inherit (python2Packages) docutils hg-git dulwich python;
+ inherit (python3Packages) docutils dulwich python;
-in python2Packages.buildPythonApplication {
+in python3Packages.buildPythonApplication rec {
+ pname = "mercurial";
+ version = "5.2.1";
- inherit (mercurialSrc.meta) name version;
- src = mercurialSrc;
+ src = fetchurl {
+ url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz";
+ sha256 = "1pxkd37b0a1mi2zakk1hi122lgz1ffy2fxdnbs8acwlqpw55bc8q";
+ };
format = "other";
@@ -24,41 +22,39 @@ in python2Packages.buildPythonApplication {
buildInputs = [ makeWrapper docutils unzip ]
++ stdenv.lib.optionals stdenv.isDarwin [ ApplicationServices ];
- propagatedBuildInputs = [ hg-git dulwich ];
+ propagatedBuildInputs = [ dulwich ];
makeFlags = [ "PREFIX=$(out)" ];
- postInstall = (stdenv.lib.optionalString guiSupport
- ''
- mkdir -p $out/etc/mercurial
- cp contrib/hgk $out/bin
- cat >> $out/etc/mercurial/hgrc << EOF
- [extensions]
- hgk=$out/lib/${python.libPrefix}/site-packages/hgext/hgk.py
- EOF
- # setting HG so that hgk can be run itself as well (not only hg view)
- WRAP_TK=" --set TK_LIBRARY ${tk}/lib/${tk.libPrefix}
- --set HG $out/bin/hg
- --prefix PATH : ${tk}/bin "
- '') +
- ''
- for i in $(cd $out/bin && ls); do
- wrapProgram $out/bin/$i \
- $WRAP_TK
- done
+ postInstall = (stdenv.lib.optionalString guiSupport ''
+ mkdir -p $out/etc/mercurial
+ cp contrib/hgk $out/bin
+ cat >> $out/etc/mercurial/hgrc << EOF
+ [extensions]
+ hgk=$out/lib/${python.libPrefix}/site-packages/hgext/hgk.py
+ EOF
+ # setting HG so that hgk can be run itself as well (not only hg view)
+ WRAP_TK=" --set TK_LIBRARY ${tk}/lib/${tk.libPrefix}
+ --set HG $out/bin/hg
+ --prefix PATH : ${tk}/bin "
+ '') + ''
+ for i in $(cd $out/bin && ls); do
+ wrapProgram $out/bin/$i \
+ $WRAP_TK
+ done
- # copy hgweb.cgi to allow use in apache
- mkdir -p $out/share/cgi-bin
- cp -v hgweb.cgi contrib/hgweb.wsgi $out/share/cgi-bin
- chmod u+x $out/share/cgi-bin/hgweb.cgi
+ # copy hgweb.cgi to allow use in apache
+ mkdir -p $out/share/cgi-bin
+ cp -v hgweb.cgi contrib/hgweb.wsgi $out/share/cgi-bin
+ chmod u+x $out/share/cgi-bin/hgweb.cgi
- # install bash/zsh completions
- install -v -m644 -D contrib/bash_completion $out/share/bash-completion/completions/_hg
- install -v -m644 -D contrib/zsh_completion $out/share/zsh/site-functions/_hg
- '';
+ # install bash/zsh completions
+ install -v -m644 -D contrib/bash_completion $out/share/bash-completion/completions/_hg
+ install -v -m644 -D contrib/zsh_completion $out/share/zsh/site-functions/_hg
+ '';
meta = {
- inherit (mercurialSrc.meta) version;
+ inherit version;
description = "A fast, lightweight SCM system for very large distributed projects";
homepage = https://www.mercurial-scm.org;
downloadPage = https://www.mercurial-scm.org/release/;