1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 ruby,
6 makeWrapper,
7 git,
8}:
9
10stdenv.mkDerivation rec {
11 pname = "svn2git";
12 version = "2.4.0";
13
14 src = fetchFromGitHub {
15 owner = "nirvdrum";
16 repo = "svn2git";
17 rev = "v${version}";
18 sha256 = "sha256-w649l/WO68vYYxZOBKzI8XhGFkaSwWx/O3oVOtnGg6w=";
19 };
20
21 nativeBuildInputs = [
22 ruby
23 makeWrapper
24 ];
25
26 dontBuild = true;
27
28 installPhase = ''
29 mkdir -p $out
30 cp -r lib $out/
31
32 mkdir -p $out/bin
33 substituteInPlace bin/svn2git --replace '/usr/bin/env ruby' ${ruby}/bin/ruby
34 cp bin/svn2git $out/bin/
35 chmod +x $out/bin/svn2git
36
37 wrapProgram $out/bin/svn2git \
38 --set RUBYLIB $out/lib \
39 --prefix PATH : ${git}/bin
40 '';
41
42 meta = {
43 homepage = "https://github.com/nirvdrum/svn2git";
44 description = "Tool for importing Subversion repositories into git";
45 license = lib.licenses.mit;
46 platforms = lib.platforms.unix;
47 mainProgram = "svn2git";
48 };
49}