nixos-config/modules/home-manager/desktop.nix

46 lines
1.2 KiB
Nix
Raw Normal View History

2021-11-30 01:03:05 +00:00
# Enables all of my usual setup for desktop-oriented stuff.
{ config, options, lib, pkgs, ... }:
let cfg = config.modules.desktop;
in {
2021-11-30 01:03:05 +00:00
options.modules.desktop = {
enable = lib.mkEnableOption "installations of desktop apps";
graphics.enable =
lib.mkEnableOption "installations of graphics-related apps";
audio.enable = lib.mkEnableOption "installations of audio-related apps";
2021-11-30 01:03:05 +00:00
};
config = lib.mkIf cfg.enable (lib.mkMerge [
(lib.mkIf cfg.graphics.enable {
home.packages = with pkgs; [
aseprite # Pixel art wannabe tool.
blender # 3D modelling wannabe tool.
inkscape # Illustration wannabe tool.
gimp # Photo editing wannabe tool.
krita # Digital art wannabe tool.
2021-12-06 07:27:51 +00:00
imagemagick # Ah yes, everyman's image manipulation tool.
gmic # Don't let the gimmicks fool you, it's a magical image framework.
2021-11-30 01:03:05 +00:00
];
})
(lib.mkIf cfg.audio.enable {
home.packages = with pkgs; [
2021-12-06 10:12:00 +00:00
ardour
2021-11-30 01:03:05 +00:00
musescore
# Trying to
yabridge
yabridgectl
helvum
];
services.easyeffects.enable = true;
2021-12-08 04:18:37 +00:00
services.fluidsynth = {
enable = true;
soundService = "pipewire-pulse";
2021-12-08 04:18:37 +00:00
};
2021-11-30 01:03:05 +00:00
})
]);
}