diff --git a/pkgs/applications/networking/browsers/opera/builder.sh b/pkgs/applications/networking/browsers/opera/builder.sh new file mode 100644 index 00000000000..a0dadf07a9d --- /dev/null +++ b/pkgs/applications/networking/browsers/opera/builder.sh @@ -0,0 +1,33 @@ +source $stdenv/setup + +buildPhase=buildPhase +buildPhase() { + true +} + +installPhase=installPhase +installPhase() { + # Note: the "no" is because the install scripts asks whether we + # want to install icons in some system-wide directories. + echo no | ./install.sh --prefix=$out + + glibc=$(cat $NIX_GCC/nix-support/orig-glibc) + + rpath=/no-such-path + for i in $libPath; do + rpath="$rpath:$i/lib" + done + + # !!! ugh, should fix this eventually; just make a normal gcc dependency + gcc=$(cat $NIX_GCC/nix-support/orig-gcc) + rpath="$rpath:$gcc/lib" + + for i in $out/lib/opera/*/opera $out/lib/opera/plugins/opera*; do + patchelf \ + --set-interpreter "$glibc/lib/ld-linux.so.2" \ + --set-rpath "$rpath" \ + "$i" + done +} + +genericBuild diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix new file mode 100644 index 00000000000..f51b1f5cb28 --- /dev/null +++ b/pkgs/applications/networking/browsers/opera/default.nix @@ -0,0 +1,16 @@ +{stdenv, fetchurl, qt, zlib, libX11, motif ? null, libXt ? null, libXext ? null}: + +assert stdenv.system == "i686-linux"; +assert motif != null -> libXt != null && libXext != null; + +stdenv.mkDerivation { + name = "opera-8.51-20051114.6"; + + builder = ./builder.sh; + src = fetchurl { + url = ftp://ftp.tiscali.nl/pub/mirrors/opera/linux/851/final/en/i386/opera-8.51-20051114.6-shared-qt.i386-en.tar.bz2; + md5 = "bf930c45023035ee4258b13b707176c2"; + }; + + libPath = [qt zlib libX11 motif libXt libXext]; +} diff --git a/pkgs/system/all-packages-generic.nix b/pkgs/system/all-packages-generic.nix index fe11dd3d10b..8deaac6d0f4 100644 --- a/pkgs/system/all-packages-generic.nix +++ b/pkgs/system/all-packages-generic.nix @@ -1883,6 +1883,13 @@ rec { inherit fetchurl stdenv ncurses openssl boehmgc gettext; }; + opera = import ../applications/networking/browsers/opera { + inherit fetchurl stdenv zlib; + inherit (xlibs) libX11 libXt libXext; + qt = qt3; + motif = lesstif; + }; + ethereal = (import ../applications/networking/sniffers/ethereal) { inherit fetchurl stdenv perl pkgconfig libpcap; inherit (gtkLibs) glib;