Files

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

66 lines
1.7 KiB
Nix
Raw Permalink Normal View History

2025-10-09 14:15:47 +02:00
{
stdenv,
fetchFromGitHub,
lib,
pulseaudio,
autoreconfHook,
pkg-config,
nixosTests,
gitUpdater,
}:
stdenv.mkDerivation rec {
pname = "pulseaudio-module-xrdp";
version = "0.8";
src = fetchFromGitHub {
owner = "neutrinolabs";
repo = "pulseaudio-module-xrdp";
rev = "v${version}";
hash = "sha256-R1ZPifEjlueTJma6a0UiGdiNwTSa5+HnW4w9qGrauxE=";
};
preConfigure = ''
tar -xvf ${pulseaudio.src}
mv pulseaudio-* pulseaudio-src
chmod +w -Rv pulseaudio-src
cp ${pulseaudio.dev}/include/pulse/config.h pulseaudio-src
appendToVar configureFlags "PULSE_DIR=$(realpath ./pulseaudio-src)"
'';
installPhase = ''
runHook preInstall
mkdir -p $out/lib/pulseaudio/modules $out/libexec/pulsaudio-xrdp-module $out/etc/xdg/autostart
install -m 755 src/.libs/*${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/pulseaudio/modules
install -m 755 instfiles/load_pa_modules.sh $out/libexec/pulsaudio-xrdp-module/pulseaudio_xrdp_init
substituteInPlace $out/libexec/pulsaudio-xrdp-module/pulseaudio_xrdp_init \
--replace pactl ${pulseaudio}/bin/pactl
runHook postInstall
'';
nativeBuildInputs = [
autoreconfHook
pkg-config
pulseaudio.dev
];
passthru = {
updateScript = gitUpdater { rev-prefix = "v"; };
tests = {
inherit (nixosTests) xrdp-with-audio-pulseaudio;
};
};
meta = with lib; {
description = "xrdp sink/source pulseaudio modules";
homepage = "https://github.com/neutrinolabs/pulseaudio-module-xrdp";
license = licenses.lgpl21;
maintainers = with maintainers; [ lucasew ];
platforms = platforms.linux;
sourceProvenance = [ sourceTypes.fromSource ];
};
}