summary refs log tree commit diff
path: root/pkgs/applications/networking/instant-messengers/wavebox/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/networking/instant-messengers/wavebox/default.nix')
-rw-r--r--pkgs/applications/networking/instant-messengers/wavebox/default.nix50
1 files changed, 28 insertions, 22 deletions
diff --git a/pkgs/applications/networking/instant-messengers/wavebox/default.nix b/pkgs/applications/networking/instant-messengers/wavebox/default.nix
index 3d0ea6353d4..21a8a4a9630 100644
--- a/pkgs/applications/networking/instant-messengers/wavebox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/wavebox/default.nix
@@ -4,6 +4,7 @@
 , gtk3
 , gtk4
 , libnotify
+, copyDesktopItems
 , makeDesktopItem
 , makeWrapper
 , mesa
@@ -17,32 +18,21 @@
 , xorg
 }:
 
-let
-  version = "10.114.26-2";
-  desktopItem = makeDesktopItem rec {
-    name = "Wavebox";
-    exec = "wavebox";
-    icon = "wavebox";
-    desktopName = name;
-    genericName = name;
-    categories = [ "Network" "WebBrowser" ];
-  };
-
-  tarball = "Wavebox_${version}.tar.gz";
-
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "wavebox";
-  inherit version;
+  version = "10.118.5-2";
+
   src = fetchurl {
-    url = "https://download.wavebox.app/stable/linux/tar/${tarball}";
-    sha256 = "1yk664zgahjg6n98n3kc9avcay0nqwcyq8wq231p7kvd79zazk0r";
+    url = "https://download.wavebox.app/stable/linux/tar/Wavebox_${version}.tar.gz";
+    sha256 = "sha256-TxMl8pdycCMY6NFi5MSLZg0p/+KmuAPQOm370bPMm/0=";
   };
 
   # don't remove runtime deps
   dontPatchELF = true;
+  # ignore optional Qt 6 shim
+  autoPatchelfIgnoreMissingDeps = [ "libQt6Widgets.so.6" "libQt6Gui.so.6" "libQt6Core.so.6" ];
 
-  nativeBuildInputs = [ autoPatchelfHook makeWrapper qt5.wrapQtAppsHook ];
+  nativeBuildInputs = [ autoPatchelfHook makeWrapper qt5.wrapQtAppsHook copyDesktopItems ];
 
   buildInputs = with xorg; [
     libXdmcp
@@ -62,14 +52,28 @@ stdenv.mkDerivation {
 
   runtimeDependencies = [ (lib.getLib udev) libnotify gtk4 ];
 
+  desktopItems = [
+    (makeDesktopItem rec {
+      name = "Wavebox";
+      exec = "wavebox";
+      icon = "wavebox";
+      desktopName = name;
+      genericName = name;
+      categories = [ "Network" "WebBrowser" ];
+    })
+  ];
+
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/bin $out/opt/wavebox
     cp -r * $out/opt/wavebox
 
-    # provide desktop item and icon
-    mkdir -p $out/share/applications $out/share/icons/hicolor/128x128/apps
-    ln -s ${desktopItem}/share/applications/* $out/share/applications
+    # provide icon for desktop item
+    mkdir -p $out/share/icons/hicolor/128x128/apps
     ln -s $out/opt/wavebox/product_logo_128.png $out/share/icons/hicolor/128x128/apps/wavebox.png
+
+    runHook postInstall
   '';
 
   postFixup = ''
@@ -77,6 +81,8 @@ stdenv.mkDerivation {
     --prefix PATH : ${xdg-utils}/bin
   '';
 
+  passthru.updateScript = ./update.sh;
+
   meta = with lib; {
     description = "Wavebox messaging application";
     homepage = "https://wavebox.io";