Files
.hive/modules/programs/creative.nix
2026-03-28 14:24:53 +01:00

87 lines
2.1 KiB
Nix

{self, ...}: {
flake.nixosModules.creative = {
config,
lib,
pkgs,
...
}: let
cfg = config.hive.programs.creative;
avidemux-wayland-fix = pkgs.avidemux.overrideAttrs (prev: {
installPhase =
(prev.installPhase or "")
+ ''
wrapProgram $out/bin/avidemux3_qt5 \
--add-flags "--platform" \
--add-flags "xcb"
'';
});
in {
options.hive.programs.creative = {
image-management = lib.mkOption {
type = lib.types.bool;
default = true;
description = ''
Enable image management tools.
'';
};
image-editing = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable image editing tools.
'';
};
image-raw-processing = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable raw processing programs.
'';
};
video-editing-light = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable light video editing tools.
'';
};
video-editing-heavy = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable heavy video editing tools.
'';
};
};
imports = [
self.nixosModules.bulk-transcode-overlay
];
config = {
environment.systemPackages = with pkgs;
lib.optionals cfg.image-editing [gimp krita drawio]
++ lib.optional cfg.image-management digikam
++ lib.optionals cfg.image-raw-processing [
enblend-enfuse
hdrmerge
hugin
rawtherapee
unstable.darktable
unstable.rapidraw
]
++ lib.optionals cfg.video-editing-light [
avidemux-wayland-fix
ffmpeg
bulk-transcode
losslesscut-bin
]
++ lib.optionals cfg.video-editing-heavy [
davinci-resolve
kdePackages.kdenlive
obs-studio
];
};
};
}