feat(packs): opt-in package packs — media/office/dev/gaming/containers/compat
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
e0f2a3951f
commit
095f2ccf29
8 changed files with 449 additions and 0 deletions
84
modules/packs/media.nix
Normal file
84
modules/packs/media.nix
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
# Media pack — players, image/video editing, screen capture.
|
||||
#
|
||||
# Migrated from packages.nix `multimedia` category. Runs the list through
|
||||
# omni.lib.filterPackages so the omni.packages.exclude mechanism still
|
||||
# applies — this is a desktop-bundle pack (omni-coupled by design), not
|
||||
# one of the standalone-importable packs.
|
||||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
cfg = config.omni.packs.media;
|
||||
in
|
||||
{
|
||||
options.omni.packs.media.enable =
|
||||
lib.mkEnableOption "Media pack (players, image/video editing, screen capture)";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = config.omni.lib.filterPackages (
|
||||
with pkgs;
|
||||
[
|
||||
# Audio
|
||||
pipewire
|
||||
pulseaudio
|
||||
pavucontrol
|
||||
easyeffects
|
||||
spotify
|
||||
spotifyd
|
||||
cmus
|
||||
mpd
|
||||
ncmpcpp
|
||||
|
||||
# Video
|
||||
mpv
|
||||
vlc
|
||||
obs-studio
|
||||
kdePackages.kdenlive
|
||||
handbrake
|
||||
ffmpeg-full
|
||||
|
||||
# Images
|
||||
imv
|
||||
feh
|
||||
gimp
|
||||
inkscape
|
||||
krita
|
||||
imagemagick
|
||||
graphicsmagick
|
||||
drawio
|
||||
|
||||
# Image morphing (python + opencv + dlib for landmark-based morphing).
|
||||
# Exposed as `morph-py` so it doesn't collide with the bare `python3`
|
||||
# pulled in by the development category.
|
||||
(writeShellScriptBin "morph-py" ''
|
||||
exec ${
|
||||
python3.withPackages (
|
||||
ps: with ps; [
|
||||
opencv4
|
||||
dlib
|
||||
face-recognition-models
|
||||
numpy
|
||||
scipy
|
||||
]
|
||||
)
|
||||
}/bin/python3 "$@"
|
||||
'')
|
||||
|
||||
# 3D / CAD — bare `openscad` is pinned to 2021.01 which no
|
||||
# longer builds against current toolchains in nixpkgs-unstable.
|
||||
openscad-unstable
|
||||
|
||||
# Screen capture
|
||||
grim
|
||||
slurp
|
||||
wf-recorder
|
||||
flameshot
|
||||
peek
|
||||
|
||||
# PDF
|
||||
zathura
|
||||
evince
|
||||
kdePackages.okular
|
||||
mupdf
|
||||
]
|
||||
);
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue