lol
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #9785 from khumba/jitsi-rpath-fix

jitsi: patch RPATHs for missing libraries

+44 -4
+27 -2
pkgs/applications/networking/instant-messengers/jitsi/default.nix
··· 1 - { stdenv, fetchurl, makeDesktopItem, unzip, ant, jdk }: 1 + { stdenv, lib, fetchurl, makeDesktopItem, unzip, ant, jdk 2 + # Optional, Jitsi still runs without, but you may pass null: 3 + , alsaLib, dbus_libs, gtk2, libpulseaudio, openssl, xlibs 4 + }: 2 5 3 6 stdenv.mkDerivation rec { 4 7 ··· 22 25 categories = "Application;Internet;"; 23 26 }; 24 27 28 + libPath = lib.makeLibraryPath ([ 29 + stdenv.cc.cc # For libstdc++. 30 + ] ++ lib.filter (x: x != null) [ 31 + alsaLib 32 + dbus_libs 33 + gtk2 34 + libpulseaudio 35 + openssl 36 + ] ++ lib.optionals (xlibs != null) [ 37 + xlibs.libX11 38 + xlibs.libXext 39 + xlibs.libXScrnSaver 40 + xlibs.libXv 41 + ]); 42 + 25 43 buildInputs = [unzip ant jdk]; 26 44 27 45 buildPhase = ''ant make''; ··· 33 51 mkdir $out/bin 34 52 cp resources/install/generic/run.sh $out/bin/jitsi 35 53 chmod +x $out/bin/jitsi 36 - sed -i 's| java | ${jdk}/bin/java |' $out/bin/jitsi 54 + substituteInPlace $out/bin/jitsi --replace '@JAVA@' '${jdk}/bin/java' 37 55 patchShebangs $out 56 + 57 + libPath="$libPath:${jdk.jre.home}/lib/${jdk.architecture}" 58 + find $out/ -type f -name '*.so' | while read file; do 59 + patchelf --set-rpath "$libPath" "$file" && \ 60 + patchelf --shrink-rpath "$file" 61 + done 38 62 ''; 39 63 40 64 meta = { ··· 42 66 description = "Open Source Video Calls and Chat"; 43 67 license = stdenv.lib.licenses.lgpl21Plus.shortName; 44 68 platforms = stdenv.lib.platforms.linux; 69 + maintainers = [ stdenv.lib.maintainers.khumba ]; 45 70 }; 46 71 47 72 }
+1 -1
pkgs/applications/networking/instant-messengers/jitsi/jitsi.patch
··· 24 24 25 25 export PATH=$PATH:native 26 26 -java $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=native -Dfelix.config.properties=file:./lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator 27 - +exec java $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=$NATIVELIBS -Dfelix.config.properties=file:lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator 27 + +exec @JAVA@ $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=$NATIVELIBS -Dfelix.config.properties=file:lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator
+16 -1
pkgs/development/compilers/openjdk/8.nix
··· 5 5 }: 6 6 7 7 let 8 + 9 + /** 10 + * The JRE libraries are in directories that depend on the CPU. 11 + */ 12 + architecture = 13 + if stdenv.system == "i686-linux" then 14 + "i386" 15 + else if stdenv.system == "x86_64-linux" then 16 + "amd64" 17 + else 18 + throw "openjdk requires i686-linux or x86_64 linux"; 19 + 8 20 update = "60"; 9 21 build = "24"; 10 22 baseurl = "http://hg.openjdk.java.net/jdk8u/jdk8u"; ··· 204 216 platforms = platforms.linux; 205 217 }; 206 218 207 - passthru.home = "${openjdk8}/lib/openjdk"; 219 + passthru = { 220 + inherit architecture; 221 + home = "${openjdk8}/lib/openjdk"; 222 + }; 208 223 }; 209 224 in openjdk8