Extension to passthrough Pipewire audio to WebRTC Screenshare
Based on virtual-mic and Screenshare-with-audio-on-Discord-with-Linux
You can find us on Matrix
# flake.nix
{
inputs.pipewire-screenaudio.url = "github:IceDBorn/pipewire-screenaudio";
# ...
outputs = {nixpkgs, pipewire-screenaudio, ...} @ inputs: {
nixosConfigurations.HOSTNAME = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; }; # this is the important part
modules = [
./configuration.nix
];
};
}
}
# configuration.nix
{inputs, pkgs, ...}: {
environment.systemPackages = with pkgs; [
(firefox.override { nativeMessagingHosts = [ inputs.pipewire-screenaudio.packages.${pkgs.system}.default ]; })
# ...
];
}
git clone https://github.com/IceDBorn/pipewire-screenaudio.git
cd pipewire-screenaudio
bash install.sh
bash native/connector/cli.sh COMMAND ARGUMENTS
bash native/connector/cli.sh GetNodes
bash native/connector/cli.sh SetSharingNode '{ "micId": 100, "node": 200 }'
DEBUG=1 # Set to enable verbose logging
All Desktop Audio
, they are excluded by defaultprivacy.resistFingerprinting.exemptedDomains
in about:config