Add nextcloud-talk-desktop package
Grabbed from this PR but modified so that it will actually work: https://github.com/NixOS/nixpkgs/pull/302781
This commit is contained in:
@@ -1,6 +1,9 @@
|
|||||||
{ config, pkgs, lib, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
with import <nixpkgs> {};
|
with import <nixpkgs> {};
|
||||||
|
let
|
||||||
|
nextcloudTalkDesktop = pkgs.callPackage ./modules/applications/nextcloud-talk-desktop/package.nix {};
|
||||||
|
in
|
||||||
{
|
{
|
||||||
# Home Manager needs a bit of information about you and the paths it should
|
# Home Manager needs a bit of information about you and the paths it should
|
||||||
# manage.
|
# manage.
|
||||||
@@ -56,6 +59,8 @@ with import <nixpkgs> {};
|
|||||||
pkgs.waybar
|
pkgs.waybar
|
||||||
pkgs.wofi
|
pkgs.wofi
|
||||||
pkgs.vlc
|
pkgs.vlc
|
||||||
|
|
||||||
|
nextcloudTalkDesktop
|
||||||
];
|
];
|
||||||
|
|
||||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
||||||
|
|||||||
79
modules/applications/nextcloud-talk-desktop/package.nix
Normal file
79
modules/applications/nextcloud-talk-desktop/package.nix
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
{ 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 = "0.29.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-${finalAttrs.version}.zip";
|
||||||
|
hash = "sha256-fBIeNv8tfrVTFExLQDBPhIazvbsJ7a76+W9G0cuQDlw=";
|
||||||
|
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/${finalAttrs.pname}
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Nextcloud Talk Desktop Client Preview";
|
||||||
|
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 = finalAttrs.pname;
|
||||||
|
};
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user