diff --git a/pkgs/applications/networking/dropbox/default.nix b/pkgs/applications/networking/dropbox/default.nix index b979598e17c4..4e911bc33452 100644 --- a/pkgs/applications/networking/dropbox/default.nix +++ b/pkgs/applications/networking/dropbox/default.nix @@ -16,13 +16,19 @@ # replace these libraries with the appropriate ones in # nixpkgs. -# note: there is a i686 version available as well -assert stdenv.system == "x86_64-linux"; - let + arch = if stdenv.system == "x86_64-linux" then "x86_64" + else if stdenv.system == "i686-linux" then "x86" + else throw "Dropbox 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 "Dropbox client for: ${stdenv.system} not supported!"; version = "1.4.21"; - sha256 = "94073842f4a81feee80bca590e1df73fc3cab47ba879407ceba2de48f30d84e2"; + sha256 = if stdenv.system == "x86_64-linux" then "94073842f4a81feee80bca590e1df73fc3cab47ba879407ceba2de48f30d84e2" + else if stdenv.system == "i686-linux" then "121v92m20l73xjmzng3vmcp4zsp9mlbcfia73f5py5y74kndb2ap" + else throw "Dropbox client for: ${stdenv.system} not supported!"; # relative location where the dropbox libraries are stored appdir = "opt/dropbox"; @@ -52,8 +58,8 @@ in stdenv.mkDerivation { name = "dropbox-${version}.tar.gz"; # using version-specific URL so if the version is no longer available, # build will fail without having to finish downloading first - # url = "http://www.dropbox.com/download?plat=lnx.x86_64"; - url = "http://dl-web.dropbox.com/u/17/dropbox-lnx.x86_64-${version}.tar.gz"; + # url = "http://www.dropbox.com/download?plat=lnx.${arch}"; + url = "http://dl-web.dropbox.com/u/17/dropbox-lnx.${arch}-${version}.tar.gz"; inherit sha256; }; @@ -69,10 +75,10 @@ in stdenv.mkDerivation { ensureDir "$out/bin" ln -s "$out/${appdir}/dropbox" "$out/bin/dropbox" - patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 \ + patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} \ "$out/${appdir}/dropbox" - RPATH=${ldpath}:${gcc.gcc}/lib64:$out/${appdir} + RPATH=${ldpath}:${gcc.gcc}/lib:$out/${appdir} echo "updating rpaths to: $RPATH" find "$out/${appdir}" -type f -a -perm +0100 \ -print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \;