nextcloud talk pkgs

This commit is contained in:
Danilo Reyes 2024-12-07 11:37:01 -06:00
parent 100756427b
commit ecec4b138d
2 changed files with 90 additions and 0 deletions

View File

@ -24,6 +24,7 @@
otherPackages = [
# video download helper assistant
(pkgs.callPackage ../../pkgs/vdhcoapp/default.nix { })
(pkgs.callPackage ../../pkgs/talk/default.nix { })
];
packages = builtins.attrValues {
inherit (pkgs)

89
pkgs/talk/default.nix Normal file
View File

@ -0,0 +1,89 @@
{
lib,
stdenv,
fetchzip,
autoPatchelfHook,
nss,
cairo,
xorg,
libxkbcommon,
alsa-lib,
at-spi2-core,
mesa,
pango,
libdrm,
vivaldi-ffmpeg-codecs,
gtk3,
libGL,
libglvnd,
systemd,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "nextcloud-talk-desktop";
version = "1.0.0";
# Building from source would require building also building Server and Talk components
# See https://github.com/nextcloud/talk-desktop?tab=readme-ov-file#%EF%B8%8F-prerequisites
src = fetchzip {
url = "https://github.com/nextcloud-releases/talk-desktop/releases/download/v${finalAttrs.version}/Nextcloud.Talk-linux-x64.zip";
hash = "sha256-XQa4Fa9eEaFlYrWa00S9aMWKJOPPFGSo4NAlRqE23jM=";
stripRoot = false;
};
nativeBuildInputs = [ autoPatchelfHook ];
buildInputs =
[
nss
cairo
alsa-lib
at-spi2-core
pango
libdrm
libxkbcommon
gtk3
vivaldi-ffmpeg-codecs
mesa
libGL
libglvnd
]
++ (with xorg; [
libX11
libXcomposite
libXdamage
libXrandr
libXfixes
libXcursor
]);
# Required to launch the application and proceed past the zygote_linux fork() process
# Fixes `Zygote could not fork`
runtimeDependencies = [ systemd ];
preInstall = ''
mkdir -p $out/bin
mkdir -p $out/opt
cp -r $src/* $out/opt/
'';
installPhase = ''
runHook preInstall
# Link the application in $out/bin away from contents of `preInstall`
ln -s "$out/opt/Nextcloud Talk-linux-x64/Nextcloud Talk" $out/bin/nextcloud-talk-desktop
runHook postInstall
'';
meta = with lib; {
description = "Nextcloud Talk Desktop Client";
homepage = "https://github.com/nextcloud/talk-desktop";
changelog = "https://github.com/nextcloud/talk-desktop/blob/${finalAttrs.version}/CHANGELOG.md";
license = licenses.agpl3Only;
maintainers = with maintainers; [ kashw2 ];
mainProgram = "nextcloud-talk-desktop";
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
};
})