renew config

This commit is contained in:
Simon Rieger 2023-05-09 15:17:29 +02:00
parent cac7d30119
commit 6a053095a0
5 changed files with 118 additions and 480 deletions

View file

@ -0,0 +1,7 @@
# sway does not set DISPLAY/WAYLAND_DISPLAY in the systemd user environment
# See FS#63021
# Adapted from xorg's 50-systemd-user.sh, which achieves a similar goal.
exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
exec hash dbus-update-activation-environment 2>/dev/null && \
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP

View file

@ -1,27 +1,14 @@
# 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 some time, delete
# this file and re-run i3-config-wizard(1).
#
# xmodmap -pke
# xev
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod1 set $mod Mod1
# https://man.archlinux.org/man/sway.5.en
# https://wiki.archlinux.org/title/Sway
# https://github.com/swaywm/sway/wiki
# https://github.com/swayos/swayos.github.io/blob/main/home/.config/sway/config
# Font for window titles. Will also be used by the bar unless a different font # Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below. # is used in the bar {} block below.
#font pango:Noto Sans Bold 9 #font pango:monospace 12
#font pango:Droid Sans 9 font pango:Terminus (TTF) Bold 12
#font pango:FontAwesome 8, pango: Droid Sans Mono 8
#font pango:System San Francisco Display 10
#font pango:System San Francisco Display 6
#font pango:monospace 8
set $bg-color #2f343f set $bg-color #2f343f
set $inactive-bg-color #2f343f set $inactive-bg-color #2f343f
@ -29,11 +16,6 @@ set $text-color #f3f4f5
set $inactive-text-color #676E7D set $inactive-text-color #676E7D
set $urgent-bg-color #E53935 set $urgent-bg-color #E53935
#font pango:Terminus (TTF) Bold 12
#font pango:Hack Nerd Font 13
#font pango:Hack 12
font pango:monospace 12
# window colors # window colors
# border background text indicat> # border background text indicat>
client.focused $bg-color $bg-color $text-color #00ff00 client.focused $bg-color $bg-color $text-color #00ff00
@ -41,24 +23,9 @@ client.unfocused $inactive-bg-color $inactive-bg-color $inactive-text-col
client.focused_inactive $inactive-bg-color $inactive-bg-color $inactive-text-color #00ff00 client.focused_inactive $inactive-bg-color $inactive-bg-color $inactive-text-color #00ff00
client.urgent $urgent-bg-color $urgent-bg-color $text-color #00ff00 client.urgent $urgent-bg-color $urgent-bg-color $text-color #00ff00
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# Before i3 v4.8, we used to recommend this one as the default:
# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# The font above is very space-efficient, that is, it looks good, sharp and
# clear in small sizes. However, its unicode glyph coverage is limited, the old
# X core fonts rendering does not support right-to-left and this being a bitmap
# font, it doesnt scale on retina/hidpi displays.
# Use Mouse+$mod to drag floating windows to their wanted position # Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod floating_modifier $mod
workspace_auto_back_and_forth yes
force_display_urgency_hint 0 ms
focus_on_window_activation urgent
# start a terminal # start a terminal
bindsym $mod+Return exec wezterm bindsym $mod+Return exec wezterm
@ -66,23 +33,9 @@ bindsym $mod+Return exec wezterm
bindsym $mod+Shift+q kill bindsym $mod+Shift+q kill
# Menu # Menu
#bindsym $mod+d exec rofi -show run -lines 3 -bw 1 -font "Cantarell 18" -opacity "75"
bindsym $mod+d exec fuzzel bindsym $mod+d exec fuzzel
bindsym $mod+Shift+d exec clipman pick --tool=CUSTOM --tool-args="fuzzel -d" bindsym $mod+Shift+d exec clipman pick --tool=CUSTOM --tool-args="fuzzel -d"
bindsym $mod+y exec ~/.config/fuzzel/fuzzel-pass.sh bindsym $mod+y exec ~/.config/fuzzel/fuzzel-pass.sh
#bindsym $mod+shift+y exec passdmenu -P -x clipboard
#bindsym $mod+d exec wofi --show run --width 900 --height 200
#bindsym $mod+d exec rofi -show run -lines 3 -eh 2 -width 100 -padding 800 -opacity "85" -bw 0 -bc "$bg-color" -bg "$bg-color" -fg "$text-color" -hlbg "$bg-color" -hlfg "#9575cd" -font "System San Francisco Display 18"
#bindsym $mod+d exec --no-startup-id i3-dmenu-desktop --dmenu='rofi -i -dmenu -font "snap 12" -bg "#222222" -fg "#888888" -hlbg "#285577" -hlfg "#ffffff" -opacity 90 -m 0 -location 2'
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
#bindsym $mod+d exec j4-dmenu-desktop --dmenu='bemenu -i --nb "#3f3f3f" --nf "#dcdccc" --fn "pango:DejaVu Sans Mono 12"' --term='termite'
# There also is the (new) i3-dmenu-desktop which only displays applications
# shipping a .desktop file. It is a wrapper around dmenu, so you need that
# installed.
# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
# change focus # change focus
bindsym $mod+j focus left bindsym $mod+j focus left
@ -131,22 +84,6 @@ bindsym $mod+space focus mode_toggle
# focus the parent container # focus the parent container
bindsym $mod+a focus parent bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
#set $ws1 "1: Terminals "
#set $ws2 "2: Browser "
#set $ws3 "3: Mail "
#set $ws4 "4: Office "
#set $ws5 "5: Music "
#set $ws6 "6: Speakprogram "
#set $ws7 "7: IDE "
#set $ws8 "8: Steam "
#set $ws9 "9: Chat "
#set $ws10 "10: Others "
bindsym --no-repeat $mod+1 workspace number 1; exec "echo 1 > /tmp/sov" bindsym --no-repeat $mod+1 workspace number 1; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+2 workspace number 2; exec "echo 1 > /tmp/sov" bindsym --no-repeat $mod+2 workspace number 2; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+3 workspace number 3; exec "echo 1 > /tmp/sov" bindsym --no-repeat $mod+3 workspace number 3; exec "echo 1 > /tmp/sov"
@ -158,6 +95,17 @@ bindsym --no-repeat $mod+8 workspace number 8; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+9 workspace number 9; exec "echo 1 > /tmp/sov" bindsym --no-repeat $mod+9 workspace number 9; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+0 workspace number 10; exec "echo 1 > /tmp/sov" bindsym --no-repeat $mod+0 workspace number 10; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+1 workspace number 11; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+2 workspace number 12; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+3 workspace number 13; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+4 workspace number 14; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+5 workspace number 15; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+6 workspace number 16; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+7 workspace number 17; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+8 workspace number 18; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+9 workspace number 19; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+0 workspace number 20; exec "echo 1 > /tmp/sov"
bindsym --release $mod+1 exec "echo 0 > /tmp/sov" bindsym --release $mod+1 exec "echo 0 > /tmp/sov"
bindsym --release $mod+2 exec "echo 0 > /tmp/sov" bindsym --release $mod+2 exec "echo 0 > /tmp/sov"
bindsym --release $mod+3 exec "echo 0 > /tmp/sov" bindsym --release $mod+3 exec "echo 0 > /tmp/sov"
@ -169,6 +117,17 @@ bindsym --release $mod+8 exec "echo 0 > /tmp/sov"
bindsym --release $mod+9 exec "echo 0 > /tmp/sov" bindsym --release $mod+9 exec "echo 0 > /tmp/sov"
bindsym --release $mod+0 exec "echo 0 > /tmp/sov" bindsym --release $mod+0 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+1 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+2 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+3 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+4 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+5 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+6 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+7 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+8 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+9 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+0 exec "echo 0 > /tmp/sov"
bindsym $mod+Shift+1 move container to workspace number 1 bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2 bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3 bindsym $mod+Shift+3 move container to workspace number 3
@ -180,94 +139,20 @@ bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9 bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10 bindsym $mod+Shift+0 move container to workspace number 10
bindsym $mod+Ctrl+1 [workspace="1"] move workspace to output current
bindsym $mod+Ctrl+2 [workspace="2"] move workspace to output current
bindsym $mod+Ctrl+3 [workspace="3"] move workspace to output current
bindsym $mod+Ctrl+4 [workspace="4"] move workspace to output current
bindsym $mod+Ctrl+5 [workspace="5"] move workspace to output current
bindsym $mod+Ctrl+6 [workspace="6"] move workspace to output current
bindsym $mod+Ctrl+7 [workspace="7"] move workspace to output current
bindsym $mod+Ctrl+8 [workspace="8"] move workspace to output current
bindsym $mod+Ctrl+9 [workspace="9"] move workspace to output current
bindsym $mod+Ctrl+0 [workspace="10"] move workspace to output current
# reload the configuration file # reload the configuration file
bindsym $mod+Shift+c reload bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r reload bindsym $mod+Shift+r reload
# exit sway (logs you out of your Wayland session)
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# 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 j resize shrink width 10 px or 10 ppt
bindsym k resize grow height 10 px or 10 ppt
bindsym l resize shrink height 10 px or 10 ppt
bindsym odiaeresis resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize" bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status mode "resize" {
# finds out, if available) bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
#client.focused #81a2be #81a2be #1d1f21 #282a2e bindsym Up resize shrink height 10px
#client.focused_inactive #373b41 #373b41 #969896 #282a2e bindsym Right resize grow width 10px
#client.unfocused #282a2e #282a2e #969896 #282a2e bindsym Return mode "default"
#client.urgent #373b41 #cc6666 #ffffff #cc6666 bindsym Escape mode "default"
# Status-Bar
#exec_always --no-startup-id $HOME/.config/polybar/launch.sh --cuts
# bar {
# swaybar_command /usr/bin/swaybar
# #font pango:Terminus (TTF) Bold 12
# #font pango:Hack Nerd Font 13
# font pango:Hack Bold 14
# #font pango:DejaVu Sans Mono, FontAwesome 12
# #font pango:MesloLGM Nerd Font Bold 13
# position top
# status_command i3status-rs ~/.config/i3status-rust/config.toml
# # https://fontawesome.com/v4/cheatsheet/
# separator_symbol 
# colors {
# background $bg-color
# statusline #263238
# separator #757575
# #colors outline background number
# active_workspace #009688 #009688 #eceff1
# focused_workspace $bg-color $bg-color $text-color
# inactive_workspace $inactive-bg-color $inactive-bg-color $inactive-text-color
# urgent_workspace $urgent-bg-color $urgent-bg-color $text-color
# }
# }
# Read `man 5 sway-bar` for more information about this section.
bar {
swaybar_command waybar
} }
input * { input * {
@ -276,7 +161,7 @@ input * {
natural_scroll disabled natural_scroll disabled
middle_emulation enabled middle_emulation enabled
# Flat or adaptative # Flat (deactivated) or adaptative (activated)
accel_profile adaptive accel_profile adaptive
# Between -1.0 and 1.0 # Between -1.0 and 1.0
@ -294,10 +179,12 @@ seat seat0 xcursor_theme capitaine-cursors 16
# display resoulution # display resoulution
output eDP-1 pos 0 0 res 1920x1080 output eDP-1 pos 0 0 res 1920x1080
set $gnome-schema org.gnome.desktop.interface
exec_always { exec_always {
gsettings set org.gnome.desktop.interface cursor-theme capitaine-cursors gsettings set $gnome-schema cursor-theme capitaine-cursors
gsettings set org.gnome.desktop.interface gtk-theme Arc-Dark gsettings set $gnome-schema gtk-theme Arc-Dark
gsettings set org.gnome.desktop.interface icon-theme Papirus-Dark gsettings set $gnome-schema icon-theme Papirus-Dark
gsettings set $gnome-schema font-name 'Cantarell 12'
gsettings set org.gnome.desktop.wm.preferences theme "Arc-Dark" gsettings set org.gnome.desktop.wm.preferences theme "Arc-Dark"
} }
@ -340,131 +227,46 @@ bindsym $mod+t exec pcmanfm-qt
bindsym $mod+shift+t exec thunderbird bindsym $mod+shift+t exec thunderbird
bindsym $mod+n exec wezterm start nmtui bindsym $mod+n exec wezterm start nmtui
#bindsym $mod+o exec termite -e /usr/bin/alsamixer
#bindsym $mod+y exec alacritty -e ncmpcpp
# Alsa-Steuerung & Lautstärke einstellen
#bindsym $mod+i exec amixer set Speaker 5%+
#bindsym $mod+u exec amixer set Speaker 5%-
bindsym $mod+i exec pamixer --allow-boost -i 5
bindsym $mod+shift+i exec pamixer --allow-boost -d 5
bindsym $mod+shift+v exec "if pamixer --get-mute; then pamixer --unmute; else pamixer --mute; fi"
#bindsym $mod+shift+v exec amixer set Speaker toggle
#bindsym $mod+shift+h exec amixer set Capture toggle
# https://i3wm.org/docs/userguide.html#assign_workspace
# xprop
# Einstellungen für spezielle Programme (exact match instead of substring) # Einstellungen für spezielle Programme (exact match instead of substring)
# Remmina (swaymsg -t get_tree) # Remmina (swaymsg -t get_tree)
for_window [app_id="org.remmina.Remmina"] floating enable
for_window [app_id="org.remmina.Remmina"] resize set 1000 600
for_window [app_id="foot"] border pixel 1 for_window [app_id="foot"] border pixel 1
for_window [app_id="iwgtk"] floating enable for_window [app_id="iwgtk"] floating enable
for_window [app_id="blueman-manager"] floating enable for_window [app_id="blueman-manager"] floating enable
for_window [app_id="blueman-manager"] resize set 1000 600 for_window [app_id="blueman-manager"] resize set 1000 600
for_window [app_id="pavucontrol"] floating enable
for_window [app_id="pavucontrol"] resize set 1000 600
for_window [app_id="org.gnome.Nautilus"] floating enable for_window [app_id="org.gnome.Nautilus"] floating enable
for_window [app_id="pcmanfm-qt"] floating enable
for_window [app_id="pcmanfm-qt"] resize set 1000 600
for_window [app_id="gnome-system-monitor"] floating enable; resize shrink down 100px; resize shrink up 100px for_window [app_id="gnome-system-monitor"] floating enable; resize shrink down 100px; resize shrink up 100px
for_window [app_id="wdisplays"] floating enable for_window [app_id="wdisplays"] floating enable
for_window [app_id="wdisplays"] resize set 1000 600 for_window [app_id="wdisplays"] resize set 1000 600
for_window [app_id="pavucontrol"] floating enable
for_window [app_id="pavucontrol"] resize set 1000 600
for_window [app_id="pavucontrol-qt"] floating enable for_window [app_id="pavucontrol-qt"] floating enable
for_window [app_id="pavucontrol-qt"] resize set 1000 600 for_window [app_id="pavucontrol-qt"] resize set 1000 600
for_window [app_id="lxqt-archiver"] floating enable for_window [app_id="pcmanfm"] floating enable
for_window [app_id="lxqt-archiver"] resize set 1000 600 for_window [app_id="pcmanfm"] resize set 1000 600
for_window [app_id="pcmanfm-qt"] floating enable
for_window [app_id="pcmanfm-qt"] resize set 1000 600
for_window [app_id="imv"] floating enable for_window [app_id="imv"] floating enable
for_window [app_id="pamac-manager"] floating enable for_window [app_id="pamac-manager"] floating enable
for_window [app_id="lxqt-policykit-agent"] floating enable for_window [app_id="org.remmina.Remmina"] floating enable
for_window [app_id="org.remmina.Remmina"] resize set 1000 600
for_window [class="(?i)vlc"] floating disable border none
for_window [class="(?i)virtualbox"] floating enable border normal
for_window [class="(?i)claws-mail"] floating enable border normal
for_window [class="mplayer"] floating disable border none
for_window [title="Wicd"] floating enable border normal
for_window [title="galculator"] floating enable border normal
for_window [title="Verbindungsinformationen"] floating enable border normal
for_window [title="Lautstärkeregler"] floating enable border normal
for_window [title="Freundesliste"] floating enable border normal
# Einstellungen Fensterverhalten für bestimmte Programme im Terminal
for_window [class="Alpine"] floating enable border none
for_window [class="calcurse"] floating enable border none
for_window [class="newsbeuter"] floating enable border none
for_window [class="weechat"] floating enable border none
# Starter für Progs im Terminal
bindsym $mod+F1 exec wezterm start arch-install
bindsym $mod+F2 exec wezterm start bashtop
bindsym $mod+F3 exec wezterm start nmtui
# assign special properties
for_window [class="^Pavucontrol$"] floating enable
for_window [title="MonoDevelop External Console"] floating enable
for_window [class="^Shutter$"] floating enable
# Enables floating windows of the chrome extension "Videostream for Chromecast"
for_window [instance="^crx_cnciopoikihiagdjbjpnocolokfelagl$"] floating enable
# The Chrome "Page Unresponsive" dialog is not floating...
for_window [title="Page Unresponsive"] floating enable
# Share your screen from Google Cast extension
for_window [title="Share your screen - Google Cast"] floating enable
# TeamSpeak new features window
for_window [class="^TeamSpeak 3$" title="^New TeamSpeak Features"] floating enable
# Android Device Monitor startup window
for_window [class="^Monitor$" instance="^Monitor$" title="^Monitor$"] floating enable
# chromeIPass "No logins found." window
for_window [title="^chromeIPass$"] floating enable
# Jetbrains
for_window [class="^com-intellij-updater-Runner$" title="^Update$"] floating enable
for_window [instance="^sun-awt-X11-XDialogPeer$" title="^Complete Installation$"] floating enable
# Unity
for_window [class="^Unity$" title="^Starting Unity...$"] floating enable
for_window [class="^Unity$" title="^Hold On$"] floating enable
for_window [class="^Unity$" title="^Preparing Package$"] floating enable
for_window [class="^Unity$" title="^Importing Package$"] floating enable
# https://github.com/ValveSoftware/steam-for-linux/issues/1040
for_window [class="^Steam$" title="^Friends$"] floating enable
for_window [class="^Steam$" title="Steam - News"] floating enable
for_window [class="^Steam$" title=".* - Chat"] floating enable
for_window [class="^Steam$" title="^Settings$"] floating enable
for_window [class="^Steam$" title=".* - event started"] floating enable
for_window [class="^Steam$" title=".* CD key"] floating enable
for_window [class="^Steam$" title="^Steam - Self Updater$"] floating enable
for_window [class="^Steam$" title="^Screenshot Uploader$"] floating enable
for_window [class="^Steam$" title="^Steam Guard - Computer Authorization Required$"] floating enable
for_window [class="^Steam$" title="Steam-Bibliotheksordner$"] floating enable
for_window [class="^Steam$" title="Neuen Steam-Bibliotheksordner auswählen oder erstellen:$"] floating enable
for_window [title="^Steam Keyboard$"] floating enable
#for_window [title="^Steam$"] floating enable
# There is no specific property for windows that should be floating (eg. the WM_NAME is the device name (PC1))
for_window [class="^PacketTracer6$"] floating enable
for_window [class="^PacketTracer6$" title="PT Activity"] floating disable
for_window [class="^PacketTracer6$" title="Cisco Packet Tracer"] floating disable
# Alsa-Steuerung & Lautstärke einstellen
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5% && pamixer --get-volume > /tmp/wob
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5% && pamixer --get-volume > /tmp/wob
# Steuerung der Helligkeit
bindsym XF86MonBrightnessDown exec brightnessctl set 5%- | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > /tmp/wob bindsym XF86MonBrightnessDown exec brightnessctl set 5%- | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > /tmp/wob
bindsym XF86MonBrightnessUp exec brightnessctl set +5% | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > /tmp/wob bindsym XF86MonBrightnessUp exec brightnessctl set +5% | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > /tmp/wob
# Touchpad controls bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
bindsym XF86TouchpadToggle exec /usr/bin/touchpad_toggle # toggle touchpad bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5% && pamixer --get-volume > /tmp/wob
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5% && pamixer --get-volume > /tmp/wob
# Media player controls bindsym $mod+XF86AudioPlay exec "echo 1 > /tmp/vmp"
bindsym XF86AudioPlay exec playerctl play bindsym $mod+XF86AudioNext exec "echo 2 > /tmp/vmp"
bindsym XF86AudioPause exec playerctl pause bindsym $mod+XF86AudioPrev exec "echo 3 > /tmp/vmp"
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous bindsym XF86AudioPrev exec playerctl previous
bindsym XF86Search exec fuzzel
# monitor-picture # monitor-picture
# 1. Capture a Selection # 1. Capture a Selection
@ -475,16 +277,22 @@ bindsym Shift+Print exec grim $(xdg-user-dir PICTURES)/$(date +'%Y-%m-%d-%H%M%S_
bindsym $mod+p exec wlogout -p layer-shell bindsym $mod+p exec wlogout -p layer-shell
bindsym --no-repeat $mod+Shift+p exec "echo 2 > /tmp/wcp" bindsym --no-repeat $mod+Shift+p exec "echo 2 > /tmp/wcp"
# swaylock
bindsym $mod+shift+x exec swaylock -c 000000
# exit sway (logs you out of your Wayland session)
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
# Power control script - a useful replacement for the normal i3 exiting keybind. # Power control script - a useful replacement for the normal i3 exiting keybind.
# https://wiki.archlinux.org/index.php/i3#Shutdown.2C_reboot.2C_lock_screen # https://wiki.archlinux.org/index.php/i3#Shutdown.2C_reboot.2C_lock_screen
set $mode_system System (1) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (d) shutdown set $mode_system System (1) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (d) shutdown
mode "$mode_system" { mode "$mode_system" {
bindsym 1 exec --no-startup-id ~/.config/sway/swayexit lock, mode "default" bindsym 1 exec ~/.config/sway/swayexit lock, mode "default"
bindsym e exec --no-startup-id ~/.config/sway/swayexit logout, mode "default" bindsym e exec ~/.config/sway/swayexit logout, mode "default"
bindsym s exec --no-startup-id ~/.config/sway/swayexit suspend, mode "default" bindsym s exec ~/.config/sway/swayexit suspend, mode "default"
bindsym h exec --no-startup-id ~/.config/sway/swayexit hibernate, mode "default" bindsym h exec ~/.config/sway/swayexit hibernate, mode "default"
bindsym r exec --no-startup-id ~/.config/sway/swayexit reboot, mode "default" bindsym r exec ~/.config/sway/swayexit reboot, mode "default"
bindsym d exec --no-startup-id ~/.config/sway/swayexit shutdown, mode "default" bindsym d exec ~/.config/sway/swayexit shutdown, mode "default"
# back to normal: Enter or Escape # back to normal: Enter or Escape
bindsym Return mode "default" bindsym Return mode "default"
bindsym Escape mode "default" bindsym Escape mode "default"
@ -495,10 +303,10 @@ bindsym $mod+x mode "$mode_system"
# Set the shortcuts and what they do # Set the shortcuts and what they do
set $mode_display Ext Screen (v) eDP ON, (h) HDMI ON, (x) eDP OFF, (y) HDMI OFF set $mode_display Ext Screen (v) eDP ON, (h) HDMI ON, (x) eDP OFF, (y) HDMI OFF
mode "$mode_display" { mode "$mode_display" {
bindsym v exec --no-startup-id output eDP-1 enable && output eDP-1 pos 1920 0 res 1920x1080 bindsym v exec output eDP-1 enable && output eDP-1 pos 1920 0 res 1920x1080, mode "default"
bindsym h exec --no-startup-id output HDMI-A-1 enable && output HDMI-A-1 pos 1920 0 res 1920x1080 bindsym h exec output HDMI-A-1 enable && output HDMI-A-1 pos 1920 0 res 1920x1080, mode "default"
bindsym x exec --no-startup-id output eDP-1 disable bindsym x exec output eDP-1 disable, mode "default"
bindsym y exec --no-startup-id output HDMI-A-1 disable bindsym y exec output HDMI-A-1 disable, mode "default"
# back to normal: Enter or Escape # back to normal: Enter or Escape
bindsym Return mode "default" bindsym Return mode "default"
@ -513,48 +321,20 @@ workspace_auto_back_and_forth yes
bindsym $mod+z workspace back_and_forth bindsym $mod+z workspace back_and_forth
bindsym $mod+Shift+z move container to workspace back_and_forth; workspace back_and_forth bindsym $mod+Shift+z move container to workspace back_and_forth; workspace back_and_forth
# volumeicon
#exec --no-startup-id volumeicon
# Networkmanager # Networkmanager
exec --no-startup-id nm-applet exec nm-applet
# Bluetooth # Bluetooth
exec --no-startup-id blueman-applet exec blueman-applet
# Start xscreensaver
#exec --no-startup-id "xscreensaver -no-splash"
# Start Pulseaudio Server
#already started
#exec --no-startup-id "pulseaudio --start"
# Start mako-notifyd Service # Start mako-notifyd Service
exec --no-startup-id "mako -c .config/mako/config" exec "mako -c .config/mako/config"
# Start volumeicon tray paystray (pulseaudio) # authentication manager https://wiki.archlinux.org/title/Polkit
#exec --no-startup-id "pasystray --notify=all" exec /usr/bin/lxqt-policykit-agent
# imwheel faster scrolling (deactivated sound bug) # Waybar
#exec --no-startup-id imwheel exec waybar
# authentication manager (https://wiki.archlinux.org/title/Polkit)
exec --no-startup-id /usr/bin/lxqt-policykit-agent
# xfce4-power-manager
#exec --no-startup-id xfce4-power-manager
# start gnome-keyring-daemon
#exec --no-startup-id /usr/bin/gnome-keyring-daemon --start --components=ssh,secrets,pkcs11
# notify service from smartphone
#exec --no-startup-id /opt/an2linuxserver/an2linuxserver.py
# Adjust the color temperature of your screen according to your surroundings.
#exec gammastep
# starting Steam
#exec --no-startup-id sleep 30 && steam-native
# Clipboard Manager # Clipboard Manager
exec wl-paste -t text --watch clipman store exec wl-paste -t text --watch clipman store
@ -568,19 +348,8 @@ exec rm -f /tmp/wob && mkfifo /tmp/wob && tail -f /tmp/wob | wob
exec rm -f /tmp/sov && mkfifo /tmp/sov && tail -f /tmp/sov | sov -t 200 exec rm -f /tmp/sov && mkfifo /tmp/sov && tail -f /tmp/sov | sov -t 200
exec rm -f /tmp/wcp && mkfifo /tmp/wcp && tail -f /tmp/wcp | wcp -f 300x190 -m 20 -a rt exec rm -f /tmp/wcp && mkfifo /tmp/wcp && tail -f /tmp/wcp | wcp -f 300x190 -m 20 -a rt
####### default_border none
default_floating_border normal
# swaylock
#convert image.jpg -resize $(xdpyinfo | grep dimensions | sed -r 's/^[^0-9]*([0-9]+x[0-9]+).*$/\1/') RGB:- | i3lock --raw $(xdpyinfo | grep dimensions | sed -r 's/^[^0-9]*([0-9]+x[0-9]+).*$/\1/'):rgb --image /dev/stdin
bindsym $mod+shift+x exec swaylock -c 000000
#bindsym $mod+shift+b exec xtrlock
### i3-gaps stuff ###
# Necessary for i3-gaps to work properly (pixel can be any value)
for_window [class="^.*"] border pixel 3
# Smart Gaps # Smart Gaps
smart_gaps on smart_gaps on
@ -588,50 +357,9 @@ smart_gaps on
# Smart Borders # Smart Borders
smart_borders on smart_borders on
# Set inner/outer gaps gaps inner 5
gaps inner 12 gaps outer 0
gaps outer -2 gaps top -5
# Gaps mode
set $mode_gaps Gaps: (o) outer, (i) inner
set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
bindsym $mod+Shift+g mode "$mode_gaps"
mode "$mode_gaps" {
bindsym o mode "$mode_gaps_outer"
bindsym i mode "$mode_gaps_inner"
bindsym Return mode "default"
bindsym Escape mode "default"
}
mode "$mode_gaps_inner" {
bindsym plus gaps inner current plus 5
bindsym minus gaps inner current minus 5
bindsym 0 gaps inner current set 0
bindsym Shift+plus gaps inner all plus 5
bindsym Shift+minus gaps inner all minus 5
bindsym Shift+0 gaps inner all set 0
bindsym Return mode "default"
bindsym Escape mode "default"
}
mode "$mode_gaps_outer" {
bindsym plus gaps outer current plus 5
bindsym minus gaps outer current minus 5
bindsym 0 gaps outer current set 0
bindsym Shift+plus gaps outer all plus 5
bindsym Shift+minus gaps outer all minus 5
bindsym Shift+0 gaps outer all set 0
bindsym Return mode "default"
bindsym Escape mode "default"
}
default_border none
default_floating_border normal
#xwayland disable #xwayland disable

View file

@ -1,6 +1,5 @@
if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then
# First make sure dbus is started # First make sure dbus is started
if [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then if [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then
export DBUS_SESSION_BUS_ADDRESS="$(dbus-daemon --session --fork --print-address)" export DBUS_SESSION_BUS_ADDRESS="$(dbus-daemon --session --fork --print-address)"
fi fi
@ -8,9 +7,10 @@ if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then
# Set XDG_RUNTIME_DIR # Set XDG_RUNTIME_DIR
# Paragraph modified from https://wiki.gentoo.org/wiki/Sway # Paragraph modified from https://wiki.gentoo.org/wiki/Sway
if [ -z "${XDG_RUNTIME_DIR}" ]; then if test -z "${XDG_RUNTIME_DIR}"; then
export XDG_RUNTIME_DIR="/tmp/${UID}-runtime-dir" UID="$(id -u)"
if ! [ -d "${XDG_RUNTIME_DIR}" ]; then export XDG_RUNTIME_DIR=/tmp/"${UID}"-runtime-dir
if ! test -d "${XDG_RUNTIME_DIR}"; then
mkdir "${XDG_RUNTIME_DIR}" mkdir "${XDG_RUNTIME_DIR}"
chmod 0700 "${XDG_RUNTIME_DIR}" chmod 0700 "${XDG_RUNTIME_DIR}"
fi fi
@ -49,5 +49,7 @@ if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then
#export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:~/.local/lib/ #export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:~/.local/lib/
#XDG_CURRENT_DESKTOP=sway dbus-run-session sway
exec sway exec sway
fi fi

133
dot_zshrc
View file

@ -1,124 +1,25 @@
autoload -U promptinit; promptinit; # needed for history and autosuggestions
export HISTFILE=~/.zhistory
export HISTSIZE=10000000
export SAVEHIST=10000000
autoload -U compinit # make midnight commander colorful
compinit export TERM=xterm-256color
zstyle ':completion:*' menu yes select # by default backspace deletes whole word
zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}' bindkey "^H" backward-delete-char
zstyle ':completion:*' rehash true # up/down should search in history not step
bindkey '\e[A' history-beginning-search-backward
autoload -U select-word-style bindkey '\e[B' history-beginning-search-forward
select-word-style bash # colored prompt
autoload -U colors && colors
setopt auto_cd PS1="%{$fg[red]%}%n%{$reset_color%}@%{$fg[blue]%}%m %{$fg[yellow]%}%/ %{$reset_color%}% "
setopt HIST_IGNORE_SPACE # called when executing a command
setopt interactive_comments function preexec {
setopt inc_append_history print -Pn "\e]0;${(q)1}\e\\"
setopt share_history
setopt AUTO_PUSHD
setopt PUSHD_IGNORE_DUPS
setopt PUSHD_SILENT
for index ({1..9}) alias "$index"="cd +${index}"; unset index
HISTFILE=~/.zsh_history
HISTSIZE=10000000
SAVEHIST=10000000
bindkey "^[[H" beginning-of-line # HOME
bindkey "^[[F" end-of-line # END
bindkey "^[[3~" delete-char # DEL
bindkey -M emacs '\e#' pound-insert # ALT+#
bindkey '^R' history-incremental-pattern-search-backward
mem() {
echo $(echo $(smem -t -P $1 | tail -n 1 | rev | cut -d ' ' -f 2 | rev) / 1024 | bc) MB
} }
alias eZ="vim ~/.zshrc"
alias eI="vim ~/.config/i3/config"
alias eW="vim ~/.config/wezterm/wezterm.lua"
alias eI="vim ~/.config/i3/config"
alias eV="vim ~/.vimrc"
alias eS="vim ~/.config/starship.toml"
alias wetter="curl http://v3.wttr.in/Hessen.sxl; sleep 5; curl http://v1.wttr.in/Hanau"
alias history="history 0"
alias etcher="usbimager"
alias ls='ls --color=auto'
alias s='the-way search'
function deepl
{
args="$*"
echo "$args"
echo "$args" | command deepl -s --to en
}
alias deepl="noglob deepl"
function rm
{
/bin/rm $@ -I
}
function ask
{
args="$*"
ai ask "$args"
}
alias ask="noglob ask"
alias chatgpt="noglob chatgpt --"
alias history="history | fzf"
function imgcat()
{
local CNT=0
local IFS=$'\n'
local posY=$(($(echo -e "cols" | tput -S) / 2))
local posX=$(($(echo -e "lines" | tput -S) / 4))
for i in $(find $1 -type f -exec file --mime-type {} \+ | awk -F: '{if ($2 ~/image\//) print $1}'); do
CNT=$((CNT+1))
if test $(($CNT % 2)) -eq 0 && test "$2" != "-1"; then
printf "\033[${posX}A"
printf "\033[${posY}C"
echo -e "==== $(basename $i) ===="
printf "\033[${posY}C"
else
echo -e "==== $(basename $i) ===="
fi
if echo "$i" | grep -e ".svg$" &> /dev/null; then
ffmpeg -i "$i" -vf scale=640:-1 -f image2pipe -vcodec png - 2> /dev/null | wezterm imgcat --height 20%
else
wezterm imgcat --height 20% "$i";
fi
done
}
function cmdsave() {
PREV=$(fc -lrn | head -n 1)
sh -c "the-way cmd `printf %q "$PREV"`"
}
function cmdsearch() {
BUFFER=$(the-way search --stdout --languages="sh")
print -z $BUFFER
}
export PATH="$PATH:$HOME/.local/bin:$HOME/repos/scripts/helper"
export PATH="$PATH:$HOME/.local/share/JetBrains/Toolbox/scripts"
export PNPM_HOME="$HOME/.local/share/pnpm"
export PATH="$PNPM_HOME:$PATH"
export TERMINAL=wezterm
export EDITOR=vim
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/share/fzf/key-bindings.zsh source /usr/share/fzf/key-bindings.zsh
export EDITOR="vim"
eval "$(starship init zsh)" eval "$(starship init zsh)"