diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix index 92afe2f4baa0..2de8192150ec 100644 --- a/pkgs/applications/networking/browsers/opera/default.nix +++ b/pkgs/applications/networking/browsers/opera/default.nix @@ -41,27 +41,30 @@ , at-spi2-core , autoPatchelfHook , wrapGAppsHook +, qt5 +, proprietaryCodecs ? false +, vivaldi-ffmpeg-codecs }: let - mirror = "https://get.geo.opera.com/pub/opera/desktop"; - -in stdenv.mkDerivation rec { - +in +stdenv.mkDerivation rec { pname = "opera"; - version = "90.0.4480.84"; + version = "94.0.4606.54"; src = fetchurl { url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb"; - sha256 = "sha256-GMcBTY3Ab8lYWv1IPdCeKPZwbY19NPHYmK7ATzvq0cg="; + hash = "sha256-IMWIkJHKaE7n5Rll4ZExE6PQB9a2fz0hLx4vckbROgk="; }; - unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc ."; + unpackPhase = "dpkg-deb -x $src ."; nativeBuildInputs = [ + dpkg autoPatchelfHook wrapGAppsHook + qt5.wrapQtAppsHook ]; buildInputs = [ @@ -115,16 +118,22 @@ in stdenv.mkDerivation rec { # "Illegal instruction (core dumped)" gtk3 gtk4 + ] ++ lib.optional proprietaryCodecs [ + vivaldi-ffmpeg-codecs ]; + dontWrapQtApps = true; + installPhase = '' - mkdir -p $out - cp -r . $out/ + mkdir -p $out/bin + cp -r usr $out + cp -r usr/share $out/share + ln -s $out/usr/bin/opera $out/bin/opera ''; meta = with lib; { homepage = "https://www.opera.com"; - description = "Web browser"; + description = "Faster, safer and smarter web browser"; platforms = [ "x86_64-linux" ]; license = licenses.unfree; sourceProvenance = with sourceTypes; [ binaryNativeCode ];