From 78dd8567c113a2d23736c7c6c064b55ddeb9d5ad Mon Sep 17 00:00:00 2001 From: P Date: Mon, 1 Nov 2021 14:16:52 -0600 Subject: threema-desktop: init at 1.0.3 (#143194) Co-authored-by: Sandro --- .../instant-messengers/threema-desktop/default.nix | 54 ++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 pkgs/applications/networking/instant-messengers/threema-desktop/default.nix (limited to 'pkgs/applications/networking/instant-messengers/threema-desktop') diff --git a/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix b/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix new file mode 100644 index 0000000000000..30bfde7a96f1c --- /dev/null +++ b/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix @@ -0,0 +1,54 @@ +{ lib, stdenv, fetchurl, dpkg, autoPatchelfHook, makeWrapper, electron +, alsa-lib, glibc, gtk3, libxshmfence, mesa, nss }: + +stdenv.mkDerivation rec { + pname = "threema-desktop"; + version = "1.0.3"; + + 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/20211027194646/https://releases.threema.ch/web-electron/v1/release/Threema-Latest.deb"; + sha256 = "sha256-qiFv52nnyfHxCWTePmyxW/MgzFy3EUxmW6n+UIkw7tk="; + }; + + nativeBuildInputs = [ + dpkg + autoPatchelfHook + makeWrapper + ]; + + buildInputs = [ alsa-lib glibc gtk3 libxshmfence mesa nss ]; + + dontBuild = true; + dontConfigure = true; + + unpackPhase = '' + # Can't unpack with the common dpkg-deb -x method + dpkg --fsys-tarfile $src | tar --extract + ''; + + installPhase = '' + runHook preInstall + + # This will cause confusion, not needed + rm -r usr/bin + mv usr $out + + runHook postInstall + ''; + + 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 + ''; + + meta = with lib; { + description = "Desktop client for Threema, a privacy-focused end-to-end encrypted mobile messenger"; + homepage = "https://threema.ch"; + license = licenses.agpl3Only; + maintainers = with maintainers; [ wolfangaukang ]; + platforms = [ "x86_64-linux" ]; + }; +} -- cgit 1.4.1