add spectacle config, add spotify, fix cinny video playback with gstreamer
refactor some stuff to look nicer and have more structure too
This commit is contained in:
parent
56a64c1e0e
commit
dc99f3d24d
15 changed files with 283 additions and 145 deletions
50
modules/nixos/system/gstreamer/default.nix
Normal file
50
modules/nixos/system/gstreamer/default.nix
Normal file
|
@ -0,0 +1,50 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
namespace,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
with lib.${namespace};
|
||||
let
|
||||
cfg = config.${namespace}.system.gstreamer;
|
||||
in
|
||||
{
|
||||
options.${namespace}.system.gstreamer = with types; {
|
||||
enable = mkBoolOpt false "Whether or not to enable gstreamer support.";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Video/Audio data composition framework tools like "gst-inspect", "gst-launch" ...
|
||||
gst_all_1.gstreamer
|
||||
# Common plugins like "filesrc" to combine within e.g. gst-launch
|
||||
gst_all_1.gst-plugins-base
|
||||
# Specialized plugins separated by quality
|
||||
gst_all_1.gst-plugins-good
|
||||
gst_all_1.gst-plugins-bad
|
||||
gst_all_1.gst-plugins-ugly
|
||||
# Plugins to reuse ffmpeg to play almost every video format
|
||||
gst_all_1.gst-libav
|
||||
# Support the Video Audio (Hardware) Acceleration API
|
||||
gst_all_1.gst-vaapi
|
||||
];
|
||||
|
||||
environment.sessionVariables.GST_PLUGIN_SYSTEM_PATH_1_0 =
|
||||
lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0"
|
||||
(
|
||||
with pkgs.gst_all_1;
|
||||
[
|
||||
gstreamer
|
||||
gst-plugins-base
|
||||
gst-plugins-good
|
||||
gst-plugins-bad
|
||||
gst-plugins-ugly
|
||||
gst-libav
|
||||
gst-vaapi
|
||||
]
|
||||
);
|
||||
};
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue