nvi: cleanup and fix darwin build (#462214)
This commit is contained in:
17
pkgs/by-name/nv/nvi/macports-patches.nix
Normal file
17
pkgs/by-name/nv/nvi/macports-patches.nix
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
let
|
||||||
|
url = "https://github.com/macports/macports-ports/raw/abae7e550897dc13b7a48763a7a022b709d8793f/editors/nvi/files";
|
||||||
|
hashes = {
|
||||||
|
"dynamic_lookup-11.patch" = "sha256-eXLSMUtslSXLYd1HZRD6pfqcYMIA3EtixWL1yvx4ook=";
|
||||||
|
"patch-common_key.h.diff" = "sha256-AAO/2lHpmFJMYb9fyQrWnGPaJYLdwhrp87tbHu5hr/k=";
|
||||||
|
"patch-dist_port.h.in.diff" = "sha256-GPKgIm9pDGtN6CNqbX3+hANkZbYFql5K5JyjCr5TIKI=";
|
||||||
|
"patch-ex_script.c.diff" = "sha256-IUuJ7b6A5O3q6qQCwZsrc9Bt1LpjU3DgxHTwtMp16Qc=";
|
||||||
|
"patch-includes.diff" = "sha256-j3V4LmcJEFqnTlTHFZFd8NtycEa+GKM+ZIUwZHjq15w=";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
builtins.attrValues (
|
||||||
|
builtins.mapAttrs (n: v: {
|
||||||
|
url = "${url}/${n}";
|
||||||
|
hash = v;
|
||||||
|
extraPrefix = "";
|
||||||
|
}) hashes
|
||||||
|
)
|
||||||
@@ -5,6 +5,7 @@
|
|||||||
fetchpatch,
|
fetchpatch,
|
||||||
ncurses,
|
ncurses,
|
||||||
db,
|
db,
|
||||||
|
libiconv,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@@ -13,31 +14,54 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://deb.debian.org/debian/pool/main/n/nvi/nvi_${version}.orig.tar.gz";
|
url = "https://deb.debian.org/debian/pool/main/n/nvi/nvi_${version}.orig.tar.gz";
|
||||||
sha256 = "13cp9iz017bk6ryi05jn7drbv7a5dyr201zqd3r4r8srj644ihwb";
|
hash = "sha256-i8NIiJFZo0zyaPgHILJvRZ29cjtWFhB9NnOdAH5Ml40=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches =
|
patches =
|
||||||
# Apply patches from debian package
|
# Apply patches from debian package
|
||||||
map fetchurl (import ./debian-patches.nix);
|
(map fetchurl (import ./debian-patches.nix))
|
||||||
|
++
|
||||||
|
# Also select patches from macports
|
||||||
|
# They don't interfere with Linux build
|
||||||
|
# https://github.com/macports/macports-ports/tree/master/editors/nvi/files
|
||||||
|
(map fetchpatch (import ./macports-patches.nix));
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
ncurses
|
ncurses
|
||||||
db
|
db
|
||||||
];
|
]
|
||||||
|
++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
cd build.unix
|
cd build.unix
|
||||||
'';
|
'';
|
||||||
|
|
||||||
configureScript = "../dist/configure";
|
configureScript = "../dist/configure";
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"vi_cv_path_preserve=/tmp"
|
"vi_cv_path_preserve=/tmp"
|
||||||
"--enable-widechar"
|
"--enable-widechar"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
env.NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-liconv";
|
||||||
|
|
||||||
|
meta = {
|
||||||
description = "Berkeley Vi Editor";
|
description = "Berkeley Vi Editor";
|
||||||
license = licenses.free;
|
longDescription = ''
|
||||||
platforms = platforms.unix;
|
nvi ("new vi") is a re-implementation of the
|
||||||
broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/nvi.x86_64-darwin
|
classic Berkeley text editor vi, written by
|
||||||
|
Keith Bostic at UC Berkeley for 4BSD. Created
|
||||||
|
to replace Unix-derived code in BSD, it provides
|
||||||
|
a clean, unencumbered version of the original
|
||||||
|
editor and is the default vi on all major BSD
|
||||||
|
systems as well as MINIX.
|
||||||
|
'';
|
||||||
|
license = lib.licenses.bsd3;
|
||||||
|
platforms = lib.platforms.unix;
|
||||||
|
mainProgram = "vi";
|
||||||
|
maintainers = with lib.maintainers; [
|
||||||
|
suominen
|
||||||
|
aleksana
|
||||||
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user