Krolyxon
Commit b161ffa

Branches

Refs →

dotfiles-x11b161ffa

start using mpd & ncmpcpp

Author
krolxon
Date
2025-07-31 21:11 +0530
Parent
137402b
Commit
b161ffa89a8c79a20e97f6b612edf3b73e9ae47e

+571 −3

6 files changed

  1. A .config/mpd/mpd.conf +25 −0
  2. A .config/ncmpcpp/bindings +475 −0
  3. A .config/ncmpcpp/config +62 −0
  4. M .config/shell/aliasrc +1 −1
  5. M .config/shell/profile +6 −0
  6. M .config/user-dirs.dirs +2 −2
A .config/mpd/mpd.conf View
@@ -0,0 +1,25 @@
1+db_file "~/.config/mpd/database"
2+music_directory "~/music"
3+playlist_directory "~/.config/mpd/playlists"
4+
5+auto_update "yes"
6+bind_to_address "127.0.0.1"
7+port "6600"
8+restore_paused "yes"
9+max_output_buffer_size "16384"
10+
11+audio_output {
12+ # type "pulse"
13+ # name "pulse"
14+ #type "alsa"
15+ #name "ALSA"
16+ type "pipewire"
17+ name "PipeWire Sound Server"
18+}
19+
20+audio_output {
21+ type "fifo"
22+ name "Visualizer feed"
23+ path "/tmp/mpd.fifo"
24+ format "44100:16:2"
25+}
A .config/ncmpcpp/bindings View
@@ -0,0 +1,475 @@
1+##############################################################
2+## This is the example bindings file. Copy it to ##
3+## ~/.ncmpcpp/bindings or $XDG_CONFIG_HOME/ncmpcpp/bindings ##
4+## and set up your preferences ##
5+##############################################################
6+#
7+#def_key "mouse"
8+# mouse_event
9+#
10+#def_key "up"
11+# scroll_up
12+#
13+#def_key "shift-up"
14+# select_item
15+# scroll_up
16+#
17+#def_key "down"
18+# scroll_down
19+#
20+#def_key "shift-down"
21+# select_item
22+# scroll_down
23+#
24+#def_key "["
25+# scroll_up_album
26+#
27+#def_key "]"
28+# scroll_down_album
29+#
30+#def_key "{"
31+# scroll_up_artist
32+#
33+#def_key "}"
34+# scroll_down_artist
35+#
36+#def_key "page_up"
37+# page_up
38+#
39+#def_key "page_down"
40+# page_down
41+#
42+#def_key "home"
43+# move_home
44+#
45+#def_key "end"
46+# move_end
47+#
48+#def_key "insert"
49+# select_item
50+#
51+#def_key "enter"
52+# enter_directory
53+#
54+#def_key "enter"
55+# toggle_output
56+#
57+#def_key "enter"
58+# run_action
59+#
60+#def_key "enter"
61+# play_item
62+#
63+#def_key "space"
64+# add_item_to_playlist
65+#
66+#def_key "space"
67+# toggle_lyrics_update_on_song_change
68+#
69+#def_key "space"
70+# toggle_visualization_type
71+#
72+#def_key "delete"
73+# delete_playlist_items
74+#
75+#def_key "delete"
76+# delete_browser_items
77+#
78+#def_key "delete"
79+# delete_stored_playlist
80+#
81+#def_key "right"
82+# next_column
83+#
84+#def_key "right"
85+# slave_screen
86+#
87+#def_key "right"
88+# volume_up
89+#
90+#def_key "+"
91+# volume_up
92+#
93+#def_key "left"
94+# previous_column
95+#
96+#def_key "left"
97+# master_screen
98+#
99+#def_key "left"
100+# volume_down
101+#
102+#def_key "-"
103+# volume_down
104+#
105+#def_key ":"
106+# execute_command
107+#
108+#def_key "tab"
109+# next_screen
110+#
111+#def_key "shift-tab"
112+# previous_screen
113+#
114+#def_key "f1"
115+# show_help
116+#
117+#def_key "1"
118+# show_playlist
119+#
120+#def_key "2"
121+# show_browser
122+#
123+#def_key "2"
124+# change_browse_mode
125+#
126+#def_key "3"
127+# show_search_engine
128+#
129+#def_key "3"
130+# reset_search_engine
131+#
132+#def_key "4"
133+# show_media_library
134+#
135+#def_key "4"
136+# toggle_media_library_columns_mode
137+#
138+#def_key "5"
139+# show_playlist_editor
140+#
141+#def_key "6"
142+# show_tag_editor
143+#
144+#def_key "7"
145+# show_outputs
146+#
147+#def_key "8"
148+# show_visualizer
149+#
150+#def_key "="
151+# show_clock
152+#
153+#def_key "@"
154+# show_server_info
155+#
156+#def_key "s"
157+# stop
158+#
159+#def_key "p"
160+# pause
161+#
162+#def_key ">"
163+# next
164+#
165+#def_key "<"
166+# previous
167+#
168+#def_key "ctrl-h"
169+# jump_to_parent_directory
170+#
171+#def_key "ctrl-h"
172+# replay_song
173+#
174+#def_key "backspace"
175+# jump_to_parent_directory
176+#
177+#def_key "backspace"
178+# replay_song
179+#
180+#def_key "f"
181+# seek_forward
182+#
183+#def_key "b"
184+# seek_backward
185+#
186+#def_key "r"
187+# toggle_repeat
188+#
189+#def_key "z"
190+# toggle_random
191+#
192+#def_key "y"
193+# save_tag_changes
194+#
195+#def_key "y"
196+# start_searching
197+#
198+#def_key "y"
199+# toggle_single
200+#
201+#def_key "R"
202+# toggle_consume
203+#
204+#def_key "Y"
205+# toggle_replay_gain_mode
206+#
207+#def_key "T"
208+# toggle_add_mode
209+#
210+#def_key "|"
211+# toggle_mouse
212+#
213+#def_key "#"
214+# toggle_bitrate_visibility
215+#
216+#def_key "Z"
217+# shuffle
218+#
219+#def_key "x"
220+# toggle_crossfade
221+#
222+#def_key "X"
223+# set_crossfade
224+#
225+#def_key "u"
226+# update_database
227+#
228+#def_key "ctrl-s"
229+# sort_playlist
230+#
231+#def_key "ctrl-s"
232+# toggle_browser_sort_mode
233+#
234+#def_key "ctrl-s"
235+# toggle_media_library_sort_mode
236+#
237+#def_key "ctrl-r"
238+# reverse_playlist
239+#
240+#def_key "ctrl-f"
241+# apply_filter
242+#
243+#def_key "ctrl-_"
244+# select_found_items
245+#
246+#def_key "/"
247+# find
248+#
249+#def_key "/"
250+# find_item_forward
251+#
252+#def_key "?"
253+# find
254+#
255+#def_key "?"
256+# find_item_backward
257+#
258+#def_key "."
259+# next_found_item
260+#
261+#def_key ","
262+# previous_found_item
263+#
264+#def_key "w"
265+# toggle_find_mode
266+#
267+#def_key "e"
268+# edit_song
269+#
270+#def_key "e"
271+# edit_library_tag
272+#
273+#def_key "e"
274+# edit_library_album
275+#
276+#def_key "e"
277+# edit_directory_name
278+#
279+#def_key "e"
280+# edit_playlist_name
281+#
282+#def_key "e"
283+# edit_lyrics
284+#
285+#def_key "i"
286+# show_song_info
287+#
288+#def_key "I"
289+# show_artist_info
290+#
291+#def_key "g"
292+# jump_to_position_in_song
293+#
294+#def_key "l"
295+# show_lyrics
296+#
297+#def_key "ctrl-v"
298+# select_range
299+#
300+#def_key "v"
301+# reverse_selection
302+#
303+#def_key "V"
304+# remove_selection
305+#
306+#def_key "B"
307+# select_album
308+#
309+#def_key "a"
310+# add_selected_items
311+#
312+#def_key "c"
313+# clear_playlist
314+#
315+#def_key "c"
316+# clear_main_playlist
317+#
318+#def_key "C"
319+# crop_playlist
320+#
321+#def_key "C"
322+# crop_main_playlist
323+#
324+#def_key "m"
325+# move_sort_order_up
326+#
327+#def_key "m"
328+# move_selected_items_up
329+#
330+#def_key "n"
331+# move_sort_order_down
332+#
333+#def_key "n"
334+# move_selected_items_down
335+#
336+#def_key "M"
337+# move_selected_items_to
338+#
339+#def_key "A"
340+# add
341+#
342+#def_key "S"
343+# save_playlist
344+#
345+#def_key "o"
346+# jump_to_playing_song
347+#
348+#def_key "G"
349+# jump_to_browser
350+#
351+#def_key "G"
352+# jump_to_playlist_editor
353+#
354+#def_key "~"
355+# jump_to_media_library
356+#
357+#def_key "E"
358+# jump_to_tag_editor
359+#
360+#def_key "U"
361+# toggle_playing_song_centering
362+#
363+#def_key "P"
364+# toggle_display_mode
365+#
366+#def_key "\\"
367+# toggle_interface
368+#
369+#def_key "!"
370+# toggle_separators_between_albums
371+#
372+#def_key "L"
373+# toggle_lyrics_fetcher
374+#
375+#def_key "F"
376+# fetch_lyrics_in_background
377+#
378+#def_key "alt-l"
379+# toggle_fetching_lyrics_in_background
380+#
381+#def_key "ctrl-l"
382+# toggle_screen_lock
383+#
384+#def_key "`"
385+# toggle_library_tag_type
386+#
387+#def_key "`"
388+# refetch_lyrics
389+#
390+#def_key "`"
391+# add_random_items
392+#
393+#def_key "ctrl-p"
394+# set_selected_items_priority
395+#
396+#def_key "q"
397+# quit
398+#
399+#
400+#def_key "f"
401+# find
402+#def_key "f"
403+# find_item_forward
404+
405+def_key "+"
406+ show_clock
407+def_key "="
408+ volume_up
409+
410+def_key "j"
411+ scroll_down
412+def_key "k"
413+ scroll_up
414+
415+def_key "ctrl-u"
416+ page_up
417+#push_characters "kkkkkkkkkkkkkkk"
418+def_key "ctrl-d"
419+ page_down
420+#push_characters "jjjjjjjjjjjjjjj"
421+def_key "u"
422+ page_up
423+#push_characters "kkkkkkkkkkkkkkk"
424+def_key "d"
425+ page_down
426+#push_characters "jjjjjjjjjjjjjjj"
427+def_key "h"
428+ previous_column
429+def_key "l"
430+ next_column
431+
432+def_key "."
433+ show_lyrics
434+
435+def_key "n"
436+ next_found_item
437+def_key "N"
438+ previous_found_item
439+
440+# not used but bound
441+def_key "J"
442+ move_sort_order_down
443+def_key "K"
444+ move_sort_order_up
445+def_key "h"
446+ jump_to_parent_directory
447+def_key "l"
448+ enter_directory
449+def_key "l"
450+ run_action
451+def_key "l"
452+ play_item
453+def_key "m"
454+ show_media_library
455+def_key "m"
456+ toggle_media_library_columns_mode
457+def_key "t"
458+ show_tag_editor
459+def_key "v"
460+ show_visualizer
461+def_key "G"
462+ move_end
463+def_key "g"
464+ move_home
465+#jump_to_position_in_song
466+def_key "U"
467+ update_database
468+def_key "s"
469+ reset_search_engine
470+def_key "s"
471+ show_search_engine
472+def_key "x"
473+ delete_playlist_items
474+def_key "P"
475+ show_playlist
A .config/ncmpcpp/config View
@@ -0,0 +1,62 @@
1+ncmpcpp_directory = "~/.config/ncmpcpp"
2+lyrics_directory = "~/.local/share/lyrics"
3+lyrics_fetchers = tekstowo, justsomelyrics, internet, musixmatch, genius, sing365, metrolyrics, jahlyrics, plyrics, zeneszoveg
4+message_delay_time = "1"
5+visualizer_type = "spectrum"
6+song_list_format = {$4%a - }{%t}|{$8%f$9}$R{$3(%l)$9}
7+song_status_format = $b{{$8"%t"}} $3by {$4%a{ $3in $7%b{ (%y)}} $3}|{$8%f}
8+song_library_format = {%n - }{%t}|{%f}
9+current_item_prefix = $(cyan)$r$b
10+current_item_suffix = $/r$(end)$/b
11+current_item_inactive_column_prefix = $(magenta)$r
12+current_item_inactive_column_suffix = $/r$(end)
13+playlist_display_mode = columns
14+browser_display_mode = columns
15+media_library_primary_tag = album_artist
16+media_library_albums_split_by_date = no
17+startup_screen = "media_library"
18+jump_to_now_playing_song_at_start = "yes"
19+display_volume_level = yes
20+ignore_leading_the = yes
21+external_editor = nvim
22+use_console_editor = yes
23+
24+## Progress bar ##
25+progressbar_look = "▂▂▂"
26+progressbar_color = black:b
27+progressbar_elapsed_color = blue:b
28+
29+## Colors ##
30+colors_enabled = "yes"
31+empty_tag_color = magenta
32+main_window_color = white
33+statusbar_color = red
34+volume_color = "green"
35+statusbar_time_color = cyan:b
36+execute_on_song_change="pkill -RTMIN+11 dwmblocks"
37+
38+## Selected tracks ##
39+selected_item_prefix = "* "
40+
41+## Seeking ##
42+incremental_seeking = "yes"
43+seek_time = "1"
44+
45+## Alternative Interface ##
46+# user_interface = "alternative"
47+alternative_header_first_line_format = $b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b
48+alternative_header_second_line_format = {{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D}
49+
50+## Visibility ##
51+header_visibility = "yes"
52+statusbar_visibility = "yes"
53+titles_visibility = "yes"
54+
55+## Now Playing ##
56+now_playing_prefix = "> "
57+centered_cursor = "yes"
58+
59+# Misc
60+display_bitrate = "yes"
61+enable_window_title = "yes"
62+empty_tag_marker = ""
M .config/shell/aliasrc View
@@ -26,7 +26,7 @@ alias \
2626
2727 # yt="yt-dlp --embed-metadata -i -o '%(title)s.%(ext)s' --external-downloader=aria2c" \
2828
29−alias on="tmux new-session -s notes -c ~/dox/brain"
29+alias on="tmux new-session -s notes -c ~/dox/brain 'nvim .'"
3030 alias todo="nvim ~/dox/brain/Todo.md"
3131
3232 # Colorize commands when possible.
M .config/shell/profile View
@@ -49,5 +49,11 @@ export PATH="$PATH:${$(find ~/.local/bin -type d -printf %p:)%%:}"
4949 export PATH=$PATH:$HOME/.local/pbin # private bin
5050 export PATH="$PATH:$XDG_DATA_HOME/cargo/bin"
5151
52+export MPD_HOST="localhost"
53+export MPD_PORT="6600"
54+
55+# Mpd daemon start
56+[ ! -s ~/.config/mpd/pid ] && mpd
57+
5258 # Start graphical server on user's current tty if not already running.
5359 [ "$(tty)" = "/dev/tty1" ] && ! pidof -s Xorg >/dev/null 2>&1 && exec startx "$XINITRC"
M .config/user-dirs.dirs View
@@ -4,12 +4,12 @@
44 # Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
55 # homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
66 # absolute path. No other format is supported.
7−#
7+#
88 XDG_DESKTOP_DIR="$HOME/"
99 XDG_DOWNLOAD_DIR="$HOME/dl"
1010 XDG_TEMPLATES_DIR="$HOME/"
1111 XDG_PUBLICSHARE_DIR="$HOME/"
1212 XDG_DOCUMENTS_DIR="$HOME/dox"
13−XDG_MUSIC_DIR="$HOME/"
13+XDG_MUSIC_DIR="$HOME/music"
1414 XDG_PICTURES_DIR="$HOME/pix"
1515 XDG_VIDEOS_DIR="$HOME/vids"