diff --git a/home/package-sets/default.nix b/home/package-sets/default.nix index 07fb64d..5f02de0 100644 --- a/home/package-sets/default.nix +++ b/home/package-sets/default.nix @@ -3,5 +3,6 @@ imports = [ ./communication.nix ./dev.nix + ./multimedia.nix ]; } diff --git a/home/package-sets/multimedia.nix b/home/package-sets/multimedia.nix new file mode 100644 index 0000000..a1d9e5f --- /dev/null +++ b/home/package-sets/multimedia.nix @@ -0,0 +1,30 @@ +{ config, lib, pkgs, osConfig ? { }, ...}: +let + cfg = config.nixfiles.packageSets.multimedia; + inherit (lib) optionals mkEnableOption mkIf; + default = osConfig ? nixfiles && osConfig.nixfiles.packageSets.multimedia.enable; +in +{ + options.nixfiles.packageSets.multimedia = { + enable = lib.mkOption { + description = "Whether to enable multimedia packages"; + type = lib.types.bool; + example = true; + inherit default; + }; + }; + + config = mkIf cfg.enable { + home.packages = with pkgs; optionals config.nixfiles.meta.graphical [ + mpv + gimp-with-plugins + krita + inkscape + obs-studio + ] ++ [ + yt-dlp + imagemagick + ffmpeg + ]; + }; +}