aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-05-29 01:28:39 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-05-29 01:28:53 +0200
commit32cf7403004d423de9f02a82bb104f388ae5cc86 (patch)
tree7dc7b9e15537e6ba99f3c43244c2591d12f67f74
parentscripts/why-depends: Correctly parse command line arguments (diff)
downloadnixos-config-32cf7403004d423de9f02a82bb104f388ae5cc86.zip
treewide: Remove unneeded dependencies
This shaves off around 1.2 GB from the system closure.
-rw-r--r--modules/by-name/cl/cleanup/module.nix3
-rw-r--r--modules/by-name/lf/lf/commands/default.nix2
-rw-r--r--modules/by-name/lf/lf/ctpv/prev/audio/default.nix2
-rw-r--r--modules/by-name/mp/mpd/module.nix5
-rw-r--r--modules/by-name/mp/mpd/mpc.nix32
-rw-r--r--modules/by-name/mp/mpv/module.nix10
-rw-r--r--modules/by-name/ri/river/keymap.nix9
-rw-r--r--modules/home.legacy/conf/beets/default.nix11
-rw-r--r--modules/home.legacy/conf/gtk/default.nix3
-rw-r--r--pkgs/by-name/qu/qutebrowser-patched/package.nix29
-rw-r--r--pkgs/by-name/yt/yt/package.nix4
11 files changed, 79 insertions, 31 deletions
diff --git a/modules/by-name/cl/cleanup/module.nix b/modules/by-name/cl/cleanup/module.nix
index 98c699eb..9b42b337 100644
--- a/modules/by-name/cl/cleanup/module.nix
+++ b/modules/by-name/cl/cleanup/module.nix
@@ -21,6 +21,9 @@ in {
config = lib.mkIf cfg.enable {
programs.nano.enable = false;
+
+ services.speechd.enable = false;
+
environment = {
defaultPackages = lib.mkForce [];
};
diff --git a/modules/by-name/lf/lf/commands/default.nix b/modules/by-name/lf/lf/commands/default.nix
index b6baf1df..e8230556 100644
--- a/modules/by-name/lf/lf/commands/default.nix
+++ b/modules/by-name/lf/lf/commands/default.nix
@@ -61,7 +61,7 @@ in {
name = "archive_decompress";
dependencies = [
pkgs.gnutar
- pkgs.openjdk
+ pkgs.openjdk_headless
pkgs.p7zip
pkgs.xz
pkgs.gzip
diff --git a/modules/by-name/lf/lf/ctpv/prev/audio/default.nix b/modules/by-name/lf/lf/ctpv/prev/audio/default.nix
index 08a2f9d6..b9d4ff0d 100644
--- a/modules/by-name/lf/lf/ctpv/prev/audio/default.nix
+++ b/modules/by-name/lf/lf/ctpv/prev/audio/default.nix
@@ -14,7 +14,7 @@
matches.mime = ["audio/*"];
dependencies = [
pkgs.ffmpegthumbnailer
- pkgs.ffmpeg
+ pkgs.ffmpeg-headless
pkgs.chafa
pkgs.exiftool
diff --git a/modules/by-name/mp/mpd/module.nix b/modules/by-name/mp/mpd/module.nix
index 37c648c6..474d81c4 100644
--- a/modules/by-name/mp/mpd/module.nix
+++ b/modules/by-name/mp/mpd/module.nix
@@ -62,6 +62,11 @@ in {
services.mpd = {
enable = true;
+
+ package = pkgs.mpd.override {
+ ffmpeg = pkgs.ffmpeg-headless;
+ };
+
network = {
listenAddress = socketPath;
};
diff --git a/modules/by-name/mp/mpd/mpc.nix b/modules/by-name/mp/mpd/mpc.nix
index cd4a4ec0..5fbeddc5 100644
--- a/modules/by-name/mp/mpd/mpc.nix
+++ b/modules/by-name/mp/mpd/mpc.nix
@@ -14,10 +14,28 @@
...
}: let
cfg = config.soispha.services.mpd.mpc;
+
+ mpp = pkgs.mpp.override {
+ # Removes the currently playing song from the disk and storage
+ mpp-beetrm = pkgs.mpp-beetrm.override {
+ beets = cfg.beetsPkg;
+ };
+
+ # Works like normal `mpc searchadd` but uses the `beets` query syntax
+ mpp-searchadd = pkgs.mpp-searchadd.override {
+ beets = cfg.beetsPkg;
+ };
+ };
in {
options.soispha.services.mpd.mpc = {
enable = lib.mkEnableOption "mpc with extensions";
+ mppPackage = lib.mkOption {
+ type = lib.types.package;
+ description = "The package to use, when calling `mpp`";
+ default = mpp;
+ };
+
beetsPkg = lib.mkOption {
type = lib.types.package;
description = "The package to use, when calling `beet`";
@@ -26,18 +44,8 @@ in {
config = lib.mkIf cfg.enable {
home-manager.users.soispha.home.packages = [
- pkgs.mpp # Wrapper around `mpc` that allows the usage of `mpc-{beetsrm,lyrics,searchadd}` (below) without the `-`
-
- # Removes the currently playing song from the disk and storage
- (pkgs.mpp-beetrm.override {
- beets = cfg.beetsPkg;
- })
- # Works like normal `mpc searchadd` but uses the `beets` query syntax
- (pkgs.mpp-searchadd.override {
- beets = cfg.beetsPkg;
- })
- # Displays the lyrics of the currently playing song
- pkgs.mpp-lyrics
+ # Wrapper around `mpc` that allows the usage of `mpc-{beetsrm,lyrics,searchadd}`
+ cfg.mppPackage
];
};
}
diff --git a/modules/by-name/mp/mpv/module.nix b/modules/by-name/mp/mpv/module.nix
index 4416b295..0610dcd8 100644
--- a/modules/by-name/mp/mpv/module.nix
+++ b/modules/by-name/mp/mpv/module.nix
@@ -23,11 +23,18 @@ in {
programs.mpv = {
enable = true;
+ package = pkgs.mpv.override {
+ mpv-unwrapped = pkgs.mpv-unwrapped.override {
+ ffmpeg = pkgs.ffmpeg-headless;
+ };
+ };
+
bindings = {
q = "quit 0";
"Ctrl+c" = "quit 1";
"Shift+q" = "quit-watch-later 1";
};
+
config = {
osd-bar = true;
@@ -46,9 +53,6 @@ in {
max_width = 250;
};
};
- scripts = [
- pkgs.mpvScripts.thumbfast
- ];
};
};
}
diff --git a/modules/by-name/ri/river/keymap.nix b/modules/by-name/ri/river/keymap.nix
index 9bcbf387..eacfd75b 100644
--- a/modules/by-name/ri/river/keymap.nix
+++ b/modules/by-name/ri/river/keymap.nix
@@ -37,6 +37,7 @@
};
cfg = config.soispha.programs.river;
+ inherit (config.soispha.services.mpd.mpc) mppPackage;
in {
soispha.programs.river.init.mappings.keymap = lib.mkIf cfg.enable (lib.fixedPoints.fix
(self: {
@@ -46,7 +47,7 @@ in {
"a" = mkSpawn pkgs.alacritty "" {};
"b" = mkSpawn pkgs.tskm "open select" {once = true;};
"k" = mkSpawn pkgs.keepassxc "" {once = true;};
- "s" = mkSpawn pkgs.signal-desktop "" {once = true;};
+ # "s" = mkSpawn pkgs.signal-desktop "" {once = true;};
"p" = mkSpawn pkgs.screenshot_persistent "" {once = true;};
"i" = mkSpawn pkgs.anki "" {once = true;};
};
@@ -76,9 +77,9 @@ in {
"u" = mkSpawn' pkgs.wireplumber "wpctl" "set-volume @DEFAULT_SINK@ 5%+" {};
"d" = mkSpawn' pkgs.wireplumber "wpctl" "set-volume @DEFAULT_SINK@ 5%-" {};
"m" = mkSpawn' pkgs.wireplumber "wpctl" "set-mute @DEFAULT_SINK@ toggle" {};
- "n" = mkSpawn pkgs.mpp "next" {};
- "p" = mkSpawn pkgs.mpp "prev" {};
- "t" = mkSpawn pkgs.mpp "toggle" {};
+ "n" = mkSpawn mppPackage "next" {};
+ "p" = mkSpawn mppPackage "prev" {};
+ "t" = mkSpawn mppPackage "toggle" {};
"g" = mkSpawn' pkgs.mpdpopm "mpdpopm" "rating inc" {once = true;};
"b" = mkSpawn' pkgs.mpdpopm "mpdpopm" "rating decr" {once = true;};
};
diff --git a/modules/home.legacy/conf/beets/default.nix b/modules/home.legacy/conf/beets/default.nix
index 0879b1a5..43d6bff9 100644
--- a/modules/home.legacy/conf/beets/default.nix
+++ b/modules/home.legacy/conf/beets/default.nix
@@ -14,7 +14,6 @@
...
}: let
plugins = import ./plugins.nix {};
-
# TODO: Enable xtractor again <2025-03-29>
# package = pkgs.beets.override {
# pluginOverrides = {
@@ -23,7 +22,6 @@
# propagatedBuildInputs = [pkgs.beetsExtraPlugins.xtractor];
# };
# };
- package = pkgs.beets;
in {
imports = [
./plugins
@@ -31,7 +29,14 @@ in {
programs.beets = {
enable = true;
- inherit package;
+ package = pkgs.python3.pkgs.toPythonApplication (pkgs.python3.pkgs.beets.override
+ {
+ ffmpeg = pkgs.ffmpeg-headless;
+ keyfinder-cli = pkgs.keyfinder-cli.override {
+ ffmpeg =
+ pkgs.ffmpeg-headless;
+ };
+ });
settings = {
library = "${config.xdg.dataHome}/beets/library.db";
diff --git a/modules/home.legacy/conf/gtk/default.nix b/modules/home.legacy/conf/gtk/default.nix
index c1a94f73..56e5f565 100644
--- a/modules/home.legacy/conf/gtk/default.nix
+++ b/modules/home.legacy/conf/gtk/default.nix
@@ -15,7 +15,8 @@
gtk = {
enable = true;
theme = {
- package = pkgs.nordic;
+ # NOTE: The `nordic` package pulls the whole plasma shell, for a plasma theme :/ <2026-05-29>
+ # package = pkgs.nordic;
name = "Nordic";
};
cursorTheme = {
diff --git a/pkgs/by-name/qu/qutebrowser-patched/package.nix b/pkgs/by-name/qu/qutebrowser-patched/package.nix
index 1f2ea889..1e0532a1 100644
--- a/pkgs/by-name/qu/qutebrowser-patched/package.nix
+++ b/pkgs/by-name/qu/qutebrowser-patched/package.nix
@@ -1,6 +1,25 @@
-{qutebrowser}:
-qutebrowser.overrideAttrs (final: prev: {
- pname = "${prev.pname}-patched";
+{
+ qutebrowser,
+ python3,
+}: let
+ python3NoSpeech = python3.override {
+ packageOverrides = self: super: {
+ pyqt6 = super.pyqt6.override {withSpeech = false;};
+ };
+ };
+ # NOTE: It's just not feasible to re-compile a webengine. <2026-05-29>
+ # qt6PackagesNoFfmpeg = qt6Packages.overrideScope (
+ # _: prev: {
+ # qtwebengine = prev.qtwebengine.override {
+ # ffmpeg = ffmpeg-headless;
+ # };
+ # }
+ # );
+in
+ (qutebrowser.overrideAttrs (final: prev: {
+ pname = "${prev.pname}-patched";
- patches = (prev.patches or []) ++ [./0001-fix-standardpaths-Continue-to-work-with-xdg-while-ba.patch];
-})
+ patches = (prev.patches or []) ++ [./0001-fix-standardpaths-Continue-to-work-with-xdg-while-ba.patch];
+ })).override {
+ python3 = python3NoSpeech;
+ }
diff --git a/pkgs/by-name/yt/yt/package.nix b/pkgs/by-name/yt/yt/package.nix
index 4e1b2ecb..41234e19 100644
--- a/pkgs/by-name/yt/yt/package.nix
+++ b/pkgs/by-name/yt/yt/package.nix
@@ -34,6 +34,8 @@
}: let
version = "1.9.0";
python = python3.withPackages (ps: [ps.yt-dlp]);
+
+ mpv = mpv-unwrapped.override {ffmpeg = ffmpeg-headless;};
in
rustPlatform.buildRustPackage (finalAttrs: {
inherit version;
@@ -48,7 +50,7 @@ in
cargoHash = "sha256-U0alYK9mhz6esVf0mad9o7Ra6tRaL9HKCOftyOg34HE=";
buildInputs = [
- mpv-unwrapped.dev
+ mpv.dev
ffmpeg-headless
openssl
libffi