This commit is contained in:
2024-09-21 00:31:30 +04:00
parent a4c819a30b
commit 484e10675e
15 changed files with 654 additions and 158 deletions

View File

@@ -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. #* 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" #* 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 to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_cpu = "default" 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 to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_mem = "default" 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 to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_proc = "default" graph_symbol_proc = "default"
#* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace. #* 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 proc net" shown_boxes = "cpu mem net proc"
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs. #* 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", #* 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. #* "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 proc_gradient = True
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power. #* 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. #* Show process memory as bytes instead of percent.
proc_mem_bytes = True proc_mem_bytes = True
@@ -86,6 +89,9 @@ proc_left = False
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = False 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. #* 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. #* Select from a list of detected attributes from the options menu.
cpu_graph_upper = "total" cpu_graph_upper = "total"
@@ -94,6 +100,9 @@ cpu_graph_upper = "total"
#* Select from a list of detected attributes from the options menu. #* Select from a list of detected attributes from the options menu.
cpu_graph_lower = "total" 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. #* Toggles if the lower CPU graph should be inverted.
cpu_invert_lower = True cpu_invert_lower = True
@@ -178,7 +187,7 @@ disk_free_priv = False
show_io_stat = True show_io_stat = True
#* Toggles io mode for disks, showing big graphs for disk read/write speeds. #* 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. #* Set to True to show combined read/write io graphs in io mode.
io_graph_combined = False io_graph_combined = False
@@ -207,6 +216,33 @@ show_battery = True
#* Which battery to use if multiple are present. "Auto" for auto detection. #* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "Auto" 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". #* 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. #* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
log_level = "WARNING" 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 = ""

View File

@@ -7,3 +7,13 @@ use_ruby() {
check_env() { check_env() {
local ret=0; for var in "$@"; do [[ -v $var ]] || { echo "$var is missing"; ret=1; }; done; return $ret; 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
}

View File

@@ -6,3 +6,6 @@ direnv hook fish | source
# rbenv # rbenv
status --is-interactive; and rbenv init - fish | source 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

View File

@@ -6,15 +6,17 @@ SETUVAR FZF_LEGACY_KEYBINDINGS:1
SETUVAR FZF_PREVIEW_DIR_CMD:ls SETUVAR FZF_PREVIEW_DIR_CMD:ls
SETUVAR FZF_PREVIEW_FILE_CMD:head\x20\x2dn\x2010 SETUVAR FZF_PREVIEW_FILE_CMD:head\x20\x2dn\x2010
SETUVAR FZF_TMUX_HEIGHT:40\x25 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_39_8:\x1d
SETUVAR __fish_init_2_3_0:\x1d SETUVAR __fish_init_2_3_0:\x1d
SETUVAR __fish_init_3_x:\x1d SETUVAR __fish_init_3_x:\x1d
SETUVAR __fish_initialized:3400 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_edc_2F_bass_files:\x7e/\x2econfig/fish/functions/__bass\x2epy\x1e\x7e/\x2econfig/fish/functions/bass\x2efish
SETUVAR _fisher_franciscolourenco_2F_done_files:/home/krsh/\x2econfig/fish/conf\x2ed/done\x2efish SETUVAR _fisher_franciscolourenco_2F_done_files:\x7e/\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_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_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_plugins:jorgebucaran/fisher\x1ejethrokuan/fzf\x1ejorgebucaran/spark\x2efish\x1efranciscolourenco/done\x1eedc/bass
SETUVAR _fisher_upgraded_to_4_4:\x1d SETUVAR _fisher_upgraded_to_4_4:\x1d
SETUVAR fish_color_autosuggestion:969896 SETUVAR fish_color_autosuggestion:969896

View File

@@ -8,7 +8,7 @@ hide_userland_threads=0
hide_running_in_container=0 hide_running_in_container=0
shadow_other_users=1 shadow_other_users=1
show_thread_names=0 show_thread_names=0
show_program_path=0 show_program_path=1
highlight_base_name=1 highlight_base_name=1
highlight_deleted_exe=1 highlight_deleted_exe=1
shadow_distribution_path_prefix=0 shadow_distribution_path_prefix=0
@@ -37,14 +37,14 @@ column_meter_modes_0=1 1 1
column_meters_1=Tasks LoadAverage Uptime column_meters_1=Tasks LoadAverage Uptime
column_meter_modes_1=2 2 2 column_meter_modes_1=2 2 2
tree_view=0 tree_view=0
sort_key=47 sort_key=46
tree_sort_key=47 tree_sort_key=47
sort_direction=-1 sort_direction=-1
tree_sort_direction=-1 tree_sort_direction=-1
tree_view_always_by_pid=0 tree_view_always_by_pid=0
all_branches_collapsed=0 all_branches_collapsed=0
screen:Main=PID USER PRIORITY NICE M_VIRT M_RESIDENT M_SHARE STATE PERCENT_CPU PERCENT_MEM TIME Command 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_sort_key=PERCENT_MEM
.tree_view=0 .tree_view=0
.tree_view_always_by_pid=0 .tree_view_always_by_pid=0

View File

@@ -71,6 +71,7 @@ for_window [class="mpv"] floating enable border none
for_window [class="(?i)zooout"] floating enable for_window [class="(?i)zooout"] floating enable
for_window [class="(?i)netsurf"] 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)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)cadence"] move container to workspace $ws7 floating enable
# for_window [class="(?i)catia"] 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 $ws6 output primary
workspace $ws7 output primary workspace $ws7 output primary
workspace $ws8 output primary workspace $ws8 output primary
workspace $ws9 output primary workspace $ws9 output HDMI-0
workspace $ws10 output eDP-1-0 workspace $ws10 output eDP
# move focused container to workspace # move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1 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) # 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+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" bindsym $mod+Shift+z exec "suspend-and-lock"
# resize window (you can also use the mouse for that) # resize window (you can also use the mouse for that)
@@ -264,27 +266,15 @@ bar {
output nonprimary output nonprimary
font pango:Iosevka Term, FontAwesome Bold 12px font pango:Iosevka Term, FontAwesome Bold 12px
colors { colors {
# bar background color
background $bg background $bg
# text color used for blocks that do not have a color specified.
statusline $fg statusline $fg
separator #666666
# workspaces section
# border backgr. text
focused_workspace $orange $orange $bg focused_workspace $orange $orange $bg
inactive_workspace $bg $aqua $bg inactive_workspace $aqua $bg $aqua
active_workspace $bg $blue $bg active_workspace $aqua $aqua $bg
urgent_workspace $red $red $fg urgent_workspace $red $red $fg
binding_mode $red $red $bg
# 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
} }
} }
@@ -297,15 +287,15 @@ bar {
status_command i3status-rs-with-env ~/.config/i3status-rust/config.toml status_command i3status-rs-with-env ~/.config/i3status-rust/config.toml
font pango:Iosevka Term, FontAwesome Bold 14px font pango:Iosevka Term, FontAwesome Bold 14px
colors { colors {
background #000000 background $bg
statusline #d5c4a1 statusline $fg
separator #666666 separator #666666
focused_workspace #B8BB26 #B8BB26 #3c3836 focused_workspace $orange $orange $bg
active_workspace #5f676a #5f676a #fbf1c7 inactive_workspace $aqua $bg $aqua
inactive_workspace #5f676a #5f676a #fbf1c7 active_workspace $aqua $aqua $bg
urgent_workspace #fb4934 #fb4934 #fbf1c7 urgent_workspace $red $red $fg
binding_mode #fb4934 #fb4934 #1d2021 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 # bindsym XF86Search exec --no-startup-id suspend-and-lock
# Volume control # Volume control
bindsym XF86AudioRaiseVolume 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@ -5% 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 XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle
# bindsym XF86AudioPrev exec --no-startup-id mpc prev # bindsym XF86AudioPrev exec --no-startup-id mpc prev

View File

@@ -1,4 +1,5 @@
shell fish shell fish
shell_integration no-sudo no-cursor
font_family Iosevka Custom Medium font_family Iosevka Custom Medium
font_size 12.0 font_size 12.0
@@ -8,7 +9,6 @@ bold_italic_font Iosevka Custom Bold
adjust_line_height 98% adjust_line_height 98%
cursor_shape block cursor_shape block
shell_integration no-cursor
scrollback_lines 2000 scrollback_lines 2000

423
config/mpd/mpd.conf Normal file
View File

@@ -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 <https://wiki.hydrogenaud.io/index.php?title=Replaygain> 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"
#
###############################################################################

View File

@@ -166,7 +166,7 @@ bind index,pager \CO sidebar-open
bind index,pager \Ck sidebar-prev bind index,pager \Ck sidebar-prev
bind index,pager \Cj sidebar-next bind index,pager \Cj sidebar-next
macro attach 'V' "<pipe-entry>cat > /tmp/mutt-preview.html && $HOME/bin/preview-html file:///tmp/mutt-preview.html; rm /tmp/mutt-preview.html<enter>" macro attach 'V' "<pipe-entry>cat > /tmp/share/mutt-preview.html && $HOME/bin/preview-html /tmp/share/mutt-preview.html; rm /tmp/share/mutt-preview.html<enter>"
macro index 'c' '<change-folder>?<change-dir><home>^K=<enter>' macro index 'c' '<change-folder>?<change-dir><home>^K=<enter>'
set mailcap_path = ~/.config/mutt/mailcap set mailcap_path = ~/.config/mutt/mailcap

View File

@@ -40,7 +40,8 @@ Plug 'ziglang/zig.vim'
Plug 'elixir-editors/vim-elixir' Plug 'elixir-editors/vim-elixir'
Plug 'mhinz/vim-mix-format' Plug 'mhinz/vim-mix-format'
Plug 'tomtom/tcomment_vim' " Plug 'tomtom/tcomment_vim'
Plug '~/Projects/libs/tcomment_vim'
Plug 'majutsushi/tagbar', { 'on': 'TagbarToggle' } Plug 'majutsushi/tagbar', { 'on': 'TagbarToggle' }
@@ -87,10 +88,10 @@ Plug 'lewis6991/gitsigns.nvim'
Plug 'tpope/vim-fugitive' Plug 'tpope/vim-fugitive'
Plug 'kassio/neoterm' Plug 'kassio/neoterm'
" Plug 'janko/vim-test'
Plug 'nvim-neotest/neotest' Plug 'vim-test/vim-test'
Plug 'olimorris/neotest-rspec' " Plug 'nvim-neotest/neotest'
" Plug 'olimorris/neotest-rspec'
Plug 'yssl/QFEnter' Plug 'yssl/QFEnter'
@@ -104,8 +105,8 @@ Plug 'McAuleyPenney/tidy.nvim' " Remove whitespaces
Plug 'Chiel92/vim-autoformat' Plug 'Chiel92/vim-autoformat'
Plug 'nvim-lua/plenary.nvim' Plug 'nvim-lua/plenary.nvim'
" Plug 'nvim-telescope/telescope.nvim' Plug 'nvim-telescope/telescope.nvim'
Plug 'junegunn/fzf.vim' " Plug 'junegunn/fzf.vim'
Plug 'MunifTanjim/nui.nvim' Plug 'MunifTanjim/nui.nvim'
Plug 'nvim-neo-tree/neo-tree.nvim' Plug 'nvim-neo-tree/neo-tree.nvim'
@@ -183,29 +184,28 @@ require'nvim-treesitter.configs'.setup {
} }
-- telescope -- telescope
-- require('telescope').setup{ require('telescope').setup{
-- -- defaults = {
-- -- layout_config = {
-- -- vertical = { width = 0.9 }
-- -- }
-- -- },
-- defaults = { -- defaults = {
-- preview = { -- layout_config = {
-- treesitter = false, -- vertical = { width = 0.9 }
-- },
-- },
-- pickers = {
-- find_files = {
-- theme = "ivy",
-- },
-- live_grep = {
-- theme = "ivy",
-- } -- }
-- }, -- },
-- } defaults = {
preview = {
treesitter = false,
},
},
pickers = {
find_files = {
theme = "ivy",
},
live_grep = {
theme = "ivy",
}
},
}
-- nvim-lspconfig -- nvim-lspconfig
local nvim_lsp = require('lspconfig') local nvim_lsp = require('lspconfig')
local nlspsettings = require("nlspsettings") local nlspsettings = require("nlspsettings")
@@ -264,15 +264,17 @@ end
-- map buffer local keybindings when the language server attaches -- map buffer local keybindings when the language server attaches
local servers = { local servers = {
'ansiblels', 'ansiblels',
-- 'arduino_language_server',
'bashls', 'bashls',
'ccls', -- 'ccls',
'clangd',
'erlangls', 'erlangls',
'eslint', 'eslint',
'gdscript', 'gdscript',
-- 'ruby_ls', -- 'ruby_lsp',
'solargraph', 'solargraph',
'stylelint_lsp', 'stylelint_lsp',
'tsserver', 'ts_ls',
'zls', 'zls',
} }
@@ -401,11 +403,11 @@ local function setup_diagnostics(client, buffer)
}) })
end end
nvim_lsp.ruby_ls.setup({ -- nvim_lsp.ruby_lsp.setup({
on_attach = function(client, buffer) -- on_attach = function(client, buffer)
setup_diagnostics(client, buffer) -- setup_diagnostics(client, buffer)
end, -- end,
}) -- })
-- Setup nvim-cmp. -- Setup nvim-cmp.
@@ -597,49 +599,49 @@ require("neo-tree").setup({
require('leap').set_default_keymaps() require('leap').set_default_keymaps()
require('neotest').setup({ -- require('neotest').setup({
icons = { -- icons = {
-- Ascii: -- -- Ascii:
-- { "/", "|", "\\", "-", "/", "|", "\\", "-"}, -- -- { "/", "|", "\\", "-", "/", "|", "\\", "-"},
-- Unicode: -- -- Unicode:
-- { "", "🞅", "🞈", "🞉", "", "", "🞉", "🞈", "🞅", "", }, -- -- { "", "🞅", "🞈", "🞉", "", "", "🞉", "🞈", "🞅", "", },
-- {"◴" ,"◷" ,"◶", "◵"}, -- -- {"◴" ,"◷" ,"◶", "◵"},
-- {"◢", "◣", "◤", "◥"}, -- -- {"◢", "◣", "◤", "◥"},
-- {"◐", "◓", "◑", "◒"}, -- -- {"◐", "◓", "◑", "◒"},
-- {"◰", "◳", "◲", "◱"}, -- -- {"◰", "◳", "◲", "◱"},
-- {"⣾", "⣽", "⣻", "⢿", "⡿", "⣟", "⣯", "⣷"}, -- -- {"⣾", "⣽", "⣻", "⢿", "⡿", "⣟", "⣯", "⣷"},
-- {"⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"}, -- -- {"⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"},
-- {"⠋", "⠙", "⠚", "⠞", "⠖", "⠦", "⠴", "⠲", "⠳", "⠓"}, -- -- {"⠋", "⠙", "⠚", "⠞", "⠖", "⠦", "⠴", "⠲", "⠳", "⠓"},
-- {"⠄", "⠆", "⠇", "⠋", "⠙", "⠸", "⠰", "⠠", "⠰", "⠸", "⠙", "⠋", "⠇", "⠆"}, -- -- {"⠄", "⠆", "⠇", "⠋", "⠙", "⠸", "⠰", "⠠", "⠰", "⠸", "⠙", "⠋", "⠇", "⠆"},
-- { "⠋", "⠙", "⠚", "⠒", "⠂", "⠂", "⠒", "⠲", "⠴", "⠦", "⠖", "⠒", "⠐", "⠐", "⠒", "⠓", "⠋" }, -- -- { "⠋", "⠙", "⠚", "⠒", "⠂", "⠂", "⠒", "⠲", "⠴", "⠦", "⠖", "⠒", "⠐", "⠐", "⠒", "⠓", "⠋" },
running_animated = {"⣷", "⣯", "⣟", "⡿", "⢿", "⣻", "⣽", "⣾"}, -- running_animated = {"⣷", "⣯", "⣟", "⡿", "⢿", "⣻", "⣽", "⣾"},
passed = " ", -- passed = " ",
running = " ", -- running = " ",
failed = " ", -- failed = " ",
skipped = "-", -- skipped = "-",
unknown = "🞅", -- unknown = "🞅",
non_collapsible = "─", -- non_collapsible = "─",
collapsed = "─", -- collapsed = "─",
expanded = "╮", -- expanded = "╮",
child_prefix = "├", -- child_prefix = "├",
final_child_prefix = "╰", -- final_child_prefix = "╰",
child_indent = "│", -- child_indent = "│",
final_child_indent = " ", -- final_child_indent = " ",
}, -- },
adapters = { -- adapters = {
require('neotest-rspec')({ -- require('neotest-rspec')({
rspec_cmd = function() -- rspec_cmd = function()
return vim.tbl_flatten({ -- return vim.tbl_flatten({
"rspec", -- "rspec",
}) -- })
end -- end
}) -- })
}, -- },
quickfix = { -- quickfix = {
enabled = false, -- enabled = false,
open = false -- open = false
}, -- },
}) -- })
-- local null_ls = require("null-ls") -- local null_ls = require("null-ls")
-- --
@@ -657,20 +659,27 @@ require('neotest').setup({
-- buf_set_keymap('n', '<Leader>tn', '<cmd>lua require('neotest').run.run()<CR>', opts) -- buf_set_keymap('n', '<Leader>tn', '<cmd>lua require('neotest').run.run()<CR>', opts)
-- buf_set_keymap('n', '<space>f', '<cmd>lua vim.lsp.buf.formatting()<CR>', opts) -- buf_set_keymap('n', '<space>f', '<cmd>lua vim.lsp.buf.formatting()<CR>', opts)
-- nnoremap <Leader>tn :TestNearest<CR>
-- nnoremap <Leader>tf :TestFile<CR>
-- nnoremap <Leader>ts :TestSuite<CR>
EOF EOF
" neotest keybindings " neotest keybindings
nnoremap <Leader>tn <cmd>lua require("neotest").run.run()<CR> " nnoremap <Leader>tn <cmd>lua require("neotest").run.run()<CR>
nnoremap <Leader>ts <cmd>lua require("neotest").run.stop()<CR> " nnoremap <Leader>ts <cmd>lua require("neotest").run.stop()<CR>
nnoremap <Leader>tf <cmd>lua require("neotest").run.run(vim.fn.expand("%"))<CR> " nnoremap <Leader>tf <cmd>lua require("neotest").run.run(vim.fn.expand("%"))<CR>
nnoremap <Leader>tt <cmd>lua require("neotest").summary.open()<CR> " nnoremap <Leader>tt <cmd>lua require("neotest").summary.open()<CR>
nnoremap <Leader>ta <cmd>lua require("neotest").run.attach()<CR> " nnoremap <Leader>ta <cmd>lua require("neotest").run.attach()<CR>
nnoremap <Leader>to <cmd>lua require("neotest").output.open({ enter = true })<CR> " nnoremap <Leader>to <cmd>lua require("neotest").output.open({ enter = true })<CR>
nnoremap <silent>[n <cmd>lua require("neotest").jump.prev({ status = "failed" })<CR> " nnoremap <silent>[n <cmd>lua require("neotest").jump.prev({ status = "failed" })<CR>
nnoremap <silent>]n <cmd>lua require("neotest").jump.next({ status = "failed" })<CR> " nnoremap <silent>]n <cmd>lua require("neotest").jump.next({ status = "failed" })<CR>
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 <Leader>tn :TestNearest<CR>
nnoremap <Leader>tf :TestFile<CR>
nnoremap <Leader>ts :TestSuite<CR>
" EditorConfig " EditorConfig
let g:EditorConfig_exclude_patterns = ['fugitive://.*', 'scp://.*'] let g:EditorConfig_exclude_patterns = ['fugitive://.*', 'scp://.*']
@@ -681,7 +690,7 @@ silent! map <F4> :NeoTreeReveal<CR>
" Lightline " Lightline
let g:lightline = { let g:lightline = {
\ 'colorscheme': 'gruvbox', \ 'colorscheme': 'powerlineish',
\ 'component_function': { \ 'component_function': {
\ 'gitbranch': 'FugitiveHead' \ 'gitbranch': 'FugitiveHead'
\ }, \ },
@@ -877,18 +886,31 @@ nnoremap <C-h> <C-w>h
nnoremap <C-l> <C-w>l nnoremap <C-l> <C-w>l
" telescope " telescope
" nnoremap <C-p> <cmd>lua require('telescope.builtin').find_files()<CR> nnoremap <C-p> <cmd>lua require('telescope.builtin').find_files()<CR>
" nnoremap <leader>g <cmd>lua require('telescope.builtin').live_grep()<CR> nnoremap <leader>g <cmd>lua require('telescope.builtin').live_grep()<CR>
" nnoremap <leader>b <cmd>lua require('telescope.builtin').buffers()<CR> nnoremap <leader>b <cmd>lua require('telescope.builtin').buffers()<CR>
" nnoremap <leader>h <cmd>lua require('telescope.builtin').help_tags()<CR> nnoremap <leader>h <cmd>lua require('telescope.builtin').help_tags()<CR>
" FZF " FZF
let g:fzf_layout = { 'down': '30%' } " let g:fzf_layout = { 'down': '50%' }
let g:fzf_vim = {} " let g:fzf_vim = {}
let g:fzf_vim.preview_window = ['right,50%', 'ctrl-/'] " let g:fzf_vim.listproc = { list -> fzf#vim#listproc#quickfix(list) }
" let g:fzf_vim.preview_window = ['right,50%', 'ctrl-/']
nnoremap <C-p> :FZF<CR> "
nnoremap <leader>g :Rg<CR> " 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 <C-p> :FZF<CR>
" nnoremap <leader>g :Rg<CR>
" LSP SEMANTIC HIGHLIGHTS " LSP SEMANTIC HIGHLIGHTS
" hi @lsp.type.variable guifg=GruvboxFg1 " hi @lsp.type.variable guifg=GruvboxFg1

View File

@@ -43,5 +43,6 @@ lon=44.622852
; ex: 'redshift -m randr:help' ; ex: 'redshift -m randr:help'
; In this example, randr is configured to adjust screen 1. ; In this example, randr is configured to adjust screen 1.
; Note that the numbering starts from 0, so this is actually the second screen. ; Note that the numbering starts from 0, so this is actually the second screen.
; [randr] [randr]
; screen=0 screen=0
crtc=0

View File

@@ -27,9 +27,9 @@ uda.totalactivetime.label=Total active time
uda.totalactivetime.values= uda.totalactivetime.values=
uda.priority.values=H,M,,L 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.L.coefficient=0.5
urgency.uda.priority.M.coefficient=2.0 urgency.uda.priority.M.coefficient=1.0
default.command=list 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.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 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

View File

@@ -2,7 +2,7 @@
## arkenfox user.js updater for macOS and Linux ## arkenfox user.js updater for macOS and Linux
## version: 3.9 ## version: 4.0
## Author: Pat Johnson (@overdodactyl) ## Author: Pat Johnson (@overdodactyl)
## Additional contributors: @earthlng, @ema-pe, @claustromaniac, @infinitewarp ## Additional contributors: @earthlng, @ema-pe, @claustromaniac, @infinitewarp
@@ -393,11 +393,11 @@ update_updater "$@"
getProfilePath # updates PROFILE_PATH or exits on error getProfilePath # updates PROFILE_PATH or exits on error
cd "$PROFILE_PATH" || exit 1 cd "$PROFILE_PATH" || exit 1
# Check if any files have the owner/group as root/wheel. # Check if any files have the owner as root/wheel.
if [ -n "$(find ./ -user 0 -o -group 0)" ]; then if [ -n "$(find ./ -user 0)" ]; then
printf 'It looks like this script was previously run with elevated privileges, 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' 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" cd "$CURRDIR"
exit 1 exit 1
fi fi

View File

@@ -42,7 +42,7 @@ user_pref("privacy.sanitize.timeSpan", 2);
// -------------------------------------------------------------------------- // // -------------------------------------------------------------------------- //
user_pref("geo.enabled", false); 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.geo", 0);
user_pref("permissions.default.camera", 0); user_pref("permissions.default.camera", 0);
user_pref("permissions.default.microphone", 0); user_pref("permissions.default.microphone", 0);

View File

@@ -21,6 +21,15 @@ export DOCKER_HOST=unix:///var/run/docker.sock
export WINEFSYNC=1 export WINEFSYNC=1
export SUDO_ASKPASS=/usr/bin/ssh-askpass-fullscreen 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 # TrackPoint+Middleclick scroll
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 1 xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 1
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 2 xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 2