Compare commits

..

2 Commits
sway ... main

Author SHA1 Message Date
spinach 3d2b92d5f9 polybar change on old i3 config 10 months ago
spinach 59d8af8018 minor thinkpad changes 10 months ago

@ -1,14 +0,0 @@
sway
swayidle
swaylock-effects
swaybg
waybar
feh
imagemagick
rofi
rofi-calc
mpv
mpd
mpc
playerctl
zscroll-git

@ -1,7 +1,7 @@
#!/bin/bash
# checks if instance of arg 1 exists, will show it if it does
exists=$(swaymsg "[instance=$1] scratchpad show" 2>&1 | grep -i error)
exists=$(i3-msg "[instance=$1] scratchpad show" 2>&1 | grep ERROR)
if [ -n "$exists" ] ; then
# creating it then showing
if [ -z "$1" ] ; then
@ -16,5 +16,5 @@ if [ -n "$exists" ] ; then
${@:2} 2>&1 1>/dev/null &
sleep 1
# lets application load then shows it on scratchpad
swaymsg "[instance=$1] scratchpad show" 1>/dev/null
i3-msg "[instance=$1] scratchpad show" 1>/dev/null
fi

@ -7,14 +7,15 @@ SYNC_IN_PROGRESS=$(printf '%s%s' '%{F#FF0}' $(echo -e '\Uf1216')) # yellow
SYNC_FAILED=$(printf '%s%s' '%{F#F00}' $(echo -e '\Uf0b98')) # red
if ! command -v seaf-cli &>/dev/null ; then
echo "Seafile not downloaded to device!">&2
echo "depends on seaf-cli">&2
echo "$SYNC_FAILED"
exit 1
fi
# getting folder status and trimming headers
SEAFILE_STATUS=$(seaf-cli status | tail -n +2)
SEAFILE_STATUS=$(seaf-cli status 2>/dev/null | tail -n +2)
ERRORS=$(echo "$SEAFILE_STATUS" | grep "error")
if [[ -n "$ERRORS" ]] ; then
# some directories have errors
echo "Error: Failed to sync">&2

@ -1,27 +0,0 @@
#!/usr/bin/env bash
#
#
# Dependancies:
# imagemagick
# swaylock
# grim
#
# inspired by: https://gist.github.com/singulared/7c6d53c1b84fbb7cf22d07c5c7d3e945
LOCK=~/.config/sway/lock.png
# go over each output and ss/blur then add to img
for OUTPUT in $(swaymsg -t get_outputs | gojq '.[].name' | tr -d '"')
do
echo "OUT: $OUTPUT" >> "$HOME/outputs"
IMAGE="${OUTPUT}_img.jpg"
grim -t jpeg -o $OUTPUT $IMAGE
convert $IMAGE -blur 5x3 - | composite -gravity center $LOCK - $IMAGE
LOCKARGS="${LOCKARGS} --image ${OUTPUT}:${IMAGE}"
IMAGES="${IMAGES} ${IMAGE}"
done
echo "done" >> "$HOME/outputs"
swaylock $LOCKARGS --daemonize
rm $IMAGES

@ -1,25 +1,24 @@
#!/bin/bash
# Built for sway with optional dependancy on swaybg for ease of setting
wallpapers_dir=~/.local/share/wallpapers
finder="rofi-dmenu Wallpaper"
cur_wallpaper="$HOME/.wallpaper"
# selection mode
if [ "$1" == "-s" ] ; then
cd "$wallpapers_dir"
cd "$wallpapers_dir"
# fzf selector
if [ "$1" == '-s' ] ; then
# follows links and omits the env file
selection=$(find -L -type f -printf '%P\n' | $finder)
if [ -n "$selection" ] ; then
# didnt exit, overwrite wallpaper
ln -sf "$wallpapers_dir/$selection" "$cur_wallpaper"
# didnt exit
feh --bg-scale "$selection"
fi
fi
# check that available wallpaper exists
if [ ! -f "$cur_wallpaper" ] ; then
echo "No wallpaper found" && exit 1
# feh slideshow selector
if [ "$1" == '-p' ] ; then
# follows links and omits the env file
# find -L -type f -printf '%P\n' | feh -A "echo '%f';"
echo "BROKEN">&2
exit 1
fi
swaymsg output "*" bg "$cur_wallpaper" fill '#000000'

@ -1 +1 @@
Subproject commit 853ade4fba8af8520c9e2072de492d83999ba742
Subproject commit 4af034b82620c67492f951be0fbbe0a024ab31e2

@ -38,7 +38,7 @@ font-0 = Hack Nerd Font:size=10;2
height = 14pt
; modules
modules-left = xworkspaces weather-thinkpad
modules-right = battery pulseaudio memory cpu wlan vpn uptime seafile calendar-sync bg-selector date-tp powermenu
modules-right = battery pulseaudio memory cpu wlan seafile calendar-sync bg-selector date-tp powermenu
[bar/desktop-bar]
; desktop bar config

@ -1 +1 @@
Subproject commit bcf7a4d38dc941e816e1f491b63417e959ba4c0a
Subproject commit dbf546e61c0ca848f2474db55b601dead6d41f7e

@ -1,4 +1,13 @@
# This file serves as the base config I desire across machines
# 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).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font
@ -10,57 +19,67 @@ default_border none
gaps inner 10
smart_gaps on
# background
exec_always wallpaper.sh
# 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
# Start XDG autostart .desktop files using dex. See also
# https://wiki.archlinux.org/index.php/XDG_Autostart
workspace 1 output DP-2
workspace 2 output DP-0
exec --no-startup-id dex --autostart --environment i3
# waybar
bar {
swaybar_command waybar
}
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
# they are included here as an example. Modify as you see fit.
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock-blur --nofork
# NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it.
#exec --no-startup-id nm-applet
# loading layout
assign [class="st-256color"] 1
assign [class="Brave-browser"] 2
# launching default apps
exec st -e tmux
exec --no-startup-id st -e tmux
exec --no-startup-id brave
# Use pactl to adjust volume in PulseAudio.
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
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# open term
# start a terminal
bindsym $mod+Return exec st
# setup idling
exec swayidle -w \
timeout 600 'swaylock -f --screenshots --effect-blur 10x3 --clock --indicator' \
timeout 900 'swaymsg "output * dpms off"' \
resume 'swaymsg "output * dpms on"' \
timeout 10 'if pgrep -x swaylock; then swaymsg "output * dpms off"; fi' \
resume 'swaymsg "output * dpms on"'
# lock 'swaylock -f --screenshots --effect-blur 10x3 --clock'
# lock the screen
bindsym $mod+q exec "swaylock -f --screenshots --effect-blur 10x3 --clock --indicator"
# bindsym $mod+q exec sleep 1 && killall -SIGUSR1 swayidle
bindsym $mod+q exec swaylock
# kill focused window
bindsym $mod+Shift+q kill
# start rofi (a program launcher)
bindsym $mod+d exec rofi-launcher
# start dmenu (a program launcher)
bindsym $mod+d exec --no-startup-id rofi-launcher
# setting up a vimscratch pad to use vimwiki
for_window [instance="todo"] move window to scratchpad
for_window [instance="cal"] move window to scratchpad
for_window [instance="spotify"] move window to scratchpad
for_window [instance="wiki"] move window to scratchpad
for_window [instance="scratch"] move window to scratchpad
# bindings
bindsym $mod+s exec i3-scratchpad.sh todo st -n todo -e nvim ~/vimwiki/todo/index.md
bindsym $mod+c exec i3-scratchpad.sh cal st -n cal -e calcurse
bindsym $mod+m exec i3-scratchpad.sh spotify spotify
bindsym $mod+w exec i3-scratchpad.sh wiki st -n wiki -e nvim ~/vimwiki/index.md
exec --no-startup-id st -n todo -e vim ~/vimwiki/todo/index.md
exec --no-startup-id st -n cal -e calcurse
bindsym $mod+s [instance="todo"] scratchpad show
bindsym $mod+c [instance="cal"] scratchpad show
# bindcode $mod+40 exec "rofi -modi drun,run -show drun"
# There also is i3-dmenu-desktop which only displays applications shipping a
# .desktop file. It is a wrapper around dmenu, so you need that installed.
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
# change focus
bindsym $mod+h focus left
@ -68,11 +87,23 @@ bindsym $mod+j focus down
bindsym $mod+k 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
# move focused window
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move 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
# 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
@ -85,6 +116,7 @@ bindsym $mod+f fullscreen toggle
# 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
@ -169,3 +201,16 @@ mode "resize" {
}
bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
# bar {
#status_command
# }
#exec --no-startup-id picom-launch.sh
# background
output "*" bg ~/.config/i3/wallpaper.jpg fill
# poly bar
exec_always --no-startup-id polybar-launch.sh desktop-bar

@ -0,0 +1 @@
/home/keegan/.dotfiles/gui/wallpapers/pine_tree.jpg

@ -1,7 +0,0 @@
include base
output DP-2 enable scale 1 mode 3840x2160 position 2560,0
output DP-3 enable scale 1 mode 2560x1440 position 0,380
workspace 1 output DP-2
workspace 2 output DP-3

@ -1,3 +0,0 @@
include base
output LVDS-1 enable scale 1 mode 1366x768

@ -1,49 +0,0 @@
{
"layer": "top",
"modules-left": ["sway/workspaces", "sway/window", "pulseaudio/slider"],
"modules-center": ["custom/weather"],
"modules-right": ["cpu", "memory", "network", "custom/bg", "custom/date"],
"sway/workspaces": {
"all-outputs": true
},
"sway/window": {
"all-outputs": true,
"max-length": 20
},
"pulseaudio/slider": {
"min": 0,
"max": 100
},
"custom/spotify-scroll": {
},
"custom/weather": {
"exec": "weather -pd",
"on-click": "i3-scratchpad.sh scratch st -n scratch -e weather -f",
"on-click-right": "weather -r",
"on-click-midde": "i3-scratchpad.sh scratch st -n scratch -e weather -pf"
},
"cpu": {
"format": "CPU: {usage}%"
},
"memory": {
"format": "RAM: {percentage}%",
"tooltip-format": "RAM: {used}/{total} GiB"
},
"network": {
"interval": 2,
"format-ethernet": "ETH: {bandwidthTotalBytes}",
"format-wifi": "WLAN: {ssid}",
"tooltip-format": "DOWN: {bandwidthDownBits} UP: {bandwidthUpBits} IP: {ipaddr}"
},
"custom/bg": {
"exec": "echo -e '\uf1c5'",
"interval": "once",
"on-click": "wallpaper.sh -s"
},
"custom/date": {
"exec": "date +'%A, %b %d %l:%M %P'",
"interval": 10
}
}

@ -1,139 +0,0 @@
* {
border: none;
border-radius: 0;
font-family: Hack Nerd Font, Roboto, Helvetica, Arial, sans-serif;
min-height: 0;
}
window.DP-3 * {
font-size: 13pt;
}
window.DP-2 * {
font-size: 17pt;
}
window#waybar {
background-color: transparent;
background-color: transparent;
color: #ddd;
}
window#waybar.empty {
color: rgba(0,0,0,0);
}
#workspaces button {
padding: 0 5px;
color: #ddd;
background-color: rgba(29, 31, 21, 0.8);
}
#workspaces button:hover {
background: rgba(0, 0, 0, 0.2);
box-shadow: inset 0 3px #ffffff;
}
#workspaces button.focused {
background-color: #64727D;
box-shadow: inset 0 3px #ffffff;
}
#workspaces button.urgent {
background-color: #eb4d4b;
}
#mode {
background-color: #64727D;
border-top: 3px solid #ffffff;
}
#backlight,
#battery.bat1,
#battery.bat2,
#clock,
#cpu,
#custom-mail,
#custom-poweroff,
#custom-weather,
#disk,
#idle_inhibitor,
#memory,
#mode,
#network.vpn,
#network.wifi,
#network.ethernet,
#network.disconnected,
#custom-date,
#sway-window,
#sway-workspaces,
#pulseaudio,
#custom-weather,
#taskbar,
#temperature,
#tray {
padding: 0 5px;
margin: 2px;
color: #ddd;
border-radius: 7px;
background-color: rgba(29, 31, 21, 0.6);
}
#custom-bg {
padding: 0 10px 0px 5px;
margin: 2px;
color: #ddd;
border-radius: 7px;
background-color: rgba(29, 31, 21, 0.6);
}
#pulseaudio-slider slider {
min-height: 0px;
min-width: 0px;
opacity: 0;
background-image: none;
border: none;
box-shadow: none;
}
#pulseaudio-slider trough {
min-height: 10px;
min-width: 80px;
border-radius: 5px;
background-color: black;
}
#pulseaudio-slider highlight {
min-width: 5px;
border-radius: 5px;
background-color: green;
}
@keyframes blink {
to {
background-color: #ffffff;
color: #000000;
}
}
#battery.bat2.critical:not(.charging) {
background-color: #f53c3c;
color: #ffffff;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#temperature.critical {
background-color: #eb4d4b;
}
#taskbar button:hover {
background: rgba(0, 0, 0, 0.2);
box-shadow: inset 0 3px #ffffff;
}
#taskbar button.active {
background-color: #64727D;
box-shadow: inset 0 3px #ffffff;
}

@ -1,59 +0,0 @@
{
"layer": "top",
"modules-left": ["sway/workspaces", "sway/window", "pulseaudio/slider"],
"modules-center": ["custom/weather"],
"modules-right": ["cpu", "memory", "network", "battery", "custom/bg", "custom/date"],
"sway/workspaces": {
"all-outputs": true
},
"sway/window": {
"all-outputs": true,
"max-length": 20
},
"pulseaudio/slider": {
"min": 0,
"max": 100
},
"custom/spotify-scroll": {
},
"custom/weather": {
"exec": "weather -pd",
"on-click": "i3-scratchpad.sh scratch st -n scratch -e weather -f",
"on-click-right": "weather -r",
"on-click-midde": "i3-scratchpad.sh scratch st -n scratch -e weather -pf"
},
"cpu": {
"format": "CPU: {usage}%"
},
"memory": {
"format": "RAM: {percentage}%",
"tooltip-format": "RAM: {used}/{total} GiB"
},
"network": {
"interval": 2,
"format-icons": ["󰤟 ", "󰤢 ", "󰤥 ", "󰤨 "],
"format-disconnected": "󰌙 ",
"format-ethernet": "󰌘 ",
"format-wifi": "{icon}",
"tooltip-format-wifi": "{essid} {ipaddr}  {bandwidthDownBits}  {bandwidthUpBits}",
"tooltip-format-ethernet": "{ipaddr} CAP: {bandwidthTotalBits}  {bandwidthDownBits}  {bandwidthUpBits}"
},
"battery": {
"format": "{icon} {capacity}%",
"format-charging": "󰂄 {capacity}%",
"format-icons": [ "󰂎", "󰁺", "󰁻", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂", "󰁹"],
"format-tooltip": "{timeTo}",
"format-time": "{H}:{M}",
},
"custom/bg": {
"exec": "echo -e '\uf1c5'",
"interval": "once",
"on-click": "wallpaper.sh -s"
},
"custom/date": {
"exec": "date +'%a, %b %d %l:%M %P'",
"interval": 10
}
}

@ -1,136 +0,0 @@
* {
border: none;
border-radius: 0;
font-family: Hack Nerd Font, Roboto, Helvetica, Arial, sans-serif;
min-height: 0;
}
window.LVDS-1 * {
font-size: 10pt;
}
window#waybar {
background-color: transparent;
background-color: transparent;
color: #ddd;
}
window#waybar.empty {
color: rgba(0,0,0,0);
}
#workspaces button {
padding: 0 3px;
color: #ddd;
background-color: rgba(29, 31, 21, 0.8);
}
#workspaces button:hover {
background: rgba(0, 0, 0, 0.2);
box-shadow: inset 0 3px #ffffff;
}
#workspaces button.focused {
background-color: #64727D;
box-shadow: inset 0 4px 2px -2px #ffffff;
}
#workspaces button.urgent {
background-color: #eb4d4b;
}
#mode {
background-color: #64727D;
border-top: 3px solid #ffffff;
}
#backlight,
#battery,
#battery.bat1,
#battery.bat2,
#clock,
#cpu,
#custom-mail,
#custom-poweroff,
#custom-weather,
#disk,
#idle_inhibitor,
#memory,
#mode,
#network.vpn,
#network.wifi,
#network.ethernet,
#network.disconnected,
#custom-date,
#sway-window,
#sway-workspaces,
#pulseaudio,
#custom-weather,
#taskbar,
#temperature,
#tray {
padding: 0 5px;
margin: 2px;
color: #ddd;
border-radius: 7px;
background-color: rgba(29, 31, 21, 0.6);
}
#custom-bg {
padding: 0 10px 0px 5px;
margin: 2px;
color: #ddd;
border-radius: 7px;
background-color: rgba(29, 31, 21, 0.6);
}
#pulseaudio-slider slider {
min-height: 0px;
min-width: 0px;
opacity: 0;
background-image: none;
border: none;
box-shadow: none;
}
#pulseaudio-slider trough {
min-height: 10px;
min-width: 80px;
border-radius: 5px;
background-color: black;
}
#pulseaudio-slider highlight {
min-width: 5px;
border-radius: 5px;
background-color: green;
}
@keyframes blink {
to {
background-color: #ffffff;
color: #000000;
}
}
#battery.bat2.critical:not(.charging) {
background-color: #f53c3c;
color: #ffffff;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#temperature.critical {
background-color: #eb4d4b;
}
#taskbar button:hover {
background: rgba(0, 0, 0, 0.2);
box-shadow: inset 0 3px #ffffff;
}
#taskbar button.active {
background-color: #64727D;
box-shadow: inset 0 3px #ffffff;
}

@ -1,2 +0,0 @@
- shell:
- [bin/arch_package_installer.sh arch/sway, Installing Sway dependancies]

@ -1,3 +1,3 @@
- link:
~/.config/sway/config: gui/sway/desktop
~/.config/sway/base: gui/sway/base
~/.config/sway: gui/sway-desktop
~/.config/sway/wallpaper.jpg: gui/wallpapers/pine_tree.jpg

@ -1,3 +0,0 @@
- link:
~/.config/sway/config: gui/sway/thinkpad
~/.config/sway/base: gui/sway/base

@ -1,3 +0,0 @@
- link:
~/.config/waybar/config: gui/waybar/desktop
~/.config/waybar/style.css: gui/waybar/desktop-style.css

@ -1,3 +0,0 @@
- link:
~/.config/waybar/config: gui/waybar/thinkpad
~/.config/waybar/style.css: gui/waybar/thinkpad-style.css

@ -1 +1 @@
Subproject commit 3f9e409669172ad662e82fca791f0ad16dce5edd
Subproject commit 328bcb32590e5057b09bd27a40bc2fb21385fbf3

@ -1,5 +1,5 @@
arch.base
arch.sway
arch.i3
arch.nvim
neovim
zsh
@ -8,6 +8,8 @@ oh-my-zsh
fzf
tmux.sparse
tmuxp
polybar
picom
rofi
lf
scripts

@ -3,8 +3,7 @@ profile/arch
# desktop specific
st.desktop
sway.desktop
waybar.desktop
i3.desktop
calcurse
seafile
passwords

@ -1,13 +1,6 @@
# base profile
profile/arch
# thinkpad specific
st.thinkpad
sway.thinkpad
waybar.thinkpad
# utilities
i3.thinkpad
calcurse
seafile
passwords

@ -1,4 +1,5 @@
profile/arch
st.work
i3.work
timetracker
seafile

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -1 +1 @@
Subproject commit c3d4e576c9c86eac62884bd47c01f6faed043fc5
Subproject commit a411ef3e0992d4839f0732ebeb9823024afaaaa8

@ -1 +1 @@
Subproject commit 0cc19ac2ede35fd8accff590fa71df580dc7e109
Subproject commit c1b5b2c8aab51b2a5b0d29d078e3cb53bb4c46bb

@ -1 +1 @@
Subproject commit 08fb3b8990fcd93f45dfe220b066a446cf31c7b5
Subproject commit 56aba76874efb3bb5914d8eaf9e356057113aea7

@ -1 +1 @@
Subproject commit 3dd42f5aa2d7fc6f508f2b21408730a8678c0a19
Subproject commit 96670d5f16dcf23d590eb1d83d1de351b2e8fb15

@ -1 +1 @@
Subproject commit 613dfb9d259166a40d0781e26b8ecd0f59648a25
Subproject commit c5672a5864bc78a932de438e4f64fefcee5c6ea6

@ -1 +1 @@
Subproject commit bf0b2721df35ec195798cc493d356e6a70aac8f2
Subproject commit 6d96a8a4906e91f44ddf97645d5c3c1980212402

@ -1 +1 @@
Subproject commit d27117b8bc4f600657c7dd94310f60e784371eac
Subproject commit 020bbf7d64cc2f0c5d2a4ab96d45b8014ef54ad2

@ -9,8 +9,6 @@ set -g display-panes-time 5000
# setup automatic renaming
set -g automatic-rename on
# count from 1 for easier pane switching
setw -g pane-base-index 1
#set -g default-shell $SHELL
# keybinds

@ -14,9 +14,6 @@ set -g automatic-rename on
# escape sequence delay
set -g escape-time 10
# start from 1 for pane numbering
setw -g pane-base-index 1
#set -g default-shell $SHELL
# keybinds

Loading…
Cancel
Save