{ config, pkgs, ... }: { home.packages = with pkgs; [ mpc mpd-discord-rpc mpv ]; services = { mpd = { enable = true; musicDirectory = "/home/fabian/.music"; extraConfig = '' audio_output { type "pipewire" name "Pipewire Output" } audio_output { type "fifo" name "Visualizer feed" path "/tmp/mpd.fifo" format "44100:16:2" } ''; }; }; programs = { ncmpcpp = { enable = true; package = pkgs.ncmpcpp.override { visualizerSupport = true; }; mpdMusicDir = "/home/fabian/.music"; settings = { mpd_port = 6600; mpd_crossfade_time = 2; mouse_support = "yes"; visualizer_data_source = "/tmp/mpd.fifo"; visualizer_output_name = "my_fifo"; visualizer_in_stereo = "no"; visualizer_type = "spectrum"; visualizer_look = "█┇"; visualizer_color = "7, 5, 4, 3"; startup_screen = "browser"; startup_slave_screen = "visualizer"; playlist_disable_highlight_delay = "1"; now_playing_prefix = "$8$b ➤ "; song_list_format = "{$2%a$9} $1|$9 {$5%t$9} $R {$6%b$9} $1|$9 {$2%l$9}"; song_library_format = "{%n - }{%t}|{%f}"; song_status_format = "$b{$6%a$9 $1|$9} {$7%t$9} $1|$9 {$2%b$9} $1|$9 {$6%y$9} $1|$9"; song_window_title_format = "{%a-%t}"; song_columns_list_format = "(6)[magenta]{l} (30)[red]{a} (30)[blue]{b} (53)[magenta]{t}"; playlist_display_mode = "classic"; titles_visibility = "no"; browser_display_mode = "columns"; incremental_seeking = "yes"; autocenter_mode = "yes"; header_visibility = "no"; statusbar_visibility = "yes"; cyclic_scrolling = "yes"; display_bitrate = "yes"; ignore_leading_the = "yes"; enable_window_title = "yes"; progressbar_look = ":: "; user_interface = "alternative"; alternative_header_first_line_format = "{$b$2%a$9} $1|$9 {$5%t$9}"; alternative_header_second_line_format = "{$6%b$9} $1|$9 {$2(%y)$9}"; alternative_ui_separator_color = "black"; playlist_separate_albums = "no"; colors_enabled = "yes"; empty_tag_color = "blue"; header_window_color = "black"; volume_color = "black"; display_volume_level = "yes"; state_line_color = "cyan"; state_flags_color = "red"; main_window_color = "blue"; color1 = "white"; color2 = "blue"; progressbar_color = "black"; statusbar_color = "black"; window_border_color = "red"; active_window_border = "red"; }; }; }; }