Describe the bug
I am not able to place phone or video calls via signal-desktop.
There is an open issue in the signal-desktop repo, but I think it has to do with NixOS.
To Reproduce
Expected behavior
The application starts the call.
Additional context
Here a screenshot of the debug log, taken from the above mentioned issue

Notify maintainers
@ixmatus @primeos @equirosa
Metadata
โฏ nix-shell -p nix-info --run "nix-info -m"
- system: `"x86_64-linux"`
- host os: `Linux 5.4.62, NixOS, 20.03.2913.4bd1938e03e (Markhor)`
- multi-user?: `yes`
- sandbox: `yes`
- version: `nix-env (Nix) 2.3.6`
- channels(root): `"nixos-20.03.2913.4bd1938e03e, nixos-hardware, nixos-unstable-20.09pre239318.c59ea8b8a0e"`
- nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`
Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute: signal-desktop
The "Unable to query Audio Devices" error sounds Nix specific. Maybe due to a missing (on demand) runtime dependency?
@ymarkus you could try to figure out what's going wrong with tools like strace.
Indeed, there's a missing runtime dependency on libpulse.so! This is almost certainly the wrong way to fix things, but voice/video calls work with the patch below. Adding libpulseaudio to nativeBuildInputs and runtimeDependencies does not work (even if I run autoPatchelf on the ringrtc node module, which I figured was worth a try due to the --no-recurse workaround).
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/defa
ult.nix
index dc8fc81d35e..98d19adb725 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -4,7 +4,7 @@
, libXext, libXfixes, libXrender, libXtst, libXScrnSaver, nss, nspr, alsaLib
, cups, expat, libuuid, at-spi2-core, libappindicator-gtk3
# Runtime dependencies:
-, systemd, libnotify, libdbusmenu
+, systemd, libnotify, libdbusmenu, libpulseaudio
# Unfortunately this also overwrites the UI language (not just the spell
# checking language!):
, hunspellDicts, spellcheckerLanguage ? null # E.g. "de_DE"
@@ -114,6 +114,7 @@ in stdenv.mkDerivation rec {
preFixup = ''
gappsWrapperArgs+=(
--prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ] }"
+ --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ libpulseaudio ] }"
${customLanguageWrapperArgs}
)
Should be fixed once #98135 lands in the channels.
Cherry-picked to 20.09 in 6c6f85e071393874fef76b4672db240cc684a44e.