2022-02-28 20:43:31 +00:00
|
|
|
{ lib, stdenv, fetchurl, libffi, coreutils }:
|
2019-01-29 12:44:09 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2019-05-23 02:02:48 +00:00
|
|
|
pname = "txr";
|
2022-05-18 18:27:18 +00:00
|
|
|
version = "275";
|
2019-01-29 12:44:09 +00:00
|
|
|
|
|
|
|
src = fetchurl {
|
2019-05-23 02:02:48 +00:00
|
|
|
url = "http://www.kylheku.com/cgit/txr/snapshot/${pname}-${version}.tar.bz2";
|
2022-05-18 18:27:18 +00:00
|
|
|
sha256 = "sha256-HmykTyh5F49CBa1w7o/HV6Q5Lsx1Qkxe0JBHQdGxVB4=";
|
2019-01-29 12:44:09 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
buildInputs = [ libffi ];
|
|
|
|
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
|
|
|
doCheck = true;
|
|
|
|
checkTarget = "tests";
|
|
|
|
|
2022-01-31 19:12:27 +00:00
|
|
|
postPatch = ''
|
|
|
|
# Fixup references to /usr/bin in tests
|
|
|
|
substituteInPlace tests/017/realpath.tl --replace /usr/bin /bin
|
|
|
|
substituteInPlace tests/017/realpath.expected --replace /usr/bin /bin
|
|
|
|
|
|
|
|
substituteInPlace tests/018/process.tl --replace /usr/bin/env ${lib.getBin coreutils}/bin/env
|
|
|
|
'';
|
|
|
|
|
|
|
|
# Remove failing tests -- 018/chmod tries setting sticky bit
|
|
|
|
preCheck = "rm -rf tests/018/chmod*";
|
2019-01-29 12:44:09 +00:00
|
|
|
|
2019-05-23 02:59:53 +00:00
|
|
|
postInstall = ''
|
|
|
|
d=$out/share/vim-plugins/txr
|
|
|
|
mkdir -p $d/{syntax,ftdetect}
|
|
|
|
|
|
|
|
cp {tl,txr}.vim $d/syntax/
|
|
|
|
|
|
|
|
cat > $d/ftdetect/txr.vim <<EOF
|
|
|
|
au BufRead,BufNewFile *.txr set filetype=txr | set lisp
|
|
|
|
au BufRead,BufNewFile *.tl,*.tlo set filetype=tl | set lisp
|
|
|
|
EOF
|
|
|
|
'';
|
2019-01-29 12:44:09 +00:00
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2019-01-29 12:44:09 +00:00
|
|
|
description = "Programming language for convenient data munging";
|
|
|
|
license = licenses.bsd2;
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "http://nongnu.org/txr";
|
2021-01-15 09:19:50 +00:00
|
|
|
maintainers = with lib.maintainers; [ dtzWill ];
|
2019-06-04 06:38:47 +00:00
|
|
|
platforms = platforms.linux; # Darwin fails although it should work AFAIK
|
2019-01-29 12:44:09 +00:00
|
|
|
};
|
|
|
|
}
|