summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2021-11-22 16:06:51 +0100
committerGitHub <noreply@github.com>2021-11-22 16:06:51 +0100
commit23022d9218db72e31ddfaf12971f975fce1a3efd (patch)
tree79a571332d90ff8d777552671b369f395f27d8aa /pkgs
parentff8f08c372f38531472767a6e172cc62eec1c4ef (diff)
parentd9fdae1b8e0710a6e8b27103e46524321733a7e0 (diff)
downloadnixpkgs-23022d9218db72e31ddfaf12971f975fce1a3efd.tar
nixpkgs-23022d9218db72e31ddfaf12971f975fce1a3efd.tar.gz
nixpkgs-23022d9218db72e31ddfaf12971f975fce1a3efd.tar.bz2
nixpkgs-23022d9218db72e31ddfaf12971f975fce1a3efd.tar.lz
nixpkgs-23022d9218db72e31ddfaf12971f975fce1a3efd.tar.xz
nixpkgs-23022d9218db72e31ddfaf12971f975fce1a3efd.tar.zst
nixpkgs-23022d9218db72e31ddfaf12971f975fce1a3efd.zip
Merge pull request #142892 from WolfangAukang/thedesk
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/misc/thedesk/default.nix50
-rw-r--r--pkgs/top-level/all-packages.nix4
2 files changed, 54 insertions, 0 deletions
diff --git a/pkgs/applications/misc/thedesk/default.nix b/pkgs/applications/misc/thedesk/default.nix
new file mode 100644
index 00000000000..42f4d36eea5
--- /dev/null
+++ b/pkgs/applications/misc/thedesk/default.nix
@@ -0,0 +1,50 @@
+{ lib, stdenv, fetchurl, dpkg, autoPatchelfHook, makeWrapper, electron
+, alsa-lib, gtk3, libxshmfence, mesa, nss }:
+
+stdenv.mkDerivation rec {
+  pname = "thedesk";
+  version = "22.3.1";
+
+  src = fetchurl {
+    url = "https://github.com/cutls/TheDesk/releases/download/v${version}/${pname}_${version}_amd64.deb";
+    sha256 = "sha256-5KB88zMgwfObgmcMTe6R+oG48qLHrMht6vM1EvI+QFY=";
+  };
+
+  nativeBuildInputs = [
+    dpkg
+    autoPatchelfHook
+    makeWrapper
+  ];
+
+  buildInputs = [ alsa-lib gtk3 libxshmfence mesa nss ];
+
+  dontBuild = true;
+  dontConfigure = true;
+
+  unpackPhase = ''
+    dpkg-deb -x ${src} ./
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mv usr $out
+    mv opt $out
+
+    substituteInPlace $out/share/applications/thedesk.desktop \
+      --replace '/opt/TheDesk' $out/bin
+
+    makeWrapper ${electron}/bin/electron $out/bin/thedesk \
+      --add-flags $out/opt/TheDesk/resources/app.asar
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Mastodon/Misskey Client for PC";
+    homepage = "https://thedesk.top";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ wolfangaukang ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index eaf92ebfeff..0c82c42a067 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -9961,6 +9961,10 @@ with pkgs;
 
   thc-ipv6 = callPackage ../tools/security/thc-ipv6 { };
 
+  thedesk = callPackage ../applications/misc/thedesk {
+    electron = electron_12;
+  };
+
   theharvester = callPackage ../tools/security/theharvester { };
 
   inherit (nodePackages) thelounge;