diff --git a/home/natto/config/emacs/config.org b/home/natto/config/emacs/config.org index df87960..52a4f24 100644 --- a/home/natto/config/emacs/config.org +++ b/home/natto/config/emacs/config.org @@ -482,7 +482,7 @@ This returns the command to run in the terminal ("java" (concat "java" full)) ("py" (concat "python" full)) ("cpp" (concat "g++ " full " -o " file " && " file " && rm " file)) - ("hs" (concat "ghc -dynamic" full " && " file " && rm " file " " file ".o")) + ("hs" (concat "ghc -dynamic " full " && " file " && rm " file " " file ".o")) ("sh" (concat "sh" full)) ("js" (concat "node" full)) ("ts" (concat "tsc" full " && node " file ".js && rm " file ".js" )) @@ -537,7 +537,8 @@ This returns the command to run in the terminal "C-S-v" 'yank) (general-define-key - :keymaps '(global vterm-mode-map) + :keymaps '(global override vterm-mode-map) + :states evil-states "M-o" 'treemacs "M-v" 'split-window-vertically "M-h" 'split-window-horizontally @@ -561,15 +562,16 @@ This returns the command to run in the terminal #+begin_src emacs-lisp (with-eval-after-load 'vterm-toggle (general-define-key - :keymaps '(global vterm-mode-map) + :keymaps '(global override vterm-mode-map) + :states evil-states "" (lambda () (interactive) (vterm t)) "C-" 'vterm-toggle-cd "" 'vterm-toggle "" (lambda () (interactive) (run-in-vterm (candrun)))) - - (define-key vterm-mode-map (kbd "") 'vterm-toggle-forward) - (define-key vterm-mode-map (kbd "") 'vterm-toggle-backward) -) + (general-define-key + :keymaps 'vterm-mode-map + "" 'vterm-toggle-forward + "" 'vterm-toggle-backward)) #+end_src *** Toggle Appearance diff --git a/home/natto/config/mpd/mpd.conf b/home/natto/config/mpd/mpd.conf new file mode 100644 index 0000000..1bb186b --- /dev/null +++ b/home/natto/config/mpd/mpd.conf @@ -0,0 +1,35 @@ +music_directory "~/Music" +playlist_directory "~/.config/mpd/playlists" +db_file "~/.config/mpd/database" + +state_file "~/.config/mpd/state" +sticker_file "~/.config/mpd/sticker.sql" +log_file "~/.config/mpd/log" +pid_file "~/.config/mpd/pid" +bind_to_address "0.0.0.0" +bind_to_address "~/.config/mpd/socket" +restore_paused "yes" +input { + plugin "curl" +} +audio_output { + type "pulse" + name "pulse audio" +} +audio_output { + type "fifo" + name "Visualizer feed" + path "/tmp/g.fifo" + format "44100:16:2" +} +audio_output { + encoder "vorbis" + type "httpd" + quality "9" + name "Vorbis Stream" + port "8001" + max_clients "0" + always_on "yes" +} +filesystem_charset "UTF-8" + diff --git a/home/natto/config/mpv/mpv.conf b/home/natto/config/mpv/mpv.conf new file mode 100644 index 0000000..f082712 --- /dev/null +++ b/home/natto/config/mpv/mpv.conf @@ -0,0 +1,3 @@ +force-window=yes +keep-open=yes +save-position-on-quit=yes diff --git a/home/natto/config/ncmpcpp/config b/home/natto/config/ncmpcpp/config new file mode 100644 index 0000000..a61d2cc --- /dev/null +++ b/home/natto/config/ncmpcpp/config @@ -0,0 +1,38 @@ +active_window_border=blue +autocenter_mode=yes +browser_sort_mode=mtime +centered_cursor=yes +colors_enabled=yes +cyclic_scrolling=yes +display_bitrate=yes +empty_tag_marker= +enable_window_title=yes +fetch_lyrics_for_current_song_in_background=yes +follow_now_playing_lyrics=yes +header_visibility=yes +header_window_color=green +lines_scrolled=2 +locked_screen_width_part=25 +lyrics_directory=~/.lyrics +main_window_color=white +mpd_music_dir=/home/natto/Music +now_playing_prefix=> +playlist_display_mode=columns +playlist_editor_display_mode=classic +progressbar_color=green +progressbar_look=▃▃▃ +regular_expressions=extended +song_columns_list_format=(4)[red]{l} (20)[cyan]{t} (25)[green]{a} (25)[magenta]{b} +song_list_format=$(yellow){%a} - $(blue){%t} +song_status_format= $6%a $7⟫⟫ $3%t $7⟫⟫ $4%b +statusbar_visibility=yes +system_encoding=utf-8 +titles_visibility=yes +user_interface=alternative +visualizer_data_source=/tmp/g.fifo +visualizer_fps=144 +visualizer_in_stereo=yes +visualizer_look=◆▋ +visualizer_spectrum_smooth_look=yes +visualizer_type=spectrum +volume_color=yellow diff --git a/home/natto/config/stalonetrayrc b/home/natto/config/stalonetrayrc new file mode 100644 index 0000000..4f4d7cd --- /dev/null +++ b/home/natto/config/stalonetrayrc @@ -0,0 +1,10 @@ +background "#002b36" +geometry "1x1-0" +grow_gravity "E" +icon_gravity "E" +icon_size "23" +kludges "force_icons_size" +max_geometry "10x0" +sticky true +window_layer "top" +window_type "dock" diff --git a/home/natto/default.nix b/home/natto/default.nix index 950ae0d..560d33d 100644 --- a/home/natto/default.nix +++ b/home/natto/default.nix @@ -6,6 +6,7 @@ in ./secrets ./programs.nix ./xsession.nix + ./wayland.nix ./services.nix ./pkgs.nix ./stuff.nix diff --git a/home/natto/pkgs.nix b/home/natto/pkgs.nix index 84735ce..f22d100 100644 --- a/home/natto/pkgs.nix +++ b/home/natto/pkgs.nix @@ -1,35 +1,26 @@ { config, pkgs, ... }: { home.packages = with pkgs; [ + + # A/V, codec and media stuff ffmpeg-full sox - rage - curl pamixer mpdas - pavucontrol - (xfce.thunar.override { - thunarPlugins = with xfce; [ - thunar-media-tags-plugin - thunar-volman - thunar-archive-plugin - ]; - }) - xfce.xfconf - xfce.tumbler - (master.discord.override { - nss = nss_latest; - }) - mpd_discord_richpresence - sox - qbittorrent - mpc_cli - hexchat - luajit mpv - jmtpfs - dunst - flameshot + mpc_cli + pulseaudio + pavucontrol + spotify + noisetorch + imagemagick + (qjackctl.override { jackSession = true; }) + + # Utils + rage + curl + dmenu + st yt-dlp xclip xorg.xkbcomp @@ -39,28 +30,51 @@ glxinfo sxiv vim - feh - dmenu - st + jmtpfs neofetch - xmobar xdotool + nbfc-linux + customscripts + + # GUI utils + (xfce.thunar.override { + thunarPlugins = with xfce; [ + thunar-media-tags-plugin + thunar-volman + thunar-archive-plugin + ]; + }) + xfce.xfconf + xfce.tumbler + flameshot + (master.discord.override { + nss = nss_latest; + }) + qbittorrent + hexchat + luajit + dunst + feh + xmobar arc-theme arc-icon-theme - tor-browser-bundle-bin + authy + calibre + gnome.zenity + stalonetray + + # Wine and games and stuff wineWowPackages.stable master.winetricks games.wine-discord-ipc-bridge (games.osu-stable.overrideAttrs (_: { tricks = [ "gdiplus" "dotnet48" "meiryo" ]; })) - pmidi - # dosbox + tlauncher + lutris + + # Dev shit rust-analyzer - authy - (master.tauon.override { withDiscordRPC = true; }) - nbfc-linux - pulseaudio (texlive.combine { inherit (texlive) scheme-small @@ -79,20 +93,17 @@ upquote tcolorbox; }) - anki-bin - spotify + python3Packages.pygments + + # Misc teams - (qjackctl.override { jackSession = true; }) + anki-bin + tor-browser-bundle-bin neomutt mailcap - betterdiscordctl - python3Packages.pygments - calibre - noisetorch - customscripts - tlauncher - lutris - gnome.zenity - imagemagick + (ncmpcpp.override { + visualizerSupport = true; + clockSupport = true; + }) ]; } diff --git a/home/natto/programs.nix b/home/natto/programs.nix index 526e1b1..fb15bdf 100644 --- a/home/natto/programs.nix +++ b/home/natto/programs.nix @@ -23,72 +23,6 @@ default-bg = "rgba(0,0,0,0.8)"; }; }; - mpv = { - enable = true; - config = { - force-window = "yes"; - keep-open = "yes"; - save-position-on-quit = "yes"; - # autofit="100%"; - # no-keepaspect-window = "yes"; - }; - }; go.enable = true; - ncmpcpp = { - enable = true; - mpdMusicDir = ~/Music; - settings = { - # albumart = "yes"; - locked_screen_width_part = 25; - autocenter_mode = "yes"; - follow_now_playing_lyrics = "yes"; - lyrics_directory = "~/.lyrics"; - fetch_lyrics_for_current_song_in_background = "yes"; - #store_lyrics_in_song_dir = yes; - browser_sort_mode = "mtime"; - colors_enabled = "yes"; - main_window_color = "white"; - header_window_color = "green"; - volume_color = "yellow"; - progressbar_color = "green"; - # progressbar_elapsed_color = ""; - # statusbar_color = "43"; - active_window_border = "blue"; - user_interface = "alternative"; - #song_list_format="(4)[230]{l}"; - song_columns_list_format = "(4)[red]{l} (20)[cyan]{t} (25)[green]{a} (25)[magenta]{b}"; - song_list_format = "$(yellow){%a} - $(blue){%t}"; - #song_list_format = "{$7%a - $9}{$5%t$9}|{$5%f$9}$R{$6%b $9}{$3%l$9}"; - song_status_format = " $6%a $7⟫⟫ $3%t $7⟫⟫ $4%b "; - visualizer_data_source = "/tmp/g.fifo"; - #visualizer_output_name = "my_fifo"; - visualizer_type = "spectrum"; - #visualizer_type = "ellipse"; - visualizer_fps = "144"; - visualizer_in_stereo = "yes"; - visualizer_look = "◆▋"; - visualizer_spectrum_smooth_look = "yes"; - playlist_editor_display_mode = "classic"; - playlist_display_mode = "columns"; - cyclic_scrolling = "yes"; - lines_scrolled = "2"; - system_encoding = "utf-8"; - regular_expressions = "extended"; - #selected_item_prefix = "* " - #discard_colors_if_item_is_selected = "no" - #incremental_seeking = "yes" - #seek_time = "1" - header_visibility = "yes"; - statusbar_visibility = "yes"; - titles_visibility = "yes"; - progressbar_look = "▃▃▃"; - now_playing_prefix = "> "; - centered_cursor = "yes"; - display_bitrate = "yes"; - enable_window_title = "yes"; - empty_tag_marker = ""; - execute_on_song_change = "${config.home.homeDirectory}/.config/ncmpcpp/ncmpcpp-ueberzug/ncmpcpp_cover_art.sh"; - }; - }; }; } diff --git a/home/natto/services.nix b/home/natto/services.nix index 2c79eec..0b67658 100644 --- a/home/natto/services.nix +++ b/home/natto/services.nix @@ -19,45 +19,7 @@ in }; }; }; - /*picom = { - experimentalBackends = true; - enable = true; - shadow = true; - shadowOffsets = [ (6) (6) ]; - shadowExclude = [ - "! name~=''" - "window_type = 'dock'" - "name = 'Dunst'" - "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" - ]; - blur = true; - blurExclude = [ - "window_type = 'dock'" - "window_type = 'desktop'" - "class_g = 'dwm'" - ]; - inactiveOpacity = "0.92"; - activeOpacity = "0.97"; - fade = true; - fadeSteps = [ "0.04" "0.04" ]; - backend = "glx"; - menuOpacity = "0.8"; - vSync = false; - opacityRule = [ - "100:class_i='Tauon Music Box'" - "100:class_g='firefox'" - ]; - extraOptions = - '' - shadow-radius = 8; - inactive-opacity-override = true; - blur-method = "dual_kawase"; - blur-strength = 3; - blur-kern = "11x11gaussian"; - detect-rounded-corners = true; - detect-client-opacity = true; - ''; - };*/ + sxhkd = { enable = false; extraConfig = builtins.readFile ./config/sxhkd/sxhkdrc; @@ -73,51 +35,8 @@ in listenAddress = "any"; port = 6600; }; - extraConfig = '' - log_file "~/.config/mpd/log" - pid_file "~/.config/mpd/pid" - bind_to_address "0.0.0.0" - bind_to_address "~/.config/mpd/socket" - restore_paused "yes" - input { - plugin "curl" - } - audio_output { - type "pulse" - name "pulse audio" - } - audio_output { - type "fifo" - name "Visualizer feed" - path "/tmp/g.fifo" - format "44100:16:2" - } - audio_output { - encoder "vorbis" - type "httpd" - quality "9" - name "Vorbis Stream" - port "8001" - max_clients "0" - always_on "yes" - } - filesystem_charset "UTF-8" - ''; - }; - stalonetray = { - enable = true; - config = { - geometry = "1x1-0"; - max_geometry = "10x0"; - window_type = "dock"; - sticky = true; - icon_size = 23; - background = "#002b36"; - icon_gravity = "E"; - grow_gravity = "E"; - kludges = "force_icons_size"; - window_layer = "top"; - }; + extraConfig = builtins.readFile ./config/mpd/mpd.conf; }; + mpd-discord-rpc.enable = true; }; } diff --git a/home/natto/stuff.nix b/home/natto/stuff.nix index 5ae3d1c..770e697 100644 --- a/home/natto/stuff.nix +++ b/home/natto/stuff.nix @@ -13,6 +13,18 @@ source = ./config/dunst/dunstrc; target = "${home}/.config/dunst/dunstrc"; }; + stalonetray = { + source = ./config/stalonetrayrc; + target = "${home}/.stalonetrayrc"; + }; + ncmpcpp = { + source = ./config/ncmpcpp/config; + target = "${home}/.config/ncmpcpp/config"; + }; + mpv = { + source = ./config/mpv/mpv.conf; + target = "${home}/.config/mpv/mpv.conf"; + }; }; }; } diff --git a/home/natto/wayland.nix b/home/natto/wayland.nix new file mode 100644 index 0000000..a3a1138 --- /dev/null +++ b/home/natto/wayland.nix @@ -0,0 +1,10 @@ +{ pkgs, config, ... }: +{ + wayland = { + windowManager = { + sway = { + enable = true; + }; + }; + }; +}