add gitignore and update files

This commit is contained in:
m3philis
2025-03-17 21:28:22 +01:00
parent 9eadf45634
commit e798659b5c
51 changed files with 3790 additions and 3 deletions

31
.gitignore vendored Normal file
View File

@@ -0,0 +1,31 @@
1Password/
Chiaki/
Code/
Creality/
GIMP/
Thunar/
VirtualBox/
YouTube Music/
Yubico/
calibre/
cura/
dconf/
firefox/
google-chrome/
gopass/
gh/
hcloud/
keybase/
mc/
mimeapps.list
nvim/plugged/
obs-studio/
pavucontrol.ini
pipewire/
systemd/user/default.target.wants/
vesktop/
vlc/
wavemon/
weechat/
wireshark/
xfce4/

248
btop/btop.conf Normal file
View File

@@ -0,0 +1,248 @@
#? Config file for btop v. 1.4.0
#* 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"
color_theme = "Default"
#* If the theme set background should be shown, set to False if you want terminal background transparency.
theme_background = False
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
truecolor = True
#* Set to true to force tty mode regardless if a real tty has been detected or not.
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
force_tty = False
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
#* Use whitespace " " as separator between different presets.
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
vim_keys = False
#* Rounded corners on boxes, is ignored if TTY mode is ON.
rounded_corners = True
#* Default symbols to use for graph creation, "braille", "block" or "tty".
#* "braille" offers the highest resolution but might not be included in all fonts.
#* "block" has half the resolution of braille but uses more common characters.
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
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"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
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" 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 = 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.
proc_sorting = "cpu direct"
#* Reverse sorting order, True or False.
proc_reversed = False
#* Show processes as a tree.
proc_tree = False
#* Use the cpu graph colors in the process list.
proc_colors = True
#* Use a darkening gradient in the process list.
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
#* Show process memory as bytes instead of percent.
proc_mem_bytes = True
#* Show cpu graph for each process.
proc_cpu_graphs = True
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
proc_info_smaps = False
#* Show proc box on left side of screen instead of right.
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 = "Auto"
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_lower = "Auto"
#* 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
#* Set to True to completely disable the lower CPU graph.
cpu_single_graph = False
#* Show cpu box at bottom of screen instead of top.
cpu_bottom = False
#* Shows the system uptime in the CPU box.
show_uptime = True
#* Show cpu temperature.
check_temp = True
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
cpu_sensor = "Auto"
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
show_coretemp = True
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
#* Example: "4:0 5:1 6:3"
cpu_core_map = ""
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
temp_scale = "celsius"
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
base_10_sizes = False
#* Show CPU frequency.
show_cpu_freq = True
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
clock_format = "%X"
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
background_update = True
#* Custom cpu model name, empty string to disable.
custom_cpu_name = ""
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
#* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user".
disks_filter = ""
#* Show graphs instead of meters for memory values.
mem_graphs = True
#* Show mem box below net box instead of above.
mem_below_net = False
#* Count ZFS ARC in cached and available memory.
zfs_arc_cached = True
#* If swap memory should be shown in memory box.
show_swap = True
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
swap_disk = True
#* If mem box should be split to also show disks info.
show_disks = True
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
only_physical = True
#* Read disks list from /etc/fstab. This also disables only_physical.
use_fstab = True
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
zfs_hide_datasets = False
#* Set to true to show available disk space for privileged users.
disk_free_priv = False
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
show_io_stat = True
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
io_mode = False
#* Set to True to show combined read/write io graphs in io mode.
io_graph_combined = False
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
#* Example: "/mnt/media:100 /:20 /boot:1".
io_graph_speeds = ""
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
net_download = 100
net_upload = 100
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
net_auto = True
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
net_sync = True
#* Starts with the Network Interface specified here.
net_iface = ""
#* Show battery stats in top right if battery is present.
show_battery = True
#* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "BAT0"
#* 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"
#* 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 = ""

7
displays/lock Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
#scrot screenshot.png -m -e 'mv $f /tmp/'
#convert /tmp/screenshot.png -blur 0x7 /tmp/screenshotblur.png
#i3lock -t -i /tmp/screenshotblur.png
i3lock -t -i $(find $HOME/pictures/lockscreen -type f | shuf -n1)

BIN
displays/lock_wallpaper.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 KiB

BIN
displays/lock_wallpaper.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 896 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

35
displays/motherbase-setup Executable file
View File

@@ -0,0 +1,35 @@
#!/bin/bash
PLACE=$1
INTERNAL=$(xrandr | grep eDP | cut -d' ' -f1)
case $PLACE in
single)
for display in $(xrandr | grep -v '^ ' | grep -v '^Screen' | grep ' connected' | cut -d' ' -f1)
do
xrandr --output "${display}" --off
done
xrandr --output "${INTERNAL}" --mode 1920x1080
systemctl --user stop polybar@hdmi.service
systemctl --user stop polybar@external.service
systemctl --user restart polybar@internal.service
;;
home)
xrandr --output "${INTERNAL}" --off
xrandr --output DP1-2 --primary --auto
xrandr --output DP2-1 --left-of DP2-2 --auto
systemctl --user stop polybar@hdmi.service
systemctl --user restart polybar@external.service
systemctl --user restart polybar@internal.service
;;
work)
xrandr --output "${INTERNAL}" --off
xrandr --output HDMI2 --auto --right-of DP1-2
xrandr --output DP1-2 --auto --primary
systemctl --user restart polybar@hdmi.service
systemctl --user restart polybar@external.service
systemctl --user stop polybar@internal.service
;;
esac

26
displays/outerhaven-setup Executable file
View File

@@ -0,0 +1,26 @@
#!/bin/bash
PLACE=$1
INTERNAL=$(xrandr | grep eDP | cut -d' ' -f1)
case $PLACE in
single)
for display in $(xrandr | grep -v '^ ' | grep -v '^Screen' | grep ' connected' | cut -d' ' -f1)
do
xrandr --output "${display}" --off
done
xrandr --output "${INTERNAL}" --mode 1920x1080
systemctl --user stop polybar@hdmi.service
systemctl --user stop polybar@external.service
systemctl --user restart polybar@internal.service
;;
work)
xrandr --output "${INTERNAL}" --off
xrandr --output HDMI-2 --auto --right-of DP-1-2
xrandr --output DP-1-2 --auto --primary
systemctl --user restart polybar@hdmi.service
systemctl --user restart polybar@external.service
systemctl --user stop polybar@internal.service
;;
esac

58
displays/shadowmoses-setup Executable file
View File

@@ -0,0 +1,58 @@
#!/bin/bash
set -x
PLACE=$1
#xrandr | grep -A1 'DisplayPort.* connected' | while read -r display
#do
# echo $display | tail -n1 | grep 2560
# if [ $? -eq 0 ]
# then
# WQHD=$(echo $display | head -n1 | cut -d" " -f1)
# else
# FULLHD=$(echo $display | head -n1 | cut -d" " -f1)
# fi
#done
INTERNAL=$(xrandr | grep eDP | cut -d' ' -f1)
QUADHD_RIGHT=DisplayPort-0
QUADHD_LEFT=DisplayPort-1
#deactivate()
case $PLACE in
single)
for display in $(xrandr --query | grep -v ' connected' | cut -d' ' -f1)
do
if [ $display == "eDP" ]
then
true
else
xrandr --output "${display}" --off
fi
done
xrandr --output "${INTERNAL}" --auto --primary
systemctl --user restart polybar@main.service
systemctl --user stop polybar@quadhd_left.service
systemctl --user stop polybar@quadhd_right.service
;;
home)
xrandr --output "${INTERNAL}" --off
xrandr --output "${QUADHD_LEFT}" --auto --primary
xrandr --output "${QUADHD_RIGHT}" --auto --right-of "${QUADHD_LEFT}"
systemctl --user stop polybar@main.service
systemctl --user restart polybar@quadhd_left.service
systemctl --user restart polybar@quadhd_right.service
;;
home-single)
xrandr --output "${INTERNAL}" --off
xrandr --output "${QUADHD_RIGHT}" --off
xrandr --output "${QUADHD_LEFT}" --auto --primary
systemctl --user stop polybar@main.service
systemctl --user restart polybar@quadhd_left.service
systemctl --user stop polybar@quadhd_right.service
;;
esac

Binary file not shown.

After

Width:  |  Height:  |  Size: 599 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

11
feh/motherbase-random Executable file
View File

@@ -0,0 +1,11 @@
#!/bin/bash
THEME=cyberpunk
ROTATED=$(xrandr --listmonitors | grep '1080.*x1920')
if [[ $ROTATED ]]
then
feh --bg-scale $(find $HOME/pictures/wallpaper/${THEME} -type f | shuf -n1) --bg-scale $(find $HOME/pictures/wallpaper/${THEME} -type f | shuf -n1) --bg-scale $(find $HOME/pictures/wallpaper/${THEME}_rotated -type f | shuf -n1)
else
feh --bg-scale -z $HOME/pictures/wallpaper/${THEME}
fi

11
feh/outerhaven-random Executable file
View File

@@ -0,0 +1,11 @@
#!/bin/bash
THEME=pirate_ships
ROTATED=$(xrandr --listmonitors | grep '1080.*x1920')
if [[ $ROTATED ]]
then
feh --bg-scale $(find $HOME/pictures/wallpaper/${THEME}_rotated -type f | shuf -n1) --bg-scale $(find $HOME/pictures/wallpaper/${THEME} -type f | shuf -n1)
else
feh --bg-scale -z $HOME/pictures/wallpaper/${THEME}
fi

11
feh/shadowmoses-random Executable file
View File

@@ -0,0 +1,11 @@
#! /bin/bash
THEME=shoujo_ai
ROTATED=$(xrandr --listmonitors | grep '1080.*x1920')
if [[ $ROTATED ]]
then
feh --bg-scale $(find $HOME/pictures/wallpaper/${THEME} -type f | shuf -n1) --bg-scale $(find $HOME/pictures/wallpaper/${THEME} -type f | shuf -n1) --bg-scale $(find $HOME/pictures/wallpaper/${THEME}_rotated -type f | shuf -n1)
else
feh --bg-fill -z $HOME/pictures/wallpaper/${THEME}
fi

View File

@@ -0,0 +1,17 @@
function __fish_._etherlight.py_complete
set -x _ARGCOMPLETE 1
set -x _ARGCOMPLETE_DFS \t
set -x _ARGCOMPLETE_IFS \n
set -x _ARGCOMPLETE_SUPPRESS_SPACE 1
set -x _ARGCOMPLETE_SHELL fish
set -x COMP_LINE (commandline -p)
set -x COMP_POINT (string length (commandline -cp))
set -x COMP_TYPE
if set -q _ARC_DEBUG
./etherlight.py 8>&1 9>&2 1>&9 2>&1
else
./etherlight.py 8>&1 9>&2 1>/dev/null 2>&1
end
end
complete --path ./etherlight.py -f -a '(__fish_._etherlight.py_complete)'

19
ghostty/config Normal file
View File

@@ -0,0 +1,19 @@
font-family = "Iosevka Term"
font-family-bold = "Iosevka Term"
font-family-italic = "Iosevka Term"
font-family-bold-italic = "Iosevka Term"
font-size = 11
cursor-style = bar
cursor-style-blink = false
background-opacity = 0.85
window-decoration = false
focus-follows-mouse = true
theme = MaterialDesignColors
keybind = ctrl+shift+f=toggle_split_zoom

23
git/config Normal file
View File

@@ -0,0 +1,23 @@
[pull]
rebase = true
[user]
email = git@m3philis.com
name = m3philis
signingkey = 8ED634A8618F69F0C0D423AC21F947246992CF4D
[commit]
gpgSign = true
[pager]
branch = false
[alias]
ap = add -p
chk = checkout
cm = commit
ps = push
po = "!f() { \
git push --set-upstream origin $(git branch --show-current); \
}; f"
pl = pull
[init]
defaultBranch = main
[push]
autoSetupRemote = true

215
i3/config Executable file
View File

@@ -0,0 +1,215 @@
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout somewhen, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
default_border pixel 0
gaps inner 6
#hide_edge_borders both
focus_follows_mouse yes
workspace_auto_back_and_forth yes
force_display_urgency_hint 500 ms
# color
client.focused #4c94af #4c94af #191919 #4c94af
client.focused_inactive #333333 #5f676a #ffffff #484e50
client.unfocused #333333 #222222 #888888 #292d2e
client.urgent #DD1111 #DD1111 #191919 #DD1111
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below. ISO 10646 = Unicode
#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
font pango:Iosevka Term Regular 10
# The font above is very space-efficient, that is, it looks good, sharp and
# clear in small sizes. However, if you need a lot of unicode glyphs or
# right-to-left text rendering, you should instead use pango for rendering and
# chose a FreeType font, such as:
# font pango:DejaVu Sans Mono 10
# windows rules
for_window [class="org.remmina.Remmina"] floating enable
for_window [class="feh"] floating enable
for_window [class="Pavucontrol"] floating enable
for_window [class="Slack"] floating enable
for_window [class="discord"] floating enable
for_window [all] border pixel 0
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
bindsym $mod+Return exec ghostty
# kill focused window
bindsym $mod+Shift+q kill
# Make the currently focused window a scratchpad
bindsym $mod+Shift+minus move scratchpad
# Show the first scratchpad window
bindsym $mod+minus scratchpad show
# start dmenu (a program launcher)
bindsym $mod+r exec "bemenu-run -b --nb '#191919' --sb '#191919' --nf '#4c94af' --sf '#4E9A06' --fn 'Iosevka Term 11'"
# change focus
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+i focus up
bindsym $mod+l focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
bindsym Mod1+Tab focus right
bindsym Mod1+Shift+Tab focus left
# move focused window
#bindsym $mod+Shift+j move left
#bindsym $mod+Shift+k move down
#bindsym $mod+Shift+i move up
#bindsym $mod+Shift+l move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
#bindsym $mod+Tab move scratchpad
#bindsym $mod+Shift+Tab scratchpad show
# split in horizontal orientation
bindsym $mod+h split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+Tab focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# switch to workspace
bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+u workspace prev_on_output
bindsym $mod+o workspace next_on_output
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
# move focused workspace to screen
bindsym $mod+Shift+i move workspace to output down
bindsym $mod+Shift+k move workspace to output up
bindsym $mod+Shift+u move workspace to output left
bindsym $mod+Shift+o move workspace to output right
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
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'"
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym $mod+Ctrl+j resize shrink width 10 px or 10 ppt
bindsym $mod+Ctrl+i resize grow height 10 px or 10 ppt
bindsym $mod+Ctrl+k resize shrink height 10 px or 10 ppt
bindsym $mod+Ctrl+l resize grow width 10 px or 10 ppt
# Keybindings for Background
#bindsym $mod+Shift+n exec "~/.config/feh/random"
bindsym $mod+Shift+n exec "~/.config/feh/$(hostname)-random"
# Lockscreen
bindsym $mod+Shift+l exec "~/.config/displays/lock"
bindsym $mod+Shift+s exec "systemctl suspend; ~/.config/displays/lock"
# Pass Passmenu
bindsym $mod+p exec "~/.local/bin/passmenu-user -b"
bindsym $mod+Shift+p exec "~/.local/bin/passmenu -b"
# Screenshot
bindsym $mod+XF86WakeUp exec "scrot '%Y-%m-%d_%T.png' -e 'mv $f ~/pictures/screenshots'"
# Screens
bindsym XF86Display exec "~/.config/displays/$(hostname)-setup single"
bindsym Mod1+$mod+1 exec "~/.config/displays/$(hostname)-setup single"
bindsym Mod1+$mod+2 exec "~/.config/displays/$(hostname)-setup home"
bindsym Mod1+$mod+3 exec "~/.config/displays/$(hostname)-setup home-single"
bindsym Control+Mod1+End exec "ddcutil --display 2 setvcp 0x60 0x0f"
bindsym Control+Mod1+Home exec "ddcutil --display 1 setvcp 0x60 0x0f"
# Brightness
bindsym XF86MonBrightnessDown exec "light -U 10"
bindsym XF86MonBrightnessUp exec "light -A 10"
# Sound
bindsym XF86AudioRaiseVolume exec "$HOME/.local/bin/pulseaudio increase"
bindsym XF86AudioLowerVolume exec "$HOME/.local/bin/pulseaudio decrease"
bindsym XF86AudioMute exec "$HOME/.local/bin/pulseaudio mute"
exec_always --no-startup-id "systemctl --user start polybar@main"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
#bar {
# status_command ~/.i3/conky.sh
# position top
# tray_output primary
# mode dock
# font pango:Andale Mono 8
# colors {
# background #191919
# statusline #D4D4D4
# separator #191919
# focused_workspace #4c94af #191919 #4c94af
# active_workspace #222222 #191919 #4c94af
# inactive_workspace #222222 #191919 #4c94af
# urgent_workspace #DD1111 #191919 #4c94af
# }
#}

946
neofetch/config.conf Normal file
View File

@@ -0,0 +1,946 @@
# See this wiki page for more info:
# https://github.com/dylanaraps/neofetch/wiki/Customizing-Info
print_info() {
info title
info underline
info "OS" distro
info "Host" model
info "Kernel" kernel
info "Uptime" uptime
info "Packages" packages
info "Shell" shell
info "Editor" editor
info "Resolution" resolution
info "DE" de
info "WM" wm
info "WM Theme" wm_theme
info "Theme" theme
info "Icons" icons
info "Cursor" cursor
info "Terminal" term
info "Terminal Font" term_font
info "CPU" cpu
info "GPU" gpu
info "Memory" memory
info "Network" network
info "Bluetooth" bluetooth
info "BIOS" bios
# info "GPU Driver" gpu_driver # Linux/macOS only
# info "Disk" disk
# info "Battery" battery
# info "Power Adapter" power_adapter # macOS only
# info "Font" font
# info "Song" song
# [[ "$player" ]] && prin "Music Player" "$player"
# info "Local IP" local_ip
# info "Public IP" public_ip
# info "Users" users
# info "Locale" locale # This only works on glibc systems.
# info "Java" java_ver
# info "Python" python_ver
# info "Node" node_ver
info cols
}
# Title
# Hide/Show Fully qualified domain name.
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --title_fqdn
title_fqdn="off"
# Kernel
# Shorten the output of the kernel function.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --kernel_shorthand
# Supports: Everything except *BSDs (except PacBSD and PC-BSD)
#
# Example:
# on: '4.8.9-1-ARCH'
# off: 'Linux 4.8.9-1-ARCH'
kernel_shorthand="on"
# Distro
# Shorten the output of the distro function
#
# Default: 'off'
# Values: 'on', 'tiny', 'off'
# Flag: --distro_shorthand
# Supports: Everything except Windows and Haiku
distro_shorthand="off"
# Show/Hide OS Architecture.
# Show 'x86_64', 'x86' and etc in 'Distro:' output.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --os_arch
#
# Example:
# on: 'Arch Linux x86_64'
# off: 'Arch Linux'
os_arch="on"
# Uptime
# Shorten the output of the uptime function
#
# Default: 'on'
# Values: 'on', 'tiny', 'off'
# Flag: --uptime_shorthand
#
# Example:
# on: '2 days, 10 hours, 3 mins'
# tiny: '2d 10h 3m'
# off: '2 days, 10 hours, 3 minutes'
uptime_shorthand="on"
# Memory
# Show memory percentage in output.
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --memory_percent
#
# Example:
# on: '1801MiB / 7881MiB (22%)'
# off: '1801MiB / 7881MiB'
memory_percent="on"
# Change memory output unit.
#
# Default: 'mib'
# Values: 'kib', 'mib', 'gib', 'tib'
# Flag: --memory_unit
#
# Example:
# kib '1020928KiB / 7117824KiB'
# mib '1042MiB / 6951MiB'
# gib: ' 0.98GiB / 6.79GiB'
memory_unit="gib"
# Change memory output precision.
#
# Default: '2'
# Values: integer ≥ 0
# Flag: --memory_precision
mem_precision=2
# Packages
# Show/Hide Package Manager names.
#
# Default: 'tiny'
# Values: 'on', 'tiny' 'off'
# Flag: --package_managers
#
# Example:
# on: '998 (pacman), 8 (flatpak), 4 (snap)'
# tiny: '908 (pacman, flatpak, snap)'
# off: '908'
package_managers="on"
# Show separate user and system packages for supported package managers
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --package_separate
#
# Example:
# on: '8 packages (flatpak-system), 9 packages (flatpak-user)'
# off: '17 packages (flatpak)'
package_separate="on"
# Shell
# Show the path to $SHELL
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --shell_path
#
# Example:
# on: '/bin/bash'
# off: 'bash'
shell_path="off"
# Show $SHELL version
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --shell_version
#
# Example:
# on: 'bash 4.4.5'
# off: 'bash'
shell_version="on"
# Editor
# Show path to $EDITOR
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --editor_path
#
# Example:
# on: '/opt/bin/vim'
# off: 'vim'
editor_path="off"
# Show $EDITOR version
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: '--editor_version'
#
# Example:
# on: 'vim 9.0'
# off: 'vim'
editor_version="on"
# CPU
# CPU speed type
#
# Default: 'bios_limit'
# Values: 'scaling_cur_freq', 'scaling_min_freq', 'scaling_max_freq', 'bios_limit'.
# Flag: --speed_type
# Supports: Linux with 'cpufreq'
# NOTE: Any file in '/sys/devices/system/cpu/cpu0/cpufreq' can be used as a value.
speed_type="bios_limit"
# CPU speed shorthand
#
# Default: 'off'
# Values: 'on', 'off'.
# Flag: --speed_shorthand
# NOTE: This flag is not supported in systems with CPU speed less than 1 GHz
#
# Example:
# on: 'i7-6500U (4) @ 3.1GHz'
# off: 'i7-6500U (4) @ 3.100GHz'
speed_shorthand="on"
# Enable/Disable CPU brand in output.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --cpu_brand
#
# Example:
# on: 'Intel i7-6500U'
# off: 'i7-6500U (4)'
cpu_brand="on"
# CPU Speed
# Hide/Show CPU speed.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --cpu_speed
#
# Example:
# on: 'Intel i7-6500U (4) @ 3.1GHz'
# off: 'Intel i7-6500U (4)'
cpu_speed="on"
# CPU Cores
# Display CPU cores in output
#
# Default: 'logical'
# Values: 'logical', 'physical', 'off'
# Flag: --cpu_cores
# Support: 'physical' doesn't work on BSD.
#
# Example:
# logical: 'Intel i7-6500U (4) @ 3.1GHz' (All virtual cores)
# physical: 'Intel i7-6500U (2) @ 3.1GHz' (All physical cores)
# off: 'Intel i7-6500U @ 3.1GHz'
cpu_cores="logical"
# CPU Temperature
# Hide/Show CPU temperature.
# Note the temperature is added to the regular CPU function.
#
# Default: 'off'
# Values: 'C', 'F', 'off'
# Flag: --cpu_temp
# Supports: Linux, BSD
# NOTE: For FreeBSD and NetBSD-based systems, you'll need to enable
# coretemp kernel module. This only supports newer Intel processors.
#
# Example:
# C: 'Intel i7-6500U (4) @ 3.1GHz [27.2°C]'
# F: 'Intel i7-6500U (4) @ 3.1GHz [82.0°F]'
# off: 'Intel i7-6500U (4) @ 3.1GHz'
cpu_temp="off"
# GPU
# Enable/Disable GPU Brand
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --gpu_brand
#
# Example:
# on: 'AMD HD 7950'
# off: 'HD 7950'
gpu_brand="on"
# Which GPU to display
#
# Default: 'all'
# Values: 'all', 'dedicated', 'integrated'
# Flag: --gpu_type
# Supports: Linux
#
# Example:
# all:
# GPU1: AMD HD 7950
# GPU2: Intel Integrated Graphics
#
# dedicated:
# GPU1: AMD HD 7950
#
# integrated:
# GPU1: Intel Integrated Graphics
gpu_type="all"
# Resolution
# Display refresh rate next to each monitor
# Default: 'off'
# Values: 'on', 'off'
# Flag: --refresh_rate
# Supports: Doesn't work on Windows.
#
# Example:
# on: '1920x1080 @ 60Hz'
# off: '1920x1080'
refresh_rate="on"
# Gtk Theme / Icons / Font
# Shorten output of GTK Theme / Icons / Font
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --gtk_shorthand
#
# Example:
# on: 'Numix, Adwaita'
# off: 'Numix [GTK2], Adwaita [GTK3]'
gtk_shorthand="off"
# Enable/Disable gtk2 Theme / Icons / Font
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --gtk2
#
# Example:
# on: 'Numix [GTK2], Adwaita [GTK3]'
# off: 'Adwaita [GTK3]'
gtk2="on"
# Enable/Disable gtk3 Theme / Icons / Font
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --gtk3
#
# Example:
# on: 'Numix [GTK2], Adwaita [GTK3]'
# off: 'Numix [GTK2]'
gtk3="on"
# Enable/Disable Qt Theme / Icons / Font
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --qt
#
# Example:
# on: 'Breeze [Qt], Arc [GTK3]'
# off: 'Arc [GTK3]'
qt="on"
# IP Address
# Website to ping for the public IP
#
# Default: 'http://ident.me'
# Values: 'url'
# Flag: --ip_host
public_ip_host="http://ident.me"
# Public IP timeout.
#
# Default: '2'
# Values: 'int'
# Flag: --ip_timeout
public_ip_timeout=2
# Local IP interface
#
# Default: 'auto' (interface of default route)
# Values: 'auto', 'en0', 'en1'
# Flag: --ip_interface
local_ip_interface=('auto')
# Desktop Environment
# Show Desktop Environment version
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --de_version
de_version="on"
# Disk
# Which disks to display.
# The values can be any /dev/sdXX, mount point or directory.
# NOTE: By default we only show the disk info for '/'.
#
# Default: '/'
# Values: '/', '/dev/sdXX', '/path/to/drive'.
# Flag: --disk_show
#
# Example:
# disk_show=('/' '/dev/sdb1'):
# 'Disk (/): 74G / 118G (66%)'
# 'Disk (/mnt/Videos): 823G / 893G (93%)'
#
# disk_show=('/'):
# 'Disk (/): 74G / 118G (66%)'
#
disk_show=('/')
# Disk subtitle.
# What to append to the Disk subtitle.
#
# Default: 'mount'
# Values: 'mount', 'name', 'dir', 'none'
# Flag: --disk_subtitle
#
# Example:
# name: 'Disk (/dev/sda1): 74G / 118G (66%)'
# 'Disk (/dev/sdb2): 74G / 118G (66%)'
#
# mount: 'Disk (/): 74G / 118G (66%)'
# 'Disk (/mnt/Local Disk): 74G / 118G (66%)'
# 'Disk (/mnt/Videos): 74G / 118G (66%)'
#
# dir: 'Disk (/): 74G / 118G (66%)'
# 'Disk (Local Disk): 74G / 118G (66%)'
# 'Disk (Videos): 74G / 118G (66%)'
#
# none: 'Disk: 74G / 118G (66%)'
# 'Disk: 74G / 118G (66%)'
# 'Disk: 74G / 118G (66%)'
disk_subtitle="mount"
# Disk percent.
# Show/Hide disk percent.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --disk_percent
#
# Example:
# on: 'Disk (/): 74G / 118G (66%)'
# off: 'Disk (/): 74G / 118G'
disk_percent="on"
# Song
# Manually specify a music player.
#
# Default: 'auto'
# Values: 'auto', 'player-name'
# Flag: --music_player
#
# Available values for 'player-name':
#
# amarok
# audacious
# banshee
# bluemindo
# clementine
# cmus
# deadbeef
# deepin-music
# dragon
# elisa
# exaile
# gnome-music
# gmusicbrowser
# gogglesmm
# guayadeque
# io.elementary.music
# iTunes
# Music
# juk
# lollypop
# MellowPlayer
# mocp
# mopidy
# mpd
# muine
# netease-cloud-music
# olivia
# playerctl
# pogo
# pragha
# qmmp
# quodlibet
# rhythmbox
# sayonara
# smplayer
# spotify
# strawberry
# tauonmb
# tomahawk
# vlc
# xmms2d
# xnoise
# yarock
music_player="auto"
# Format to display song information.
#
# Default: '%artist% - %album% - %title%'
# Values: '%artist%', '%album%', '%title%'
# Flag: --song_format
#
# Example:
# default: 'Song: Jet - Get Born - Sgt Major'
song_format="%artist% - %album% - %title%"
# Print the Artist, Album and Title on separate lines
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --song_shorthand
#
# Example:
# on: 'Artist: The Fratellis'
# 'Album: Costello Music'
# 'Song: Chelsea Dagger'
#
# off: 'Song: The Fratellis - Costello Music - Chelsea Dagger'
song_shorthand="off"
# 'mpc' arguments (specify a host, password etc).
#
# Default: ''
# Example: mpc_args=(-h HOST -P PASSWORD)
mpc_args=()
# Text Colors
# Text Colors
#
# Default: 'distro'
# Values: 'distro', 'num' 'num' 'num' 'num' 'num' 'num'
# Flag: --colors
#
# Each number represents a different part of the text in
# this order: 'title', '@', 'underline', 'subtitle', 'colon', 'info'
#
# Example:
# colors=(distro) - Text is colored based on Distro colors.
# colors=(4 6 1 8 8 6) - Text is colored in the order above.
colors=(distro)
# Text Options
# Toggle bold text
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --bold
bold="on"
# Enable/Disable Underline
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --underline
underline_enabled="on"
# Underline character
#
# Default: '-'
# Values: 'string'
# Flag: --underline_char
underline_char="-"
# Info Separator
# Replace the default separator with the specified string.
#
# Default: ':'
# Flag: --separator
#
# Example:
# separator="->": 'Shell-> bash'
# separator=" =": 'WM = dwm'
separator=":"
# Color Blocks
# Color block range
# The range of colors to print.
#
# Default: '0', '15'
# Values: 'num'
# Flag: --block_range
#
# Example:
#
# Display colors 0-7 in the blocks. (8 colors)
# neofetch --block_range 0 7
#
# Display colors 0-15 in the blocks. (16 colors)
# neofetch --block_range 0 15
block_range=(0 15)
# Toggle color blocks
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --color_blocks
color_blocks="on"
# Color block width in spaces
#
# Default: '3'
# Values: 'num'
# Flag: --block_width
block_width=3
# Color block height in lines
#
# Default: '1'
# Values: 'num'
# Flag: --block_height
block_height=1
# Color Alignment
#
# Default: 'auto'
# Values: 'auto', 'num'
# Flag: --col_offset
#
# Number specifies how far from the left side of the terminal (in spaces) to
# begin printing the columns, in case you want to e.g. center them under your
# text.
# Example:
# col_offset="auto" - Default behavior of neofetch
# col_offset=7 - Leave 7 spaces then print the colors
col_offset="auto"
# Progress Bars
# Bar characters
#
# Default: '-', '='
# Values: 'string', 'string'
# Flag: --bar_char
#
# Example:
# neofetch --bar_char 'elapsed' 'total'
# neofetch --bar_char '-' '='
bar_char_elapsed="-"
bar_char_total="="
# Toggle Bar border
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --bar_border
bar_border="on"
# Progress bar length in spaces
# Number of chars long to make the progress bars.
#
# Default: '15'
# Values: 'num'
# Flag: --bar_length
bar_length=15
# Progress bar colors
# When set to distro, uses your distro's logo colors.
#
# Default: 'distro', 'distro'
# Values: 'distro', 'num'
# Flag: --bar_colors
#
# Example:
# neofetch --bar_colors 3 4
# neofetch --bar_colors distro 5
bar_color_elapsed="distro"
bar_color_total="distro"
# Info display
# Display a bar with the info.
#
# Default: 'off'
# Values: 'bar', 'infobar', 'barinfo', 'off'
# Flags: --memory_display
# --battery_display
# --disk_display
#
# Example:
# bar: '[---=======]'
# infobar: 'info [---=======]'
# barinfo: '[---=======] info'
# off: 'info'
memory_display="off"
battery_display="off"
disk_display="off"
# Backend Settings
# Image backend.
#
# Default: 'ascii'
# Values: 'ascii', 'caca', 'catimg', 'chafa', 'jp2a', 'iterm2', 'off',
# 'pot', 'termpix', 'pixterm', 'tycat', 'w3m', 'kitty', 'ueberzug',
# 'viu'
# Flag: --backend
image_backend="ascii"
# Image Source
#
# Which image or ascii file to display.
#
# Default: 'auto'
# Values: 'auto', 'ascii', 'wallpaper', '/path/to/img', '/path/to/ascii', '/path/to/dir/'
# 'command output (neofetch --ascii "$(fortune | cowsay -W 30)")'
# Flag: --source
#
# NOTE: 'auto' will pick the best image source for whatever image backend is used.
# In ascii mode, distro ascii art will be used and in an image mode, your
# wallpaper will be used.
image_source="auto"
# Ascii Options
# Ascii distro
# Which distro's ascii art to display.
#
# Default: 'auto'
# Values: 'auto', 'distro_name'
# Flag: --ascii_distro
#
# NOTE: Adélie, aerOS, Afterglow, AIX, AlmaLinux, Alpine, Alter, Amazon, AmogOS, Anarchy, Android,
# Antergos, antiX, AOSC OS, Aperio GNU/Linux, Aperture, Apricity, Arch, ArchBox, Archcraft,
# archcraft_ascii, archcraft_minimal, ARCHlabs, ArchMerge, ArchStrike, ArcoLinux, ArseLinux, Artix,
# Arya, Asahi, AsteroidOS, astOS, Astra Linux, Athena, azos, Bedrock, BigLinux, Bitrig, BlackArch,
# blackPanther, BLAG, BlankOn, BlueLight, Bodhi, bonsai, BSD, BunsenLabs, CachyOS, Calculate,
# CalinixOS, Carbs, CBL-Mariner, CelOS, Center, CentOS, Chakra, ChaletOS, Chapeau, ChonkySealOS,
# Chrom, Cleanjaro, Clear Linux OS, ClearOS, Clover, Cobalt, Condres, Container Linux by CoreOS,
# CRUX, Crystal Linux, Cucumber, CutefishOS, CuteOS, CyberOS, dahlia, DarkOs, Darwin, Debian,
# Deepin, DesaOS, Devuan, DietPi, digital UNIX, DracOS, DragonFly, Drauger, Droidian, Elementary,
# Elive, EncryptOS, EndeavourOS, Endless, Enso, EuroLinux, EvolutionOS, Exherbo, Exodia Predator OS,
# Fedora, FemboyOS, Feren, Finnix, Floflis, FreeBSD, FreeMiNT, Frugalware, Funtoo, GalliumOS,
# Garuda, Gentoo, GhostBSD, glaucus, gNewSense, GNOME, GNU, GoboLinux, GrapheneOS, Grombyang, Guix,
# Haiku, HamoniKR, HarDClanZ, Hash, Huayra, Hybrid, HydroOS, Hyperbola, iglunix, instantOS, Interix,
# IRIX, Itc, januslinux, Kaisen, Kali, KaOS, KDE, Kibojoe, Kogaion, Korora, KrassOS, KSLinux,
# Kubuntu, LainOS, LangitKetujuh, LaxerOS, LEDE, LibreELEC, Linspire, Linux, Linux Lite, Linux Mint,
# Linux Mint Old, Live Raizo, LMDE, Lubuntu, Lunar, mac, Mageia, MagpieOS, MainsailOS, Mandriva,
# Manjaro, MassOS, MatuusOS, Maui, Meowix, Mer, Minix, MIRACLE LINUX, MX, Namib, NekOS, Neptune,
# NetBSD, Netrunner, Nitrux, NixOS, Nobara, NomadBSD, Nurunner, NuTyX, Obarun, OBRevenge, OmniOS,
# Open Source Media Center, OpenBSD, openEuler, OpenIndiana, openKylin, openmamba, OpenMandriva,
# OpenStage, openSUSE, openSUSE Leap, openSUSE Tumbleweed, OPNsense, Oracle, orchid, OS Elbrus,
# PacBSD, Panwah, Parabola, parch, Pardus, Parrot, Parsix, PCBSD, PCLinuxOS, pearOS, Pengwin,
# Pentoo, Peppermint, Peropesis, phyOS, PikaOS, Pisi, PNM Linux, Pop!_OS, Porteus, PostMarketOS,
# Profelis SambaBOX, Proxmox, PuffOS, Puppy, PureOS, Q4OS, Qubes, Qubyt, Quibian, Radix, Raspbian,
# ravynOS, Reborn OS, Red Star, Redcore, Redhat, Refracted Devuan, Regata, Regolith, RhaymOS, rocky,
# Rosa, Sabayon, sabotage, Sailfish, SalentOS, Salient OS, Salix, Sasanqua, Scientific, semc,
# Septor, Serene, SharkLinux, ShastraOS, Siduction, SkiffOS, Slackel, Slackware, SliTaz, SmartOS,
# Soda, Solus, Source Mage, Sparky, Star, SteamOS, Stock Linux, Sulin, SunOS, SwagArch, t2, Tails,
# TeArch, TorizonCore, Trisquel, Twister, Ubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin,
# Ubuntu MATE, Ubuntu Studio, Ubuntu Sway, Ubuntu Touch, Ubuntu-GNOME, ubuntu_old02, Ultramarine
# Linux, unicodearch, Univalent, Univention, Uos, UrukOS, uwuntu, Vanilla, Venom, VNux, Void,
# VzLinux, wii-linux-ngx, Windows, Windows 10, Windows 11, Windows95, Wrt, Xenia, Xenia2, XFerience,
# Xray_OS, Xubuntu, yiffOS, Zorin have ascii logos.
# NOTE: arch, dragonfly, Fedora, LangitKetujuh, nixos, redhat, Ubuntu have 'old' logo variants, use
# {distro}_old to use them.
# NOTE: alpine, android, arch, arcolinux, artix, CalinixOS, centos, cleanjaro, crux, debian,
# dragonfly, elementary, endeavouros, fedora, freebsd, garuda, gentoo, guix, haiku, hyperbola, kali,
# Linux, linuxlite, linuxmint, mac, mageia, MainsailOS, manjaro, mx, netbsd, nixos, openbsd,
# opensuse, orchid, parabola, popos, postmarketos, pureos, Raspbian, rocky, slackware, sunos,
# ubuntu, venom, void have 'small' logo variants, use {distro}_small to use them.
ascii_distro="auto"
# Ascii Colors
#
# Default: 'distro'
# Values: 'distro', 'num' 'num' 'num' 'num' 'num' 'num'
# Flag: --ascii_colors
#
# Example:
# ascii_colors=(distro) - Ascii is colored based on Distro colors.
# ascii_colors=(4 6 1 8 8 6) - Ascii is colored using these colors.
ascii_colors=(distro)
# Bold ascii logo
# Whether or not to bold the ascii logo.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --ascii_bold
ascii_bold="on"
# Image Options
# Image loop
# Setting this to on will make neofetch redraw the image constantly until
# Ctrl+C is pressed. This fixes display issues in some terminal emulators.
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --loop
image_loop="off"
# Thumbnail directory
#
# Default: '~/.cache/thumbnails/neofetch'
# Values: 'dir'
thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
# Crop mode
#
# Default: 'normal'
# Values: 'normal', 'fit', 'fill'
# Flag: --crop_mode
#
# See this wiki page to learn about the fit and fill options.
# https://github.com/dylanaraps/neofetch/wiki/What-is-Waifu-Crop%3F
crop_mode="normal"
# Crop offset
# Note: Only affects 'normal' crop mode.
#
# Default: 'center'
# Values: 'northwest', 'north', 'northeast', 'west', 'center'
# 'east', 'southwest', 'south', 'southeast'
# Flag: --crop_offset
crop_offset="center"
# Image size
# The image is half the terminal width by default.
#
# Default: 'auto'
# Values: 'auto', '00px', '00%', 'none'
# Flags: --image_size
# --size
image_size="auto"
# Catimg block size.
# Control the resolution of catimg.
#
# Default: '2'
# Values: '1', '2'
# Flags: --catimg_size
catimg_size="2"
# Gap between image and text
#
# Default: '3'
# Values: 'num', '-num'
# Flag: --gap
gap=3
# Image offsets
# Only works with the w3m backend.
#
# Default: '0'
# Values: 'px'
# Flags: --xoffset
# --yoffset
yoffset=0
xoffset=0
# Image background color
# Only works with the w3m backend.
#
# Default: ''
# Values: 'color', 'blue'
# Flag: --bg_color
background_color=
# Misc Options
# Stdout mode
# If enabled, turn off all colors and disables image backend (ASCII/Image).
# Useful for piping into another command.
# Default: 'auto'
# Values: 'auto', 'on', 'off'
stdout="auto"

39
paru/paru.conf Normal file
View File

@@ -0,0 +1,39 @@
#
# $PARU_CONF
# /etc/paru.conf
# ~/.config/paru/paru.conf
#
# See the paru.conf(5) manpage for options
#
# GENERAL OPTIONS
#
[options]
PgpFetch
Devel
Provides
DevelSuffixes = -git -cvs -svn -bzr -darcs -always -hg
#AurOnly
BottomUp
#RemoveMake
#SudoLoop
#UseAsk
#SaveChanges
#CombinedUpgrade
#CleanAfter
#UpgradeMenu
#NewsOnUpgrade
#LocalRepo
#Chroot
#Sign
#SignDb
#KeepRepoCache
#
# Binary OPTIONS
#
#[bin]
#FileManager = vifm
#MFlags = --skippgpcheck
#Sudo = doas

424
picom/picom.conf Normal file
View File

@@ -0,0 +1,424 @@
#################################
# Shadows #
#################################
# Enabled client-side shadows on windows. Note desktop windows
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
# unless explicitly requested using the wintypes option.
#
shadow = false
#shadow = true;
# The blur radius for shadows, in pixels. (defaults to 12)
# shadow-radius = 12
shadow-radius = 7;
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
# shadow-opacity = .75
# The left offset for shadows, in pixels. (defaults to -15)
# shadow-offset-x = -15
shadow-offset-x = -7;
# The top offset for shadows, in pixels. (defaults to -15)
# shadow-offset-y = -15
shadow-offset-y = -7;
# Avoid drawing shadows on dock/panel windows. This option is deprecated,
# you should use the *wintypes* option in your config file instead.
#
# no-dock-shadow = false
# Don't draw shadows on drag-and-drop windows. This option is deprecated,
# you should use the *wintypes* option in your config file instead.
#
# no-dnd-shadow = false
# Red color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-red = 0
# Green color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-green = 0
# Blue color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-blue = 0
# Do not paint shadows on shaped windows. Note shaped windows
# here means windows setting its shape through X Shape extension.
# Those using ARGB background is beyond our control.
# Deprecated, use
# shadow-exclude = 'bounding_shaped'
# or
# shadow-exclude = 'bounding_shaped && !rounded_corners'
# instead.
#
# shadow-ignore-shaped = ''
# Specify a list of conditions of windows that should have no shadow.
#
# examples:
# shadow-exclude = "n:e:Notification";
#
# shadow-exclude = []
shadow-exclude = [
"name = 'Notification'",
"class_g = 'Conky'",
"class_g = 'firefox' && argb",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'",
"_GTK_FRAME_EXTENTS@:c"
];
# Specify a X geometry that describes the region in which shadow should not
# be painted in, such as a dock window region. Use
# shadow-exclude-reg = "x10+0+0"
# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
#
# shadow-exclude-reg = ""
# Crop shadow of a window fully on a particular Xinerama screen to the screen.
# xinerama-shadow-crop = false
#################################
# Fading #
#################################
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used.
fading = false
# fading = true
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
# fade-in-step = 0.028
fade-in-step = 0.03;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
# fade-out-step = 0.03
fade-out-step = 0.03;
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
# fade-delta = 10
# Specify a list of conditions of windows that should not be faded.
# fade-exclude = []
# Do not fade on window open/close.
# no-fading-openclose = false
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
# no-fading-destroyed-argb = false
#################################
# Transparency / Opacity #
#################################
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
# inactive-opacity = 1
inactive-opacity = 1;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
# frame-opacity = 1.0
frame-opacity = 0.7;
# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
# menu-opacity = 1.0
# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
# inactive-opacity-override = true
inactive-opacity-override = false;
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
# active-opacity = 1.0
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
# inactive-dim = 0.0
# Specify a list of conditions of windows that should always be considered focused.
# focus-exclude = []
focus-exclude = [ "class_g = 'Cairo-clock'" ];
# Use fixed inactive dim value, instead of adjusting according to window opacity.
# inactive-dim-fixed = 1.0
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
# like `50:name *= "Firefox"`. picom-trans is recommended over this.
# Note we don't make any guarantee about possible conflicts with other
# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
# example:
# opacity-rule = [ "80:class_g = 'URxvt'" ];
#
# opacity-rule = []
#################################
# Background-Blurring #
#################################
# Parameters for background blurring, see the *BLUR* section for more information.
# blur-method =
# blur-size = 12
#
# blur-deviation = false
# Blur background of semi-transparent / ARGB windows.
# Bad in performance, with driver-dependent behavior.
# The name of the switch may change without prior notifications.
#
# blur-background = false
# Blur background of windows when the window frame is not opaque.
# Implies:
# blur-background
# Bad in performance, with driver-dependent behavior. The name may change.
#
# blur-background-frame = false
# Use fixed blur strength rather than adjusting according to window opacity.
# blur-background-fixed = false
# Specify the blur convolution kernel, with the following format:
# example:
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
#
# blur-kern = ''
blur-kern = "3x3box";
# Exclude conditions for background blur.
# blur-background-exclude = []
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c"
];
#################################
# General Settings #
#################################
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
# daemon = false
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
# `xrender` is the default one.
#
# backend = 'glx'
backend = "xrender";
# Enable/disable VSync.
vsync = false
# vsync = true
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
# dbus = false
# Try to detect WM windows (a non-override-redirect window with no
# child that has 'WM_STATE') and mark them as active.
#
# mark-wmwin-focused = false
mark-wmwin-focused = true;
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
# mark-ovredir-focused = false
mark-ovredir-focused = true;
# Try to detect windows with rounded corners and don't consider them
# shaped windows. The accuracy is not very high, unfortunately.
#
# detect-rounded-corners = false
detect-rounded-corners = true;
# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
# not passing '_NET_WM_OPACITY' of client windows to frame windows.
#
# detect-client-opacity = false
detect-client-opacity = true;
# Specify refresh rate of the screen. If not specified or 0, picom will
# try detecting this with X RandR extension.
#
# refresh-rate = 60
refresh-rate = 0
# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
# boost performance. This should not be used with
# vsync drm/opengl/opengl-oml
# as they essentially does sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
#
# sw-opti =
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
# provided that the WM supports it.
#
# use-ewmh-active-win = false
# Unredirect all windows if a full-screen opaque window is detected,
# to maximize performance for full-screen windows. Known to cause flickering
# when redirecting/unredirecting windows.
#
# unredir-if-possible = false
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
# unredir-if-possible-delay = 0
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
# unredir-if-possible-exclude = []
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
# in the same group focused at the same time.
#
# detect-transient = false
detect-transient = true
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
# detect-transient is enabled, too.
#
# detect-client-leader = false
detect-client-leader = true
# Resize damaged region by a specific number of pixels.
# A positive value enlarges it while a negative one shrinks it.
# If the value is positive, those additional pixels will not be actually painted
# to screen, only used in blur calculation, and such. (Due to technical limitations,
# with use-damage, those pixels will still be incorrectly painted to screen.)
# Primarily used to fix the line corruption issues of blur,
# in which case you should use the blur radius value here
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
# with a 5x5 one you use `--resize-damage 2`, and so on).
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
#
# resize-damage = 1
# Specify a list of conditions of windows that should be painted with inverted color.
# Resource-hogging, and is not well tested.
#
# invert-color-include = []
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
# Might cause incorrect opacity when rendering transparent content (but never
# practically happened) and may not work with blur-background.
# My tests show a 15% performance boost. Recommended.
#
# glx-no-stencil = false
# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes,
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
# Recommended if it works.
#
# glx-no-rebind-pixmap = false
# Disable the use of damage information.
# This cause the whole screen to be redrawn everytime, instead of the part of the screen
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
# The opposing option is use-damage
#
# no-use-damage = false
use-damage = true
# Use X Sync fence to sync clients' draw calls, to make sure all draw
# calls are finished before picom starts drawing. Needed on nvidia-drivers
# with GLX backend for some users.
#
# xrender-sync-fence = false
# GLX backend: Use specified GLSL fragment shader for rendering window contents.
# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
# in the source tree for examples.
#
# glx-fshader-win = ''
# Force all windows to be painted with blending. Useful if you
# have a glx-fshader-win that could turn opaque pixels transparent.
#
# force-win-blend = false
# Do not use EWMH to detect fullscreen windows.
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
#
# no-ewmh-fullscreen = false
# Dimming bright windows so their brightness doesn't exceed this set value.
# Brightness of a window is estimated by averaging all pixels in the window,
# so this could comes with a performance hit.
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
#
# max-brightness = 1.0
# Make transparent windows clip other windows like non-transparent windows do,
# instead of blending on top of them.
#
# transparent-clipping = false
# Set the log level. Possible values are:
# "trace", "debug", "info", "warn", "error"
# in increasing level of importance. Case doesn't matter.
# If using the "TRACE" log level, it's better to log into a file
# using *--log-file*, since it can generate a huge stream of logs.
#
# log-level = "debug"
log-level = "warn";
# Set the log file.
# If *--log-file* is never specified, logs will be written to stderr.
# Otherwise, logs will to written to the given file, though some of the early
# logs might still be written to the stderr.
# When setting this option from the config file, it is recommended to use an absolute path.
#
# log-file = '/path/to/your/log/file'
# Show all X errors (for debugging)
# show-all-xerrors = false
# Write process ID to a file.
# write-pid-path = '/path/to/your/log/file'
# Window type settings
#
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
# "tooltip", "notification", "combo", and "dnd".
#
# Following per window-type options are available: ::
#
# fade, shadow:::
# Controls window-type-specific shadow and fade settings.
#
# opacity:::
# Controls default opacity of the window type.
#
# focus:::
# Controls whether the window of this type is to be always considered focused.
# (By default, all window types except "normal" and "dialog" has this on.)
#
# full-shadow:::
# Controls whether shadow is drawn under the parts of the window that you
# normally won't be able to see. Useful when the window has parts of it
# transparent, and you want shadows in those areas.
#
# redir-ignore:::
# Controls whether this type of windows should cause screen to become
# redirected again after been unredirected. If you have unredir-if-possible
# set, and doesn't want certain window to cause unnecessary screen redirection,
# you can set this to `true`.
#
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
dock = { shadow = false; }
dnd = { shadow = false; }
popup_menu = { opacity = 0.8; }
dropdown_menu = { opacity = 0.8; }
};

47
pipewire/midi2volume.sh Executable file
View File

@@ -0,0 +1,47 @@
#! /bin/bash
FF_STREAM=$(wpctl status | grep "Firefox *$" | awk -F. '{ print $1 }')
MUSIC_STREAM=$(wpctl status | grep "Chromium *$" | awk -F. '{ print $1 }')
SPEAKER_SINK=$(wpctl status | grep "Family 17h/19h HD Audio Controller Speaker + Headphones \[" | awk -F'[. ]' '{ print $7 }')
function setvol {
VOL=$(echo "scale=2;$2/100" | bc -l)
wpctl set-volume $1 "$VOL"
}
aseqdump -p 28 | \
while IFS=" ," read src ev1 ev2 ch label1 data1 label2 data2; do
case "$data1" in
# slider music
"3")
setvol $MUSIC_STREAM $data2
;;
# slider firefox
"7")
setvol $FF_STREAM $data2
;;
# Knob speakers
"16")
setvol $SPEAKER_SINK $data2
;;
# Play and Stop buttons
"41"|"42")
xdotool key XF86AudioPlay
;;
# Previous song
"43")
if [ $data2 -eq 127 ]; then xdotool key XF86AudioPrev; fi
;;
# Next song
"44")
if [ $data2 -eq 127 ]; then xdotool key XF86AudioNext; fi
;;
# Restart script
"46")
if [ $data2 -eq 127 ]; then systemctl --user restart midi.service; fi
;;
# Mute music
"51")
;;
esac
done

318
pipewire/pipewire.conf Normal file
View File

@@ -0,0 +1,318 @@
# Daemon config file for PipeWire version "1.0.3" #
#
# Copy and edit this file in /etc/pipewire for system-wide changes
# or in ~/.config/pipewire for local changes.
#
# It is also possible to place a file with an updated section in
# /etc/pipewire/pipewire.conf.d/ for system-wide changes or in
# ~/.config/pipewire/pipewire.conf.d/ for local changes.
#
context.properties = {
## Configure properties in the system.
#library.name.system = support/libspa-support
#context.data-loop.library.name.system = support/libspa-support
#support.dbus = true
#link.max-buffers = 64
link.max-buffers = 16 # version < 3 clients can't handle more
#mem.warn-mlock = false
#mem.allow-mlock = true
#mem.mlock-all = false
#clock.power-of-two-quantum = true
#log.level = 2
#cpu.zero.denormals = false
core.daemon = true # listening for socket connections
core.name = pipewire-0 # core name and socket name
## Properties for the DSP configuration.
#default.clock.rate = 48000
#default.clock.allowed-rates = [ 48000 ]
#default.clock.quantum = 1024
#default.clock.min-quantum = 32
#default.clock.max-quantum = 2048
#default.clock.quantum-limit = 8192
#default.video.width = 640
#default.video.height = 480
#default.video.rate.num = 25
#default.video.rate.denom = 1
#
#settings.check-quantum = false
#settings.check-rate = false
#
# These overrides are only applied when running in a vm.
vm.overrides = {
default.clock.min-quantum = 1024
}
# keys checked below to disable module loading
module.x11.bell = true
# enables autoloading of access module, when disabled an alternative
# access module needs to be loaded.
module.access = true
# enables autoloading of module-jackdbus-detect
module.jackdbus-detect = true
}
context.spa-libs = {
#<factory-name regex> = <library-name>
#
# Used to find spa factory names. It maps an spa factory name
# regular expression to a library name that should contain
# that factory.
#
audio.convert.* = audioconvert/libspa-audioconvert
avb.* = avb/libspa-avb
api.alsa.* = alsa/libspa-alsa
api.v4l2.* = v4l2/libspa-v4l2
api.libcamera.* = libcamera/libspa-libcamera
api.bluez5.* = bluez5/libspa-bluez5
api.vulkan.* = vulkan/libspa-vulkan
api.jack.* = jack/libspa-jack
support.* = support/libspa-support
#videotestsrc = videotestsrc/libspa-videotestsrc
#audiotestsrc = audiotestsrc/libspa-audiotestsrc
}
context.modules = [
#{ name = <module-name>
# ( args = { <key> = <value> ... } )
# ( flags = [ ( ifexists ) ( nofail ) ] )
# ( condition = [ { <key> = <value> ... } ... ] )
#}
#
# Loads a module with the given parameters.
# If ifexists is given, the module is ignored when it is not found.
# If nofail is given, module initialization failures are ignored.
# If condition is given, the module is loaded only when the context
# properties all match the match rules.
#
# Uses realtime scheduling to boost the audio thread priorities. This uses
# RTKit if the user doesn't have permission to use regular realtime
# scheduling. You can also clamp utilisation values to improve scheduling
# on embedded and heterogeneous systems, e.g. Arm big.LITTLE devices.
{ name = libpipewire-module-rt
args = {
nice.level = -11
#rt.prio = 88
#rt.time.soft = -1
#rt.time.hard = -1
#uclamp.min = 0
#uclamp.max = 1024
}
flags = [ ifexists nofail ]
}
# The native communication protocol.
{ name = libpipewire-module-protocol-native
args = {
# List of server Unix sockets, and optionally permissions
#sockets = [ { name = "pipewire-0" }, { name = "pipewire-0-manager" } ]
}
}
# The profile module. Allows application to access profiler
# and performance data. It provides an interface that is used
# by pw-top and pw-profiler.
{ name = libpipewire-module-profiler }
# Allows applications to create metadata objects. It creates
# a factory for Metadata objects.
{ name = libpipewire-module-metadata }
# Creates a factory for making devices that run in the
# context of the PipeWire server.
{ name = libpipewire-module-spa-device-factory }
# Creates a factory for making nodes that run in the
# context of the PipeWire server.
{ name = libpipewire-module-spa-node-factory }
# Allows creating nodes that run in the context of the
# client. Is used by all clients that want to provide
# data to PipeWire.
{ name = libpipewire-module-client-node }
# Allows creating devices that run in the context of the
# client. Is used by the session manager.
{ name = libpipewire-module-client-device }
# The portal module monitors the PID of the portal process
# and tags connections with the same PID as portal
# connections.
{ name = libpipewire-module-portal
flags = [ ifexists nofail ]
}
# The access module can perform access checks and block
# new clients.
{ name = libpipewire-module-access
args = {
# Socket-specific access permissions
#access.socket = { pipewire-0 = "default", pipewire-0-manager = "unrestricted" }
# Deprecated legacy mode (not socket-based),
# for now enabled by default if access.socket is not specified
#access.legacy = true
}
condition = [ { module.access = true } ]
}
# Makes a factory for wrapping nodes in an adapter with a
# converter and resampler.
{ name = libpipewire-module-adapter }
# Makes a factory for creating links between ports.
{ name = libpipewire-module-link-factory }
# Provides factories to make session manager objects.
{ name = libpipewire-module-session-manager }
# Use libcanberra to play X11 Bell
{ name = libpipewire-module-x11-bell
args = {
#sink.name = "@DEFAULT_SINK@"
#sample.name = "bell-window-system"
#x11.display = null
#x11.xauthority = null
}
flags = [ ifexists nofail ]
condition = [ { module.x11.bell = true } ]
}
{ name = libpipewire-module-jackdbus-detect
args = {
#jack.library = libjack.so.0
#jack.server = null
#jack.client-name = PipeWire
#jack.connect = true
#tunnel.mode = duplex # source|sink|duplex
source.props = {
#audio.channels = 2
#midi.ports = 1
#audio.position = [ FL FR ]
# extra sink properties
}
sink.props = {
#audio.channels = 2
#midi.ports = 1
#audio.position = [ FL FR ]
# extra sink properties
}
}
flags = [ ifexists nofail ]
condition = [ { module.jackdbus-detect = true } ]
}
]
context.objects = [
#{ factory = <factory-name>
# ( args = { <key> = <value> ... } )
# ( flags = [ ( nofail ) ] )
# ( condition = [ { <key> = <value> ... } ... ] )
#}
#
# Creates an object from a PipeWire factory with the given parameters.
# If nofail is given, errors are ignored (and no object is created).
# If condition is given, the object is created only when the context properties
# all match the match rules.
#
#{ factory = spa-node-factory args = { factory.name = videotestsrc node.name = videotestsrc node.description = videotestsrc "Spa:Pod:Object:Param:Props:patternType" = 1 } }
#{ factory = spa-device-factory args = { factory.name = api.jack.device foo=bar } flags = [ nofail ] }
#{ factory = spa-device-factory args = { factory.name = api.alsa.enum.udev } }
#{ factory = spa-node-factory args = { factory.name = api.alsa.seq.bridge node.name = Internal-MIDI-Bridge } }
#{ factory = adapter args = { factory.name = audiotestsrc node.name = my-test node.description = audiotestsrc } }
#{ factory = spa-node-factory args = { factory.name = api.vulkan.compute.source node.name = my-compute-source } }
# A default dummy driver. This handles nodes marked with the "node.always-process"
# property when no other driver is currently active. JACK clients need this.
{ factory = spa-node-factory
args = {
factory.name = support.node.driver
node.name = Dummy-Driver
node.group = pipewire.dummy
priority.driver = 20000
#clock.id = monotonic # realtime | tai | monotonic-raw | boottime
#clock.name = "clock.system.monotonic"
}
}
{ factory = spa-node-factory
args = {
factory.name = support.node.driver
node.name = Freewheel-Driver
priority.driver = 19000
node.group = pipewire.freewheel
node.freewheel = true
}
}
# This creates a new Source node. It will have input ports
# that you can link, to provide audio for this source.
#{ factory = adapter
# args = {
# factory.name = support.null-audio-sink
# node.name = "my-mic"
# node.description = "Microphone"
# media.class = "Audio/Source/Virtual"
# audio.position = "FL,FR"
# }
#}
# This creates a single PCM source device for the given
# alsa device path hw:0. You can change source to sink
# to make a sink in the same way.
#{ factory = adapter
# args = {
# factory.name = api.alsa.pcm.source
# node.name = "alsa-source"
# node.description = "PCM Source"
# media.class = "Audio/Source"
# api.alsa.path = "hw:0"
# api.alsa.period-size = 1024
# api.alsa.headroom = 0
# api.alsa.disable-mmap = false
# api.alsa.disable-batch = false
# audio.format = "S16LE"
# audio.rate = 48000
# audio.channels = 2
# audio.position = "FL,FR"
# }
#}
# Use the metadata factory to create metadata and some default values.
#{ factory = metadata
# args = {
# metadata.name = my-metadata
# metadata.values = [
# { key = default.audio.sink value = { name = somesink } }
# { key = default.audio.source value = { name = somesource } }
# ]
# }
#}
]
context.exec = [
#{ path = <program-name>
# ( args = "<arguments>" )
# ( condition = [ { <key> = <value> ... } ... ] )
#}
#
# Execute the given program with arguments.
# If condition is given, the program is executed only when the context
# properties all match the match rules.
#
# You can optionally start the session manager here,
# but it is better to start it as a systemd service.
# Run the session manager with -h for options.
#
#{ path = "/usr/bin/pipewire-media-session" args = ""
# condition = [ { exec.session-manager = null } { exec.session-manager = true } ] }
#
# You can optionally start the pulseaudio-server here as well
# but it is better to start it as a systemd service.
# It can be interesting to start another daemon here that listens
# on another address with the -a option (eg. -a tcp:4713).
#
#{ path = "/usr/bin/pipewire" args = "-c pipewire-pulse.conf"
# condition = [ { exec.pipewire-pulse = null } { exec.pipewire-pulse = true } ] }
]

10
polybar/date.sh Executable file
View File

@@ -0,0 +1,10 @@
#! /bin/bash
CET=$(date +"%H:%M")
UTC=$(TZ=UTC date +"%H:%M")
EASTERN=$(TZ=America/New_York date +"%H:%M")
PACIFIC=$(TZ=America/Los_Angeles date +"%H:%M")
AWST=$(TZ=Australia/Perth date +"%H:%M")
DATE=$(date +"%Y-%m-%d")
echo "PST: $PACIFIC EST: $EASTERN UTC: $UTC CET: $CET AWST: $AWST $DATE"

308
polybar/motherbase-config Normal file
View File

@@ -0,0 +1,308 @@
;=====================================================
;
; To learn more about how to configure Polybar
; go to https://github.com/jaagr/polybar
;
; The README contains alot of information
;
;=====================================================
[colors]
background = #222
foreground = #AAAAAA
primary = #4c94af
ok = #4E9A06
warning = #E07C00
alert = #DD1111
[bar/internal]
monitor = eDP-1
font-0 = notosans:size=10;0
font-1 = FontAwesome;0
width = 100%
height = 27
offset-x = 0%
offset-y = 0%
radius = 0
fixed-center = false
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3
line-color = #f00
border-size = 0
border-color = #00000000
padding-left = 0
padding-right = 0
module-margin-left = 3
module-margin-right = 3
modules-left = i3
modules-center =
modules-right = cpu memory temperature vpnaboutyou wlan aircrack eth eth-c battery0 pavolume date
tray-position = right
tray-padding = 3
tray-maxsize = 0
override-redirect = false
wm-restack = i3
[bar/external]
inherit = bar/internal
monitor = DP1-2
monitor-strict = true
#modules-left = i3
#modules-center =
#modules-right = date
[bar/hdmi]
inherit = bar/internal
monitor = HDMI2
monitor-strict = true
#modules-left = i3
#modules-center =
modules-right = cpu memory pavolume date
[module/xwindow]
type = internal/xwindow
label = %title:0:30:...%
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true
wrapping-scroll = false
; Only show workspaces on the same output as the bar
pin-workspaces = true
label-mode-padding = 3
label-mode-foreground = #000
label-mode-background = ${colors.foreground}
; focused = Active workspace on focused monitor9f78e1
label-focused = %icon%
label-focused-foreground = ${colors.ok}
label-focused-background = ${colors.background}
label-focused-underline = ${colors.primary}
label-focused-padding = 3
; unfocused = Inactive workspace on any monitor
label-unfocused = %icon%
label-unfocused-padding = 3
; visible = Active workspace on unfocused monitor
label-visible = %icon%
label-visible-background = ${colors.background}
label-visible-underline = ${colors.foreground}
label-visible-padding = ${colors.background}
; urgent = Workspace with urgency hint set
label-urgent = %icon%
label-urgent-background = ${colors.background}
label-urgent-underline = ${colors.alert}
label-urgent-padding = 3
ws-icon-0 = 1;
ws-icon-1 = 2;
ws-icon-2 = 3;
ws-icon-3 = 4;
ws-icon-4 = 5;
ws-icon-5 = 6;
ws-icon-6 = 7;
ws-icon-7 = 8;
ws-icon-8 = 9;
[module/wlan]
type = internal/network
interface = wlp61s0
interval = 1.0
;format-connected = <ramp-signal> <label-connected>
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %essid%
format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.warning}
format-disconnected = 
ramp-signal-0 = 0
ramp-signal-1 = 1
ramp-signal-2 = 2
ramp-signal-3 = 3
ramp-signal-4 = 4
ramp-signal-foreground = ${colors.hidden}
[module/aircrack]
type = internal/network
interface = wlp61s0mon
interval = 1.0
format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.alert}
format-disconnected = [Aircrack]
[module/eth]
type = internal/network
interface = enp0s31f6
interval = 5.0
format-connected-underline = ${colors.background}
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %local_ip%
[module/eth-c]
type = internal/network
interface = ens4u1u2
interval = 5.0
format-connected-underline = ${colors.background}
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %local_ip%
[module/vpnaboutyou]
type = custom/script
exec = ~/.config/polybar/vpncheck.sh
internal = 5
label = %output%
format = <label>
[module/date]
type = custom/script
interval = 1
exec = ~/.config/polybar/date.sh
label = "%output%"
label-foreground = ${colors.foreground}
format = " <label> "
format-foreground = ${colors.primary}
[module/battery0]
type = internal/battery
battery = BAT0
adapter = AC
full-at = 99
format-charging-prefix = " "
format-charging-prefix-foreground = ${colors.primary}
format-charging = <label-charging>
format-discharging = <ramp-capacity> <label-discharging>
format-full-prefix = " "
format-full-prefix-foreground = ${colors.ok}
format-full = <label-full>
ramp-capacity-0 = 
ramp-capacity-0-foreground = ${colors.alert}
ramp-capacity-1 = 
ramp-capacity-1-foreground = ${colors.warning}
ramp-capacity-2 = 
ramp-capacity-2-foreground = ${colors.primary}
ramp-capacity-3 = 
ramp-capacity-3-foreground = ${colors.primary}
ramp-capacity-4 = 
ramp-capacity-4-foreground = ${colors.ok}
time-format = %H:%M
label-discharging = %percentage%% %time%
[module/temperature]
type = internal/temperature
interval = 2
thermal-zone = 0
warn-temperature = 60
format-prefix = " "
format-prefix-foreground = ${colors.ok}
format = <label>
format-warn-prefix = " "
format-warn-prefix-foreground = ${colors.warning}
format-warn = <label-warn>
label = %temperature-c%
label-warn = %temperature-c%
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.primary}
format = <label>
label = %percentage%%
[module/memory]
type = internal/memory
format-prefix = " "
format-prefix-foreground = ${colors.primary}
format = <label>
label = %gb_used%/%gb_total%
[module/pavolume]
type = custom/script
interval = 1
label = %output%
exec = ~/.config/polybar/pavolume.sh
click-right = exec pavucontrol
click-left = ~/.config/polybar/pavolume.sh --togmute
scroll-up = ~/.config/polybar/pavolume.sh --up
scroll-down = ~/.config/polybar/pavolume.sh --down
[settings]
screenchange-reload = true
[global/wm]
margin-top = 5
margin-bottom = 5
[module/xbacklight]
type = internal/xbacklight
output = eDP1
enable-scroll = false
Available tags:
; <label> (default)
; <ramp>
; <bar>
format = <ramp>
; Available tokens:
; %percentage% (default)
label = %percentage%%
; Only applies if <ramp> is used
ramp-0 = 🌕
ramp-1 = 🌔
ramp-2 = 🌓
ramp-3 = 🌒
ramp-4 = 🌑
; Only applies if <bar> is used
bar-width = 10
bar-indicator = |
bar-fill = ─
bar-empty = ─
; vim:ft=dosini

349
polybar/outerhaven-config Normal file
View File

@@ -0,0 +1,349 @@
;=====================================================
;
; To learn more about how to configure Polybar
; go to https://github.com/jaagr/polybar
;
; The README contains alot of information
;
;=====================================================
[colors]
background = #222
foreground = #AAAAAA
primary = #4c94af
ok = #4E9A06
warning = #E07C00
alert = #DD1111
[bar/internal]
monitor = eDP-1
monitor-strict = true
font-0 = notosans:size=10;0
font-1 = FontAwesome;0
width = 100%
height = 27
offset-x = 0%
offset-y = 0%
radius = 0
fixed-center = false
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3
line-color = #f00
border-size = 0
border-color = #00000000
padding-left = 0
padding-right = 0
module-margin-left = 3
module-margin-right = 3
modules-left = i3
modules-center =
modules-right = cpu memory temperature vpnaboutyou radio wlan eth battery0 battery1 pavolume xbacklight date
tray-position = right
tray-padding = 3
tray-maxsize = 0
override-redirect = false
wm-restack = i3
[bar/external]
inherit = bar/internal
monitor = DP-1-2
modules-right = cpu memory temperature vpnaboutyou radio wlan eth eth-c pavolume date
[bar/hdmi]
inherit = bar/external
monitor = HDMI-2
monitor-strict = true
modules-right = cpu memory temperature vpnaboutyou radio wlan eth eth-c pavolume date
[module/xwindow]
type = internal/xwindow
label = %title:0:30:...%
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true
wrapping-scroll = false
; Only show workspaces on the same output as the bar
pin-workspaces = true
label-mode-padding = 3
label-mode-foreground = #000
label-mode-background = ${colors.foreground}
; focused = Active workspace on focused monitor9f78e1
label-focused = %icon%
label-focused-foreground = ${colors.ok}
label-focused-background = ${colors.background}
label-focused-underline = ${colors.primary}
label-focused-padding = 3
; unfocused = Inactive workspace on any monitor
label-unfocused = %icon%
label-unfocused-padding = 3
; visible = Active workspace on unfocused monitor
label-visible = %icon%
label-visible-background = ${colors.background}
label-visible-underline = ${colors.foreground}
label-visible-padding = ${colors.background}
; urgent = Workspace with urgency hint set
label-urgent = %icon%
label-urgent-background = ${colors.background}
label-urgent-underline = ${colors.alert}
label-urgent-padding = 3
ws-icon-0 = 1;
ws-icon-1 = 2;
ws-icon-2 = 3;
ws-icon-3 = 4;
ws-icon-4 = 5;
ws-icon-5 = 6;
ws-icon-6 = 7;
ws-icon-7 = 8;
ws-icon-8 = 9;
[module/xbacklight]
type = internal/xbacklight
format = <label> <bar>
label = 
bar-width = 10
bar-indicator = |
bar-indicator-foreground = #ff
bar-indicator-font = 1
bar-fill = ─
bar-fill-font = 2
bar-fill-foreground = ${colors.primary}
bar-empty = ─
bar-empty-font = 2
bar-empty-foreground = ${colors.foreground}
[module/wlan]
type = internal/network
interface = wlp58s0
interval = 5.0
;format-connected = <ramp-signal> <label-connected>
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %essid%
format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.warning}
format-disconnected = 
ramp-signal-0 = 0
ramp-signal-1 = 1
ramp-signal-2 = 2
ramp-signal-3 = 3
ramp-signal-4 = 4
ramp-signal-foreground = ${colors.hidden}
[module/eth]
type = internal/network
interface = enp0s31f6
interval = 5.0
format-connected-underline = ${colors.background}
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %local_ip%
#format-disconnected-prefix = " "
#format-disconnected-prefix-foreground = ${colors.warning}
#format-disconnected = 
[module/eth-c]
type = internal/network
interface = enp57s0u1u2
interval = 5.0
format-connected-underline = ${colors.background}
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %local_ip%
#format-disconnected-prefix = " "
#format-disconnected-prefix-foreground = ${colors.warning}
#format-disconnected = 
[module/date]
type = custom/script
interval = 1
exec = ~/.config/polybar/date.sh
label = "%output%"
label-foreground = ${colors.foreground}
format = " <label> "
format-foreground = ${colors.primary}
[module/battery0]
type = internal/battery
battery = BAT0
adapter = AC
full-at = 99
format-charging-prefix = " "
format-charging-prefix-foreground = ${colors.primary}
format-charging = <label-charging>
format-discharging = <ramp-capacity> <label-discharging>
format-full-prefix = " "
format-full-prefix-foreground = ${colors.ok}
format-full = <label-full>
ramp-capacity-0 = 
ramp-capacity-0-foreground = ${colors.alert}
ramp-capacity-1 = 
ramp-capacity-1-foreground = ${colors.warning}
ramp-capacity-2 = 
ramp-capacity-2-foreground = ${colors.primary}
ramp-capacity-3 = 
ramp-capacity-3-foreground = ${colors.primary}
ramp-capacity-4 = 
ramp-capacity-4-foreground = ${colors.ok}
time-format = %H:%M
label-discharging = %percentage%% %time%
[module/battery1]
type = internal/battery
battery = BAT1
adapter = AC
full-at = 99
format-charging-prefix = " "
format-charging-prefix-foreground = ${colors.primary}
format-charging = <label-charging>
format-discharging = <ramp-capacity> <label-discharging>
format-full-prefix = " "
format-full-prefix-foreground = ${colors.ok}
format-full = <label-full>
ramp-capacity-0 = 
ramp-capacity-0-foreground = ${colors.alert}
ramp-capacity-1 = 
ramp-capacity-1-foreground = ${colors.warning}
ramp-capacity-2 = 
ramp-capacity-2-foreground = ${colors.primary}
ramp-capacity-3 = 
ramp-capacity-3-foreground = ${colors.primary}
ramp-capacity-4 = 
ramp-capacity-4-foreground = ${colors.ok}
time-format = %H:%M
label-discharging = %percentage%% %time%
[module/temperature]
type = internal/temperature
interval = 2
thermal-zone = 0
warn-temperature = 60
format-prefix = " "
format-prefix-foreground = ${colors.ok}
format = <label>
format-warn-prefix = " "
format-warn-prefix-foreground = ${colors.warning}
format-warn = <label-warn>
label = %temperature-c%
label-warn = %temperature-c%
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.primary}
format = <label>
; Available tokens:
; %percentage% (default) - total cpu load
; %percentage-cores% - load percentage for each core
; %percentage-core[1-9]% - load percentage for specific core
label = %percentage%%
[module/memory]
type = internal/memory
; Available tags:
; <label> (default)
; <bar-used>
; <bar-free>
format-prefix = " "
format-prefix-foreground = ${colors.primary}
format = <label>
; Available tokens:
; %percentage_used% (default)
; %percentage_free%
; %gb_used%
; %gb_free%
; %gb_total%
; %mb_used%
; %mb_free%
; %mb_total%
label = %gb_used%/%gb_total%
[module/pavolume]
type = custom/script
interval = 1
label = %output%
exec = ~/.config/polybar/pavolume.sh
click-right = exec pavucontrol
click-left = ~/.config/polybar/pavolume.sh --togmute
scroll-up = ~/.config/polybar/pavolume.sh --up
scroll-down = ~/.config/polybar/pavolume.sh --down
[module/vpnaboutyou]
type = custom/script
exec = ~/.config/polybar/vpncheck.sh
interval = 5
label = %output%
format = <label>
[module/radio]
type = custom/script
exec = ~/.config/polybar/modem.sh
interval = 5
label = %output%
format = <label>
[settings]
screenchange-reload = true
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
[global/wm]
margin-top = 5
margin-bottom = 5
; vim:ft=dosini

299
polybar/shadowmoses-config Normal file
View File

@@ -0,0 +1,299 @@
;=====================================================
;
; To learn more about how to configure Polybar
; go to https://github.com/jaagr/polybar
;
; The README contains alot of information
;
;=====================================================
[colors]
background = #222
foreground = #AAAAAA
primary = #4c94af
ok = #4E9A06
warning = #E07C00
alert = #DD1111
[bar/main]
monitor = eDP
monitor-strict = true
font-0 = notosans:size=10;0
font-1 = FontAwesome;0
width = 100%
height = 27
offset-x = 0%
offset-y = 0%
radius = 0
fixed-center = false
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3
line-color = #f00
border-size = 0
border-color = #00000000
padding-left = 0
padding-right = 0
module-margin-left = 3
module-margin-right = 3
modules-left = i3
modules-center =
modules-right = cpu memory temp1 temp2 wlan eth eth-c battery0 volume date
tray-position = right
tray-padding = 3
tray-maxsize = 16
override-redirect = false
wm-restack = i3
[bar/quadhd_left]
monitor = DisplayPort-0
inherit = bar/main
[bar/quadhd_right]
monitor = DisplayPort-1
inherit = bar/main
[module/xwindow]
type = internal/xwindow
label = %title:0:30:...%
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true
wrapping-scroll = false
; Only show workspaces on the same output as the bar
pin-workspaces = true
label-mode-padding = 3
label-mode-foreground = #000
label-mode-background = ${colors.foreground}
; focused = Active workspace on focused monitor9f78e1
label-focused = %icon%
label-focused-foreground = ${colors.ok}
label-focused-background = ${colors.background}
label-focused-underline = ${colors.primary}
label-focused-padding = 3
; unfocused = Inactive workspace on any monitor
label-unfocused = %icon%
label-unfocused-padding = 3
; visible = Active workspace on unfocused monitor
label-visible = %icon%
label-visible-background = ${colors.background}
label-visible-underline = ${colors.foreground}
label-visible-padding = ${colors.background}
; urgent = Workspace with urgency hint set
label-urgent = %icon%
label-urgent-background = ${colors.background}
label-urgent-underline = ${colors.alert}
label-urgent-padding = 3
ws-icon-0 = 1;
ws-icon-1 = 2;
ws-icon-2 = 3;
ws-icon-3 = 4;
ws-icon-4 = 5;
ws-icon-5 = 6;
ws-icon-6 = 7;
ws-icon-7 = 8;
ws-icon-8 = 9;
[module/wlan]
type = internal/network
interface = wlp3s0
interval = 5.0
;format-connected = <ramp-signal> <label-connected>
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %essid%
format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.warning}
format-disconnected = 
ramp-signal-0 = 0
ramp-signal-1 = 1
ramp-signal-2 = 2
ramp-signal-3 = 3
ramp-signal-4 = 4
ramp-signal-foreground = ${colors.hidden}
[module/eth]
type = internal/network
interface = enp5s0
interval = 5.0
format-connected-underline = ${colors.background}
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %local_ip%
#format-disconnected-prefix = " "
#format-disconnected-prefix-foreground = ${colors.warning}
#format-disconnected = 
[module/eth-c]
type = internal/network
interface = enp5s0f3u1u4
interval = 5.0
format-connected-underline = ${colors.background}
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.ok}
format-connected = <label-connected>
label-connected = %local_ip%
#format-disconnected-prefix = " "
#format-disconnected-prefix-foreground = ${colors.warning}
#format-disconnected = 
[module/date]
type = custom/script
interval = 1
exec = ~/.config/polybar/date.sh
label = "%output%"
label-foreground = ${colors.foreground}
format = " <label> "
format-foreground = ${colors.primary}
[module/battery0]
type = internal/battery
battery = BAT0
adapter = AC
full-at = 99
format-charging-prefix = " "
format-charging-prefix-foreground = ${colors.primary}
format-charging = <label-charging>
format-discharging = <ramp-capacity> <label-discharging>
format-full-prefix = " "
format-full-prefix-foreground = ${colors.ok}
format-full = <label-full>
ramp-capacity-0 = 
ramp-capacity-0-foreground = ${colors.alert}
ramp-capacity-1 = 
ramp-capacity-1-foreground = ${colors.warning}
ramp-capacity-2 = 
ramp-capacity-2-foreground = ${colors.primary}
ramp-capacity-3 = 
ramp-capacity-3-foreground = ${colors.primary}
ramp-capacity-4 = 
ramp-capacity-4-foreground = ${colors.ok}
time-format = %H:%M
label-discharging = %percentage%% %time%
[module/temperature]
type = internal/temperature
interval = 2
warn-temperature = 70
format-prefix = " "
format-prefix-foreground = ${colors.ok}
format = <label>
format-warn-prefix = " "
format-warn-prefix-foreground = ${colors.warning}
format-warn = <label-warn>
label = %temperature-c%
label-warn = %temperature-c%
[module/temp1]
hwmon-path = /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon5/temp1_input
inherit = module/temperature
[module/temp2]
hwmon-path = /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon6/temp1_input
inherit = module/temperature
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.primary}
format = <label>
; Available tokens:
; %percentage% (default) - total cpu load
; %percentage-cores% - load percentage for each core
; %percentage-core[1-9]% - load percentage for specific core
label = %percentage%%
[module/memory]
type = internal/memory
; Available tags:
; <label> (default)
; <bar-used>
; <bar-free>
format-prefix = " "
format-prefix-foreground = ${colors.primary}
format = <label>
; Available tokens:
; %percentage_used% (default)
; %percentage_free%
; %gb_used%
; %gb_free%
; %gb_total%
; %mb_used%
; %mb_free%
; %mb_total%
label = %gb_used%/%gb_total%
[module/volume]
type = custom/script
interval = 1
label = %output%
exec = ~/.config/polybar/volume.sh
click-right = exec pavucontrol
click-left = ~/.config/polybar/volume.sh --mute
scroll-up = ~/.config/polybar/volume.sh --up
scroll-down = ~/.config/polybar/volume.sh --down
#[module/vpn]
#type = custom/script
#exec = ~/.config/polybar/vpncheck.sh
#interval = 5
#label = %output%
#format = <label>
[settings]
screenchange-reload = true
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
[global/wm]
margin-top = 5
margin-bottom = 5
; vim:ft=dosini

37
polybar/volume.sh Executable file
View File

@@ -0,0 +1,37 @@
#! /bin/bash
VOLUME=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ 2>/dev/null | cut -d' ' -f2)
VOLUME_MUTE=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ 2>/dev/null | cut -d' ' -f3)
function BLUETOOTH {
bt_device=$(bt-device -l | tail -n+2 | awk '{ print $1 }')
for device in $bt_device
do
connection=$(bt-device -i "$device" 2>/dev/null | grep Connected | awk '{ print $2 }')
if [[ $connection -eq 1 ]]
then
bluetooth=1
fi
done
}
VOLUME_PERCENT=$(echo "$VOLUME * 100 / 1" | bc)
BLUETOOTH
if [[ $VOLUME_MUTE = "[MUTED]" ]]
then
if [[ $bluetooth -ne 0 ]]
then
echo "%{F#E07C00} %{F-} $VOLUME_PERCENT%"
else
echo "%{F#E07C00}%{F-} $VOLUME_PERCENT%"
fi
else
if [[ $bluetooth -ne 0 ]]
then
echo "%{F#4E9A06} %{F-} $VOLUME_PERCENT%"
else
echo "%{F#4E9A06}%{F-} $VOLUME_PERCENT%"
fi
fi

4
restic/shadowmoses.env Normal file
View File

@@ -0,0 +1,4 @@
RESTIC_PASSWORD_COMMAND="/usr/bin/vault kv get -field key services/restic/shadowmoses"
RESTIC_REPOSITORY=sftp:backup:shadowmoses
SSH_AUTH_SOCK=/run/user/1000/ssh-agent.socket
VAULT_ADDR=https://vault.chaos.sh:443

View File

@@ -0,0 +1,4 @@
/home/lis/.cache
/home/lis/.local/share
/home/lis/pictures/nas
/home/lis/movies/nas

2
restic/shadowmoses.fish Normal file
View File

@@ -0,0 +1,2 @@
set -x RESTIC_PASSWORD_COMMAND "/usr/bin/vault kv get -field key services/restic/shadowmoses"
set -x RESTIC_REPOSITORY sftp:backup:shadowmoses

View File

@@ -0,0 +1 @@
/home/lis

View File

@@ -129,7 +129,7 @@ truncation_symbol = "…/"
# "Important 󰈙 " = " 󰈙 "
[git_branch]
symbol = ""
symbol = "󰊤 "
only_attached = true
style = "fg:color_git_fg bg:color_git_bg"
format = '[ $symbol $branch]($style)'
@@ -166,12 +166,12 @@ conflicted = '=${count} '
format = '[ $all_status$ahead_behind]($style)'
[golang]
symbol = ""
symbol = ""
style = "fg:color_code_fg bg:color_code_bg"
format = '[ $symbol ($version) ]($style)'
[python]
symbol = ""
symbol = ""
style = "fg:color_code_fg bg:color_code_bg"
format = '[ $symbol ($virtualenv)($version) ]($style)'
pyenv_version_name = true

5
symlink.sh Normal file
View File

@@ -0,0 +1,5 @@
#! /bin/bash
ln -s ./tmux/tmux.conf ~/.tmux.conf
ln -s ./nvim/init.vim ~/.vimrc
ln -s ./zsh/zshrc ~/.zshrc

12
systemd/user/feh.service Normal file
View File

@@ -0,0 +1,12 @@
[Unit]
Description=feh
After=xorg.target
Requires=xorg.target
[Service]
Environment="DISPLAY=:0"
Restart=on-failure
ExecStart=/home/lis/.config/feh/%H-random
[Install]
WantedBy=default.target

9
systemd/user/feh.timer Normal file
View File

@@ -0,0 +1,9 @@
[Unit]
Description=Change Wallpaper every 30min
[Timer]
OnCalendar=*:0/30
Persistent=false
[Install]
WantedBy=timers.target

View File

@@ -0,0 +1,14 @@
[Unit]
Description=keyboard refreh time and keymapping
After=xorg.target
Requires=xorg.target
[Service]
Environment="DISPLAY=:0"
Restart=always
RestartSec=5
ExecStartPre=/usr/bin/xset r rate 200 60
ExecStart=/usr/bin/xmodmap /home/lis/.esc_caps
[Install]
WantedBy=default.target

View File

@@ -0,0 +1,13 @@
[Unit]
Description=mouse speed
After=xorg.target
Requires=xorg.target
[Service]
Environment="DISPLAY=:0"
Restart=on-failure
#RestartSec=5
ExecStart=/usr/bin/xinput set-prop %i 'libinput Accel Speed' 0.5
[Install]
WantedBy=default.target

View File

@@ -0,0 +1,13 @@
[Unit]
Description=picom
After=xorg.target
Requires=xorg.target
[Service]
Environment="DISPLAY=:0"
Restart=on-failure
#RestartSec=5
ExecStart=/usr/bin/picom -c
[Install]
WantedBy=default.target

View File

@@ -0,0 +1,14 @@
[Unit]
Description=polybar
After=xorg.target
Requires=xorg.target
[Service]
Environment="DISPLAY=:0"
Restart=always
RestartSec=5
ExecStart=/usr/bin/polybar -c /home/lis/.config/polybar/%H-config %i
KillSignal=SIGKILL
[Install]
WantedBy=default.target

View File

@@ -0,0 +1,12 @@
[Unit]
Description=redshift display filter
After=xorg.target
Requires=xorg.target
[Service]
Environment="DISPLAY=:0"
Restart=on-failure
ExecStart=/usr/bin/redshift -l 53.5488:9.9872
[Install]
WantedBy=default.target

View File

@@ -0,0 +1,10 @@
[Unit]
Description=daily backup of home directory
After=xorg.target
Requires=xorg.target
[Service]
EnvironmentFile=/home/lis/.config/restic/%I.env
ExecStartPre=/home/lis/.local/bin/vault-sshadd backup-restic
ExecStart=/usr/bin/restic backup --verbose --exclude-file /home/lis/.config/restic/%I.exclude --files-from /home/lis/.config/restic/%I.include
Type=oneshot

View File

@@ -0,0 +1,9 @@
[Unit]
Description=Run daily backup
[Timer]
OnCalendar=daily
Persistent=true
[Install]
WantedBy=timers.target

View File

@@ -0,0 +1,10 @@
[Unit]
Description=OpenSSH private key agent
[Service]
Type=forking
Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket
ExecStart=/usr/bin/ssh-agent -a $SSH_AUTH_SOCK
[Install]
WantedBy=default.target

View File

@@ -0,0 +1,10 @@
[Unit]
Description=Synergy Server Daemon
After=network.target
[Service]
ExecStart=/usr/bin/synergys --no-daemon --config /home/lis/.config/synergy/config --enable-crypto
Restart=on-failure
[Install]
WantedBy=default.target

View File

@@ -0,0 +1 @@
/home/lis/.config/systemd/user/feh.timer

View File

@@ -0,0 +1 @@
/home/lis/.config/systemd/user/restic@.timer

View File

@@ -0,0 +1,13 @@
[Unit]
Description=disable touchpad on login
After=xorg.target
Requires=xorg.target
[Service]
Environment="DISPLAY=:0"
Restart=on-failure
RestartSec=5
ExecStart=/usr/bin/xinput disable "Elan Touchpad"
[Install]
WantedBy=default.target

2
systemd/user/xorg.target Normal file
View File

@@ -0,0 +1,2 @@
[Unit]
Description=The basic Xorg server

15
systemd/user/xset.service Normal file
View File

@@ -0,0 +1,15 @@
[Unit]
Description=xset options like no screen off and no bell in terminal
After=xorg.target
Requires=xorg.target
[Service]
Environment="DISPLAY=:0"
Type=oneshot
Restart=on-failure
RestartSec=5
ExecStartPre=/usr/bin/xset -dpms s off
ExecStart=/usr/bin/xset -b
[Install]
WantedBy=default.target

124
tmux/tmux.conf Normal file
View File

@@ -0,0 +1,124 @@
# remap prefix from 'C-b' to 'C-a'
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# split panes using | and -
bind | split-window -h
bind - split-window -v
unbind '"'
unbind %
# reload config file (change file location to your the tmux.conf you want to use)
bind r source-file ~/.tmux.conf
bind -n C-s new-session
bind -n M-T new-window
unbind -n C-w
# switch panes using Alt-arrow without prefix
bind -n M-j select-pane -L
bind -n M-l select-pane -R
bind -n M-i select-pane -U
bind -n M-k select-pane -D
bind -n M-left select-pane -L
bind -n M-right select-pane -R
bind -n M-up select-pane -U
bind -n M-down select-pane -D
# Enable mouse mode (tmux 2.1 and above)
set -g mouse on
# don't rename windows automatically
set-option -g allow-rename off
# set escape time to 0
set -sg escape-time 100
# set base index from 0 to 1
set -g base-index 1
set -g pane-base-index 1
######################
### DEFAULT CONFIG ###
######################
#rename-window 'general'
#split-window -v 90 -t 0
#split-window -h
######################
### DESIGN CHANGES ###
######################
# panes
set -g pane-border-style bg=black,fg=brightred
## Status bar design
# status line
set -g status-justify left
set -g status-bg default
set -g status-fg colour12
set -g status-interval 2
# messaging
set -g message-style bg=yellow,fg=black
set -g message-command-style bg=black,fg=blue
#window mode
setw -g mode-style bg=colour6,fg=colour0
# window status
setw -g window-status-format " #F#I:#W#F "
setw -g window-status-current-format " #F#I:#W#F "
setw -g window-status-format "#[fg=magenta]#[bg=black] #I #[bg=cyan]#[fg=colour8] #W "
setw -g window-status-current-format "#[bg=brightmagenta]#[fg=colour8] #I #[fg=colour8]#[bg=colour14] #W "
setw -g window-status-current-style bg=colour0,fg=colour11,dim
setw -g window-status-style bg=green,fg=black,reverse
# Info on left (I don't have a session display for now)
set -g status-left ''
# loud or quiet?
set-option -g visual-activity off
set-option -g visual-bell off
set-option -g visual-silence off
set-window-option -g monitor-activity off
set-option -g bell-action none
set -g default-terminal "screen-256color"
# The modes {
setw -g clock-mode-colour colour135
setw -g mode-style bg=colour238,fg=colour196,bold
# }
# The panes {
set -g pane-border-style bg=colour235,fg=colour238
set -g pane-active-border-style bg=colour236,fg=colour51
# }
# The statusbar {
set -g status-position bottom
set -g status-style bg=colour234,fg=colour137,dim
set -g status-left ''
set -g status-right '#[fg=colour233,bg=colour241,bold] %d/%m #[fg=colour233,bg=colour245,bold] %H:%M:%S '
set -g status-right-length 50
set -g status-left-length 20
setw -g window-status-current-style bg=colour238,fg=colour81,bold
setw -g window-status-current-format ' #I#[fg=colour250]:#[fg=colour255]#W#[fg=colour50]#F '
setw -g window-status-style bg=colour235,fg=colour138
setw -g window-status-format ' #I#[fg=colour237]:#[fg=colour250]#W#[fg=colour244]#F '
setw -g window-status-bell-style bg=colour1,fg=colour255,bold
# }
# The messages {
set -g message-style bg=colour166,fg=colour232,bold
# }