Manage symlinks with rcm
This commit is contained in:
307
i3/config
Normal file
307
i3/config
Normal file
@@ -0,0 +1,307 @@
|
||||
#######################################
|
||||
# _____ ____ #
|
||||
# |_ _||___ \ #
|
||||
# | | __) |__ __ _ __ ___ #
|
||||
# | | |__ < \ \ /\ / /| '_ ` _ \ #
|
||||
# _| |_ ___) | \ V V / | | | | | | #
|
||||
# |_____||____/ \_/\_/ |_| |_| |_| #
|
||||
# #
|
||||
#######################################
|
||||
|
||||
#############################################
|
||||
# General configurations #
|
||||
#############################################
|
||||
|
||||
# font
|
||||
set $font "pango:Roboto Mono for Powerline 10"
|
||||
font $font
|
||||
|
||||
# floating modifier
|
||||
# mod1 = Alt (xmodmap to show)
|
||||
# mod4 = Winkey (xmodmap to show)
|
||||
set $mod mod4
|
||||
floating_modifier $mod
|
||||
|
||||
# remove window decorations
|
||||
new_window pixel
|
||||
|
||||
# focus follows mouse
|
||||
focus_follows_mouse yes
|
||||
|
||||
##border
|
||||
new_window pixel 3
|
||||
|
||||
|
||||
#############################################
|
||||
# Script Section #
|
||||
#############################################
|
||||
|
||||
#
|
||||
# "xev" and "showkeys" can be usefull to determine the keycodes.
|
||||
#
|
||||
|
||||
# sound softkeys management
|
||||
bindsym XF86AudioRaiseVolume exec ~/.i3/util/volnotid.sh down
|
||||
bindsym XF86AudioLowerVolume exec ~/.i3/util/volnotid.sh up
|
||||
bindsym XF86AudioMute exec ~/.i3/util/volnotid.sh mute
|
||||
|
||||
# display brightness management
|
||||
bindsym XF86MonBrightnessUp exec "xbacklight +10"
|
||||
bindsym XF86MonBrightnessDown exec "xbacklight -10"
|
||||
|
||||
# webcam
|
||||
bindym XF86WebCam exec /bin/cheese
|
||||
|
||||
# lenovo Key wifi-menu
|
||||
bindsym XF86Launch1 exec urxvt -e sh -c "sudo wifi-menu wlp3s0"
|
||||
|
||||
# jauth two factor authenticator
|
||||
bindsym $mod+F4 exec --no-startup-id "gnome-screenshot -w"
|
||||
|
||||
# start dmenu-launcher
|
||||
#bindsym $mod+d exec ~/.i3/util/i3dmenu-wrapper.sh
|
||||
bindsym $mod+d exec rofi -show drun -theme solarized_alternate -font "mono 10"
|
||||
|
||||
# lock i3 with i3lock
|
||||
bindsym $mod+Shift+x exec i3lock-fancy-dualmonitor
|
||||
|
||||
#############################################
|
||||
# Keymaps #
|
||||
#############################################
|
||||
|
||||
# start terminal
|
||||
#bindsym $mod+Return exec --no-startup-id urxvt
|
||||
bindsym $mod+Return exec --no-startup-id urxvtc
|
||||
|
||||
# kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# change focus vim Style
|
||||
bindsym $mod+h focus left
|
||||
bindsym $mod+l focus right
|
||||
bindsym $mod+k focus up
|
||||
bindsym $mod+j focus down
|
||||
|
||||
# move focused window vim Style
|
||||
bindsym $mod+Shift+h move left
|
||||
bindsym $mod+Shift+l move right
|
||||
bindsym $mod+Shift+k move up
|
||||
bindsym $mod+Shift+j move down
|
||||
|
||||
# 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+v split h
|
||||
|
||||
# split in vertical orientation
|
||||
bindsym $mod+c split v
|
||||
|
||||
# enter fullscreen mode for the focused container
|
||||
bindsym $mod+f fullscreen
|
||||
|
||||
# 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
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
|
||||
# change focus between tiling / floating windows
|
||||
bindsym $mod+space focus mode_toggle
|
||||
|
||||
# focus the parent container
|
||||
bindsym $mod+a focus parent
|
||||
|
||||
# reload the configuration file
|
||||
bindsym $mod+Shift+c reload
|
||||
|
||||
# restart i3 inplace
|
||||
bindsym $mod+Shift+r restart
|
||||
|
||||
# exit i3
|
||||
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'Exit i3?' -b 'Yes' 'i3-msg exit'"
|
||||
|
||||
# enter the resize mode
|
||||
bindsym $mod+r mode "resize"
|
||||
|
||||
# scratchpad
|
||||
bindsym $mod+y scratchpad show
|
||||
bindsym $mod+x move scratchpad
|
||||
|
||||
#############################################
|
||||
# Workspace & Tags #
|
||||
#############################################
|
||||
|
||||
# name for the workspaces
|
||||
set $tag1 "1 Terminal"
|
||||
set $tag2 "2 Internet"
|
||||
set $tag3 "3 Coding"
|
||||
set $tag4 "4 Music"
|
||||
|
||||
# switch to workspace
|
||||
bindsym $mod+1 workspace $tag1
|
||||
bindsym $mod+2 workspace $tag2
|
||||
bindsym $mod+3 workspace $tag3
|
||||
bindsym $mod+4 workspace $tag4
|
||||
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
|
||||
|
||||
# move focused container to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace $tag1
|
||||
bindsym $mod+Shift+2 move container to workspace $tag2
|
||||
bindsym $mod+Shift+3 move container to workspace $tag3
|
||||
bindsym $mod+Shift+4 move container to workspace $tag4
|
||||
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
|
||||
|
||||
#############################################
|
||||
# Resize handling #
|
||||
#############################################
|
||||
|
||||
mode "resize" {
|
||||
# bindings to resize
|
||||
bindsym h resize shrink width 10 px or 10 ppt
|
||||
bindsym j resize grow height 10 px or 10 ppt
|
||||
bindsym k resize shrink height 10 px or 10 ppt
|
||||
bindsym l resize grow width 10 px or 10 ppt
|
||||
|
||||
# back to normal
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
|
||||
#############################################
|
||||
# Colors #
|
||||
#############################################
|
||||
|
||||
# Darkbrown colorscheme
|
||||
set $DARKBROWN #402e2e
|
||||
set $LIGHTBROWN #978965
|
||||
set $DARKGREY #1f1f1f
|
||||
set $DARKRED #9b0e0e
|
||||
|
||||
# Solarized colorscheme
|
||||
set $IMPORTANT #43d5f2
|
||||
set $BACKGROUND #1c5b98
|
||||
set $FOREGROUND #93a1a1
|
||||
set $LIGHTGREY #dc322f
|
||||
set $LIGHTBLUE #75aaff
|
||||
set $GREEN #b0cc54
|
||||
set $BROWN #b58900
|
||||
set $BLUE #268bd2
|
||||
set $VIOLET #6c71c4
|
||||
set $MAGENTA #2aa198
|
||||
set $WHITE #fdf6e3
|
||||
|
||||
client.background #ffffff
|
||||
|
||||
# Darkbrown colorscheme
|
||||
# name #border #background #text #indicator #child_border
|
||||
#client.focused $DARKBROWN $LIGHTBROWN $DARKBROWN $LIGHTBROWN $DARKBROWN
|
||||
#client.unfocused $DARKBROWN $DARKBROWN $LIGHTBROWN $LIGHTBROWN $DARKBROWN
|
||||
#client.focused_inactive $DARKBROWN $DARKBROWN $LIGHTBROWN $LIGHTBROWN $DARKBROWN
|
||||
#client.urgent $DARKBROWN $DARKBROWN $LIGHTBROWN $LIGHTBROWN $DARKBROWN
|
||||
|
||||
# Solarized colorscheme
|
||||
# name #border #background #text #indicator #child_border
|
||||
client.focused $FOREGROUND $MAGENTA $GREEN $GREEN $MAGENTA
|
||||
client.unfocused $BACKGROUND $BACKGROUND $GREEN $GREEN $BACKGROUND
|
||||
client.focused_inactive $BACKGROUND $BACKGROUND $GREEN $GREEN $BACKGROUND
|
||||
client.urgent $BACKGROUND $BACKGROUND $BACKGROUND $GREEN $BACKGROUND
|
||||
|
||||
#############################################
|
||||
# i3-bar #
|
||||
#############################################
|
||||
|
||||
bar {
|
||||
position top
|
||||
font $font
|
||||
i3bar_command /usr/bin/i3bar
|
||||
status_command i3status -c ~/.i3/i3status.conf
|
||||
separator_symbol ""
|
||||
|
||||
# Darkbrown colorscheme
|
||||
# colors {
|
||||
# statusline $LIGHTBROWN
|
||||
# background $DARKGREY
|
||||
# separator $DARKRED
|
||||
#
|
||||
# # name #border #bg #text
|
||||
# focused_workspace $LIGHTBROWN $DARKBROWN $LIGHTBROWN
|
||||
# active_workspace $DARKBROWN $DARKBROWN $LIGHTBROWN
|
||||
# inactive_workspace $DARKBROWN $DARKBROWN $LIGHTBROWN
|
||||
# urgent_workspace $DARKBROWN $DARKBROWN $LIGHTBROWN
|
||||
# }
|
||||
|
||||
# Solarized colorscheme
|
||||
colors {
|
||||
statusline $LIGHTBLUE
|
||||
background $BACKGROUND
|
||||
separator $MAGENTA
|
||||
|
||||
# name #border #bg #text
|
||||
focused_workspace $LIGHTBLUE $BACKGROUND $LIGHTBLUE
|
||||
active_workspace $BACKGROUND $BACKGROUND $LIGHTBLUE
|
||||
inactive_workspace $BACKGROUND $BACKGROUND $LIGHTBLUE
|
||||
urgent_workspace $BACKGROUND $BACKGROUND $LIGHTBLUE
|
||||
}
|
||||
}
|
||||
|
||||
#############################################
|
||||
# specific windows #
|
||||
#############################################
|
||||
|
||||
# always floating
|
||||
for_window [class="Thunar"] floating enable
|
||||
for_window [class="Nautilus"] floating enable
|
||||
for_window [class="GParted"] floating enable
|
||||
for_window [class="Gedit"] floating enable
|
||||
for_window [class="teamspeak3"] floating enable
|
||||
|
||||
# 0px Border
|
||||
#for_window [class="chrome"] border none
|
||||
for_window [class="Firefox"] border none
|
||||
|
||||
# 1px Border
|
||||
#for_window [class="URxvt" ] border 1pixel
|
||||
|
||||
#############################################
|
||||
# auto start with i3 #
|
||||
#############################################
|
||||
|
||||
# composite manager
|
||||
exec --no-startup-id compton -cCGfb -m1 -D3 --xrender-sync --xrender-sync-fence
|
||||
|
||||
# terminal daemon
|
||||
exec --no-startup-id urxvtd -q -f -o
|
||||
|
||||
# less eye pain
|
||||
#exec --no-startup-id redshift
|
||||
|
||||
# no beep!
|
||||
exec --no-startup-id xset b off
|
||||
|
||||
# Nextcloud Sync
|
||||
exec --no-startup-id nextcloud
|
||||
|
||||
# nm-applet
|
||||
exec --no-startup-id nm-applet
|
||||
|
||||
# dunst for notifications and volnoti daemon
|
||||
exec --no-startup-id dunst -conf ~/.dunstrc
|
||||
|
||||
# wallpapers
|
||||
exec --no-startup-id feh --bg-fill ~/.wallpapers/puzzle2.png
|
||||
64
i3/i3status.conf
Normal file
64
i3/i3status.conf
Normal file
@@ -0,0 +1,64 @@
|
||||
general {
|
||||
colors = true
|
||||
interval = 1
|
||||
output_format = i3bar
|
||||
color_good = "#4ff243"
|
||||
color_degraded = "#8c7f22"
|
||||
color_bad = "#9b0e0e"
|
||||
}
|
||||
|
||||
order += "disk /"
|
||||
order += "disk /media/Data1"
|
||||
order += "disk /media/Data2"
|
||||
order += "wireless wlp40s0"
|
||||
order += "ethernet enp35s0"
|
||||
order += "load"
|
||||
order += "volume master"
|
||||
order += "tztime local"
|
||||
|
||||
wireless wlp40s0 {
|
||||
format_up = " WiFi: %ip %quality %essid %bitrate "
|
||||
format_down = " WiFi: (/) "
|
||||
}
|
||||
|
||||
ethernet enp35s0 {
|
||||
format_up = " LAN: %ip %speed "
|
||||
format_down = " LAN: (/) "
|
||||
}
|
||||
|
||||
battery 0 {
|
||||
format = " Power: %status %percentage %remaining left "
|
||||
path = "/sys/class/power_supply/BAT0/uevent"
|
||||
low_threshold = 20
|
||||
}
|
||||
|
||||
tztime local {
|
||||
format = " Date: %y.%m.%d Time: %H:%M:%S "
|
||||
}
|
||||
|
||||
cpu_usage {
|
||||
format = " CPU: %usage "
|
||||
}
|
||||
|
||||
load {
|
||||
format = " Load: [%1min, %5min, %15min] "
|
||||
}
|
||||
|
||||
disk "/" {
|
||||
format = " root: %free "
|
||||
}
|
||||
|
||||
disk "/media/Data1" {
|
||||
format = " /data1: %free "
|
||||
}
|
||||
|
||||
disk "/media/Data2" {
|
||||
format = " /data2: %free "
|
||||
}
|
||||
|
||||
volume master {
|
||||
format = " Vol: %volume "
|
||||
device = "default"
|
||||
mixer = "Master"
|
||||
mixer_idx = 0
|
||||
}
|
||||
54
i3/util/volnotid.sh
Executable file
54
i3/util/volnotid.sh
Executable file
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
##########################################
|
||||
# _ _ _ _ #
|
||||
# | | | | (_) | | #
|
||||
# __ _____ | |_ __ ___ | |_ _ __| | #
|
||||
# \ \ / / _ \| | '_ \ / _ \| __| |/ _` | #
|
||||
# \ V / (_) | | | | | (_) | |_| | (_| | #
|
||||
# \_/ \___/|_|_| |_|\___/ \__|_|\__,_| #
|
||||
# #
|
||||
##########################################
|
||||
|
||||
#
|
||||
# This script uses volnoti, which can be installed from git or
|
||||
# from the arch aur.
|
||||
#
|
||||
# yaourt -S volnoti
|
||||
#
|
||||
|
||||
VOLUME=$(amixer get Master | grep Mono: | sed 's|[^[]*\[\([0-9]*\).*|\1|')
|
||||
VALUE=1%
|
||||
MUTE=0
|
||||
|
||||
case "$1" in
|
||||
"up")
|
||||
# Increase Volume
|
||||
[[ "$VOLUME" -eq 100 ]] && VALUE=0
|
||||
amixer -q sset Master $VALUE+ unmute && killall -SIGUSR1 i3status
|
||||
MUTE=0
|
||||
;;
|
||||
"down")
|
||||
# Decrease Volume
|
||||
amixer -q sset Master $VALUE- unmute && killall -SIGUSR1 i3status
|
||||
MUTE=0
|
||||
# If the Volume is already 0, then mute
|
||||
if [ "$VOLUME" == "0" ]; then
|
||||
MUTE=1
|
||||
amixer -q sset Master toggle && killall -SIGUSR1 i3status
|
||||
fi
|
||||
;;
|
||||
"mute")
|
||||
# Mute
|
||||
amixer -q sset Master toggle && killall -SIGUSR1 i3status
|
||||
MUTE=1
|
||||
;;
|
||||
esac
|
||||
|
||||
VOLUME=$(amixer get Master | grep Mono: | sed 's|[^[]*\[\([0-9]*\).*|\1|')
|
||||
|
||||
if [ "$MUTE" == "0" ]; then
|
||||
volnoti-show $VOLUME
|
||||
else
|
||||
volnoti-show -m $VOLUME
|
||||
fi
|
||||
21
i3/util/wallpapers.sh
Executable file
21
i3/util/wallpapers.sh
Executable file
@@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
|
||||
#######################################################
|
||||
# _ _ #
|
||||
# | | | #
|
||||
# __ ____ _| | |_ __ __ _ _ __ ___ _ __ ___ #
|
||||
# \ \ /\ / / _` | | | '_ \ / _` | '_ \ / _ \ '__/ __| #
|
||||
# \ V V / (_| | | | |_) | (_| | |_) | __/ | \__ \ #
|
||||
# \_/\_/ \__,_|_|_| .__/ \__,_| .__/ \___|_| |___/ #
|
||||
# | | | | #
|
||||
# |_| |_| #
|
||||
#######################################################
|
||||
|
||||
PICTURES="$HOME/.wallpapers/"
|
||||
SHOWTIME="10m"
|
||||
|
||||
while true; do
|
||||
find $PICTURES -type f \( -name '*.jpg' -o -name '*.png' \) -print0 | shuf -n1 -z | xargs -0 feh --bg-scale
|
||||
sleep $SHOWTIME
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user