nixpkgs: add kdb+ 3.2
Signed-off-by: Austin Seipp <aseipp@pobox.com>
This commit is contained in:
parent
e6b664cafe
commit
834c731a72
75
pkgs/applications/misc/kdbplus/default.nix
Normal file
75
pkgs/applications/misc/kdbplus/default.nix
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
{ stdenv, requireFile, unzip, rlwrap, bash }:
|
||||||
|
|
||||||
|
assert (stdenv.system == "i686-linux");
|
||||||
|
|
||||||
|
let
|
||||||
|
libPath = stdenv.lib.makeLibraryPath
|
||||||
|
[ stdenv.cc.libc stdenv.cc.cc ];
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "kdbplus-${version}";
|
||||||
|
version = "3.2";
|
||||||
|
|
||||||
|
src = requireFile {
|
||||||
|
message = ''
|
||||||
|
Nix can't download kdb+ for you automatically. Go to
|
||||||
|
http://kx.com and download the free, 32-bit version for
|
||||||
|
Linux. Then run "nix-prefetch-url file:///linux.zip" in the
|
||||||
|
directory where you saved it. Note you need version 3.2.
|
||||||
|
'';
|
||||||
|
name = "linux.zip";
|
||||||
|
sha256 = "0ah1kfvxnrck1kg8j7rpzgj6amji62zbm4ya6q55l54gm3qq6q0r";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontStrip = true;
|
||||||
|
buildInputs = [ unzip ];
|
||||||
|
|
||||||
|
phases = "unpackPhase installPhase";
|
||||||
|
unpackPhase = "mkdir ${name} && cd ${name} && unzip -qq ${src}";
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/bin $out/libexec
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
--set-rpath ${libPath} \
|
||||||
|
./q/l32/q
|
||||||
|
mv ./q/l32/q $out/libexec/q
|
||||||
|
|
||||||
|
# Shell script wrappers to make things more convenient...
|
||||||
|
|
||||||
|
cat > $out/bin/q-install <<- EOF
|
||||||
|
#!${bash}/bin/bash
|
||||||
|
if [ -f \$HOME/q/q.k ]; then
|
||||||
|
echo "kdb has already been unpacked in \$HOME. Skipping..."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
echo -n "Unzipping ${src} into \$HOME... "
|
||||||
|
cd \$HOME && ${unzip}/bin/unzip -qq ${src}
|
||||||
|
echo "Done"
|
||||||
|
EOF
|
||||||
|
|
||||||
|
cat > $out/bin/q <<- EOF
|
||||||
|
#!${bash}/bin/bash
|
||||||
|
if [ ! -f \$HOME/q/q.k ]; then
|
||||||
|
echo "ERROR: You need to unzip the Q sources into \$HOME before running q."
|
||||||
|
echo
|
||||||
|
echo "Try:"
|
||||||
|
echo " cd \$HOME && unzip ${src}"
|
||||||
|
echo "(or run q-install)"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
exec ${rlwrap}/bin/rlwrap $out/libexec/q \$@
|
||||||
|
EOF
|
||||||
|
|
||||||
|
chmod +x $out/bin/q $out/bin/q-install
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Analytics and time-series database";
|
||||||
|
homepage = "http://www.kx.com/";
|
||||||
|
license = stdenv.lib.licenses.unfree;
|
||||||
|
platforms = [ "i686-linux" ];
|
||||||
|
maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
|
||||||
|
};
|
||||||
|
}
|
@ -1757,6 +1757,8 @@ let
|
|||||||
|
|
||||||
kalibrate-rtl = callPackage ../tools/misc/kalibrate-rtl { };
|
kalibrate-rtl = callPackage ../tools/misc/kalibrate-rtl { };
|
||||||
|
|
||||||
|
kdbplus = callPackage_i686 ../applications/misc/kdbplus { };
|
||||||
|
|
||||||
kexectools = callPackage ../os-specific/linux/kexectools { };
|
kexectools = callPackage ../os-specific/linux/kexectools { };
|
||||||
|
|
||||||
keybase-node-client = callPackage ../applications/misc/keybase-node-client { };
|
keybase-node-client = callPackage ../applications/misc/keybase-node-client { };
|
||||||
|
Loading…
Reference in New Issue
Block a user