guilt: init at 0.37-rc1
This commit is contained in:
parent
9867343397
commit
9288bd0433
4 changed files with 129 additions and 0 deletions
20
pkgs/applications/version-management/guilt/darwin-fix.patch
Normal file
20
pkgs/applications/version-management/guilt/darwin-fix.patch
Normal file
|
@ -0,0 +1,20 @@
|
|||
uname -s is used to determine the differences between the command line
|
||||
utilities like stat or awk in linux and darwin. However, in nix, guilt
|
||||
will be using the nix versions of this programs, not the ones
|
||||
installed in the system. Therefore, guilt should use the command-line
|
||||
parameters that the linux forms of these commands expect, even if it
|
||||
is being run on Darwin.
|
||||
|
||||
diff --git a/guilt b/guilt
|
||||
index bf50343..cfc9332 100755
|
||||
--- a/guilt
|
||||
+++ b/guilt
|
||||
@@ -986,7 +986,7 @@ guards_file="$GUILT_DIR/$branch/guards"
|
||||
pager="more"
|
||||
[ ! -z "$PAGER" ] && pager="$PAGER"
|
||||
|
||||
-UNAME_S=`uname -s`
|
||||
+UNAME_S="Linux"
|
||||
|
||||
if [ -r "$GUILT_PATH/os.$UNAME_S" ]; then
|
||||
. "$GUILT_PATH/os.$UNAME_S"
|
92
pkgs/applications/version-management/guilt/default.nix
Normal file
92
pkgs/applications/version-management/guilt/default.nix
Normal file
|
@ -0,0 +1,92 @@
|
|||
{ asciidoc
|
||||
, docbook_xml_dtd_45
|
||||
, docbook_xsl
|
||||
, fetchFromGitHub
|
||||
, gawk
|
||||
, git
|
||||
, gnused
|
||||
, lib
|
||||
, makeWrapper
|
||||
, openssl
|
||||
, perl
|
||||
, stdenv
|
||||
, xmlto
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "guilt";
|
||||
version = "0.37-rc1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jeffpc";
|
||||
repo = "guilt";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-7OgRbMGYWtGvrZxKfJe0CkpmU3AUkPebF5NyTsfXeGA=";
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
|
||||
patches = [
|
||||
./guilt-help-mandir.patch
|
||||
./darwin-fix.patch
|
||||
];
|
||||
nativeBuildInputs = [
|
||||
asciidoc
|
||||
docbook_xml_dtd_45
|
||||
docbook_xsl
|
||||
makeWrapper
|
||||
perl
|
||||
xmlto
|
||||
];
|
||||
buildInputs = [
|
||||
gawk
|
||||
git
|
||||
gnused
|
||||
] ++ lib.optionals stdenv.isDarwin [ openssl ];
|
||||
makeFlags = [
|
||||
"PREFIX=$(out)"
|
||||
];
|
||||
|
||||
postBuild = ''
|
||||
make -j $NIX_BUILD_CORES doc
|
||||
'';
|
||||
|
||||
preCheck = ''
|
||||
patchShebangs regression/run-tests regression/*.sh
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
make PREFIX=$out install-doc
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/guilt --prefix PATH : ${lib.makeBinPath buildInputs}
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Manage patches like quilt, on top of a git repository";
|
||||
longDescription = ''
|
||||
Andrew Morton originally developed a set of scripts for
|
||||
maintaining kernel patches outside of any SCM tool. Others
|
||||
extended these into a suite called quilt]. The basic idea behind
|
||||
quilt is to maintain patches instead of maintaining source
|
||||
files. Patches can be added, removed or reordered, and they can
|
||||
be refreshed as you fix bugs or update to a new base
|
||||
revision. quilt is very powerful, but it is not integrated with
|
||||
the underlying SCM tools. This makes it difficult to visualize
|
||||
your changes.
|
||||
|
||||
Guilt allows one to use quilt functionality on top of a Git
|
||||
repository. Changes are maintained as patches which are
|
||||
committed into Git. Commits can be removed or reordered, and the
|
||||
underlying patch can be refreshed based on changes made in the
|
||||
working directory. The patch directory can also be placed under
|
||||
revision control, so you can have a separate history of changes
|
||||
made to your patches.
|
||||
'';
|
||||
homepage = "https://github.com/jeffpc/guilt";
|
||||
maintainers = with lib.maintainers; [ javimerino ];
|
||||
license = [ licenses.gpl2 ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
nixpkgs' post-installation fixup moves the pages to share/man. Tell guilt-help so that it can find them.
|
||||
|
||||
diff --git a/guilt-help b/guilt-help
|
||||
index 93442a3..b29e059 100755
|
||||
--- a/guilt-help
|
||||
+++ b/guilt-help
|
||||
@@ -34,7 +34,7 @@ case $# in
|
||||
;;
|
||||
esac
|
||||
|
||||
-MANDIR=`dirname $0`/../man
|
||||
+MANDIR=`dirname $0`/../share/man
|
||||
MANDIR=`(cd "$MANDIR"; pwd)`
|
||||
exec man -M "$MANDIR" "$page"
|
||||
|
|
@ -2446,6 +2446,8 @@ with pkgs;
|
|||
|
||||
gst = callPackage ../applications/version-management/gst { };
|
||||
|
||||
guilt = callPackage ../applications/version-management/guilt { };
|
||||
|
||||
gut = callPackage ../applications/version-management/gut { };
|
||||
|
||||
hred = callPackage ../development/tools/hred { };
|
||||
|
|
Loading…
Reference in a new issue