aboutsummaryrefslogtreecommitdiffstats
path: root/modules/home.legacy/conf/beets/plugins
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--modules/by-name/lf/lf/ctpv/prev/inode/fifo/default.nix (renamed from modules/home.legacy/conf/beets/plugins/fuzzy/default.nix)10
-rw-r--r--modules/by-name/lf/lf/ctpv/prev/inode/x-empty/default.nix (renamed from modules/home.legacy/conf/beets/plugins/lastgenre/default.nix)11
-rw-r--r--modules/by-name/pl/plymouth/module.nix (renamed from modules/home.legacy/conf/beets/plugins/mbsubmit/default.nix)23
-rw-r--r--modules/home.legacy/conf/beets/plugins.nix24
-rw-r--r--modules/home.legacy/conf/beets/plugins/default.nix5
-rw-r--r--modules/home.legacy/conf/beets/plugins/ihate/default.nix1
-rw-r--r--modules/home.legacy/conf/beets/plugins/inline/default.nix43
-rw-r--r--modules/home.legacy/conf/beets/plugins/smartplaylist/default.nix42
-rw-r--r--pkgs/by-name/sw/sw/package.nix (renamed from modules/home.legacy/conf/beets/plugins/play/default.nix)24
9 files changed, 54 insertions, 129 deletions
diff --git a/modules/home.legacy/conf/beets/plugins/fuzzy/default.nix b/modules/by-name/lf/lf/ctpv/prev/inode/fifo/default.nix
index de37c4e8..70cb9132 100644
--- a/modules/home.legacy/conf/beets/plugins/fuzzy/default.nix
+++ b/modules/by-name/lf/lf/ctpv/prev/inode/fifo/default.nix
@@ -8,8 +8,12 @@
# You should have received a copy of the License along with this program.
# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
{...}: {
- programs.beets.settings.fuzzy = {
- # The prefix denoting that a search should be run in fuzzy mode
- prefix = ".";
+ soispha.programs.lf.ctpv.previewers = {
+ fifo = {
+ previewer = ./fifo.sh;
+ priority = 1;
+ matches.mime = ["inode/fifo"];
+ dependencies = [];
+ };
};
}
diff --git a/modules/home.legacy/conf/beets/plugins/lastgenre/default.nix b/modules/by-name/lf/lf/ctpv/prev/inode/x-empty/default.nix
index 4d3dcfb0..670ad38b 100644
--- a/modules/home.legacy/conf/beets/plugins/lastgenre/default.nix
+++ b/modules/by-name/lf/lf/ctpv/prev/inode/x-empty/default.nix
@@ -8,9 +8,12 @@
# You should have received a copy of the License along with this program.
# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
{...}: {
- programs.beets.settings.lastgenre = {
- prefer_specific = false;
- # Lookup the track, not the album
- source = "track";
+ soispha.programs.lf.ctpv.previewers = {
+ empty = {
+ previewer = ./empty.sh;
+ priority = 1;
+ matches.mime = ["inode/x-empty"];
+ dependencies = [];
+ };
};
}
diff --git a/modules/home.legacy/conf/beets/plugins/mbsubmit/default.nix b/modules/by-name/pl/plymouth/module.nix
index bdcb3721..5e4735b9 100644
--- a/modules/home.legacy/conf/beets/plugins/mbsubmit/default.nix
+++ b/modules/by-name/pl/plymouth/module.nix
@@ -8,11 +8,26 @@
# You should have received a copy of the License along with this program.
# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
{
- lib,
+ config,
pkgs,
+ lib,
+ libraries,
...
-}: {
- programs.beets.settings.mbsubmit = {
- picard_path = lib.getExe pkgs.picard;
+}: let
+ cfg = config.soispha.services.plymouth;
+in {
+ options.soispha.services.plymouth = {
+ enable = libraries.base.options.mkEnable "plymouth";
+ };
+
+ config = lib.mkIf cfg.enable {
+ boot.plymouth = {
+ enable = true;
+
+ theme = "rings";
+ themePackages = [
+ pkgs.adi1090x-plymouth-themes
+ ];
+ };
};
}
diff --git a/modules/home.legacy/conf/beets/plugins.nix b/modules/home.legacy/conf/beets/plugins.nix
index 09eeac5b..aaeab843 100644
--- a/modules/home.legacy/conf/beets/plugins.nix
+++ b/modules/home.legacy/conf/beets/plugins.nix
@@ -17,39 +17,25 @@
# <2024-08-07>
# "scrub"
- # Help submitting stuff to music brainz
- "mbsubmit"
-
# Extract things from the music file
# "xtractor"
+ "musicbrainz"
+
# Calculate replay gain
"replaygain"
# Check for bad files
"badfiles"
- # Alows to use inline python for parsing tags
- "inline"
-
- # Support player integration
- "play"
-
# Show tags on files/queries
"info"
- # Create playlist from `play_count`/`skip_count` (gathered by the `mpdstats`
- # plugin)
- # Note that this should come _before_ the `mpdupdate` plugin, to ensure that
- # `mpdupgate` can propagate changed playlist to `mpd`.
- "smartplaylist"
+ "inline"
# Warn, when importing a matching item
"ihate"
- # Allow fuzzy searching
- "fuzzy"
-
# Filter out duplicates
"duplicates"
@@ -59,9 +45,6 @@
# Download album art
"fetchart"
- # Fetches tags from `last.fm` and adds them as genres to imported music
- "lastgenre"
-
# Run commands on events
"hook"
@@ -71,6 +54,5 @@
# Allow beets to understand deezer id's
# "deezer"
- "mpdstats" # Transfer MPD stats to beets
"mpdupdate" # Update MPD database on import
]
diff --git a/modules/home.legacy/conf/beets/plugins/default.nix b/modules/home.legacy/conf/beets/plugins/default.nix
index 65cd935c..2b2bd607 100644
--- a/modules/home.legacy/conf/beets/plugins/default.nix
+++ b/modules/home.legacy/conf/beets/plugins/default.nix
@@ -11,15 +11,10 @@
imports = [
./badfiles
./duplicates
- ./fuzzy
./ihate
./inline
- ./lastgenre
./lyrics
- ./mbsubmit
- ./play
./replaygain
- ./smartplaylist
# ./xtractor
];
}
diff --git a/modules/home.legacy/conf/beets/plugins/ihate/default.nix b/modules/home.legacy/conf/beets/plugins/ihate/default.nix
index 51cb6f11..2356ec3b 100644
--- a/modules/home.legacy/conf/beets/plugins/ihate/default.nix
+++ b/modules/home.legacy/conf/beets/plugins/ihate/default.nix
@@ -11,6 +11,7 @@
programs.beets.settings.ihate = {
warn = [
"title:commentary"
+ "title:live"
"albumtype:live"
];
};
diff --git a/modules/home.legacy/conf/beets/plugins/inline/default.nix b/modules/home.legacy/conf/beets/plugins/inline/default.nix
index b5655028..8dccdc20 100644
--- a/modules/home.legacy/conf/beets/plugins/inline/default.nix
+++ b/modules/home.legacy/conf/beets/plugins/inline/default.nix
@@ -8,44 +8,9 @@
# You should have received a copy of the License along with this program.
# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
{...}: {
- programs.beets.settings = {
- item_fields = {
- # Taken from https://github.com/trapd00r/configs/blob/4f3dada5700846cca6c2869e6fa6b3c795b87b67/beets/config.yaml
- first_artist =
- /*
- python
- */
- ''
- # import an album to another artists directory, like:
- # Tom Jones │1999│ Burning Down the House [Single, CD, FLAC]
- # to The Cardigans/+singles/Tom Jones & the Cardigans │1999│ Burning Down the House [Single, CD, FLAC]
- # https://github.com/beetbox/beets/discussions/4012#discussioncomment-1021414
- # beet import --set myartist='The Cardigans'
- # we must first check to see if myartist is defined, that is, given on
- # import time, or we raise an NameError exception.
- try:
- myartist
- except NameError:
- import re
- return re.split(',|\\s+(feat(.?|uring)|&|(Vs|Ft).)', albumartist, 1, flags=re.IGNORECASE)[0]
- else:
- return myartist
- '';
-
- first_artist_singleton =
- /*
- python
- */
- ''
- try:
- myartist
- except NameError:
- import re
- return re.split(',|\\s+(feat(.?|uring)|&|(Vs|Ft).)', artist, 1, flags=re.IGNORECASE)[0]
- else:
- return myartist
- '';
- };
- album_fields = {};
+ programs.beets.settings.item_fields = {
+ primary_artist =
+ # python
+ ''dict(enumerate(albumartists)).get(0, artist)'';
};
}
diff --git a/modules/home.legacy/conf/beets/plugins/smartplaylist/default.nix b/modules/home.legacy/conf/beets/plugins/smartplaylist/default.nix
deleted file mode 100644
index 9b52c1ad..00000000
--- a/modules/home.legacy/conf/beets/plugins/smartplaylist/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-# nixos-config - My current NixOS configuration
-#
-# Copyright (C) 2025 Benedikt Peetz <benedikt.peetz@b-peetz.de>
-# SPDX-License-Identifier: GPL-3.0-or-later
-#
-# This file is part of my nixos-config.
-#
-# You should have received a copy of the License along with this program.
-# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
-{config, ...}: {
- programs.beets.settings.smartplaylist = {
- relative_to = config.services.mpd.musicDirectory;
- playlist_dir = config.services.mpd.playlistDirectory;
- forward_slash = false;
-
- # Show the real m3u file paths, when running `--pretend`
- pretend_paths = true;
-
- playlists = [
- {
- name = "artists-$first_artist.m3u";
- query = "";
- }
- {
- name = "ratings-good.m3u";
- query = "rating:0.7..1.0";
- }
- {
- name = "ratings-mediocre.m3u";
- query = "rating:0.4..0.7";
- }
- {
- name = "ratings-bad.m3u";
- query = "rating:0.0..0.4";
- }
- {
- name = "not_played.m3u";
- query = "-play_count: artist:";
- }
- ];
- };
-}
diff --git a/modules/home.legacy/conf/beets/plugins/play/default.nix b/pkgs/by-name/sw/sw/package.nix
index 9d26f16a..dea7e16c 100644
--- a/modules/home.legacy/conf/beets/plugins/play/default.nix
+++ b/pkgs/by-name/sw/sw/package.nix
@@ -8,16 +8,18 @@
# You should have received a copy of the License along with this program.
# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
{
- lib,
- pkgs,
- config,
- ...
-}: {
- programs.beets.settings.play = {
- command = "${lib.getExe pkgs.mpc} $args add";
- relative_to = config.services.mpd.musicDirectory;
+ writeShellApplication,
+ # Dependencies
+ river-classic,
+}:
+writeShellApplication {
+ name = "sw";
+ text = builtins.readFile ./sw.sh;
- # Run the command with the returned paths as arguments
- raw = true;
- };
+ # We need to inherit the path, so that we can spawn stuff in a swallowed mode.
+ inheritPath = true;
+
+ runtimeInputs = [
+ river-classic
+ ];
}