summary refs log tree commit diff
path: root/pkgs/applications/version-management/reposurgeon/default.nix
diff options
context:
space:
mode:
authorDavid Guibert <david.guibert@gmail.com>2021-04-14 16:22:35 +0200
committerDavid Guibert <david.guibert@gmail.com>2021-05-24 22:37:08 +0200
commit374ce1b1af3348e5f343b954b576ebc436766193 (patch)
treef6d95731bca91f6c62264c3401774a533f221697 /pkgs/applications/version-management/reposurgeon/default.nix
parent4d8d99710540d1123ed398745d7b7d8d95c8b9d2 (diff)
downloadnixpkgs-374ce1b1af3348e5f343b954b576ebc436766193.tar
nixpkgs-374ce1b1af3348e5f343b954b576ebc436766193.tar.gz
nixpkgs-374ce1b1af3348e5f343b954b576ebc436766193.tar.bz2
nixpkgs-374ce1b1af3348e5f343b954b576ebc436766193.tar.lz
nixpkgs-374ce1b1af3348e5f343b954b576ebc436766193.tar.xz
nixpkgs-374ce1b1af3348e5f343b954b576ebc436766193.tar.zst
nixpkgs-374ce1b1af3348e5f343b954b576ebc436766193.zip
reposurgeon: 3.44 -> 4.26
Diffstat (limited to 'pkgs/applications/version-management/reposurgeon/default.nix')
-rw-r--r--pkgs/applications/version-management/reposurgeon/default.nix80
1 files changed, 29 insertions, 51 deletions
diff --git a/pkgs/applications/version-management/reposurgeon/default.nix b/pkgs/applications/version-management/reposurgeon/default.nix
index 3e526d5ac7c..2f9ff92ad67 100644
--- a/pkgs/applications/version-management/reposurgeon/default.nix
+++ b/pkgs/applications/version-management/reposurgeon/default.nix
@@ -1,60 +1,38 @@
-{ lib, stdenv, fetchurl, makeWrapper, python27Packages, git
-, docbook_xml_dtd_412, docbook_xsl, asciidoc, xmlto, pypy
-, breezy ? null, cvs ? null, darcs ? null, fossil ? null
-, mercurial ? null, monotone ? null, rcs ? null
-, subversion ? null, cvs_fast_export ? null }:
-
-with stdenv; with lib;
-let
-  inherit (python27Packages) python;
-in mkDerivation rec {
-  name = "reposurgeon-${meta.version}";
-  meta = {
-    description = "A tool for editing version-control repository history";
-    version = "3.44";
-    license = licenses.bsd3;
-    homepage = "http://www.catb.org/esr/reposurgeon/";
-    maintainers = with maintainers; [ dfoxfranke ];
-    platforms = platforms.all;
-  };
+{ lib, stdenv, fetchurl, makeWrapper, buildGoModule, git
+, asciidoctor, ruby
+}:
+
+buildGoModule rec {
+  pname = "reposurgeon";
+  version = "4.26";
 
   src = fetchurl {
-    url = "http://www.catb.org/~esr/reposurgeon/reposurgeon-3.44.tar.xz";
-    sha256 = "0il6hwrsm2qgg0vp5fcjh478y2x4zyw3mx2apcwc7svfj86pf7pn";
+    url = "http://www.catb.org/~esr/reposurgeon/reposurgeon-${version}.tar.xz";
+    sha256 = "sha256-FuL5pvIM468hEm6rUBKGW6+WlYv4DPHNnpwpRGzMwlY=";
   };
 
-  # install fails because the files README.md, NEWS, and TODO were not included in the source distribution
-  patches = [ ./fix-makefile.patch ];
+  vendorSha256 = "sha256-KpdXI2Znhe0iCp0DjSZXzUYDZIz2KBRv1/SpaRTFMAc=";
+
+  subPackages = [ "." ];
+
+  runVend = true;
 
-  buildInputs =
-    [ docbook_xml_dtd_412 docbook_xsl asciidoc xmlto makeWrapper pypy ];
+  nativeBuildInputs = [ asciidoctor ruby ];
 
-  preBuild = ''
-    makeFlagsArray=(
-      XML_CATALOG_FILES="${docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml ${docbook_xsl}/xml/xsl/docbook/catalog.xml"
-      prefix="$out"
-      pyinclude="-I${python}/include/python2.7"
-      pylib="-L${python}/lib -lpython2.7"
-    )
+  postBuild = ''
+    patchShebangs .
+    make all HTMLFILES=
   '';
 
-  postInstall =
-    let
-      binpath = makeBinPath (
-        filter (x: x != null)
-        [ out git breezy cvs darcs fossil mercurial
-          monotone rcs src subversion cvs_fast_export ]
-      );
-      pythonpath = makeSearchPathOutput "lib" python.sitePackages (
-        filter (x: x != null)
-        [ python27Packages.readline or null python27Packages.hglib or null ]
-      );
-    in ''
-      for prog in reposurgeon repodiffer repotool; do
-        wrapProgram $out/bin/$prog \
-          --prefix PATH : "${binpath}" \
-          --prefix PYTHONPATH : "${pythonpath}"
-      done
-    ''
-  ;
+  postInstall = ''
+    make install prefix=$out HTMLFILES=
+  '';
+
+  meta = {
+    description = "A tool for editing version-control repository history";
+    license = lib.licenses.bsd3;
+    homepage = "http://www.catb.org/esr/reposurgeon/";
+    maintainers = with lib.maintainers; [ dfoxfranke ];
+    platforms = lib.platforms.all;
+  };
 }