diff --git a/.config/nwg-launchers/nwgbar/bar.json b/.config/nwg-launchers/nwgbar/bar.json new file mode 100644 index 0000000..4f9d813 --- /dev/null +++ b/.config/nwg-launchers/nwgbar/bar.json @@ -0,0 +1,22 @@ +[ + { + "name": "Lock screen", + "exec": "swaylock", + "icon": "/home/joshfabean/.config/nwg-launchers/nwgbar/images/lock.svg" + }, + { + "name": "Logout", + "exec": "swaymsg exit", + "icon": "/home/joshfabean/.config/nwg-launchers/nwgbar/images/logout.svg" + }, + { + "name": "Reboot", + "exec": "systemctl reboot", + "icon": "/home/joshfabean/.config/nwg-launchers/nwgbar/images/reboot.svg" + }, + { + "name": "Shutdown", + "exec": "systemctl -i poweroff", + "icon": "/home/joshfabean/.config/nwg-launchers/nwgbar/images/shutdown.svg" + } +] diff --git a/.config/nwg-launchers/nwgbar/images/lock.svg b/.config/nwg-launchers/nwgbar/images/lock.svg new file mode 100644 index 0000000..22204e5 --- /dev/null +++ b/.config/nwg-launchers/nwgbar/images/lock.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/.config/nwg-launchers/nwgbar/images/logout.svg b/.config/nwg-launchers/nwgbar/images/logout.svg new file mode 100644 index 0000000..d5b4746 --- /dev/null +++ b/.config/nwg-launchers/nwgbar/images/logout.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/.config/nwg-launchers/nwgbar/images/reboot.svg b/.config/nwg-launchers/nwgbar/images/reboot.svg new file mode 100644 index 0000000..c0acea4 --- /dev/null +++ b/.config/nwg-launchers/nwgbar/images/reboot.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/.config/nwg-launchers/nwgbar/images/shutdown.svg b/.config/nwg-launchers/nwgbar/images/shutdown.svg new file mode 100644 index 0000000..87893c2 --- /dev/null +++ b/.config/nwg-launchers/nwgbar/images/shutdown.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/.config/nwg-launchers/nwgbar/images/suspend.svg b/.config/nwg-launchers/nwgbar/images/suspend.svg new file mode 100644 index 0000000..1c386bc --- /dev/null +++ b/.config/nwg-launchers/nwgbar/images/suspend.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/.config/nwg-launchers/nwgbar/style.css b/.config/nwg-launchers/nwgbar/style.css new file mode 100644 index 0000000..d959377 --- /dev/null +++ b/.config/nwg-launchers/nwgbar/style.css @@ -0,0 +1,34 @@ +#bar { + margin: 30px /* affects top/bottom & left/right alignment */ +} + +button, image { + background: none; + border-style: none; + box-shadow: none; + color:#eceff4; +} + +button { + padding-left: 10px; + padding-right: 10px; + margin: 5px +} + +button:hover { + background-color: #17917a; +} + +button:focus { + background-color: #17917a; +} + +grid { + background-color: #1d2021; + border-radius: 5px; + padding: 5px; + box-shadow: 0 0 5px black; + /* e.g. for common background to all buttons */ +} + + diff --git a/.config/sway/bellsprout-sway b/.config/sway/bellsprout-sway new file mode 100644 index 0000000..84c6a68 --- /dev/null +++ b/.config/sway/bellsprout-sway @@ -0,0 +1,298 @@ +# Please see http://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod4 +set $alt Mod1 + +font JetBrains Mono, FontAwesome 12 + +bindsym $mod+F7 exec --no-startup-id xset r rate 250 25 && xset b off && setxkbmap -option caps:escape + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# start a terminal +bindsym $mod+Return exec --no-startup-id alacritty + +# kill focused window +bindsym $mod+q kill + +# lock screen +bindsym $mod+$alt+s exec swaylock + +exec swayidle -w \ + timeout 600 'swaylock' +exec swayidle -w \ + timeout 1200 'swaymsg "output * dpms off"'\ + resume 'swaymsg "output * dpms on"' +# before-sleep 'swaylock' + +# start rofi (a program launcher) +bindsym XF86LaunchA exec --no-startup-id rofi -show run +bindcode 225 exec --no-startup-id rofi -show run +bindsym $mod+space exec --no-startup-id rofi -show run + +# change focus +bindsym $mod+j focus left +bindsym $mod+k focus down +bindsym $mod+l focus up +bindsym $mod+semicolon 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 + +# move focused window +bindsym $mod+Shift+j move left +bindsym $mod+Shift+k move down +bindsym $mod+Shift+l move up +bindsym $mod+Shift+semicolon 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 + +# 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+d fullscreen +bindsym $mod+$alt+f fullscreen + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+t 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+$alt+space focus mode_toggle + +# focus the parent container +bindsym $mod+p focus parent + +# focus the child container +bindsym $mod+c focus child + +# 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+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'" + +# 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+0 workspace 10 +bindsym Mod1+Control+Right workspace next +bindsym Mod1+Control+Left workspace prev +workspace_auto_back_and_forth yes +bindsym $mod+z workspace back_and_forth +bindsym $mod+Shift+z move container to workspace back_and_forth + +# 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 number 5 +bindsym $mod+Shift+6 move container to workspace number 6 +bindsym $mod+Shift+7 move container to workspace number 7 +bindsym $mod+Shift+8 move container to workspace number 8 +bindsym $mod+Shift+9 move container to workspace number 9 +bindsym $mod+Shift+0 move container to workspace number 10 + +######################## +## Custom Keybindings +######################## +bindsym $mod+f exec --no-startup-id alacrity -e ranger +bindsym Print exec scrot -s -e 'mv $f ~/Downloads' +bindsym $mod+m move scratchpad +bindsym $mod+n scratchpad show +bindsym $mod+Shift+s sticky toggle +#bindsym Control+k exec --no-startup-id echo "core.weechat */buffer_dmenu" >> $(find ~/.weechat -type p) +# Notifications +bindsym $mod+Control+Shift+space exec --no-startup-id makoctl dismiss -a +bindsym $mod+Control+space exec --no-startup-id makoctl dismiss + +######################### +## Floating Windows +######################### +for_window [class="Android SDK Manager" instance="Android SDK Manager"] floating enable +for_window [class="Cb-exit" instance="cb-exit"] floating enable +for_window [class="Cb-exit" instance="cb-exit"] border none +for_window [class="^Pavucontrol$"] floating enable +for_window [instance="crx_gaedmjdfmmahhbjefcbgaolhhanlaolb"] floating enable +for_window [class="Google-chrome" instance="crx_nckgahadagoaajjgafhacjanaoiihapd"] floating enable +for_window [class="chrome_app_list"] floating enable +for_window [class="Plexamp"] floating enable +for_window [class="blueman-manager"] floating enable +for_window [class="^Bluetooth Devices"] 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 [title="^Steam Keyboard$"] floating enable +for_window [title="Qalculate!"] floating enable +for_window [title="Steam"] floating enable +for_window [title="Origin"] floating enable + +########################### +## Assign Workspaces +########################## +assign [class="Slack"] 3 +assign [class="Plexamp"] 3 + +########################## +## Gaps +########################## +# new_window 1pixel +default_border pixel 0 +#Hide border if 1 window +hide_edge_borders both +set $default_gaps_inner 5 +set $default_gaps_outer 5 +gaps inner $default_gaps_inner +gaps outer $default_gaps_outer +smart_gaps on + + +# 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 window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s 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 semicolon 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 + bindsym Return mode "default" + bindsym Escape mode "default" +} + + +bindsym $mod+r mode "resize" + +# Resize Containers, Vim-style ($mod+Control+[hjkl]) +bindsym $mod+Control+j resize grow height 5 px or 5 ppt +bindsym $mod+Control+k resize shrink height 5 px or 5 ppt +bindsym $mod+Control+l resize grow width 5 px or 5 ppt +bindsym $mod+Control+h resize shrink width 5 px or 5 ppt + +bindsym $mod+Control+Up resize grow height 5 px or 5 ppt +bindsym $mod+Control+Down resize shrink height 5 px or 5 ppt +bindsym $mod+Control+Right resize grow width 5 px or 5 ppt +bindsym $mod+Control+Left resize shrink width 5 px or 5 ppt + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +bar { + swaybar_command waybar +} +# + +#bar { +# position top +# status_command i3blocks +# font pango:Liberation 10, FontAwesome 12 +# strip_workspace_numbers yes +# +# colors { +# separator #586e75 +# background #0c1014 +# statusline #aea79f +# focused_workspace #091f2e #091f2e #ffffff +# active_workspace #073642 #073642 #ffffff +# inactive_workspace #0c1014 #0c1014 #aea79f +# urgent_workspace #77216f #77216f #ffffff +# } +#} +# class border backgr. text indicator child_border +client.focused #FFFFFF #BF360C #fdf6e3 #FF0000 #FFFFFF +client.focused_inactive #073642 #FF9800 #93a1a1 #002b36 #073642 +client.unfocused #002b36 #311B92 #586e75 #002b36 #002b36 +client.urgent #dc322f #b71c1c #fdf6e3 #dc322f #dc322f + +############################ +## Displays +############################ +#HOME +output eDP-1 pos 1 1 res 2160x1440 scale 1 +# background images +#output * bg ~/Pictures/Wallpapers/scenic-view-of-forest-during-night-time-1252869.jpg fill +output * bg #1d2021 solid_color +############################## +## Startup Things +############################## +exec --no-startup-id pcmanfm -d +#exec --no-startup-id xset r rate 250 25 +#exec --no-startup-id xset b off +#exec --no-startup-id setxkbmap -option caps:escape +#exec --no-startup-id nightshift -l 39.0315533:-94.4954291 -d +#exec --no-startup-id setxkbmap -model apple_laptop -layout us -variant dvp +exec --no-startup-id mako + + +############################# +## Media Keys +############################# +bindsym XF86AudioLowerVolume exec --no-startup-id "pulseaudio-ctl down ; pkill -RTMIN+1 i3blocks" +bindsym XF86AudioRaiseVolume exec --no-startup-id "pulseaudio-ctl up ; pkill -RTMIN+1 i3blocks" +bindsym XF86AudioMute exec --no-startup-id "pulseaudio-ctl mute ; pkill -RTMIN+1 i3blocks" +# bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause +# bindsym XF86AudioPause exec --no-startup-id playerctl play-pause +# bindsym XF86AudioPlayPause exec --no-startup-id playerctl play-pause +#bindsym $mod1+Shift+p exec --no-startup-id echo "cycle pause" > ~/.config/mpv/control +bindsym XF86MonBrightnessUp exec --no-startup-id "brightnessctl s +10%; brightnessctl -d gmux_backlight s +10%" +bindsym XF86MonBrightnessDown exec --no-startup-id "brightnessctl s 10%-; brightnessctl -d gmux_backlight s 10%-" + +set $gnome-schema org.gnome.desktop.interface + +exec_always { + gsettings set $gnome-schema gtk-theme 'Flat-Remix-GTK-Green-Darkest' + gsettings set $gnome-schema icon-theme 'Flat-Remix-Green-Dark' +} + +############################ +## Trackpad +############################ +input "1118:2496:Microsoft_Surface_Type_Cover_Touchpad" { + natural_scroll disabled + tap_button_map lrm +} + diff --git a/.config/waybar/config b/.config/waybar/config index 8938a14..825e9af 100644 --- a/.config/waybar/config +++ b/.config/waybar/config @@ -25,7 +25,8 @@ // "battery", // "battery#bat2", "clock", - "tray" + "tray", + "custom/power" ], // Modules configuration // "sway/workspaces": { @@ -210,5 +211,11 @@ "custom/playerctl": { "format": "{}", "exec": "" + }, + "custom/power": { + "format": "⏻", + "on-click": "nwgbar -o 0.2", + "escape": true, + "tooltip": false } } diff --git a/.config/waybar/style.css b/.config/waybar/style.css index 1c83b15..de8563e 100644 --- a/.config/waybar/style.css +++ b/.config/waybar/style.css @@ -143,6 +143,10 @@ label:focus { #custom-media.custom-vlc { } +#custom-power { + padding-right: 15px; + padding-top: 3px; +} #temperature { }