1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-19 20:21:14 +00:00

Merge pull request #269839 from a-n-n-a-l-e-e/augeas-update

augeas: 1.12.0 -> 1.14.1; fix darwin build
This commit is contained in:
Robert Scott 2023-11-25 21:25:33 +00:00 committed by GitHub
commit effbeb808b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 84 additions and 21 deletions

View file

@ -1,30 +1,36 @@
{ stdenv, lib, buildPythonPackage, fetchFromGitHub, augeas, cffi }:
{ lib
, stdenv
, fetchFromGitHub
, buildPythonPackage
, unittestCheckHook
, pkg-config
, augeas
, cffi
, pkgs # for libxml2
}:
buildPythonPackage rec {
pname = "augeas";
version = "1.1.0";
version = "1.2.0";
src = fetchFromGitHub {
owner = "hercules-team";
repo = "python-augeas";
rev = "v${version}";
sha256 = "12q52ilcx059rn544x3712xq6myn99niz131l0fs3xx67456pajh";
hash = "sha256-Lq8ckra3sqN38zo1d5JsEq6U5TtLKRmqysoWNwR9J9A=";
};
# TODO: not very nice!
postPatch =
let libname = "libaugeas${stdenv.hostPlatform.extensions.sharedLibrary}";
in
''
substituteInPlace augeas/ffi.py \
--replace 'ffi.dlopen("augeas")' \
'ffi.dlopen("${lib.makeLibraryPath [augeas]}/${libname}")'
'';
nativeBuildInputs = [ pkg-config ];
propagatedBuildInputs = [ cffi augeas ];
buildInputs = [ augeas pkgs.libxml2 ];
doCheck = false;
propagatedBuildInputs = [ cffi ];
nativeCheckInputs = [ unittestCheckHook ];
pythonImportsCheck = [ "augeas" ];
meta = with lib; {
changelog = "https://github.com/hercules-team/python-augeas/releases/tag/v${version}";
description = "Pure python bindings for augeas";
homepage = "https://github.com/hercules-team/python-augeas";
license = licenses.lgpl2Plus;

View file

@ -0,0 +1,15 @@
diff --git a/bootstrap b/bootstrap
index a84eb39..cac656d 100755
--- a/bootstrap
+++ b/bootstrap
@@ -53,9 +53,6 @@ case ${GNULIB_SRCDIR--} in
echo "$0: getting gnulib files..."
git submodule update || exit $?
GNULIB_SRCDIR=.gnulib
- else
- echo >&2 "$0: invalid gnulib srcdir: $GNULIB_SRCDIR"
- exit 1
fi
;;
esac

View file

@ -1,23 +1,65 @@
{ lib, stdenv, fetchurl, pkg-config, readline, libxml2 }:
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, bison
, flex
, perl # for pod2man
, pkg-config
, readline
, libxml2
}:
stdenv.mkDerivation rec {
pname = "augeas";
version = "1.12.0";
version = "1.14.1";
src = fetchurl {
url = "http://download.augeas.net/${pname}-${version}.tar.gz";
sha256 = "11ybhb13wkkilsn7b416a1dn61m1xrq0lbdpkhp5w61jrk4l469j";
src = fetchFromGitHub {
owner = "hercules-team";
repo = "augeas";
rev = "release-${version}";
fetchSubmodules = true;
hash = "sha256-U5tm3LDUeI/idHtL2Zy33BigkyvHunXPjToDC59G9VE=";
};
nativeBuildInputs = [ pkg-config ];
patches = [
# already have the submodules so don't fail when .git doesn't exist.
./bootstrap.diff
];
postPatch = ''
./bootstrap --gnulib-srcdir=.gnulib
'';
nativeBuildInputs = [
autoreconfHook
bison
flex
perl
pkg-config
];
buildInputs = [ readline libxml2 ];
enableParallelBuilding = true;
doCheck = true;
checkPhase = ''
runHook preCheck
patchShebangs --build gnulib/tests tests
make -j $NIX_BUILD_CORES check
runHook postCheck
'';
outputs = [ "out" "dev" ];
meta = with lib; {
description = "Configuration editing tool";
license = licenses.lgpl21Only;
homepage = "https://augeas.net/";
changelog = "https://augeas.net/news.html";
changelog = "https://github.com/hercules-team/augeas/releases/tag/release-${version}";
mainProgram = "augtool";
maintainers = with maintainers; [ offline ];
platforms = platforms.unix;
};