nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 perlPackages,
4 fetchFromGitHub,
5 makeWrapper,
6 openssh,
7}:
8
9perlPackages.buildPerlPackage {
10 pname = "ham-unstable";
11 version = "2025-11-12";
12
13 src = fetchFromGitHub {
14 owner = "kernkonzept";
15 repo = "ham";
16 rev = "11c8b146f8b11e7f284050fe205ae8afb1715541";
17 hash = "sha256-SlraTVE03UEF5Spjy6ZEPbhS/INBR/9MaRLw4/AxZds=";
18 };
19
20 outputs = [ "out" ];
21
22 nativeBuildInputs = [
23 makeWrapper
24 ];
25 buildInputs = with perlPackages; [
26 GitRepository
27 URI
28 XMLParser
29 ];
30 propagatedBuildInputs = [
31 openssh
32 ];
33
34 preConfigure = ''
35 rm -f Makefile
36 touch Makefile.PL
37 patchShebangs .
38 '';
39
40 installPhase = ''
41 mkdir -p $out/lib $out/bin
42 cp -r . $out/lib/ham
43
44 makeWrapper $out/lib/ham/ham $out/bin/ham --argv0 ham \
45 --prefix PATH : ${openssh}/bin
46 '';
47
48 meta = {
49 description = "Tool to manage big projects consisting of multiple loosely-coupled git repositories";
50 homepage = "https://github.com/kernkonzept/ham";
51 license = lib.licenses.bsd2;
52 maintainers = with lib.maintainers; [ aw ];
53 mainProgram = "ham";
54 platforms = lib.platforms.unix;
55 };
56}