diff --git a/modules/global/options.nix b/modules/global/options.nix index 0d8d97f..62be794 100644 --- a/modules/global/options.nix +++ b/modules/global/options.nix @@ -41,6 +41,7 @@ in packages = packageListOpt; shellAliases = mkOpt (attrsOf str) { }; variables = mkOpt (attrsOf (oneOf [ (listOf str) str path ])) { }; + media.enable = mkBoolOpt false; }; common = mkOpt (attrsOf anything) { }; diff --git a/modules/global/packages.nix b/modules/global/packages.nix index 8e44b27..3b30113 100644 --- a/modules/global/packages.nix +++ b/modules/global/packages.nix @@ -59,7 +59,7 @@ xxHash yq zip - ] ++ (lib.optionals config.info.graphical (with pkgs; [ + ] ++ (lib.optionals config.universe.media.enable (with pkgs; [ graphviz yt-dlp ])); @@ -82,6 +82,7 @@ vim ]) ++ (lib.optionals config.info.graphical (with pkgs; [ arandr + ])) ++ (lib.optionals config.universe.media.enable (with pkgs; [ ffmpeg-full mpv ])); diff --git a/modules/modules/hardware/form.nix b/modules/modules/hardware/form.nix index 4ccc74c..bc2830b 100644 --- a/modules/modules/hardware/form.nix +++ b/modules/modules/hardware/form.nix @@ -18,6 +18,7 @@ in modules.hardware.audio.enable = mkDefault true; modules.hardware.peripherals.yubikey.enable = true; info.stationary = mkDefault true; + universe.media.enable = mkDefault true; }) (mkIf cfg.laptop { @@ -27,6 +28,8 @@ in peripherals.yubikey.enable = true; }; + universe.media.enable = mkDefault true; + hardware = { acpilight.enable = true; }; diff --git a/users/infinidoge/default.nix b/users/infinidoge/default.nix index 6ef78a8..4ca0459 100644 --- a/users/infinidoge/default.nix +++ b/users/infinidoge/default.nix @@ -53,12 +53,6 @@ in simulide speedcrunch - # Media - id3v2 - jellyfin-media-player - picard - feishin - (discord-canary.override { withVencord = true; withOpenASAR = true; }) (discord.override { withVencord = true; withOpenASAR = true; }) schildichat-desktop @@ -71,7 +65,7 @@ in ]; }; - systemd.user.tmpfiles.users.infinidoge.rules = mkIf config.info.graphical [ + systemd.user.tmpfiles.users.infinidoge.rules = mkIf config.universe.media.enable [ "L+ /home/infinidoge/.local/share/jellyfinmediaplayer/scripts/mpris.so - - - - ${pkgs.mpvScripts.mpris}/share/mpv/scripts/mpris.so" ]; diff --git a/users/modules/global/media.nix b/users/modules/global/media.nix new file mode 100644 index 0000000..5448f86 --- /dev/null +++ b/users/modules/global/media.nix @@ -0,0 +1,24 @@ +{ main, lib, pkgs, ... }: +lib.mkIf main.universe.media.enable +{ + services = { + mpris-proxy.enable = true; + playerctld.enable = true; + easyeffects.enable = true; + }; + + programs.obs-studio = { + enable = main.universe.media.enable; + plugins = with pkgs.obs-studio-plugins; [ + obs-pipewire-audio-capture + ]; + }; + + home.packages = with pkgs; [ + feishin + id3v2 + jellyfin-media-player + picard + playerctl + ]; +} diff --git a/users/modules/global/music.nix b/users/modules/global/music.nix deleted file mode 100644 index cc0992d..0000000 --- a/users/modules/global/music.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ main, lib, pkgs, ... }: -lib.mkIf main.info.graphical -{ - services = { - mpris-proxy.enable = true; - playerctld.enable = true; - easyeffects.enable = true; - }; - - home.packages = with pkgs; [ - playerctl - ]; -} diff --git a/users/modules/global/obs-studio.nix b/users/modules/global/obs-studio.nix deleted file mode 100644 index f0d09b5..0000000 --- a/users/modules/global/obs-studio.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ main, pkgs, ... }: - -{ - programs.obs-studio = { - enable = main.info.graphical; - plugins = with pkgs.obs-studio-plugins; [ - obs-pipewire-audio-capture - ]; - }; -}