Merge pull request #258429 from FliegendeWurst/wavebox-117.18-2

This commit is contained in:
Artturi 2023-11-08 01:43:24 +02:00 committed by GitHub
commit a3987f5122
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 33 additions and 22 deletions

View file

@ -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";

View file

@ -0,0 +1,5 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p nix-update curl jq
version=$(curl "https://download.wavebox.app/stable/linux/latest.json" | jq --raw-output '.["urls"]["tar"] | match("https://download.wavebox.app/stable/linux/tar/Wavebox_(.+).tar.gz").captures[0]["string"]')
nix-update wavebox --version "$version"