switch to dwm

master
TiynGER 5 years ago
parent dee8785aa3
commit fdd4e7bd9a

@ -1,175 +0,0 @@
# vim: filetype=i3
# File originally by Luke Smith <https://lukesmith.xyz>
# This config file will use environmental variables such as $BROWSER and $TERMINAL.
# You can set these variables in ~/.profile or ~/.bash_profile if you have it as below:
#
# export FILE="ranger"
# export TERMINAL="st"
# #------Auto Start-------# #
exec --no-startup-id owncloud
exec --no-startup-id toggletouchpad
# #---Basic Definitions---# #
for_window [class="^.*"] border pixel 1
gaps inner 0
gaps outer 0
set $term --no-startup-id $TERMINAL
set $mod Mod4
font xft:mono 10
# #---Dropdown Windows---# #
# General dropdown window traits. The order can matter.
for_window [instance="dropdown_*"] floating enable
for_window [class="de.uol.swp.client.ClientApp"] floating enable
for_window [instance="dropdown_*"] move scratchpad
for_window [instance="dropdown_*"] sticky enable
for_window [instance="dropdown_*"] scratchpad show
for_window [instance="dropdown_tmuxdd"] resize set 625 450
for_window [instance="dropdown_dropdowncalc"] resize set 800 300
for_window [instance="dropdown_tmuxdd"] border pixel 3
for_window [instance="dropdown_dropdowncalc"] border pixel 2
for_window [instance="dropdown_*"] move position center
bar {
font pango:mono 10
status_command i3blocks
position top
mode dock
modifier None
colors {
background #000000
statusline #ffffff
separator #333333
#Bord #Back #Text
focused_workspace #ffa500 #4a4a4a #ffa500
active_workspace #ffa500 #33333 #ffa500
inactive_workspace #ffa500 #000000 #ffa500
urgent_workspace #ffa500 #000000 #900000
}
}
client.placeholder #242424 #242424 #242424
client.background #242424 #242424 #242424
client.focused #4a4a4a #4a4a4a #e5e5e5 #6a6a6a
client.unfocused #4a4a4a #222222 #aaaaaa #222222
client.focused_inactive #4a4a4a #222222 #a9a9a9 #222222
client.urgent #4a4a4a #4a4a4a #f7f7f7 #4a4a4a
# #---Basic Bindings---# #
bindsym $mod+Shift+Escape exec --no-startup-id prompt "Exit i3?" "i3-msg exit"
#bindsym $mod+Return taken by sxhkd
#bindym $mod+b taken by sxhkd
bindsym $mod+Shift+b bar mode toggle
#bindsym $mod+c taken by sxhkd
bindsym $mod+Shift+d floating toggle
bindsym $mod+Shift+f fullscreen toggle
bindsym $mod+h focus left
bindsym $mod+Shift+h move left 30
#bindsym $mod+i taken by sxhkd
bindsym $mod+Shift+i exec --no-startup-id i3resize up
bindsym $mod+j focus down
bindsym $mod+Shift+j move down 30
bindsym $mod+k focus up
bindsym $mod+Shift+k move up 30
bindsym $mod+l focus right
bindsym $mod+Shift+l move right 30
#bindsym $mod+m taken by sxhkd
bindsym $mod+Shift+m move scratchpad
#bindsym $mod+n taken by sxhkd
#bindsym $mod+Shift+n taken by sxhkd
bindsym $mod+Shift+o exec --no-startup-id i3resize right
#bindym $mod+p taken by sxhkd
bindsym $mod+q [con_id="__focused__" instance="^(?!dropdown_).*$"] kill
bindsym $mod+Shift+q [con_id="__focused__" instance="^(?!dropdown_).*$"] exec --no-startup-id kill -9 `xdotool getwindowfocus getwindowpid`
#bindsym $mod+r taken by sxhkd
#bindsym $mod+shift+r taken by sxhkd
#bindsym $mod+s taken by sxhkd
bindsym $mod+t split toggle
bindsym $mod+Shift+u exec --no-startup-id i3resize down
#bindsym $mod+x taken by sxhkd
bindsym $mod+Shift+z exec --no-startup-id i3resize left
#bindsym $mod+F5 taken by sxhkd
#bindsym $mod+F6 taken by sxhkd
#bindsym $mod+F7 taken by sxhkd
#bindsym $mod+F8 taken by sxhkd
#bindsym $mod+F9 taken by sxhkd
#bindsym $mod+F10 taken by sxhkd
#bindsym $mod+F11 taken by sxhkd
#bindsym $mod+F12 taken by sxhkd
# #---Workspace Bindings---# #
set $ws1 "1DF"
set $ws2 "2VR"
set $ws3 "3RS"
set $ws4 "4RS"
set $ws5 "5WK"
set $ws6 "6WK"
set $ws7 "7ME"
set $ws8 "8CM"
set $ws9 "9GM"
set $ws0 "0EX"
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws0
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws0
for_window [class="Pinentry"] sticky enable
for_window [class="sent"] border pixel 0px
for_window [title="GIMP Startup"] move workspace $ws5
for_window [class="Gimp"] move workspace $ws5
for_window [window_role="GtkFileChooserDialog"] resize set 800 600
for_window [window_role="GtkFileChooserDialog"] move position center
for_window [title="Default - Wine desktop"] floating enable

@ -1,39 +0,0 @@
separator_block_width=15
markup=pango
[weather]
command=~/.local/bin/statusbar/weather
interval=1200
signal=5
[memory]
command=~/.local/bin/statusbar/memory
interval=30
label=🧠
[cpu]
command=~/.local/bin/statusbar/cpu
interval=15
label=💻
[volume]
command=~/.local/bin/statusbar/volume
interval=once
signal=10
[disk]
interval=180
command=~/.local/bin/statusbar/disk /
[battery]
command=~/.local/bin/statusbar/battery BAT0
interval=180
[clock]
command=~/.local/bin/statusbar/clock
label=📅
interval=30
[internet]
command=~/.local/bin/statusbar/internet
interval=10

@ -1,101 +0,0 @@
## Basic binds
#super + shift + escape taken by i3
super + Return
$TERMINAL
super + b
$BROWSER
super + c
code
#super + shift + d taken by i3
super + f
$TERMINAL -e $FILE
#super + shift + f taken by i3
#super + h taken by i3
#super + shift + h taken by i3
super + i
intellij-idea-ultimate-edition
#super + shift + i taken by i3
#super + j taken by i3
#super + shift + j taken by i3
#super + k taken by i3
#super + shift + k taken by i3
#super + l taken by i3
#super + shift + l taken by i3
super + m
thunderbird
#super + shift + m taken by i3
super + n
$TERMINAL -e newsboat
super + shift + n
i3-scratchpad-dmenu.py
#super + shift + o taken by i3
super + p
$MUSIC
#super + q taken by i3
#super + shift + q taken by i3
super + r
$TERMINAL -e rtv
super + s
startpagesearch
super + shift + r
dmenu_run -c -l 20
#super + t taken by i3
#super + shift + u taken by i3
super + x
xournalpp
#super + shift + z taken by i3
super + F4
togglemonitor
super + F5
toggletouchpad
super + F6
dmenumount
super + F7
dmenuumount
super + F8
sudo -A systemctl restart NetworkManager
super + F9
$TERMINAL -e sudo -A nmtui
super + F10
prompt "Lock computer?" "slock"
super + F11
prompt "Reboot computer?" "sudo -A shutdown -r now"
super + F12
prompt "Shutdown computer?" "sudo -A shutdown -h now"
#super + 1 taken by i3
#super + 2 taken by i3
#super + 3 taken by i3
#super + 4 taken by i3
#super + 5 taken by i3
#super + 6 taken by i3
#super + 7 taken by i3
#super + 8 taken by i3
#super + 9 taken by i3
#super + 0 taken by i3
#super + shift + 1 taken by i3
#super + shift + 2 taken by i3
#super + shift + 3 taken by i3
#super + shift + 4 taken by i3
#super + shift + 5 taken by i3
#super + shift + 6 taken by i3
#super + shift + 7 taken by i3
#super + shift + 8 taken by i3
#super + shift + 9 taken by i3
#super + shift + 0 taken by i3
## FN combinations
XF86Launch1
xset dpms force off
XF86AudioMute
lmc m
XF86AudioMicMute
pactl set-source-mute 1 toggle
XF86AudioLowerVolume
lmc down 5
XF86AudioRaiseVolume
lmc up 5
XF86MonBrightnessDown
light -U 15
XF86MonBrightnessUp
light -A 15

@ -7,4 +7,5 @@
xterm -geometry 80x24+10+10 -fn 10x20
exec i3
setbg
exec dwm

@ -1,10 +1,12 @@
#!/bin/sh
setbg & # Set the background
sxhkd & # Bind keys
xset r rate 300 50 & # Speed xrate up
unclutter & # Remove mouse when idle
xcompmgr & # xcompmgr for transparency
dunst & # dunst for notifications
redshift & # redshift for saving your eyes
mpd & # starts the mpd server for music
toggletouchpad & # deactivates the touchpad
owncloud &
dwmbar &
#sxhkd &

@ -1,27 +0,0 @@
#!/usr/bin/env python3
import i3ipc
import subprocess
import re
i3 = i3ipc.Connection()
def get_scratchpad_windows():
scratchpad_containers = i3.get_tree().scratchpad().descendants()
return filter(lambda c: c.type == 'con' and c.name, scratchpad_containers)
def dmenu_choose(options):
""" Show a dmenu to choose a string item from a list of *options*. """
dmenu_process = subprocess.Popen(["dmenu", "-l", "10"], stdin=subprocess.PIPE, stdout=subprocess.PIPE)
stdoutdata, _ = dmenu_process.communicate("\n".join(options).encode())
return stdoutdata.decode('utf-8')
def main():
scratchpad_windows = get_scratchpad_windows()
window_titles = [w.name for w in scratchpad_windows]
if window_titles:
window_to_restore = re.escape(dmenu_choose(window_titles).strip())
i3.command('[title="{}"] scratchpad show'.format(window_to_restore))
if __name__ == '__main__':
main()

@ -1,27 +0,0 @@
#!/bin/sh
# This script was made by `goferito` on Github.
# Some cleanup by Luke.
[ -z "$1" ] && echo "No direction provided" && exit 1
distanceStr="2 px or 2 ppt"
moveChoice() {
i3-msg resize "$1" "$2" "$distanceStr" | grep '"success":true' || \
i3-msg resize "$3" "$4" "$distanceStr"
}
case $1 in
up)
moveChoice grow up shrink down
;;
down)
moveChoice shrink up grow down
;;
left)
moveChoice shrink right grow left
;;
right)
moveChoice grow right shrink left
;;
esac

@ -0,0 +1,10 @@
#!/bin/sh
status() { \
echo "$(volume) | $(internet) | $(clock)"
}
while :; do
xsetroot -name "$(status | tr '\n' ' ')"
sleep 1m
done

@ -0,0 +1,5 @@
#!/bin/sh
# Refresh the dwmbar.
kill "$(pstree -lp | grep -- -dwmbar\([0-9] | sed "s/.*sleep(\([0-9]\+\)).*/\1/")"

@ -1,59 +0,0 @@
#!/bin/sh
# Gives a dmenu prompt to mount unmounted drives.
# If they're in /etc/fstab, they'll be mounted automatically.
# Otherwise, you'll be prompted to give a mountpoint from already existsing directories.
# If you input a novel directory, it will prompt you to create that directory.
getmount() { \
[ -z "$chosen" ] && exit 1
mp="$(find $1 2>/dev/null | dmenu -i -p "Type in mount point.")"
[ "$mp" = "" ] && exit 1
if [ ! -d "$mp" ]; then
mkdiryn=$(printf "No\\nYes" | dmenu -i -p "$mp does not exist. Create it?")
[ "$mkdiryn" = "Yes" ] && (mkdir -p "$mp" || sudo -A mkdir -p "$mp")
fi
}
mountusb() { \
chosen="$(echo "$usbdrives" | dmenu -i -p "Mount which drive?" | awk '{print $1}')"
sudo -A mount "$chosen" 2>/dev/null && notify-send "💻 USB mounting" "$chosen mounted." && exit 0
alreadymounted=$(lsblk -nrpo "name,type,mountpoint" | awk '$2=="part"&&$3!~/\/boot|\/home$|SWAP/&&length($3)>1{printf "-not \\( -path *%s -prune \\) \\ \n",$3}')
getmount "/mnt /media /mount /home -maxdepth 5 -type d $alreadymounted"
partitiontype="$(lsblk -no "fstype" "$chosen")"
case "$partitiontype" in
"vfat") sudo -A mount -t vfat "$chosen" "$mp" -o rw,umask=0000;;
*) sudo -A mount "$chosen" "$mp"; user="$(whoami)"; ug="$(groups | awk '{print $1}')"; sudo -A chown "$user":"$ug" "$mp";;
esac
notify-send "💻 USB mounting" "$chosen mounted to $mp."
}
mountandroid() { \
chosen=$(echo "$anddrives" | dmenu -i -p "Which Android device?" | cut -d : -f 1)
getmount "$HOME -maxdepth 3 -type d"
simple-mtpfs --device "$chosen" "$mp"
notify-send "🤖 Android Mounting" "Android device mounted to $mp."
}
asktype() { \
case $(printf "USB\\nAndroid" | dmenu -i -p "Mount a USB drive or Android device?") in
USB) mountusb ;;
Android) mountandroid ;;
esac
}
anddrives=$(simple-mtpfs -l 2>/dev/null)
usbdrives="$(lsblk -rpo "name,type,size,mountpoint" | awk '$2=="part"&&$4==""{printf "%s (%s)\n",$1,$3}')"
if [ -z "$usbdrives" ]; then
[ -z "$anddrives" ] && echo "No USB drive or Android device detected" && exit
echo "Android device(s) detected."
mountandroid
else
if [ -z "$anddrives" ]; then
echo "USB drive(s) detected."
mountusb
else
echo "Mountable USB drive(s) and Android device(s) detected."
asktype
fi
fi

@ -1,41 +0,0 @@
#!/bin/sh
# A dmenu prompt to unmount drives.
# Provides you with mounted partitions, select one to unmount.
# Drives mounted at /, /boot and /home will not be options to unmount.
unmountusb() {
[ -z "$drives" ] && exit
chosen=$(echo "$drives" | dmenu -i -p "Unmount which drive?" | awk '{print $1}')
[ -z "$chosen" ] && exit
sudo -A umount "$chosen" && notify-send "💻 USB unmounting" "$chosen unmounted."
}
unmountandroid() { \
chosen=$(awk '/simple-mtpfs/ {print $2}' /etc/mtab | dmenu -i -p "Unmount which device?")
[ -z "$chosen" ] && exit
sudo -A umount -l "$chosen" && notify-send "🤖 Android unmounting" "$chosen unmounted."
}
asktype() { \
case "$(printf "USB\\nAndroid" | dmenu -i -p "Unmount a USB drive or Android device?")" in
USB) unmountusb ;;
Android) unmountandroid ;;
esac
}
drives=$(lsblk -nrpo "name,type,size,mountpoint" | awk '$2=="part"&&$4!~/\/boot|\/home$|SWAP/&&length($4)>1{printf "%s (%s)\n",$4,$3}')
if ! grep simple-mtpfs /etc/mtab; then
[ -z "$drives" ] && echo "No drives to unmount." && exit
echo "Unmountable USB drive detected."
unmountusb
else
if [ -z "$drives" ]
then
echo "Unmountable Android device detected."
unmountandroid
else
echo "Unmountable USB drive(s) and Android device(s) detected."
asktype
fi
fi

@ -1,20 +0,0 @@
#!/bin/sh
# Gives a dmenu prompt to search Startpage.
# Without input, will open Startpage.com.
# URLs will be directly handed to the browser.
# Anything else, it search it.
browser=${RTVBROWSER:-firefox}
pgrep -x dmenu && exit
choice=$(echo "Startpage" | dmenu -i -p "Search Startpage:") || exit 1
if [ "$choice" = "Startpage" ]; then
$RTV_BROWSER "https://startpage.com"
else
if echo "$choice" | grep "^(http:\/\/|https:\/\/)?[a-zA-Z0-9]+\.[a-zA-Z]+(/)?.*$"; then
$RTV_BROWSER "$choice"
else
$RTV_BROWSER "https://startpage.com/do/search/?q=$choice"
fi
fi

@ -42,6 +42,7 @@ export TMUX_TMPDIR="$XDG_RUNTIME_HOME/tmux"
export WGETRC="$XDG_CONFIG_HOME/wgetrc"
export XAUTHORITY="$XDG_RUNTIME_HOME/Xauthority"
export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
export _JAVA_AWT_WM_NONREPARENTING=1
# less/man colors
export LESS=-R

Loading…
Cancel
Save