33 lines
1.2 KiB
Nix
33 lines
1.2 KiB
Nix
# gst-device-monitor: gstreamer debugging tool.
|
|
# - `gst-device-monitor-1.0 Audio/Sink` #< show all audio sinks
|
|
# - `gst-device-monitor-1.0 Audio/Source` #< show all audio sources (microphones)
|
|
# - `gst-device-monitor-1.0 Video/Source` #< show all video sources (cameras)
|
|
{ pkgs, ... }:
|
|
{
|
|
sane.programs.gst-device-monitor = {
|
|
packageUnwrapped = (
|
|
pkgs.linkBinIntoOwnPackage pkgs.gst_all_1.gst-plugins-base "gst-device-monitor-1.0"
|
|
).overrideAttrs (base: {
|
|
# XXX the binaries need `GST_PLUGIN_SYSTEM_PATH_1_0` set to function,
|
|
# but nixpkgs doesn't set those (TODO: upstream this!)
|
|
nativeBuildInputs = (base.nativeBuildInputs or []) ++ [
|
|
pkgs.wrapGAppsNoGuiHook
|
|
];
|
|
buildInputs = (base.buildInputs or []) ++ [
|
|
pkgs.gst_all_1.gst-plugins-base #< required to find Audio/Sink
|
|
pkgs.gst_all_1.gst-plugins-good #< required to find Audio/Source and Video/Source
|
|
pkgs.pipewire #< required for Video/Source (video4linux)
|
|
];
|
|
});
|
|
|
|
sandbox.method = "bwrap";
|
|
sandbox.whitelistAudio = true;
|
|
sandbox.extraPaths = [
|
|
"/dev" # tried, but failed to narrow this down (moby)
|
|
"/run/udev/data"
|
|
"/sys/class/video4linux"
|
|
"/sys/devices"
|
|
];
|
|
};
|
|
}
|