diff options
author | Vladimír Čunát <v@cunat.cz> | 2024-04-25 20:43:34 +0200 |
---|---|---|
committer | Vladimír Čunát <v@cunat.cz> | 2024-04-25 20:43:34 +0200 |
commit | d157c073240c769b7de73a936a22ee97bc0ec227 (patch) | |
tree | 477ec62d7a0285ee2c19fa0d1ba1073b0f9d4add /pkgs/applications/networking/instant-messengers | |
parent | b9a7c64a9e3f8e1111e5418505ad58b499dba8e6 (diff) | |
parent | 10b682b6e5ed139ee2bef863ada3043f2d79c1cc (diff) |
Merge branch 'master' into staging-next
Diffstat (limited to 'pkgs/applications/networking/instant-messengers')
5 files changed, 116 insertions, 44 deletions
diff --git a/pkgs/applications/networking/instant-messengers/chatty/default.nix b/pkgs/applications/networking/instant-messengers/chatty/default.nix index adacea2d019a8..ea43f470e8bb6 100644 --- a/pkgs/applications/networking/instant-messengers/chatty/default.nix +++ b/pkgs/applications/networking/instant-messengers/chatty/default.nix @@ -84,7 +84,7 @@ stdenv.mkDerivation rec { homepage = "https://gitlab.gnome.org/World/Chatty"; changelog = "https://gitlab.gnome.org/World/Chatty/-/blob/${src.rev}/NEWS"; license = licenses.gpl3Plus; - maintainers = with maintainers; [ dotlambda tomfitzhenry ]; + maintainers = with maintainers; [ dotlambda ]; platforms = platforms.linux; }; } diff --git a/pkgs/applications/networking/instant-messengers/element/pin.nix b/pkgs/applications/networking/instant-messengers/element/pin.nix index b7c9de0cc7323..516c1182e22f5 100644 --- a/pkgs/applications/networking/instant-messengers/element/pin.nix +++ b/pkgs/applications/networking/instant-messengers/element/pin.nix @@ -1,9 +1,9 @@ { - "version" = "1.11.64"; + "version" = "1.11.65"; "hashes" = { - "desktopSrcHash" = "sha256-U6vVuc7claPZI4idZmTXpm1GHm+VrmoaJNVgJU0GHMU="; - "desktopYarnHash" = "079jg178cq2m91fhzrdab8x33wrm5a97ga19g0268q118vbnv98l"; - "webSrcHash" = "sha256-jphxYlSxHjck6XA3JXofC6AbVb+aVOjsbxLUqo1hRhY="; - "webYarnHash" = "0q91llgx8cy6zxinfqbnrcfkmclqx7czlp08f1ls43x0w2vd8447"; + "desktopSrcHash" = "sha256-aRlTM8j+lMB97QsmRlcvSZqLJ/2vmQIz1viTIoycmYA="; + "desktopYarnHash" = "08scs091k0i6lwfpw0id4jxmmdix0jxvnm9fyjwzrsrzh6q6899y"; + "webSrcHash" = "sha256-aE7pmqLOa9aCaSaSOpX2NqcY0OKBjL5mZbKModbKxZg="; + "webYarnHash" = "1b9q8v5jz6w2vvfkgq8nzajzs798ja2ff3wjv6d5m7sri8il7f0s"; }; } diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-aarch64.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-aarch64.nix index dffcdc6172f28..cccaa12cc2b03 100644 --- a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-aarch64.nix +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-aarch64.nix @@ -2,7 +2,7 @@ callPackage ./generic.nix { } rec { pname = "signal-desktop"; dir = "Signal"; - version = "7.3.0"; + version = "7.5.1"; url = "https://github.com/0mniteck/Signal-Desktop-Mobian/raw/${version}/builds/release/signal-desktop_${version}_arm64.deb"; - hash = "sha256-RIOMIAXdBMr1Bi1TDFr4VD0w8JfBKzwEjpYS/DfV5kc="; + hash = "sha256-X7B7eQQXTZ+ADLrrLI9XUsl7rHO9akMeW2zAgduXfLY="; } diff --git a/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix b/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix index fc796ac7a3490..34bf49304cb65 100644 --- a/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix @@ -1,55 +1,127 @@ -{ lib, stdenv, fetchurl, dpkg, autoPatchelfHook, makeWrapper, electron -, alsa-lib, glibc, gtk3, libxshmfence, mesa, nss }: +{ lib +, buildNpmPackage +, fetchFromGitHub +, makeDesktopItem +, copyDesktopItems +, makeWrapper +, electron +, python3 +}: -stdenv.mkDerivation rec { - pname = "threema-desktop"; - version = "1.2.31"; +let + version = "1.2.41"; + electronSrc = fetchFromGitHub { + owner = "threema-ch"; + repo = "threema-web-electron"; + rev = "refs/tags/${version}"; + hash = "sha256-gV64rNBwQxPpREi0NFzfCA7lSO65/h0CVRw2EcbFedM="; + }; + + threema-web = buildNpmPackage rec { + pname = "threema-web"; + version = "2.5.3"; + + src = fetchFromGitHub { + owner = "threema-ch"; + repo = "threema-web"; + rev = "refs/tags/v${version}"; + hash = "sha256-RIYyDoEck+a0kPUzTpdNLdyd4+ZYGjjkAlkCp9/S7FY="; + }; + + npmDepsHash = "sha256-OqiPpjIdLwBfxEmbI+YFmYGt3beMqXyGZc9FCwbng4U="; + npmBuildScript = "dist"; + + nativeBuildInputs = [ + python3 # Used by gyp + ]; - src = fetchurl { - # As Threema only offers a Latest Release url, the plan is to upload each - # new release url to web.archive.org until their Github releases page gets populated. - url = "https://web.archive.org/web/20230731230034if_/https://releases.threema.ch/web-electron/v1/release/Threema-Latest.deb"; - hash = "sha256-eZ/bjcSnrnzub1G4sbwPn3GCTwhDfFuYv9Plf5SJL90="; + patches = [ + "${electronSrc}/tools/patches/patch-user-agent.patch" + "${electronSrc}/tools/patches/patch-looks.patch" + ]; + + postInstall = '' + # Content of ${electronSrc}/tools/patches/post-patch-threema-web.sh + export threema_web_version=threema-web-${version} + sed -i.bak -E "s/IN_MEMORY_SESSION_PASSWORD:(true|false|0|1|\!0|\!1)/IN_MEMORY_SESSION_PASSWORD:true/g" -- release/$threema_web_version/*.bundle.js + cp -r . "$out" + ''; }; - nativeBuildInputs = [ - dpkg - autoPatchelfHook - makeWrapper - ]; + consumer = buildNpmPackage rec { + pname = "threema-desktop-consumer"; + inherit version; + src = electronSrc; + sourceRoot = "${src.name}/app"; + npmDepsHash = "sha256-AaUxnvrVCgKWCtMzeXexVBxs/NuVwWH67x4eBGAcsxk="; + env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; + dontNpmBuild = true; + prePatch = '' + rm -r dependencies/threema-web + cp -r ${threema-web} dependencies/threema-web + chmod +w dependencies/threema-web + ''; + postInstall = '' + cp -r . "$out" + ''; + }; + +in +buildNpmPackage rec { + pname = "threema-desktop"; + inherit version; + src = electronSrc; - buildInputs = [ alsa-lib glibc gtk3 libxshmfence mesa nss ]; + npmDepsHash = "sha256-f/Oy9cHBc9k54MDSeilPcTJe0txOS2sqNt2UCUf5+M8="; - dontBuild = true; - dontConfigure = true; + env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; - unpackPhase = '' - # Can't unpack with the common dpkg-deb -x method - dpkg --fsys-tarfile $src | tar --extract + postPatch = '' + rm -r app + cp -r ${consumer} app + chmod +w app ''; - installPhase = '' - runHook preInstall + npmBuildScript = "app:build:electron:main"; - # This will cause confusion, not needed - rm -r usr/bin - mv usr $out + # We need to install the consumer + dontNpmInstall = true; - runHook postInstall - ''; + nativeBuildInputs = [ + copyDesktopItems + makeWrapper + ]; + + desktopItems = [ + (makeDesktopItem { + name = "threema-desktop"; + exec = meta.mainProgram; + icon = "threema"; + desktopName = "Threema Desktop"; + comment = meta.description; + }) + ]; + + postInstall = '' + mkdir -p $out/opt + cp -r app $out/opt/threema + + for dir in assets dependencies; do + ln -s $out/opt/threema/$dir $out/opt/threema/dist/src/$dir + done + + mkdir -p $out/share/pixmaps + cp $out/opt/threema/assets/icons/svg/consumer.svg $out/share/pixmaps/threema.svg - postFixup = '' - mv $out/share/applications/threema.desktop $out/share/applications/threema-desktop.desktop makeWrapper ${electron}/bin/electron $out/bin/threema \ - --add-flags $out/lib/threema/resources/app.asar + --add-flags $out/opt/threema/dist/src/main.js ''; meta = with lib; { description = "Desktop client for Threema, a privacy-focused end-to-end encrypted mobile messenger"; - mainProgram = "threema"; homepage = "https://threema.ch"; - sourceProvenance = with sourceTypes; [ binaryNativeCode ]; license = licenses.agpl3Only; + mainProgram = "threema"; maintainers = with maintainers; [ wolfangaukang ]; platforms = [ "x86_64-linux" ]; }; diff --git a/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix b/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix index 4b4ce6f1f9b30..39589402b5334 100644 --- a/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix +++ b/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "twitch-tui"; - version = "2.6.6"; + version = "2.6.7"; src = fetchFromGitHub { owner = "Xithrius"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-71VpLTPOqSEosLt3noiWhsFPpIp7n3S3BHhIzWYGwkI="; + hash = "sha256-sokOdM4Z2U/B23XEGONNHr2g9iuNz+Hm+on+7xMYD0E="; }; - cargoHash = "sha256-2SWYKqZfIN+Ghryuoh77eDiM7cqJcLihdWpEhOGpLZg="; + cargoHash = "sha256-ngivv/2NDmY8c6eInzfdS4GjZQHWU3iJEFI3S+tf34M="; nativeBuildInputs = [ pkg-config |