about summary refs log tree commit diff
path: root/pkgs/applications/networking/spideroak/default.nix
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-07-28 11:30:31 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-07-28 11:30:49 +0200
commitf64d84698eb3f4d833e846336ff99a73331c31f7 (patch)
tree1120886b680851bc8b8f8d337af3503ecd4a3d71 /pkgs/applications/networking/spideroak/default.nix
parent3e4a382d6753a057256c7ef1e9f52ae9e07bd677 (diff)
parent30431e71608576baf880567b2894ad2a542f8d5e (diff)
downloadnixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar
nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.gz
nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.bz2
nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.lz
nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.xz
nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.zst
nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.zip
Merge remote-tracking branch 'origin/master' into staging
Conflicts:
	pkgs/applications/audio/espeak/edit.nix
	pkgs/applications/audio/lmms/default.nix
	pkgs/desktops/e18/enlightenment.nix
	pkgs/games/exult/default.nix
	pkgs/os-specific/linux/alsa-plugins/default.nix
Diffstat (limited to 'pkgs/applications/networking/spideroak/default.nix')
-rw-r--r--pkgs/applications/networking/spideroak/default.nix62
1 files changed, 62 insertions, 0 deletions
diff --git a/pkgs/applications/networking/spideroak/default.nix b/pkgs/applications/networking/spideroak/default.nix
new file mode 100644
index 000000000000..403630e25e55
--- /dev/null
+++ b/pkgs/applications/networking/spideroak/default.nix
@@ -0,0 +1,62 @@
+{ stdenv, fetchurl, makeWrapper, glib
+, fontconfig, patchelf, libXext, libX11
+, freetype, libXrender
+}:
+
+let
+  arch = if stdenv.system == "x86_64-linux" then "x86_64"
+    else if stdenv.system == "i686-linux" then "i386"
+    else throw "Spideroak client for: ${stdenv.system} not supported!";
+
+  interpreter = if stdenv.system == "x86_64-linux" then "ld-linux-x86-64.so.2"
+    else if stdenv.system == "i686-linux" then "ld-linux.so.2"
+    else throw "Spideroak client for: ${stdenv.system} not supported!";
+
+  sha256 = if stdenv.system == "x86_64-linux" then "0ax5ij3fwq3q9agf7qkw2zg53fcd82llg734pq3swzpn3z1ajs38"
+    else if stdenv.system == "i686-linux" then "18hvgx8bvd2khnqfn434gd4mflv0w5y8kvim72rvya2kwxsyf3i1"
+    else throw "Spideroak client for: ${stdenv.system} not supported!";
+
+  ldpath = stdenv.lib.makeSearchPath "lib" [
+    glib fontconfig libXext libX11 freetype libXrender 
+  ];
+
+  version = "5.1.6";
+
+in stdenv.mkDerivation {
+  name = "spideroak-${version}";
+  
+  src = fetchurl {
+    name = "spideroak-${version}-${arch}";
+    url = "https://spideroak.com/getbuild?platform=slackware&arch=${arch}&version=${version}";
+    inherit sha256;
+  };
+
+  sourceRoot = ".";
+
+  unpackCmd = "tar -xzf $curSrc";
+
+  installPhase = ''
+    ensureDir "$out"
+    cp -r "./"* "$out"
+    ensureDir "$out/bin"
+    rm "$out/usr/bin/SpiderOak"
+
+    patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} \
+      "$out/opt/SpiderOak/lib/SpiderOak"
+
+    RPATH=$out/opt/SpiderOak/lib:${ldpath}
+    makeWrapper $out/opt/SpiderOak/lib/SpiderOak $out/bin/spideroak --set LD_LIBRARY_PATH $RPATH \
+      --set QT_PLUGIN_PATH $out/opt/SpiderOak/lib/plugins/ \
+      --set SpiderOak_EXEC_SCRIPT $out/bin/spideroak
+  '';
+
+  buildInputs = [ 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;
+  };
+}