diff --git a/config/btop/btop.conf b/config/btop/btop.conf index 9dba319..3e1a37e 100644 --- a/config/btop/btop.conf +++ b/config/btop/btop.conf @@ -1,4 +1,4 @@ -#? Config file for btop v. 1.2.13 +#? Config file for btop v. 1.3.2 #* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. #* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" @@ -37,6 +37,9 @@ graph_symbol = "braille" # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". graph_symbol_cpu = "default" +# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty". +graph_symbol_gpu = "default" + # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". graph_symbol_mem = "default" @@ -46,11 +49,11 @@ graph_symbol_net = "default" # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". graph_symbol_proc = "default" -#* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace. -shown_boxes = "cpu mem proc net" +#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace. +shown_boxes = "cpu mem net proc" #* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs. -update_ms = 500 +update_ms = 1000 #* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct", #* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly. @@ -69,7 +72,7 @@ proc_colors = True proc_gradient = True #* If process cpu usage should be of the core it's running on or usage of the total available cpu power. -proc_per_core = False +proc_per_core = True #* Show process memory as bytes instead of percent. proc_mem_bytes = True @@ -86,6 +89,9 @@ proc_left = False #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). proc_filter_kernel = False +#* In tree-view, always accumulate child process resources in the parent process. +proc_aggregate = False + #* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. #* Select from a list of detected attributes from the options menu. cpu_graph_upper = "total" @@ -94,6 +100,9 @@ cpu_graph_upper = "total" #* Select from a list of detected attributes from the options menu. cpu_graph_lower = "total" +#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off". +show_gpu_info = "Auto" + #* Toggles if the lower CPU graph should be inverted. cpu_invert_lower = True @@ -178,7 +187,7 @@ disk_free_priv = False show_io_stat = True #* Toggles io mode for disks, showing big graphs for disk read/write speeds. -io_mode = True +io_mode = False #* Set to True to show combined read/write io graphs in io mode. io_graph_combined = False @@ -207,6 +216,33 @@ show_battery = True #* Which battery to use if multiple are present. "Auto" for auto detection. selected_battery = "Auto" +#* Show power stats of battery next to charge indicator. +show_battery_watts = True + #* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". #* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. -log_level = "WARNING" \ No newline at end of file +log_level = "WARNING" + +#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards. +nvml_measure_pcie_speeds = True + +#* Horizontally mirror the GPU graph. +gpu_mirror_graph = True + +#* Custom gpu0 model name, empty string to disable. +custom_gpu_name0 = "" + +#* Custom gpu1 model name, empty string to disable. +custom_gpu_name1 = "" + +#* Custom gpu2 model name, empty string to disable. +custom_gpu_name2 = "" + +#* Custom gpu3 model name, empty string to disable. +custom_gpu_name3 = "" + +#* Custom gpu4 model name, empty string to disable. +custom_gpu_name4 = "" + +#* Custom gpu5 model name, empty string to disable. +custom_gpu_name5 = "" diff --git a/config/direnv/direnvrc b/config/direnv/direnvrc index 8dcbe8c..3bde7f0 100644 --- a/config/direnv/direnvrc +++ b/config/direnv/direnvrc @@ -7,3 +7,13 @@ use_ruby() { check_env() { local ret=0; for var in "$@"; do [[ -v $var ]] || { echo "$var is missing"; ret=1; }; done; return $ret; } + +use_nvm() { + local node_version=$1 + + nvm_sh=~/.config/nvm/nvm.sh + if [[ -e $nvm_sh ]]; then + source $nvm_sh + nvm use $node_version + fi +} diff --git a/config/fish/config.fish b/config/fish/config.fish index 75e6883..83f7209 100644 --- a/config/fish/config.fish +++ b/config/fish/config.fish @@ -6,3 +6,6 @@ direnv hook fish | source # rbenv status --is-interactive; and rbenv init - fish | source + +# You must call it on initialization or listening to directory switching won't work +# load_nvm > /dev/stderr diff --git a/config/fish/fish_variables b/config/fish/fish_variables index 2a34151..d73e966 100644 --- a/config/fish/fish_variables +++ b/config/fish/fish_variables @@ -6,15 +6,17 @@ SETUVAR FZF_LEGACY_KEYBINDINGS:1 SETUVAR FZF_PREVIEW_DIR_CMD:ls SETUVAR FZF_PREVIEW_FILE_CMD:head\x20\x2dn\x2010 SETUVAR FZF_TMUX_HEIGHT:40\x25 +SETUVAR __done_notification_urgency_level:low +SETUVAR __done_notification_urgency_level_failure:normal SETUVAR __fish_init_2_39_8:\x1d SETUVAR __fish_init_2_3_0:\x1d SETUVAR __fish_init_3_x:\x1d SETUVAR __fish_initialized:3400 -SETUVAR _fisher_edc_2F_bass_files:/home/krsh/\x2econfig/fish/functions/__bass\x2epy\x1e/home/krsh/\x2econfig/fish/functions/bass\x2efish -SETUVAR _fisher_franciscolourenco_2F_done_files:/home/krsh/\x2econfig/fish/conf\x2ed/done\x2efish -SETUVAR _fisher_jethrokuan_2F_fzf_files:/home/krsh/\x2econfig/fish/functions/__fzf_cd\x2efish\x1e/home/krsh/\x2econfig/fish/functions/__fzf_complete\x2efish\x1e/home/krsh/\x2econfig/fish/functions/__fzf_complete_preview\x2efish\x1e/home/krsh/\x2econfig/fish/functions/__fzf_find_file\x2efish\x1e/home/krsh/\x2econfig/fish/functions/__fzf_get_dir\x2efish\x1e/home/krsh/\x2econfig/fish/functions/__fzf_open\x2efish\x1e/home/krsh/\x2econfig/fish/functions/__fzf_parse_commandline\x2efish\x1e/home/krsh/\x2econfig/fish/functions/__fzf_reverse_isearch\x2efish\x1e/home/krsh/\x2econfig/fish/functions/__fzfcmd\x2efish\x1e/home/krsh/\x2econfig/fish/conf\x2ed/fzf\x2efish +SETUVAR _fisher_edc_2F_bass_files:\x7e/\x2econfig/fish/functions/__bass\x2epy\x1e\x7e/\x2econfig/fish/functions/bass\x2efish +SETUVAR _fisher_franciscolourenco_2F_done_files:\x7e/\x2econfig/fish/conf\x2ed/done\x2efish +SETUVAR _fisher_jethrokuan_2F_fzf_files:\x7e/\x2econfig/fish/functions/__fzf_cd\x2efish\x1e\x7e/\x2econfig/fish/functions/__fzf_complete\x2efish\x1e\x7e/\x2econfig/fish/functions/__fzf_complete_preview\x2efish\x1e\x7e/\x2econfig/fish/functions/__fzf_find_file\x2efish\x1e\x7e/\x2econfig/fish/functions/__fzf_get_dir\x2efish\x1e\x7e/\x2econfig/fish/functions/__fzf_open\x2efish\x1e\x7e/\x2econfig/fish/functions/__fzf_parse_commandline\x2efish\x1e\x7e/\x2econfig/fish/functions/__fzf_reverse_isearch\x2efish\x1e\x7e/\x2econfig/fish/functions/__fzfcmd\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/fzf\x2efish SETUVAR _fisher_jorgebucaran_2F_fisher_files:\x7e/\x2econfig/fish/functions/fisher\x2efish\x1e\x7e/\x2econfig/fish/completions/fisher\x2efish -SETUVAR _fisher_jorgebucaran_2F_spark_2E_fish_files:/home/krsh/\x2econfig/fish/functions/spark\x2efish\x1e/home/krsh/\x2econfig/fish/completions/spark\x2efish +SETUVAR _fisher_jorgebucaran_2F_spark_2E_fish_files:\x7e/\x2econfig/fish/functions/spark\x2efish\x1e\x7e/\x2econfig/fish/completions/spark\x2efish SETUVAR _fisher_plugins:jorgebucaran/fisher\x1ejethrokuan/fzf\x1ejorgebucaran/spark\x2efish\x1efranciscolourenco/done\x1eedc/bass SETUVAR _fisher_upgraded_to_4_4:\x1d SETUVAR fish_color_autosuggestion:969896 diff --git a/config/htop/htoprc b/config/htop/htoprc index b37f88a..8e25983 100644 --- a/config/htop/htoprc +++ b/config/htop/htoprc @@ -8,7 +8,7 @@ hide_userland_threads=0 hide_running_in_container=0 shadow_other_users=1 show_thread_names=0 -show_program_path=0 +show_program_path=1 highlight_base_name=1 highlight_deleted_exe=1 shadow_distribution_path_prefix=0 @@ -37,14 +37,14 @@ column_meter_modes_0=1 1 1 column_meters_1=Tasks LoadAverage Uptime column_meter_modes_1=2 2 2 tree_view=0 -sort_key=47 +sort_key=46 tree_sort_key=47 sort_direction=-1 tree_sort_direction=-1 tree_view_always_by_pid=0 all_branches_collapsed=0 screen:Main=PID USER PRIORITY NICE M_VIRT M_RESIDENT M_SHARE STATE PERCENT_CPU PERCENT_MEM TIME Command -.sort_key=PERCENT_MEM +.sort_key=PERCENT_CPU .tree_sort_key=PERCENT_MEM .tree_view=0 .tree_view_always_by_pid=0 diff --git a/config/i3/config b/config/i3/config index c5e4a3d..1e6d46c 100644 --- a/config/i3/config +++ b/config/i3/config @@ -71,6 +71,7 @@ for_window [class="mpv"] floating enable border none for_window [class="(?i)zooout"] floating enable for_window [class="(?i)netsurf"] floating enable for_window [class="(?i)proton-bridge"] move container to workspace $ws9 floating enable border none +for_window [class="(?i)easyeffects"] move container to workspace $ws10 # for_window [class="(?i)cadence"] move container to workspace $ws7 floating enable # for_window [class="(?i)catia"] move container to workspace $ws7 floating enable @@ -211,8 +212,8 @@ workspace $ws5 output primary workspace $ws6 output primary workspace $ws7 output primary workspace $ws8 output primary -workspace $ws9 output primary -workspace $ws10 output eDP-1-0 +workspace $ws9 output HDMI-0 +workspace $ws10 output eDP # move focused container to workspace bindsym $mod+Shift+1 move container to workspace $ws1 @@ -233,7 +234,8 @@ bindsym $mod+Shift+r restart # exit i3 (logs you out of your X session) bindsym $mod+Shift+x exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" -bindsym $mod+z exec "stop_and_lock" +bindsym $mod+z exec "i3lock" +bindsym $mod+x exec "taskwarrior_stop" bindsym $mod+Shift+z exec "suspend-and-lock" # resize window (you can also use the mouse for that) @@ -264,27 +266,15 @@ bar { output nonprimary font pango:Iosevka Term, FontAwesome Bold 12px colors { - # bar background color - background $bg - # text color used for blocks that do not have a color specified. - statusline $fg + background $bg + statusline $fg + separator #666666 - # workspaces section - # border backgr. text - focused_workspace $orange $orange $bg - inactive_workspace $bg $aqua $bg - active_workspace $bg $blue $bg - urgent_workspace $red $red $fg - - # background #000000 - # statusline #d5c4a1 - # separator #666666 - # - # focused_workspace #B8BB26 #B8BB26 #3c3836 - # active_workspace #5f676a #5f676a #fbf1c7 - # inactive_workspace #5f676a #5f676a #fbf1c7 - # urgent_workspace #fb4934 #fb4934 #fbf1c7 - # binding_mode #fb4934 #fb4934 #1d2021 + focused_workspace $orange $orange $bg + inactive_workspace $aqua $bg $aqua + active_workspace $aqua $aqua $bg + urgent_workspace $red $red $fg + binding_mode $red $red $bg } } @@ -297,15 +287,15 @@ bar { status_command i3status-rs-with-env ~/.config/i3status-rust/config.toml font pango:Iosevka Term, FontAwesome Bold 14px colors { - background #000000 - statusline #d5c4a1 + background $bg + statusline $fg separator #666666 - focused_workspace #B8BB26 #B8BB26 #3c3836 - active_workspace #5f676a #5f676a #fbf1c7 - inactive_workspace #5f676a #5f676a #fbf1c7 - urgent_workspace #fb4934 #fb4934 #fbf1c7 - binding_mode #fb4934 #fb4934 #1d2021 + focused_workspace $orange $orange $bg + inactive_workspace $aqua $bg $aqua + active_workspace $aqua $aqua $bg + urgent_workspace $red $red $fg + binding_mode $red $red $bg } } @@ -315,8 +305,8 @@ bindsym XF86MonBrightnessDown exec --no-startup-id doas /usr/bin/light -U 5 # bindsym XF86Search exec --no-startup-id suspend-and-lock # Volume control -bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5% -bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5% +bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +3% +bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -3% bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle # bindsym XF86AudioPrev exec --no-startup-id mpc prev diff --git a/config/kitty/kitty.conf.bak b/config/kitty/kitty.conf.bak index 0ffc597..33a066e 100644 --- a/config/kitty/kitty.conf.bak +++ b/config/kitty/kitty.conf.bak @@ -1,4 +1,5 @@ shell fish +shell_integration no-sudo no-cursor font_family Iosevka Custom Medium font_size 12.0 @@ -8,7 +9,6 @@ bold_italic_font Iosevka Custom Bold adjust_line_height 98% cursor_shape block -shell_integration no-cursor scrollback_lines 2000 diff --git a/config/mpd/mpd.conf b/config/mpd/mpd.conf new file mode 100644 index 0000000..0183de2 --- /dev/null +++ b/config/mpd/mpd.conf @@ -0,0 +1,423 @@ +# An example configuration file for MPD. +# Read the user manual for documentation: http://www.musicpd.org/doc/user/ + + +# Files and directories ####################################################### +# +# This setting controls the top directory which MPD will search to discover the +# available audio files and add them to the daemon's online database. This +# setting defaults to the XDG directory, otherwise the music directory will be +# be disabled and audio files will only be accepted over ipc socket (using +# file:// protocol) or streaming files over an accepted protocol. + +music_directory "~/Music" + +# This setting sets the MPD internal playlist directory. The purpose of this +# directory is storage for playlists created by MPD. The server will use +# playlist files not created by the server but only if they are in the MPD +# format. This setting defaults to playlist saving being disabled. +# +playlist_directory "~/Music/playlists" +# +# This setting sets the location of the MPD database. This file is used to +# load the database at server start up and store the database while the +# server is not up. This setting defaults to disabled which will allow +# MPD to accept files over ipc socket (using file:// protocol) or streaming +# files over an accepted protocol. +# +db_file "~/.local/share/mpd/database" + +# These settings are the locations for the daemon log files for the daemon. +# +# The special value "syslog" makes MPD use the local syslog daemon. This +# setting defaults to logging to syslog. +# +# If you use systemd, do not configure a log_file. With systemd, MPD +# defaults to the systemd journal, which is fine. +# +log_file "~/.local/share/mpd/log" + +# This setting sets the location of the file which stores the process ID +# for use of mpd --kill and some init scripts. This setting is disabled by +# default and the pid file will not be stored. +# +# If you use systemd, do not configure a pid_file. +# +pid_file "~/.local/share/mpd/pid" + +# This setting sets the location of the file which contains information about +# most variables to get MPD back into the same general shape it was in before +# it was brought down. This setting is disabled by default and the server +# state will be reset on server start up. +# +state_file "~/.local/share/mpd/state" +# +# The location of the sticker database. This is a database which +# manages dynamic information attached to songs. +# +#sticker_file "~/.mpd/sticker.sql" +# +############################################################################### + + +# General music daemon options ################################################ +# +# This setting specifies the user that MPD will run as. MPD should never run as +# root and you may use this setting to make MPD change its user ID after +# initialization. This setting is disabled by default and MPD is run as the +# current user. +# +user "krsh" +# +# This setting specifies the group that MPD will run as. If not specified +# primary group of user specified with "user" setting will be used (if set). +# This is useful if MPD needs to be a member of group such as "audio" to +# have permission to use sound card. +# +#group "nogroup" +# +# This setting sets the address for the daemon to listen on. Careful attention +# should be paid if this is assigned to anything other than the default, any. +# This setting can deny access to control of the daemon. Not effective if +# systemd socket activation is in use. +# +# For network +bind_to_address "localhost" +# +# And for Unix Socket +# bind_to_address "/var/lib/mpd/socket" +# +# This setting is the TCP port that is desired for the daemon to get assigned +# to. +# +#port "6600" +# +# Suppress all messages below the given threshold. Use "verbose" for +# troubleshooting. Available setting arguments are "notice", "info", "verbose", +# "warning" and "error". +# +#log_level "notice" +# +# Setting "restore_paused" to "yes" puts MPD into pause mode instead +# of starting playback after startup. +# +#restore_paused "no" +# +# This setting enables MPD to create playlists in a format usable by other +# music players. +# +#save_absolute_paths_in_playlists "no" +# +# This setting defines a list of tag types that will be extracted during the +# audio file discovery process. The complete list of possible values can be +# found in the user manual. +#metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc" +# +# This example just enables the "comment" tag without disabling all +# the other supported tags: +#metadata_to_use "+comment" +# +# This setting enables automatic update of MPD's database when files in +# music_directory are changed. +# +#auto_update "yes" +# +# Limit the depth of the directories being watched, 0 means only watch +# the music directory itself. There is no limit by default. +# +#auto_update_depth "3" +# +############################################################################### + + +# Symbolic link behavior ###################################################### +# +# If this setting is set to "yes", MPD will discover audio files by following +# symbolic links outside of the configured music_directory. +# +#follow_outside_symlinks "yes" +# +# If this setting is set to "yes", MPD will discover audio files by following +# symbolic links inside of the configured music_directory. +# +#follow_inside_symlinks "yes" +# +############################################################################### + + +# Zeroconf / Avahi Service Discovery ########################################## +# +# If this setting is set to "yes", service information will be published with +# Zeroconf / Avahi. +# +#zeroconf_enabled "yes" +# +# The argument to this setting will be the Zeroconf / Avahi unique name for +# this MPD server on the network. %h will be replaced with the hostname. +# +#zeroconf_name "Music Player @ %h" +# +############################################################################### + + +# Permissions ################################################################# +# +# If this setting is set, MPD will require password authorization. The password +# setting can be specified multiple times for different password profiles. +# +#password "password@read,add,control,admin" +# +# This setting specifies the permissions a user has who has not yet logged in. +# +#default_permissions "read,add,control,admin" +# +############################################################################### + + +# Database ####################################################################### +# +# An example of a database section instead of the old 'db_file' setting. +# It enables mounting other storages into the music directory. +# +#database { +# plugin "simple" +# path "~/.local/share/mpd/db" +# cache_directory "~/.local/share/mpd/cache" +#} +# +# An example of database config for a satellite setup +# +# music_directory "/var/lib/mpd/music" +#database { +# plugin "proxy" +# host "other.mpd.host" +# port "6600" +#} + +# Input ####################################################################### +# +input { + plugin "curl" +# proxy "proxy.isp.com:8080" +# proxy_user "user" +# proxy_password "password" +} + +# +############################################################################### + +# Audio Output ################################################################ +# +# MPD supports various audio output types, as well as playing through multiple +# audio outputs at the same time, through multiple audio_output settings +# blocks. Setting this block is optional, though the server will only attempt +# autodetection for one sound card. +# +# An example of an ALSA output: +# +#audio_output { +# type "alsa" +# name "My ALSA Device" +## device "hw:0,0" # optional +## mixer_type "hardware" # optional +## mixer_device "default" # optional +## mixer_control "PCM" # optional +## mixer_index "0" # optional +#} +# +# An example of an OSS output: +# +#audio_output { +# type "oss" +# name "My OSS Device" +## device "/dev/dsp" # optional +## mixer_type "hardware" # optional +## mixer_device "/dev/mixer" # optional +## mixer_control "PCM" # optional +#} +# +# An example of a shout output (for streaming to Icecast): +# +#audio_output { +# type "shout" +# encoder "vorbis" # optional +# name "My Shout Stream" +# host "localhost" +# port "8000" +# mount "/mpd.ogg" +# password "hackme" +# quality "5.0" +# bitrate "128" +# format "44100:16:1" +## protocol "icecast2" # optional +## user "source" # optional +## description "My Stream Description" # optional +## url "http://example.com" # optional +## genre "jazz" # optional +## public "no" # optional +## timeout "2" # optional +## mixer_type "software" # optional +#} +# +# An example of a recorder output: +# +#audio_output { +# type "recorder" +# name "My recorder" +# encoder "vorbis" # optional, vorbis or lame +# path "/var/lib/mpd/recorder/mpd.ogg" +## quality "5.0" # do not define if bitrate is defined +# bitrate "128" # do not define if quality is defined +# format "44100:16:1" +#} +# +# An example of a httpd output (built-in HTTP streaming server): +# +#audio_output { +# type "httpd" +# name "My HTTP Stream" +# encoder "vorbis" # optional, vorbis or lame +# port "8000" +# bind_to_address "0.0.0.0" # optional, IPv4 or IPv6 +## quality "5.0" # do not define if bitrate is defined +# bitrate "128" # do not define if quality is defined +# format "44100:16:1" +# max_clients "0" # optional 0=no limit +#} +# +# An example of a pulseaudio output (streaming to a remote pulseaudio server) +# +#audio_output { +# type "pulse" +# name "My Pulse Output" +## server "remote_server" # optional +## sink "remote_server_sink" # optional +## media_role "media_role" #optional +#} +# +# An example of a winmm output (Windows multimedia API). +# +#audio_output { +# type "winmm" +# name "My WinMM output" +## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional +# or +## device "0" # optional +## mixer_type "hardware" # optional +#} +# +# An example of a wasapi output (Windows multimedia API). +# +#audio_output { +# type "wasapi" +# name "My WASAPI output" +## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional +# or +## device "0" # optional +## Exclusive mode blocks all other audio source, and get best audio quality without resampling. +## exclusive "no" # optional +## Enumerate all devices in log. +## enumerate "no" # optional +#} +# +# An example of an openal output. +# +#audio_output { +# type "openal" +# name "My OpenAL output" +## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional +#} +# +# An example of an sndio output. +# +#audio_output { +# type "sndio" +# name "sndio output" +# mixer_type "hardware" +#} +# +# An example of an OS X output: +# +#audio_output { +# type "osx" +# name "My OS X Device" +## device "Built-in Output" # optional +## channel_map "-1,-1,0,1" # optional +#} +# +## Example "pipe" output: +# +#audio_output { +# type "pipe" +# name "my pipe" +# command "aplay -f cd 2>/dev/null" +## Or if you're want to use AudioCompress +# command "AudioCompress -m | aplay -f cd 2>/dev/null" +## Or to send raw PCM stream through PCM: +# command "nc example.org 8765" +# format "44100:16:2" +#} +# +## An example of a null output (for no audio output): +# +#audio_output { +# type "null" +# name "My Null Output" +# mixer_type "none" # optional +#} +# +############################################################################### + +audio_output { + type "pipewire" + name "PipeWire Sound Server" +} + + +# Normalization automatic volume adjustments ################################## +# +# This setting specifies the type of ReplayGain to use. This setting can have +# the argument "off", "album", "track" or "auto". "auto" is a special mode that +# chooses between "track" and "album" depending on the current state of +# random playback. If random playback is enabled then "track" mode is used. +# See for +# more details about ReplayGain. +# This setting is off by default. +# +#replaygain "album" +# +# This setting sets the pre-amp used for files that have ReplayGain tags. By +# default this setting is disabled. +# +#replaygain_preamp "0" +# +# This setting sets the pre-amp used for files that do NOT have ReplayGain tags. +# By default this setting is disabled. +# +#replaygain_missing_preamp "0" +# +# This setting enables or disables ReplayGain limiting. +# MPD calculates actual amplification based on the ReplayGain tags +# and replaygain_preamp / replaygain_missing_preamp setting. +# If replaygain_limit is enabled MPD will never amplify audio signal +# above its original level. If replaygain_limit is disabled such amplification +# might occur. By default this setting is enabled. +# +#replaygain_limit "yes" +# +# This setting enables on-the-fly normalization volume adjustment. This will +# result in the volume of all playing audio to be adjusted so the output has +# equal "loudness". This setting is disabled by default. +# +#volume_normalization "no" +# +############################################################################### + +# Character Encoding ########################################################## +# +# If file or directory names do not display correctly for your locale then you +# may need to modify this setting. +# +filesystem_charset "UTF-8" +# +############################################################################### diff --git a/config/mutt/muttrc b/config/mutt/muttrc index 56924ac..8056949 100644 --- a/config/mutt/muttrc +++ b/config/mutt/muttrc @@ -166,7 +166,7 @@ bind index,pager \CO sidebar-open bind index,pager \Ck sidebar-prev bind index,pager \Cj sidebar-next -macro attach 'V' "cat > /tmp/mutt-preview.html && $HOME/bin/preview-html file:///tmp/mutt-preview.html; rm /tmp/mutt-preview.html" +macro attach 'V' "cat > /tmp/share/mutt-preview.html && $HOME/bin/preview-html /tmp/share/mutt-preview.html; rm /tmp/share/mutt-preview.html" macro index 'c' '?^K=' set mailcap_path = ~/.config/mutt/mailcap diff --git a/config/nvim/init.vim b/config/nvim/init.vim index de2c253..8a593c8 100644 --- a/config/nvim/init.vim +++ b/config/nvim/init.vim @@ -40,7 +40,8 @@ Plug 'ziglang/zig.vim' Plug 'elixir-editors/vim-elixir' Plug 'mhinz/vim-mix-format' -Plug 'tomtom/tcomment_vim' +" Plug 'tomtom/tcomment_vim' +Plug '~/Projects/libs/tcomment_vim' Plug 'majutsushi/tagbar', { 'on': 'TagbarToggle' } @@ -87,10 +88,10 @@ Plug 'lewis6991/gitsigns.nvim' Plug 'tpope/vim-fugitive' Plug 'kassio/neoterm' -" Plug 'janko/vim-test' -Plug 'nvim-neotest/neotest' -Plug 'olimorris/neotest-rspec' +Plug 'vim-test/vim-test' +" Plug 'nvim-neotest/neotest' +" Plug 'olimorris/neotest-rspec' Plug 'yssl/QFEnter' @@ -104,8 +105,8 @@ Plug 'McAuleyPenney/tidy.nvim' " Remove whitespaces Plug 'Chiel92/vim-autoformat' Plug 'nvim-lua/plenary.nvim' -" Plug 'nvim-telescope/telescope.nvim' -Plug 'junegunn/fzf.vim' +Plug 'nvim-telescope/telescope.nvim' +" Plug 'junegunn/fzf.vim' Plug 'MunifTanjim/nui.nvim' Plug 'nvim-neo-tree/neo-tree.nvim' @@ -183,29 +184,28 @@ require'nvim-treesitter.configs'.setup { } -- telescope --- require('telescope').setup{ --- -- defaults = { --- -- layout_config = { --- -- vertical = { width = 0.9 } --- -- } --- -- }, --- defaults = { --- preview = { --- treesitter = false, --- }, --- }, --- pickers = { --- find_files = { --- theme = "ivy", --- }, --- live_grep = { --- theme = "ivy", --- } --- }, --- } +require('telescope').setup{ + -- defaults = { + -- layout_config = { + -- vertical = { width = 0.9 } + -- } + -- }, + defaults = { + preview = { + treesitter = false, + }, + }, + pickers = { + find_files = { + theme = "ivy", + }, + live_grep = { + theme = "ivy", + } + }, +} -- nvim-lspconfig - local nvim_lsp = require('lspconfig') local nlspsettings = require("nlspsettings") @@ -264,15 +264,17 @@ end -- map buffer local keybindings when the language server attaches local servers = { 'ansiblels', + -- 'arduino_language_server', 'bashls', - 'ccls', + -- 'ccls', + 'clangd', 'erlangls', 'eslint', 'gdscript', - -- 'ruby_ls', + -- 'ruby_lsp', 'solargraph', 'stylelint_lsp', - 'tsserver', + 'ts_ls', 'zls', } @@ -401,11 +403,11 @@ local function setup_diagnostics(client, buffer) }) end -nvim_lsp.ruby_ls.setup({ - on_attach = function(client, buffer) - setup_diagnostics(client, buffer) - end, -}) +-- nvim_lsp.ruby_lsp.setup({ +-- on_attach = function(client, buffer) +-- setup_diagnostics(client, buffer) +-- end, +-- }) -- Setup nvim-cmp. @@ -597,49 +599,49 @@ require("neo-tree").setup({ require('leap').set_default_keymaps() -require('neotest').setup({ - icons = { - -- Ascii: - -- { "/", "|", "\\", "-", "/", "|", "\\", "-"}, - -- Unicode: - -- { "", "🞅", "🞈", "🞉", "", "", "🞉", "🞈", "🞅", "", }, - -- {"◴" ,"◷" ,"◶", "◵"}, - -- {"◢", "◣", "◤", "◥"}, - -- {"◐", "◓", "◑", "◒"}, - -- {"◰", "◳", "◲", "◱"}, - -- {"⣾", "⣽", "⣻", "⢿", "⡿", "⣟", "⣯", "⣷"}, - -- {"⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"}, - -- {"⠋", "⠙", "⠚", "⠞", "⠖", "⠦", "⠴", "⠲", "⠳", "⠓"}, - -- {"⠄", "⠆", "⠇", "⠋", "⠙", "⠸", "⠰", "⠠", "⠰", "⠸", "⠙", "⠋", "⠇", "⠆"}, - -- { "⠋", "⠙", "⠚", "⠒", "⠂", "⠂", "⠒", "⠲", "⠴", "⠦", "⠖", "⠒", "⠐", "⠐", "⠒", "⠓", "⠋" }, - running_animated = {"⣷", "⣯", "⣟", "⡿", "⢿", "⣻", "⣽", "⣾"}, - passed = " ", - running = " ", - failed = " ", - skipped = "-", - unknown = "🞅", - non_collapsible = "─", - collapsed = "─", - expanded = "╮", - child_prefix = "├", - final_child_prefix = "╰", - child_indent = "│", - final_child_indent = " ", - }, - adapters = { - require('neotest-rspec')({ - rspec_cmd = function() - return vim.tbl_flatten({ - "rspec", - }) - end - }) - }, - quickfix = { - enabled = false, - open = false - }, -}) +-- require('neotest').setup({ +-- icons = { +-- -- Ascii: +-- -- { "/", "|", "\\", "-", "/", "|", "\\", "-"}, +-- -- Unicode: +-- -- { "", "🞅", "🞈", "🞉", "", "", "🞉", "🞈", "🞅", "", }, +-- -- {"◴" ,"◷" ,"◶", "◵"}, +-- -- {"◢", "◣", "◤", "◥"}, +-- -- {"◐", "◓", "◑", "◒"}, +-- -- {"◰", "◳", "◲", "◱"}, +-- -- {"⣾", "⣽", "⣻", "⢿", "⡿", "⣟", "⣯", "⣷"}, +-- -- {"⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"}, +-- -- {"⠋", "⠙", "⠚", "⠞", "⠖", "⠦", "⠴", "⠲", "⠳", "⠓"}, +-- -- {"⠄", "⠆", "⠇", "⠋", "⠙", "⠸", "⠰", "⠠", "⠰", "⠸", "⠙", "⠋", "⠇", "⠆"}, +-- -- { "⠋", "⠙", "⠚", "⠒", "⠂", "⠂", "⠒", "⠲", "⠴", "⠦", "⠖", "⠒", "⠐", "⠐", "⠒", "⠓", "⠋" }, +-- running_animated = {"⣷", "⣯", "⣟", "⡿", "⢿", "⣻", "⣽", "⣾"}, +-- passed = " ", +-- running = " ", +-- failed = " ", +-- skipped = "-", +-- unknown = "🞅", +-- non_collapsible = "─", +-- collapsed = "─", +-- expanded = "╮", +-- child_prefix = "├", +-- final_child_prefix = "╰", +-- child_indent = "│", +-- final_child_indent = " ", +-- }, +-- adapters = { +-- require('neotest-rspec')({ +-- rspec_cmd = function() +-- return vim.tbl_flatten({ +-- "rspec", +-- }) +-- end +-- }) +-- }, +-- quickfix = { +-- enabled = false, +-- open = false +-- }, +-- }) -- local null_ls = require("null-ls") -- @@ -657,20 +659,27 @@ require('neotest').setup({ -- buf_set_keymap('n', 'tn', 'lua require('neotest').run.run()', opts) -- buf_set_keymap('n', 'f', 'lua vim.lsp.buf.formatting()', opts) --- nnoremap tn :TestNearest --- nnoremap tf :TestFile --- nnoremap ts :TestSuite EOF " neotest keybindings -nnoremap tn lua require("neotest").run.run() -nnoremap ts lua require("neotest").run.stop() -nnoremap tf lua require("neotest").run.run(vim.fn.expand("%")) -nnoremap tt lua require("neotest").summary.open() -nnoremap ta lua require("neotest").run.attach() -nnoremap to lua require("neotest").output.open({ enter = true }) -nnoremap [n lua require("neotest").jump.prev({ status = "failed" }) -nnoremap ]n lua require("neotest").jump.next({ status = "failed" }) +" nnoremap tn lua require("neotest").run.run() +" nnoremap ts lua require("neotest").run.stop() +" nnoremap tf lua require("neotest").run.run(vim.fn.expand("%")) +" nnoremap tt lua require("neotest").summary.open() +" nnoremap ta lua require("neotest").run.attach() +" nnoremap to lua require("neotest").output.open({ enter = true }) +" nnoremap [n lua require("neotest").jump.prev({ status = "failed" }) +" nnoremap ]n lua require("neotest").jump.next({ status = "failed" }) + +let test#strategy = "neovim" +let g:test#preserve_screen = 1 +let g:test#neovim#start_normal = 1 " If using neovim strategy +let g:test#basic#start_normal = 1 " If using basic strategy +let g:test#ruby#bundle_exec = 0 + +nnoremap tn :TestNearest +nnoremap tf :TestFile +nnoremap ts :TestSuite " EditorConfig let g:EditorConfig_exclude_patterns = ['fugitive://.*', 'scp://.*'] @@ -681,7 +690,7 @@ silent! map :NeoTreeReveal " Lightline let g:lightline = { - \ 'colorscheme': 'gruvbox', + \ 'colorscheme': 'powerlineish', \ 'component_function': { \ 'gitbranch': 'FugitiveHead' \ }, @@ -877,18 +886,31 @@ nnoremap h nnoremap l " telescope -" nnoremap lua require('telescope.builtin').find_files() -" nnoremap g lua require('telescope.builtin').live_grep() -" nnoremap b lua require('telescope.builtin').buffers() -" nnoremap h lua require('telescope.builtin').help_tags() +nnoremap lua require('telescope.builtin').find_files() +nnoremap g lua require('telescope.builtin').live_grep() +nnoremap b lua require('telescope.builtin').buffers() +nnoremap h lua require('telescope.builtin').help_tags() " FZF -let g:fzf_layout = { 'down': '30%' } -let g:fzf_vim = {} -let g:fzf_vim.preview_window = ['right,50%', 'ctrl-/'] - -nnoremap :FZF -nnoremap g :Rg +" let g:fzf_layout = { 'down': '50%' } +" let g:fzf_vim = {} +" let g:fzf_vim.listproc = { list -> fzf#vim#listproc#quickfix(list) } +" let g:fzf_vim.preview_window = ['right,50%', 'ctrl-/'] +" +" function! s:build_quickfix_list(lines) +" call setqflist(map(copy(a:lines), '{ "filename": v:val, "lnum": 1 }')) +" copen +" cc +" endfunction +" +" let g:fzf_action = { +" \ 'ctrl-q': function('s:build_quickfix_list'), +" \ 'ctrl-t': 'tab split', +" \ 'ctrl-x': 'split', +" \ 'ctrl-v': 'vsplit' } +" +" nnoremap :FZF +" nnoremap g :Rg " LSP SEMANTIC HIGHLIGHTS " hi @lsp.type.variable guifg=GruvboxFg1 diff --git a/config/redshift.conf b/config/redshift.conf index 6e4a594..8de09c4 100644 --- a/config/redshift.conf +++ b/config/redshift.conf @@ -43,5 +43,6 @@ lon=44.622852 ; ex: 'redshift -m randr:help' ; In this example, randr is configured to adjust screen 1. ; Note that the numbering starts from 0, so this is actually the second screen. -; [randr] -; screen=0 +[randr] +screen=0 +crtc=0 diff --git a/config/task/taskrc b/config/task/taskrc index 48a689b..fa6722d 100644 --- a/config/task/taskrc +++ b/config/task/taskrc @@ -27,9 +27,9 @@ uda.totalactivetime.label=Total active time uda.totalactivetime.values= uda.priority.values=H,M,,L -urgency.uda.priority.H.coefficient=3.0 +urgency.uda.priority.H.coefficient=1.5 urgency.uda.priority.L.coefficient=0.5 -urgency.uda.priority.M.coefficient=2.0 +urgency.uda.priority.M.coefficient=1.0 default.command=list @@ -38,4 +38,4 @@ report.active.labels=ID,Project,Description,Time report.list.labels=ID,Active,Age,Time,D,P,Project,Tags,R,Sch,Due,Until,Description,Urg report.list.columns=id,start.age,entry.age,totalactivetime,depends.indicator,priority,project,tags,recur.indicator,scheduled.countdown,due,until.remaining,description.count,urgency -news.version=2.6.0 +news.version=3.0.2 diff --git a/mozilla/firefox/profile/updater.sh b/mozilla/firefox/profile/updater.sh index 88e6e33..72c77fc 100755 --- a/mozilla/firefox/profile/updater.sh +++ b/mozilla/firefox/profile/updater.sh @@ -2,7 +2,7 @@ ## arkenfox user.js updater for macOS and Linux -## version: 3.9 +## version: 4.0 ## Author: Pat Johnson (@overdodactyl) ## Additional contributors: @earthlng, @ema-pe, @claustromaniac, @infinitewarp @@ -393,11 +393,11 @@ update_updater "$@" getProfilePath # updates PROFILE_PATH or exits on error cd "$PROFILE_PATH" || exit 1 -# Check if any files have the owner/group as root/wheel. -if [ -n "$(find ./ -user 0 -o -group 0)" ]; then +# Check if any files have the owner as root/wheel. +if [ -n "$(find ./ -user 0)" ]; then printf 'It looks like this script was previously run with elevated privileges, you will need to change ownership of the following files to your user:\n' - find . -user 0 -o -group 0 + find . -user 0 cd "$CURRDIR" exit 1 fi diff --git a/mozilla/firefox/profile/user-overrides.js b/mozilla/firefox/profile/user-overrides.js index 139201c..15deec7 100644 --- a/mozilla/firefox/profile/user-overrides.js +++ b/mozilla/firefox/profile/user-overrides.js @@ -42,7 +42,7 @@ user_pref("privacy.sanitize.timeSpan", 2); // -------------------------------------------------------------------------- // user_pref("geo.enabled", false); -user_pref("full-screen-api.enabled", false); +user_pref("full-screen-api.enabled", true); user_pref("permissions.default.geo", 0); user_pref("permissions.default.camera", 0); user_pref("permissions.default.microphone", 0); diff --git a/xinitrc b/xinitrc index 39d921f..1e6eac6 100755 --- a/xinitrc +++ b/xinitrc @@ -21,6 +21,15 @@ export DOCKER_HOST=unix:///var/run/docker.sock export WINEFSYNC=1 export SUDO_ASKPASS=/usr/bin/ssh-askpass-fullscreen +# Nvidia vaapi https://github.com/elFarto/nvidia-vaapi-driver?tab=readme-ov-file#direct-backend +# export NVD_BACKEND=direct +# export LIBVA_DRIVER_NAME=nvidia +# export MOZ_DISABLE_RDD_SANDBOX=1 +# export __EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/10_nvidia.json + +# xrandr --setprovideroutputsource modesetting NVIDIA-0 +# xrandr --auto + # TrackPoint+Middleclick scroll xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 1 xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 2