i3 config overhaul AGAIN

This commit is contained in:
Wryn Wagner 2020-09-23 16:19:23 -06:00
parent 8b09c44ee7
commit cae7518746
25 changed files with 146 additions and 363 deletions

View File

@ -0,0 +1,4 @@
$WALLPAPER_DIR="$HOME/.config/wryn/wallpaper";
[ -d $WALLPAPER_DIR ] &&\
feh --recursive --randomize --bg-fill $WALLPAPER_DIR

4
bin/desktop/i3/logout.sh Executable file
View File

@ -0,0 +1,4 @@
i3-nagbar \
-t warning \
-m 'Do you really want to exit i3?' \
-B 'Yes' "notify-send 'system' 'exiting i3...' -i face-tired; $HOME/.config/wryn/sfx logout; i3-msg exit"

View File

@ -0,0 +1,2 @@
pactl set-sink-volume @DEFAULT_SINK@ -10%
$HOME/.config/wryn/sfx volume &

View File

@ -0,0 +1,2 @@
pactl set-sink-mute @DEFAULT_SINK@ toggle
$HOME/.config/wryn/sfx mute &

View File

@ -0,0 +1,2 @@
pactl set-sink-volume @DEFAULT_SINK@ +10%
$HOME/.config/wryn/sfx volume &

View File

@ -0,0 +1 @@
pactl set-source-mute @DEFAULT_SOURCE@ toggle

2
bin/desktop/xbacklight/down.sh Executable file
View File

@ -0,0 +1,2 @@
$HOME/.config/wryn/sfx backlight &
xbacklight - 10

2
bin/desktop/xbacklight/up.sh Executable file
View File

@ -0,0 +1,2 @@
$HOME/.config/wryn/sfx backlight &
xbacklight + 10

View File

@ -0,0 +1 @@
"$HOME/.wryn/bin/desktop/youtube-music/controller.sh" next

View File

@ -0,0 +1 @@
"$HOME/.wryn/bin/desktop/youtube-music/controller.sh" playpause

View File

@ -0,0 +1 @@
"$HOME/.wryn/bin/desktop/youtube-music/controller.sh" prev

View File

@ -3,37 +3,38 @@
# Please see https://i3wm.org/docs/userguide.html for a complete reference! # Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4 set $mod Mod4
set $CONFIG /home/w0ryn/.config/wryn set $CONFIG /home/w0ryn/.config/wryn
set $UTILS /home/w0ryn/.config/wryn/i3utils
font pango:monospace 6 font pango:monospace 6
# for use after any command which should refresh the statusbar
set $refresh_statusbar killall -SIGUSR1 i3status
bar {
status_command i3status
}
################################################################################ ################################################################################
## Media Keys ################################################################## ## Media Keys ##################################################################
################################################################################ ################################################################################
# Audio # Audio
set $refresh_i3status killall -SIGUSR1 i3status bindsym XF86AudioRewind exec --no-startup-id $UTILS prev
bindsym XF86AudioPrev exec --no-startup-id $UTILS prev
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status bindsym XF86AudioForward exec --no-startup-id $UTILS next
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status bindsym XF86AudioNext exec --no-startup-id $UTILS next
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status bindsym XF86AudioPlay exec --no-startup-id $UTILS playpause
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status bindsym XF86AudioRaiseVolume exec --no-startup-id $UTILS volumeraise
bindsym XF86AudioLowerVolume exec --no-startup-id $UTILS volumelower
bindsym XF86AudioMute exec --no-startup-id $UTILS mute
bindsym XF86AudioRewind exec --no-startup-id $CONFIG/prev bindsym XF86AudioMicMute exec --no-startup-id $UTILS micmute
bindsym XF86AudioPrev exec --no-startup-id $CONFIG/prev bindsym $mod+backslash exec --no-startup-id $UTILS micmute
bindsym XF86AudioForward exec --no-startup-id $CONFIG/next
bindsym XF86AudioNext exec --no-startup-id $CONFIG/next
bindsym XF86AudioPlay exec --no-startup-id $CONFIG/playpause
bindsym $mod+backslash exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
# Screen brightness # Screen brightness
bindsym XF86MonBrightnessUp exec $CONFIG/backlightup bindsym XF86MonBrightnessUp exec --no-startup-id $UTILS backlightup
bindsym XF86MonBrightnessDown exec $CONFIG/backlightdown bindsym XF86MonBrightnessDown exec --no-startup-id $UTILS backlightdown
################################################################################ ################################################################################
@ -131,26 +132,17 @@ bindsym $mod+Shift+0 move container to workspace number $ws10
## i3 Settings ################################################################# ## i3 Settings #################################################################
################################################################################ ################################################################################
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'Do you really want to exit i3?' -B 'Yes' 'i3-msg exit'" bindsym $mod+Shift+e exec $UTILS logout
bindsym $mod+Shift+r restart bindsym $mod+Shift+r restart
bindsym $mod+Shift+c reload bindsym $mod+Shift+c reload
# i3-gaps settings # i3-gaps settings
for_window [class="^.*"] border pixel 2 for_window [class="^.*"] border pixel 2
gaps inner 5 gaps inner 5
gaps outer 5 gaps outer 5
bar {
status_command i3status
}
# Terminal / Application Launcher # Terminal / Application Launcher
bindsym $mod+Return exec i3-sensible-terminal bindsym $mod+Return exec i3-sensible-terminal
bindsym $mod+space exec --no-startup-id dmenu_run -fn 'DejaVu Sans Mono-25' bindsym $mod+space exec --no-startup-id dmenu_run -fn 'DejaVu Sans Mono-25'
@ -161,5 +153,5 @@ bindsym $mod+space exec --no-startup-id dmenu_run -fn 'DejaVu Sans Mono-25'
# exec --no-startup-id nm-applet # network-manager-applet # exec --no-startup-id nm-applet # network-manager-applet
exec --no-startup-id compton # composite exec --no-startup-id compton # composite
bindsym $mod+p exec feh --recursive --randomize --bg-fill $CONFIG/wallpaper/* bindsym $mod+p exec --no-startup-id $UTILS bgrandomize
bindsym $mod+Shift+minus exec $CONFIG/lock bindsym $mod+Shift+minus exec --no-startup-id $UTILS lock

View File

@ -1,6 +0,0 @@
#!/bin/bash
source $HOME/.wryn/env/env.bash
LAYOUTS="$DOTWRYN/config/i3/layouts";
i3-msg "workspace 3; append_layout $LAYOUTS/chat_and_htop.json"
i3-msg "workspace 4; append_layout $LAYOUTS/repl.json"

View File

@ -1,129 +0,0 @@
{
tabbed split container with 3 children
"border": "normal",
"floating": "auto_off",
"layout": "tabbed",
"percent": 0.7,
"type": "con",
"nodes": [
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 1080,
"width": 603,
"x": 817,
"y": 0
},
"name": "Slack | Sam Christensen | Rent Dynamics | 2 new items",
"percent": 0.333333333333333,
"swallows": [
{
"class": "^Slack$",
"instance": "^slack$",
"title": "^Slack\\ \\|\\ Sam\\ Christensen\\ \\|\\ Rent\\ Dynamics\\ \\|\\ 2\\ new\\ items$",
"window_role": "^browser\\-window$"
}
],
"type": "con"
},
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 800,
"width": 1100,
"x": 458,
"y": 230
},
"name": "Android Messages",
"percent": 0.333333333333333,
"swallows": [
{
"class": "^Android\\ Messages$",
"instance": "^android\\ messages$",
"title": "^Android\\ Messages$",
"window_role": "^browser\\-window$"
}
],
"type": "con"
},
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 1080,
"width": 1371,
"x": 3869,
"y": 29
},
"name": "Activity - Discord",
"percent": 0.333333333333333,
"swallows": [
{
"class": "^discord$",
"instance": "^discord$",
"title": "^Activity\\ \\-\\ Discord$",
"window_role": "^browser\\-window$"
}
],
"type": "con"
}
]
}
{
"border": "normal",
"floating": "auto_off",
"layout": "splitv",
"percent": 0.3,
"type": "con",
"nodes": [
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 1165,
"width": 565,
"x": 0,
"y": 0
},
"name": "w0ryn@yage:~",
"percent": 0.7,
"swallows": [
{
"class": "^kitty$",
"instance": "^kitty$",
"title": "^w0ryn\\@yage\\:\\~$"
}
],
"type": "con"
},
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 1165,
"width": 565,
"x": 0,
"y": 0
},
"name": "w0ryn@yage:~",
"percent": 0.3,
"swallows": [
{
"class": "^kitty$",
"instance": "^kitty$",
"title": "^w0ryn\\@yage\\:\\~$"
}
],
"type": "con"
}
]
}

View File

@ -1,93 +0,0 @@
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 1165,
"width": 565,
"x": 0,
"y": 0
},
"name": "w0ryn@yage:~",
"percent": 0.5,
"swallows": [
{
"class": "kitty"
}
],
"type": "con"
}
{
"border": "normal",
"floating": "auto_off",
"layout": "splitv",
"percent": 0.5,
"type": "con",
"nodes": [
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 1165,
"width": 565,
"x": 0,
"y": 0
},
"name": "w0ryn@yage:~",
"percent": 0.333333333333333,
"swallows": [
{
"class": "^kitty$",
"instance": "^kitty$",
"title": "^w0ryn\\@yage\\:\\~$"
}
],
"type": "con"
},
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 1165,
"width": 565,
"x": 0,
"y": 0
},
"name": "w0ryn@yage:~",
"percent": 0.333333333333333,
"swallows": [
{
"class": "^kitty$",
"instance": "^kitty$",
"title": "^w0ryn\\@yage\\:\\~$"
}
],
"type": "con"
},
{
"border": "pixel",
"current_border_width": 5,
"floating": "auto_off",
"geometry": {
"height": 1165,
"width": 565,
"x": 0,
"y": 0
},
"name": "w0ryn@yage:~",
"percent": 0.333333333333333,
"swallows": [
{
"class": "^kitty$",
"instance": "^kitty$",
"title": "^w0ryn\\@yage\\:\\~$"
}
],
"type": "con"
}
]
}

View File

@ -1,99 +0,0 @@
#!/bin/bash
set $mod Mod4
font pango:Liberation Mono 8
floating_modifier $mod
bindsym $mod+Return exec i3-sensible-terminal
bindsym $mod+Shift+q kill
bindsym $mod+d exec --no-startup-id j4-dmenu-desktop
bindsym $mod+o exec --no-startup-id j4-dmenu-desktop
bindsym $mod+l exec --no-startup-id i3lock -c 111111
bindsym $mod+c exec --no-startup-id google-chrome-stable
bindsyn $mod+p exec --no-startup-id ~/.screenlayout/auto.sh
bindsym --whole-window $mod+button3 workspace next_on_output
bindsym --whole-window $mod+shift+button3 exec xdotool key --clearmodifiers ctrl+Tab
bindsym --whole-window $mod+shift+ctrl+button3 exec xdotool key --clearmodifiers ctrl+Shift+Tab
bindsym $mod+m move workspace to output right
bindsym $mod+Shift+m move workspace to output left
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
bindsym $mod+Shift+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+semicolon move right
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+h split h
bindsym $mod+v split v
bindsym $mod+f fullscreen toggle
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
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+0 workspace 10
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
bindsym $mod+Shift+0 move container to workspace 10
bindsym $mod+Shift+c reload
bindsym $mod+Shift+r restart
bindsym $mod+Shift+e 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'"
mode "resize" {
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 semicolon resize grow width 10 px or 10 ppt
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
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
bar {
status_command i3blocks -c ~/i3blocks.conf
position top
tray_output DisplayPort-1
colors {
}
}
workspace 1 output DisplayPort-1
workspace 2 output DisplayPort-0
workspace 5 output DisplayPort-0
workspace 3 output eDP
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym $mod+comma exec code ~/.config/i3/config
for_window [class="^.*"] border pixel 1
#exec --no-startup-id compton &
assign [class="Chromium-browser"] 3
assign [class="Code"] 2
assign [class="Google-chrome"] 5
exec --no-startup-id chromium-browser
exec --no-startup-id google-chrome
exec --no-startup-id code
exec --no-startup-id .screenlayout/auto.sh
exec --no-startup-id iwconfig wlp3s0 txpower 10dBm

57
config/i3/sfx Executable file
View File

@ -0,0 +1,57 @@
#!/bin/sh
ENGINE="$(which canberra-gtk-play) -f"
SFX="$HOME/Personal/sfx";
PLAY() {
eval "$ENGINE" "$SFX/$1"
}
case $1 in
volume ) PLAY yaru-message.oga ;;
mute ) PLAY smooth-dialog-warning.oga ;;
backlight ) PLAY yaru-audio-volume-change.oga ;;
login ) PLAY yaru-desktop-login.oga ;;
logout ) PLAY smooth-desktop-login.oga ;;
* ) ls $SFX ;;
esac
alsa-front-center.wav
alsa-front-left.wav
alsa-front-right.wav
alsa-noise.wav
alsa-rear-center.wav
alsa-rear-left.wav
alsa-rear-right.wav
alsa-side-left.wav
alsa-side-right.wav
freedesktop-bell.oga
freedesktop-camera-shutter.oga
freedesktop-complete.oga
freedesktop-message.oga
smooth-count-down.oga
smooth-desktop-login-1.oga
smooth-desktop-login-2.oga
smooth-desktop-login.oga
smooth-desktop-logout.oga
smooth-dialog-error.oga
smooth-dialog-information.oga
smooth-dialog-question.oga
smooth-dialog-warning.oga
smooth-message-new-instant.oga
smooth-message-sent-instant.oga
smooth-phone-incoming-call.oga
smooth-phone-outgoing-busy.oga
smooth-phone-outgoing-calling.oga
smooth-trash-empty.oga
yaru-audio-volume-change.oga
yaru-battery-low.oga
yaru-bell.oga
yaru-complete.oga
yaru-desktop-login.oga
yaru-device-added.oga
yaru-device-removed.oga
yaru-dialog-error.oga
yaru-message-new-instant.oga
yaru-message.oga

40
config/i3/utils Executable file
View File

@ -0,0 +1,40 @@
#!/bin/sh
UTIL_BIN="$HOME/.wryn/bin/desktop"
MEDIA__NEXT="$UTIL_BIN/youtube-music/next.sh"
MEDIA__PREV="$UTIL_BIN/youtube-music/previous.sh"
MEDIA__PLAYPAUSE="$UTIL_BIN/youtube-music/playpause.sh"
VOLUME__UP="$UTIL_BIN/pulseaudio/sink-volume/default-up.sh";
VOLUME__DOWN="$UTIL_BIN/pulseaudio/sink-volume/default-down.sh";
VOLUME__MUTE="$UTIL_BIN/pulseaudio/sink-volume/default-mute.sh";
VOLUME__MICMUTE="$UTIL_BIN/pulseaudio/source-volume/default-mute.sh";
BACKLIGHT__UP="$UTIL_BIN/xbacklight/up.sh";
BACKLIGHT__DOWN="$UTIL_BIN/xbacklight/down.sh";
LOCK_SCREEN="$UTIL_BIN/i3lock/lock.sh";
LOG_OUT="$UTIL_BIN/i3/logout.sh";
BG_RANDOMIZE="$UTIL_BIN/feh/randomize-background.sh"
case $1 in
next ) "$MEDIA__NEXT" ;;
prev ) "$MEDIA__PREV" ;;
playpause ) "$MEDIA__PLAYPAUSE" ;;
volumeraise ) "$VOLUME__UP" ;;
volumelower ) "$VOLUME__DOWN" ;;
mute ) "$VOLUME__MUTE" ;;
micmute ) "$VOLUME__MICMUTE" ;;
backlightup ) "$BACKLIGHT__UP" ;;
backlightdown ) "$BACKLIGHT__DOWN" ;;
lock ) "$LOCK_SCREEN" ;;
logout ) "$LOG_OUT" ;;
bgrandomize ) "$BG_RANDOMIZE" ;;
esac

View File

@ -1 +0,0 @@
xbacklight - 10

View File

@ -1 +0,0 @@
xbacklight + 10

5
setup
View File

@ -86,7 +86,7 @@ function CONFIG__BASIC_SYMLINK() {
local HOME_CONFIG="$1"; local HOME_CONFIG="$1";
local WRYN_CONFIG="$2"; local WRYN_CONFIG="$2";
mv "$HOME_CONFIG" "$HOME_CONFIG.bak"; # >/dev/null 2>&1; mv "$HOME_CONFIG" "$HOME_CONFIG.bak" >/dev/null 2>&1;
ln -s "$WRYN_CONFIG" "$HOME_CONFIG"; ln -s "$WRYN_CONFIG" "$HOME_CONFIG";
} }
@ -107,7 +107,8 @@ function CONFIG__SYMLINK() {
function CONFIG__I3() { function CONFIG__I3() {
CONFIG__SYMLINK "i3" "config"; CONFIG__SYMLINK "i3" "config";
echo "linked i3 configuration" CONFIG__BASIC_SYMLINK "$HOME/.config/wryn/i3utils" "$HOME/.wryn/config/i3/utils";
echo "linked i3 configuration";
} }
function CONFIG__PGCLI() { function CONFIG__PGCLI() {