eb91037e7b
In a few cases it wasn't clear so I left them as-is. While visiting these moved other things to nativeBuildInputs when it was clear they were one of these cases: * makeWrapper * archive utilities (in order to unpack src) * a few of these might no longer be needed but leaving for another day
70 lines
2.3 KiB
Nix
70 lines
2.3 KiB
Nix
{ stdenv, fetchurl, makeWrapper, patchelf
|
|
, fontconfig, freetype, glib, libICE, libSM
|
|
, libX11, libXext, libXrender, zlib
|
|
}:
|
|
|
|
let
|
|
arch = if stdenv.hostPlatform.system == "x86_64-linux" then "x64"
|
|
else if stdenv.hostPlatform.system == "i686-linux" then "x86"
|
|
else throw "Spideroak client for: ${stdenv.hostPlatform.system} not supported!";
|
|
|
|
interpreter = if stdenv.hostPlatform.system == "x86_64-linux" then "ld-linux-x86-64.so.2"
|
|
else if stdenv.hostPlatform.system == "i686-linux" then "ld-linux.so.2"
|
|
else throw "Spideroak client for: ${stdenv.hostPlatform.system} not supported!";
|
|
|
|
sha256 = if stdenv.hostPlatform.system == "x86_64-linux" then "a88e5a8fe4a565ac500668bd53cf5784752d7c9253304ddce39ee7b01d078533"
|
|
else if stdenv.hostPlatform.system == "i686-linux" then "668f3b83a974a3877d16c8743c233a427ea0a44ab84b7f9aec19a2995db66c16"
|
|
else throw "Spideroak client for: ${stdenv.hostPlatform.system} not supported!";
|
|
|
|
ldpath = stdenv.lib.makeLibraryPath [
|
|
fontconfig freetype glib libICE libSM
|
|
libX11 libXext libXrender zlib
|
|
];
|
|
|
|
version = "7.1.0";
|
|
|
|
in stdenv.mkDerivation {
|
|
name = "spideroak-${version}";
|
|
|
|
src = fetchurl {
|
|
name = "SpiderOakONE-${version}-slack_tar_${arch}.tgz";
|
|
url = "https://spideroak.com/release/spideroak/slack_tar_${arch}";
|
|
inherit sha256;
|
|
};
|
|
|
|
sourceRoot = ".";
|
|
|
|
unpackCmd = "tar -xzf $curSrc";
|
|
|
|
installPhase = ''
|
|
mkdir "$out"
|
|
cp -r "./"* "$out"
|
|
mkdir "$out/bin"
|
|
rm "$out/usr/bin/SpiderOakONE"
|
|
rmdir $out/usr/bin || true
|
|
mv $out/usr/share $out/
|
|
|
|
rm -f $out/opt/SpiderOakONE/lib/libz*
|
|
|
|
patchelf --set-interpreter ${stdenv.glibc.out}/lib/${interpreter} \
|
|
"$out/opt/SpiderOakONE/lib/SpiderOakONE"
|
|
|
|
RPATH=$out/opt/SpiderOakONE/lib:${ldpath}
|
|
makeWrapper $out/opt/SpiderOakONE/lib/SpiderOakONE $out/bin/spideroak --set LD_LIBRARY_PATH $RPATH \
|
|
--set QT_PLUGIN_PATH $out/opt/SpiderOakONE/lib/plugins/ \
|
|
--set SpiderOak_EXEC_SCRIPT $out/bin/spideroak
|
|
|
|
sed -i 's/^Exec=.*/Exec=spideroak/' $out/share/applications/SpiderOakONE.desktop
|
|
'';
|
|
|
|
nativeBuildInputs = [ patchelf makeWrapper ];
|
|
|
|
meta = {
|
|
homepage = https://spideroak.com;
|
|
description = "Secure online backup and sychronization";
|
|
license = stdenv.lib.licenses.unfree;
|
|
maintainers = with stdenv.lib.maintainers; [ amorsillo ];
|
|
platforms = stdenv.lib.platforms.linux;
|
|
};
|
|
}
|