From 5cff20c8391a45f48fa71398aaac6d5e88d17f65 Mon Sep 17 00:00:00 2001 From: sudacode Date: Sat, 3 May 2025 23:04:22 -0700 Subject: [PATCH] add mpv, mpd, ncmpcpp, yt-dlp --- .config/mpd/database | Bin 0 -> 54240 bytes .config/mpd/mpd.conf | 34 ++ .config/mpd/mpdstate | 22 + .config/mpd/pid | 1 + .config/mpd/playlists/sheesh.m3u | 2 + .config/mpd/playlists/weeb-shit.m3u | 4 + .config/mpv | 1 + .config/ncmpcpp/bindings | 15 + .config/ncmpcpp/config | 611 ++++++++++++++++++++++++++++ .config/yt-dlp/config | 25 ++ .gitmodules | 3 + 11 files changed, 718 insertions(+) create mode 100644 .config/mpd/database create mode 100644 .config/mpd/mpd.conf create mode 100644 .config/mpd/mpdstate create mode 100644 .config/mpd/pid create mode 100644 .config/mpd/playlists/sheesh.m3u create mode 100644 .config/mpd/playlists/weeb-shit.m3u create mode 160000 .config/mpv create mode 100644 .config/ncmpcpp/bindings create mode 100644 .config/ncmpcpp/config create mode 100644 .config/yt-dlp/config diff --git a/.config/mpd/database b/.config/mpd/database new file mode 100644 index 0000000000000000000000000000000000000000..c8cfa25543413b650481e0f4b892fbabf0b1d12b GIT binary patch literal 54240 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 literal 0 HcmV?d00001 diff --git a/.config/mpd/mpd.conf b/.config/mpd/mpd.conf new file mode 100644 index 0000000..b626f96 --- /dev/null +++ b/.config/mpd/mpd.conf @@ -0,0 +1,34 @@ +# See: /usr/share/doc/mpd/mpdconf.example + +# bind_to_address "thebox" +# bind_to_address "localhost" +pid_file "~/.config/mpd/pid" +# db_file "~/.mpd/database" +state_file "~/.config/mpd/mpdstate" +playlist_directory "~/.config/mpd/playlists" +# music_directory "~/Music" +music_directory "/jellyfin/music" +# music_directory "nfs://102.168.5.77:/nandury/jellyfin/music" +database { + plugin "simple" + path "~/.config/mpd/database" +} + +# database { +# plugin "proxy" +# host "thebox" +# port "6600" +# } + +audio_output { + type "pipewire" + name "PipeWire Sound Server" +} + + +audio_output { + type "fifo" + name "my_fifo" + path "/tmp/mpd.fifo" + format "44100:16:2" +} diff --git a/.config/mpd/mpdstate b/.config/mpd/mpdstate new file mode 100644 index 0000000..2e7c413 --- /dev/null +++ b/.config/mpd/mpdstate @@ -0,0 +1,22 @@ +sw_volume: 40 +audio_device_state:1:PipeWire Sound Server +audio_device_state:1:my_fifo +state: pause +current: 4 +time: 0 +random: 1 +repeat: 0 +single: 1 +consume: 0 +crossfade: 0 +mixrampdb: 0 +mixrampdelay: -1 +lastloadedplaylist: +playlist_begin +0:Various Artists/Various Artists - Seishunbutayarouhabunnygirlsenpainoyumewominai Fukashigi no KARTE/01 - Fukashigi no KARTE.flac +1:Juice WRLD/Goodbye & Good Riddance (2018)/Juice WRLD - Goodbye & Good Riddance - 02 - All Girls Are The Same.flac +2:Juice WRLD/Leaks/London Tipton (feat. Doobie DaLil) .mp3 +3:Juice WRLD/Leaks/Naruto.mp3 +4:Juice WRLD/Leaks/OLD ME 3 (PROD. NICK MIRA).mp3 +5:Juice WRLD/Leaks/GTA.mp3 +playlist_end diff --git a/.config/mpd/pid b/.config/mpd/pid new file mode 100644 index 0000000..69cc603 --- /dev/null +++ b/.config/mpd/pid @@ -0,0 +1 @@ +8903 diff --git a/.config/mpd/playlists/sheesh.m3u b/.config/mpd/playlists/sheesh.m3u new file mode 100644 index 0000000..ffd4b79 --- /dev/null +++ b/.config/mpd/playlists/sheesh.m3u @@ -0,0 +1,2 @@ +Kendrick Lamar/Kendrick Lamar - Not Like Us/01 - Not Like Us.flac +Kendrick Lamar/Kendrick Lamar - euphoria/01 - euphoria.flac diff --git a/.config/mpd/playlists/weeb-shit.m3u b/.config/mpd/playlists/weeb-shit.m3u new file mode 100644 index 0000000..2eb02c7 --- /dev/null +++ b/.config/mpd/playlists/weeb-shit.m3u @@ -0,0 +1,4 @@ +YOASOBI/YOASOBI - アイドル/01 - アイドル.flac +Various Artists/Various Artists - Seishunbutayarouhabunnygirlsenpainoyumewominai Fukashigi no KARTE/01 - Fukashigi no KARTE.flac +Miura Jam/Miura Jam - Fantastic Dreamer (From _Konosuba_)/01 - Fantastic Dreamer (From _Konosuba_).flac +Creepy Nuts/Creepy Nuts - Bling-Bang-Bang-Born/01 - Bling-Bang-Bang-Born.flac diff --git a/.config/mpv b/.config/mpv new file mode 160000 index 0000000..0b9f814 --- /dev/null +++ b/.config/mpv @@ -0,0 +1 @@ +Subproject commit 0b9f814eca4e627a77d6b4b93a5faf39edabb8a7 diff --git a/.config/ncmpcpp/bindings b/.config/ncmpcpp/bindings new file mode 100644 index 0000000..84a9142 --- /dev/null +++ b/.config/ncmpcpp/bindings @@ -0,0 +1,15 @@ +def_key "j" + scroll_down + +def_key "k" + scroll_up + +def_key "l" + next_column + +def_key "h" + previous_column + +def_key "ctrl-l" + show_lyrics + diff --git a/.config/ncmpcpp/config b/.config/ncmpcpp/config new file mode 100644 index 0000000..72b14e1 --- /dev/null +++ b/.config/ncmpcpp/config @@ -0,0 +1,611 @@ +############################################################## +## This is an example configuration file. Copy it to ## +## $XDG_CONFIG_HOME/ncmpcpp/config or $HOME/.ncmpcpp/config ## +## and set up your preferences. ## +############################################################## +# +##### directories ###### +## +## Directory for storing ncmpcpp related files. Changing it is useful if you +## want to store everything somewhere else and provide command line setting for +## alternative location to config file which defines that while launching +## ncmpcpp. +## +# +ncmpcpp_directory = ~/.config/ncmpcpp +# +## +## Directory for storing downloaded lyrics. It defaults to ~/.lyrics since other +## MPD clients (eg. ncmpc) also use that location. +## +# +#lyrics_directory = ~/.lyrics +# +##### connection settings ##### +# mpd_host = "localhost" +# mpd_port = "6600" + +# mpd_host = "localhost" +mpd_host = "localhost" +mpd_port = "6600" + +mpd_connection_timeout = 5 + + + +## Needed for tag editor and file operations to work. +## +# mpd_music_dir = "~/Music" +mpd_music_dir = "/jellyfin/music" + +# +#mpd_crossfade_time = 5 +# +# Exclude pattern for random song action +# http://www.boost.org/doc/libs/1_46_1/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html +#random_exclude_pattern = "^(temp|midi_songs).*" +# +##### music visualizer ##### +## +## In order to make music visualizer work with MPD you need to use the fifo +## output. Its format parameter has to be set to 44100:16:1 for mono +## visualization or 44100:16:2 for stereo visualization. As an example here is +## the relevant section for mpd.conf: +## +## audio_output { +## type "fifo" +## name "Visualizer feed" +## path "/tmp/mpd.fifo" +## format "44100:16:2" +## } +## +## If the visualization on occasion diverges from the audio output, please set +## 'buffer_time' parameter of your audio output in mpd.conf to '100000' (100ms) +## or less to prevent that from happening. +## +## Note: If you're using Mopidy, an address of a udpsink gstreamer's output is +## also accepted. For example, the following section in mopidy.conf: +## +## [audio] +## output = tee name=t ! queue ! autoaudiosink t. +## ! queue ! audio/x-raw,rate=44100,channels=2,format=S16LE +## ! udpsink host=localhost port=5555 +## +## will make localhost:5555 available as a source of data for the stereo +## visualizer. +## +# +#visualizer_data_source = /tmp/mpd.fifo +# +## +## Note: Below parameter is needed for ncmpcpp to determine which output +## provides data for visualizer and reset it at the beginning of visualization +## to synchronize with audio. +## +# +#visualizer_output_name = Visualizer feed +# +## +## If you set format to 44100:16:2, make it 'yes'. +## +# visualizer_in_stereo = yes +# +## +## Note: set below to >=10 only if you have synchronization issues with +## visualization and audio. +## +# +#visualizer_sync_interval = 0 +# +## +## Note: To enable spectrum frequency visualization you need to compile ncmpcpp +## with fftw3 support. +## +# +## Available values: spectrum, wave, wave_filled, ellipse. +## +# visualizer_type = spectrum +# +visualizer_fps = 144 +# +visualizer_autoscale = no +# +visualizer_look = ●▮ +# +# visualizer_color = blue, cyan, green, yellow, magenta, red +# +## Alternative subset of 256 colors for terminals that support it. +## +visualizer_color = 47, 83, 119, 155, 191, 227, 221, 215, 209, 203, 197, 161 +# +## +## Note: The next few visualization options apply to the spectrum visualizer. +## +# +## Use unicode block characters for a smoother, more continuous look. +## This will override the visualizer_look option. With transparent terminals +## and visualizer_in_stereo set, artifacts may be visible on the bottom half of +## the visualization. +# +#visualizer_spectrum_smooth_look = yes +# +## A value between 1 and 5 inclusive. Specifying a larger value makes the +## visualizer look at a larger slice of time, which results in less jumpy +## visualizer output. +# +#visualizer_spectrum_dft_size = 2 +# +#visualizer_spectrum_gain = 10 +# +## Left-most frequency of visualizer in Hz, must be less than HZ MAX +# +#visualizer_spectrum_hz_min = 20 +# +## Right-most frequency of visualizer in Hz, must be greater than HZ MIN +# +#visualizer_spectrum_hz_max = 20000 +# +##### system encoding ##### +## +## ncmpcpp should detect your charset encoding but if it failed to do so, you +## can specify charset encoding you are using here. +## +## Note: You can see whether your ncmpcpp build supports charset detection by +## checking output of `ncmpcpp --version`. +## +## Note: Since MPD uses UTF-8 by default, setting this option makes sense only +## if your encoding is different. +## +# +#system_encoding = "" +# +##### delays ##### +# +## Time of inactivity (in seconds) after playlist highlighting will be disabled +## (0 = always on). +## +#playlist_disable_highlight_delay = 5 +# +## Defines how long messages are supposed to be visible. +## +#message_delay_time = 5 +# +##### song format ##### +## +## For a song format you can use: +## +## %l - length +## %f - filename +## %D - directory +## %a - artist +## %A - album artist +## %t - title +## %b - album +## %y - date +## %n - track number (01/12 -> 01) +## %N - full track info (01/12 -> 01/12) +## %g - genre +## %c - composer +## %p - performer +## %d - disc +## %C - comment +## %P - priority +## $R - begin right alignment +## +## If you want to make sure that a part of the format is displayed only when +## certain tags are present, you can archieve it by grouping them with brackets, +## e.g. '{%a - %t}' will be evaluated to 'ARTIST - TITLE' if both tags are +## present or '' otherwise. It is also possible to define a list of +## alternatives by providing several groups and separating them with '|', +## e.g. '{%t}|{%f}' will be evaluated to 'TITLE' or 'FILENAME' if the former is +## not present. +## +## Note: If you want to set limit on maximal length of a tag, just put the +## appropriate number between % and character that defines tag type, e.g. to +## make album take max. 20 terminal cells, use '%20b'. +## +## In addition, formats support markers used for text attributes. They are +## followed by character '$'. After that you can put: +## +## - 0 - default window color (discards all other colors) +## - 1 - black +## - 2 - red +## - 3 - green +## - 4 - yellow +## - 5 - blue +## - 6 - magenta +## - 7 - cyan +## - 8 - white +## - 9 - end of current color +## - b - bold text +## - u - underline text +## - r - reverse colors +## - a - use alternative character set +## +## If you don't want to use a non-color attribute anymore, just put it again, +## but this time insert character '/' between '$' and attribute character, +## e.g. {$b%t$/b}|{$r%f$/r} will display bolded title tag or filename with +## reversed colors. +## +## If you want to use 256 colors and/or background colors in formats (the naming +## scheme is described below in section about color definitions), it can be done +## with the syntax $(COLOR), e.g. to set the artist tag to one of the +## non-standard colors and make it have yellow background, you need to write +## $(197_yellow)%a$(end). Note that for standard colors this is interchangable +## with attributes listed above. +## +## Note: colors can be nested. +## +# +song_list_format = {$8%f$9}$R{$3%l$9} + +song_status_format = {{%a{ "%b"{ (%y)}} - }{%t}}|{%f} + +song_library_format = {%f} + +alternative_header_first_line_format = $b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b + +alternative_header_second_line_format = {{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D} + +current_item_prefix = $(yellow)$r + +current_item_suffix = $/r$(end) + +current_item_inactive_column_prefix = $(white)$r + +current_item_inactive_column_suffix = $/r$(end) + +now_playing_prefix = $b + +now_playing_suffix = $/b + +browser_playlist_prefix = "$2playlist$9 " + +selected_item_prefix = $6 + +selected_item_suffix = $9 + +modified_item_prefix = $3> $9 +# +## +## Note: attributes are not supported for the following variables. +## +song_window_title_format = {%a - }|{%f} +## +## Note: Below variables are used for sorting songs in browser. The sort mode +## determines how songs are sorted, and can be used in combination with a sort +## format to specify a custom sorting format. Available values for +## browser_sort_mode are "type", "name", "mtime", "format" and "none". +## +# +#browser_sort_mode = type +# +#browser_sort_format = {%a - }{%t}|{%f} {%l} +# +##### columns settings ##### +## +## syntax of song columns list format is "column column etc." +## +## - syntax for each column is: +## +## (width of the column)[color of the column]{displayed tag} +## +## Note: Width is by default in %, if you want a column to have fixed size, add +## 'f' after the value, e.g. (10)[white]{a} will be the column that take 10% of +## screen (so the real width will depend on actual screen size), whereas +## (10f)[white]{a} will take 10 terminal cells, no matter how wide the screen +## is. +## +## - color is optional (if you want the default one, leave the field empty). +## +## Note: You can give a column additional attributes by putting appropriate +## character after displayed tag character. Available attributes are: +## +## - r - column will be right aligned +## - E - if tag is empty, empty tag marker won't be displayed +## +## You can also: +## +## - give a column custom name by putting it after attributes, separated with +## character ':', e.g. {lr:Length} gives you right aligned column of lengths +## named "Length". +## +## - define sequence of tags, that have to be displayed in case predecessor is +## empty in a way similar to the one in classic song format, i.e. using '|' +## character, e.g. {a|c|p:Owner} creates column named "Owner" that tries to +## display artist tag and then composer and performer if previous ones are not +## available. +## +# +song_columns_list_format = (24)[magenta]{a} (50)[cyan]{t|f:Title} (22)[yellow]{b} (4f)[green]{l} +# +##### various settings ##### +# +## +## Note: Custom command that will be executed each time song changes. Useful for +## notifications etc. +## +# execute_on_song_change = notify-send "Now Playing" "$(mpc --format '%title% \n%artist% - %album%' current)" +execute_on_song_change = songinfo + +# +## +## Note: Custom command that will be executed each time player state +## changes. The environment variable MPD_PLAYER_STATE is set to the current +## state (either unknown, play, pause, or stop) for its duration. +## +# +#execute_on_player_state_change = "" +# +#playlist_show_mpd_host = no +# +#playlist_show_remaining_time = no +# +#playlist_shorten_total_times = no +# +#playlist_separate_albums = no +# +## +## Note: Possible display modes: classic, columns. +## +#playlist_display_mode = columns +# +#browser_display_mode = classic +# +#search_engine_display_mode = classic +# +#playlist_editor_display_mode = classic +# +#discard_colors_if_item_is_selected = yes +# +#show_duplicate_tags = yes +# +#incremental_seeking = yes +# +#seek_time = 1 +# +volume_change_step = 5 +# +#autocenter_mode = no +# +#centered_cursor = no +# +## +## Note: You can specify third character which will be used to build 'empty' +## part of progressbar. +## +#progressbar_look = => +# +## Available values: database, playlist. +## +#default_place_to_search_in = database +# +## Available values: classic, alternative. +## +#user_interface = classic +# +#data_fetching_delay = yes +# +## Available values: artist, album_artist, date, genre, composer, performer. +## +#media_library_primary_tag = artist +# +#media_library_albums_split_by_date = yes +# +#media_library_hide_album_dates = no +# +## Available values: wrapped, normal. +## +#default_find_mode = wrapped +# +#default_tag_editor_pattern = %n - %t +# +#header_visibility = yes +# +#statusbar_visibility = yes +# +## Show the "Connected to ..." message on startup +#connected_message_on_startup = yes +# +#titles_visibility = yes +# +#header_text_scrolling = yes +# +#cyclic_scrolling = no +# +#lyrics_fetchers = azlyrics, genius, musixmatch, sing365, metrolyrics, justsomelyrics, jahlyrics, plyrics, tekstowo, zeneszoveg, internet +# +#follow_now_playing_lyrics = no +# +#fetch_lyrics_for_current_song_in_background = no +# +#store_lyrics_in_song_dir = no +# +#generate_win32_compatible_filenames = yes +# +allow_for_physical_item_deletion = yes +# +## +## Note: If you set this variable, ncmpcpp will try to get info from last.fm in +## language you set and if it fails, it will fall back to english. Otherwise it +## will use english the first time. +## +## Note: Language has to be expressed as an ISO 639 alpha-2 code. +## +#lastfm_preferred_language = en +# +#space_add_mode = add_remove +# +#show_hidden_files_in_local_browser = no +# +## +## How shall screen switcher work? +## +## - "previous" - switch between the current and previous screen. +## - "screen1,...,screenN" - switch between given sequence of screens. +## +## Screens available for use: help, playlist, browser, search_engine, +## media_library, playlist_editor, tag_editor, outputs, visualizer, clock, +## lyrics, last_fm. +## +#screen_switcher_mode = playlist, browser +# +## +## Note: You can define startup screen by choosing screen from the list above. +## +#startup_screen = playlist +# +## +## Note: You can define startup slave screen by choosing screen from the list +## above or an empty value for no slave screen. +## +#startup_slave_screen = "" +# +#startup_slave_screen_focus = no +# +## +## Default width of locked screen (in %). Acceptable values are from 20 to 80. +## +# +#locked_screen_width_part = 50 +# +#ask_for_locked_screen_width_part = yes +# +#jump_to_now_playing_song_at_start = yes +# +#ask_before_clearing_playlists = yes +# +#clock_display_seconds = no +# +#display_volume_level = yes +# +display_bitrate = yes +# +#display_remaining_time = no +# +## Available values: none, basic, extended, perl. +## +#regular_expressions = perl +# +## +## Note: if below is enabled, ncmpcpp will ignore leading "The" word while +## sorting items in browser, tags in media library, etc. +## +#ignore_leading_the = no +# +## +## Note: if below is enabled, ncmpcpp will ignore diacritics while searching and +## filtering lists. This takes an effect only if boost was compiled with ICU +## support. +## +#ignore_diacritics = no +# +#block_search_constraints_change_if_items_found = yes +# +#mouse_support = yes +# +#mouse_list_scroll_whole_page = no +# +#lines_scrolled = 5 +# +#empty_tag_marker = +# +#tags_separator = " | " +# +#tag_editor_extended_numeration = no +# +#media_library_sort_by_mtime = no +# +#enable_window_title = yes +# +## +## Note: You can choose default search mode for search engine. Available modes +## are: +## +## - 1 - use mpd built-in searching (no regexes, pattern matching) +## +## - 2 - use ncmpcpp searching (pattern matching with support for regexes, but +## if your mpd is on a remote machine, downloading big database to process +## it can take a while +## +## - 3 - match only exact values (this mode uses mpd function for searching in +## database and local one for searching in current playlist) +## +# +#search_engine_default_search_mode = 1 +# +external_editor = vim +# +## Note: set to yes if external editor is a console application. +## +#use_console_editor = yes +# +##### colors definitions ##### +## +## It is possible to set a background color by setting a color value +## "_", e.g. red_black will set foregound color to red +## and background color to black. +## +## In addition, for terminals that support 256 colors it is possible to set one +## of them by using a number in range [1, 256] instead of color name, +## e.g. numerical value corresponding to red_black is 2_1. To find out if the +## terminal supports 256 colors, run ncmpcpp and check out the bottom of the +## help screen for list of available colors and their numerical values. +## +## What is more, there are two special values for the background color: +## "transparent" and "current". The first one explicitly sets the background to +## be transparent, while the second one allows you to preserve current +## background color and change only the foreground one. It's used implicitly +## when background color is not specified. +## +## Moreover, it is possible to attach format information to selected color +## variables by appending to their end a colon followed by one or more format +## flags, e.g. black:b or red:ur. The following variables support this syntax: +## visualizer_color, color1, color2, empty_tag_color, volume_color, +## state_line_color, state_flags_color, progressbar_color, +## progressbar_elapsed_color, player_state_color, statusbar_time_color, +## alternative_ui_separator_color. +## +## Note: due to technical limitations of older ncurses version, if 256 colors +## are used there is a possibility that you'll be able to use only colors with +## transparent background. +# +colors_enabled = yes +# +#empty_tag_color = cyan +# +header_window_color = default +# +volume_color = cyan +# +state_line_color = yellow +# +state_flags_color = red:b +# +#main_window_color = yellow +# +#color1 = white +# +#color2 = green +# +#progressbar_color = black:b +# +#progressbar_elapsed_color = green:b +# +statusbar_color = cyan +# +statusbar_time_color = cyan:b +# +player_state_color = yellow:b +# +#alternative_ui_separator_color = black:b +# +#window_border_color = green +# +#active_window_border = red +# +visualizer_data_source = "/tmp/mpd.fifo" +visualizer_output_name = "my_fifo" +visualizer_in_stereo = "yes" +visualizer_type = "spectrum" +# visualizer_look = "+|" diff --git a/.config/yt-dlp/config b/.config/yt-dlp/config new file mode 100644 index 0000000..55b44db --- /dev/null +++ b/.config/yt-dlp/config @@ -0,0 +1,25 @@ +--geo-bypass +--embed-metadata +--embed-thumbnail +--embed-subs + + +# Always extract audio +# -x + +# Do not copy the mtime +--no-mtime + + +--user-agent "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36" + +# --username oauth2 --password '' + +# Save all videos under YouTube directory in your home directory +-o ~/videos/YouTube/%(title)s.%(ext)s + +--sponsorblock-mark all +--sponsorblock-remove sponsor,selfpromo,intro,outro +--sponsorblock-chapter-title "[SponsorBlock] %(category_names)l" +--sponsorblock-api https://sponsor.ajay.app +--sponsorblock-chapter-title all diff --git a/.gitmodules b/.gitmodules index e69de29..568e678 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule ".config/mpv"] + path = .config/mpv + url = git@gitea.suda.codes:sudacode/mpv.git