diff --git a/bin/desktop/feh/randomize-background.sh b/bin/desktop/feh/randomize-background.sh new file mode 100755 index 0000000..6434312 --- /dev/null +++ b/bin/desktop/feh/randomize-background.sh @@ -0,0 +1,4 @@ +$WALLPAPER_DIR="$HOME/.config/wryn/wallpaper"; + +[ -d $WALLPAPER_DIR ] &&\ + feh --recursive --randomize --bg-fill $WALLPAPER_DIR diff --git a/config/i3/utils/gmux-backlight-down.sh b/bin/desktop/gmux-backlight/down.sh similarity index 100% rename from config/i3/utils/gmux-backlight-down.sh rename to bin/desktop/gmux-backlight/down.sh diff --git a/config/i3/utils/gmux-backlight-up.sh b/bin/desktop/gmux-backlight/up.sh similarity index 100% rename from config/i3/utils/gmux-backlight-up.sh rename to bin/desktop/gmux-backlight/up.sh diff --git a/bin/desktop/i3/logout.sh b/bin/desktop/i3/logout.sh new file mode 100755 index 0000000..eeb8cf1 --- /dev/null +++ b/bin/desktop/i3/logout.sh @@ -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" diff --git a/config/i3/utils/lock-screen.sh b/bin/desktop/i3lock/lock.sh similarity index 100% rename from config/i3/utils/lock-screen.sh rename to bin/desktop/i3lock/lock.sh diff --git a/bin/desktop/pulseaudio/sink-volume/default-down.sh b/bin/desktop/pulseaudio/sink-volume/default-down.sh new file mode 100755 index 0000000..faf6a93 --- /dev/null +++ b/bin/desktop/pulseaudio/sink-volume/default-down.sh @@ -0,0 +1,2 @@ +pactl set-sink-volume @DEFAULT_SINK@ -10% +$HOME/.config/wryn/sfx volume & diff --git a/bin/desktop/pulseaudio/sink-volume/default-mute.sh b/bin/desktop/pulseaudio/sink-volume/default-mute.sh new file mode 100755 index 0000000..79ba939 --- /dev/null +++ b/bin/desktop/pulseaudio/sink-volume/default-mute.sh @@ -0,0 +1,2 @@ +pactl set-sink-mute @DEFAULT_SINK@ toggle +$HOME/.config/wryn/sfx mute & diff --git a/bin/desktop/pulseaudio/sink-volume/default-up.sh b/bin/desktop/pulseaudio/sink-volume/default-up.sh new file mode 100755 index 0000000..1817e23 --- /dev/null +++ b/bin/desktop/pulseaudio/sink-volume/default-up.sh @@ -0,0 +1,2 @@ +pactl set-sink-volume @DEFAULT_SINK@ +10% +$HOME/.config/wryn/sfx volume & diff --git a/bin/desktop/pulseaudio/source-volume/default-mute.sh b/bin/desktop/pulseaudio/source-volume/default-mute.sh new file mode 100755 index 0000000..516771b --- /dev/null +++ b/bin/desktop/pulseaudio/source-volume/default-mute.sh @@ -0,0 +1 @@ +pactl set-source-mute @DEFAULT_SOURCE@ toggle diff --git a/bin/desktop/xbacklight/down.sh b/bin/desktop/xbacklight/down.sh new file mode 100755 index 0000000..11cc72e --- /dev/null +++ b/bin/desktop/xbacklight/down.sh @@ -0,0 +1,2 @@ +$HOME/.config/wryn/sfx backlight & +xbacklight - 10 diff --git a/bin/desktop/xbacklight/up.sh b/bin/desktop/xbacklight/up.sh new file mode 100755 index 0000000..5c3a858 --- /dev/null +++ b/bin/desktop/xbacklight/up.sh @@ -0,0 +1,2 @@ +$HOME/.config/wryn/sfx backlight & +xbacklight + 10 diff --git a/bin/youtube-media-controls.sh b/bin/desktop/youtube-music/controller.sh similarity index 100% rename from bin/youtube-media-controls.sh rename to bin/desktop/youtube-music/controller.sh diff --git a/bin/desktop/youtube-music/next.sh b/bin/desktop/youtube-music/next.sh new file mode 100755 index 0000000..4b77250 --- /dev/null +++ b/bin/desktop/youtube-music/next.sh @@ -0,0 +1 @@ +"$HOME/.wryn/bin/desktop/youtube-music/controller.sh" next diff --git a/bin/desktop/youtube-music/playpause.sh b/bin/desktop/youtube-music/playpause.sh new file mode 100755 index 0000000..ed98ceb --- /dev/null +++ b/bin/desktop/youtube-music/playpause.sh @@ -0,0 +1 @@ +"$HOME/.wryn/bin/desktop/youtube-music/controller.sh" playpause diff --git a/bin/desktop/youtube-music/previous.sh b/bin/desktop/youtube-music/previous.sh new file mode 100755 index 0000000..e0f4b0e --- /dev/null +++ b/bin/desktop/youtube-music/previous.sh @@ -0,0 +1 @@ +"$HOME/.wryn/bin/desktop/youtube-music/controller.sh" prev diff --git a/config/i3/config b/config/i3/config index 8df6a3e..21b4971 100644 --- a/config/i3/config +++ b/config/i3/config @@ -3,37 +3,38 @@ # Please see https://i3wm.org/docs/userguide.html for a complete reference! set $mod Mod4 + set $CONFIG /home/w0ryn/.config/wryn +set $UTILS /home/w0ryn/.config/wryn/i3utils 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 ################################################################## ################################################################################ # Audio -set $refresh_i3status killall -SIGUSR1 i3status - -bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status -bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status -bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status -bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status - - -bindsym XF86AudioRewind exec --no-startup-id $CONFIG/prev -bindsym XF86AudioPrev exec --no-startup-id $CONFIG/prev - -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 - +bindsym XF86AudioRewind exec --no-startup-id $UTILS prev +bindsym XF86AudioPrev exec --no-startup-id $UTILS prev +bindsym XF86AudioForward exec --no-startup-id $UTILS next +bindsym XF86AudioNext exec --no-startup-id $UTILS next +bindsym XF86AudioPlay exec --no-startup-id $UTILS playpause +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 XF86AudioMicMute exec --no-startup-id $UTILS micmute +bindsym $mod+backslash exec --no-startup-id $UTILS micmute # Screen brightness -bindsym XF86MonBrightnessUp exec $CONFIG/backlightup -bindsym XF86MonBrightnessDown exec $CONFIG/backlightdown +bindsym XF86MonBrightnessUp exec --no-startup-id $UTILS backlightup +bindsym XF86MonBrightnessDown exec --no-startup-id $UTILS backlightdown ################################################################################ @@ -131,26 +132,17 @@ bindsym $mod+Shift+0 move container to workspace number $ws10 ## 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+c reload - # i3-gaps settings - for_window [class="^.*"] border pixel 2 gaps inner 5 gaps outer 5 -bar { - status_command i3status -} - - # Terminal / Application Launcher - bindsym $mod+Return exec i3-sensible-terminal - 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 compton # composite -bindsym $mod+p exec feh --recursive --randomize --bg-fill $CONFIG/wallpaper/* -bindsym $mod+Shift+minus exec $CONFIG/lock +bindsym $mod+p exec --no-startup-id $UTILS bgrandomize +bindsym $mod+Shift+minus exec --no-startup-id $UTILS lock diff --git a/config/i3/desktop_layout b/config/i3/desktop_layout deleted file mode 100644 index 8bf6721..0000000 --- a/config/i3/desktop_layout +++ /dev/null @@ -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" diff --git a/config/i3/layouts/chat_and_htop.json b/config/i3/layouts/chat_and_htop.json deleted file mode 100644 index d29a38b..0000000 --- a/config/i3/layouts/chat_and_htop.json +++ /dev/null @@ -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" - } - ] -} - diff --git a/config/i3/layouts/repl.json b/config/i3/layouts/repl.json deleted file mode 100644 index cf07daf..0000000 --- a/config/i3/layouts/repl.json +++ /dev/null @@ -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" - } - ] -} - diff --git a/config/i3/rent_dynamics_screen_layout b/config/i3/rent_dynamics_screen_layout deleted file mode 100644 index 090e9c2..0000000 --- a/config/i3/rent_dynamics_screen_layout +++ /dev/null @@ -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 diff --git a/config/i3/sfx b/config/i3/sfx new file mode 100755 index 0000000..22331a2 --- /dev/null +++ b/config/i3/sfx @@ -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 diff --git a/config/i3/utils b/config/i3/utils new file mode 100755 index 0000000..3c1a813 --- /dev/null +++ b/config/i3/utils @@ -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 diff --git a/config/i3/utils/xbacklight-down.sh b/config/i3/utils/xbacklight-down.sh deleted file mode 100755 index 168215a..0000000 --- a/config/i3/utils/xbacklight-down.sh +++ /dev/null @@ -1 +0,0 @@ -xbacklight - 10 diff --git a/config/i3/utils/xbacklight-up.sh b/config/i3/utils/xbacklight-up.sh deleted file mode 100755 index 6a591d6..0000000 --- a/config/i3/utils/xbacklight-up.sh +++ /dev/null @@ -1 +0,0 @@ -xbacklight + 10 diff --git a/setup b/setup index 20c080e..762e52c 100755 --- a/setup +++ b/setup @@ -86,7 +86,7 @@ function CONFIG__BASIC_SYMLINK() { local HOME_CONFIG="$1"; 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"; } @@ -107,7 +107,8 @@ function CONFIG__SYMLINK() { function CONFIG__I3() { 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() {