aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.ignore-cynerd-desktop2
-rw-r--r--.ignore-cynerd-laptop1
-rw-r--r--.ignore-work-pc1
-rw-r--r--config/i3/config6
-rw-r--r--config/i3blocks/config5
-rw-r--r--config/sway/config200
-rw-r--r--config/swaylock/config4
-rwxr-xr-xinstall53
-rw-r--r--profile16
-rw-r--r--utils/inst13
-rw-r--r--xinitrc2
11 files changed, 262 insertions, 41 deletions
diff --git a/.ignore-cynerd-desktop b/.ignore-cynerd-desktop
new file mode 100644
index 0000000..1abe91e
--- /dev/null
+++ b/.ignore-cynerd-desktop
@@ -0,0 +1,2 @@
+wake-desktop
+backup
diff --git a/.ignore-cynerd-laptop b/.ignore-cynerd-laptop
new file mode 100644
index 0000000..ec76ec2
--- /dev/null
+++ b/.ignore-cynerd-laptop
@@ -0,0 +1 @@
+backup
diff --git a/.ignore-work-pc b/.ignore-work-pc
new file mode 100644
index 0000000..ec76ec2
--- /dev/null
+++ b/.ignore-work-pc
@@ -0,0 +1 @@
+backup
diff --git a/config/i3/config b/config/i3/config
index b74108a..1d850f4 100644
--- a/config/i3/config
+++ b/config/i3/config
@@ -163,14 +163,10 @@ bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% &&
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% && pkill -RTMIN+10 i3blocks
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle && pkill -RTMIN+10 i3blocks
-# Sreen brightness controls
+# Screen brightness controls
bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 20 # increase screen brightness
bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 20 # decrease screen brightness
-# Keyboard backlight (asus only)
-bindsym XF86KbdBrightnessUp exec --no-startup-id asus-kbd-backlight up
-bindsym XF86KbdBrightnessDown exec --no-startup-id asus-kbd-backlight down
-
# Media player controls
bindsym XF86AudioPlay exec --no-startup-id mpc toggle && pkill -RTMIN+12 i3blocks
bindsym XF86AudioStop exec --no-startup-id mpc stop && pkill -RTMIN+12 i3blocks
diff --git a/config/i3blocks/config b/config/i3blocks/config
index c589d07..0ec9161 100644
--- a/config/i3blocks/config
+++ b/config/i3blocks/config
@@ -43,11 +43,6 @@ command=~/.config/i3/scripts/keyboard_layout
interval=once
signal=11
-[backup]
-command=~/.config/i3blocks/scripts/backup
-interval=86400
-signal=13
-
# Volume indicator
#
# The first parameter sets the step (and units to display)
diff --git a/config/sway/config b/config/sway/config
new file mode 100644
index 0000000..2d69b9f
--- /dev/null
+++ b/config/sway/config
@@ -0,0 +1,200 @@
+# Sway config
+
+input "7805:12200:ROCCAT_ROCCAT_Suora" {
+ xkb_layout us
+ xkb_options grp:alt_space_toggle
+ xkb_options caps:escape
+ xkb_numlock enabled
+}
+
+output "DP-1" {
+ mode 2560x1440
+ position 0 0
+}
+output "HDMI-A-1" {
+ mode 1920x1080
+ position 2560 0
+}
+
+output '*' {
+ background '/usr/share/backgrounds/vim-card-black-2560x1440.png' fit
+}
+
+##################################################################################
+
+smart_borders on
+default_border normal 1
+default_floating_border normal 1
+mouse_warping container
+font pango:DejaVu Sans Mono 7
+
+bar {
+ status_command i3blocks
+ position top
+ font pango:DejaVu Sans Mono 8
+}
+
+##################################################################################
+
+set $mod Mod4
+
+# Use Mouse+$mod to drag floating windows to their wanted position
+floating_modifier $mod
+
+# start a terminal
+bindsym $mod+Return exec urxvt
+
+# start dmenu (a program launcher)
+bindsym $mod+d exec i3-dmenu-desktop --entry-type=name
+bindsym $mod+Shift+d exec surf-menu
+
+# kill focused window
+bindsym $mod+q kill
+
+# bar toggle, hide or show
+bindsym $mod+m bar mode toggle
+
+# change focus
+bindsym $mod+h focus left
+bindsym $mod+j focus down
+bindsym $mod+k focus up
+bindsym $mod+l 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
+
+# split in horizontal orientation
+bindsym $mod+g split h
+# split in vertical orientation
+bindsym $mod+v split v
+
+# enter fullscreen mode for the focused container
+bindsym $mod+f fullscreen toggle
+
+# Scratchpad
+bindsym $mod+Tab scratchpad show
+bindsym $mod+Shift+Tab move scratchpad
+
+# 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
+# focus the child container
+bindsym $mod+Shift+a focus child
+
+# Output moving
+bindsym $mod+x move container to output right
+bindsym $mod+z move container to output left
+bindsym $mod+Shift+x move workspace to output right
+bindsym $mod+Shift+z move workspace to output left
+
+# 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 $mod+grave workspace web
+bindsym $mod+underscore workspace t
+
+# 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 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+grave move container to workspace web
+bindsym $mod+Shift+underscore move container to workspace t
+
+# Set Pidgin to scratchpad
+for_window [class="Pidgin"] move scratchpad
+
+# reload the configuration file
+bindsym $mod+Shift+r reload
+
+set $mode_system System (l) lock, (e) logout, (s) suspend, (r) reboot, (Shift+s) shutdown
+mode "$mode_system" {
+ bindsym l exec i3lock -c 000000 && sleep 1 && xset dpms force off, mode "default"
+ bindsym e exec i3-msg exit, mode "default"
+ bindsym s exec sudo pm-suspend, mode "default"
+ bindsym r exec sudo reboot, mode "default"
+ bindsym Shift+s exec ~/.config/i3/scripts/shutdown, mode "default"
+
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+bindsym $mod+Shift+q mode "$mode_system"
+
+set $displays (d)efault, toggle: 1:eDP 2:HDMI 3:VGA
+mode "$displays" {
+ bindsym d exec mxrandr, mode "default"
+ bindsym 1 exec mxrandr toggle eDP1, mode "default"
+ bindsym 2 exec mxrandr toggle HDMI1, mode "default"
+ bindsym 3 exec mxrandr toggle VGA1, mode "default"
+
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+bindsym $mod+Shift+w mode "$displays"
+
+# resize window
+mode "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: Enter or Escape
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+bindsym $mod+r mode "resize"
+
+# Switch keyboard layout
+bindsym Mod1+space exec ~/.config/i3/scripts/keyboard_switch
+
+# Pulse audio control
+bindsym XF86AudioRaiseVolume exec pactl set-sink-volume 0 +5% && pkill -RTMIN+10 i3blocks
+bindsym XF86AudioLowerVolume exec pactl set-sink-volume 0 -5% && pkill -RTMIN+10 i3blocks
+bindsym XF86AudioMute exec pactl set-sink-mute 0 toggle && pkill -RTMIN+10 i3blocks
+
+# Screen brightness controls
+bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness
+bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness
+
+# Media player controls
+bindsym XF86AudioPlay exec mpc toggle && pkill -RTMIN+12 i3blocks
+bindsym XF86AudioStop exec mpc stop && pkill -RTMIN+12 i3blocks
+bindsym XF86AudioNext exec mpc next && pkill -RTMIN+12 i3blocks
+bindsym XF86AudioPrev exec mpc prev && pkill -RTMIN+12 i3blocks
+# Run media player control app
+bindsym $mod+Shift+m exec urxvt -title "Music player daemon client" -e ncmpcpp
+
+##################################################################################
+# Start daemons
+exec dunst
+# Set background
+# TODO
+# Start pidgin
+exec pidgin
diff --git a/config/swaylock/config b/config/swaylock/config
new file mode 100644
index 0000000..72c08e0
--- /dev/null
+++ b/config/swaylock/config
@@ -0,0 +1,4 @@
+ignore-empty-password
+color=000000
+scaling=fit
+indicator-radius=100
diff --git a/install b/install
index 2759903..1ce498d 100755
--- a/install
+++ b/install
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
cd `dirname $0`
@@ -14,31 +14,30 @@ git submodule update --init --recursive || (echo "Submodule update failed!"; exi
source private/install # private files, sorry but some privacy is required.
# TODO on hosts without shellrc we might want some thin shellrc to be installed
-if ask "Install shell profile"; then
+if ask "profile" "Install shell profile"; then
inst profile ~/.profile
inst zprofile ~/.zprofile
fi
-if ask "Install GIT configuration"; then
+if ask "git" "Install GIT configuration"; then
inst gitconfig ~/.gitconfig
inst local/git-prompt.sh ~/.local/
fi
-if ask "Install configurations for various utility tools"; then
+if ask "gnuscreen" "Install configurations for various utility tools"; then
inst screenrc ~/.screenrc
fi
-if ask "Install user services"; then
+if ask "services" "Install user services"; then
inst local/sbin/user-service.sh ~/.local/sbin/user-service.sh
inst service/ ~/.service/
fi
-if ask "Install SSH config"; then
+if ask "ssh" "Install SSH config"; then
inst private/ssh_config ~/.ssh/config
fi
-YCM_PATH=~/.vim/bundle/YouCompleteMe
-if ask "Install VIM scripts"; then
+if ask "vim" "Install VIM scripts"; then
inst vimrc ~/.vimrc
inst vim/ ~/.vim
inst local/bin/vim-project-gen ~/.local/bin/vim-project-gen
@@ -52,7 +51,7 @@ if ask "Install VIM scripts"; then
vim +PluginInstall +qall
fi
-if ask "Install email synchronization"; then
+if ask "email-sync" "Install email synchronization"; then
inst local/bin/email-unread ~/.local/bin/email-unread
inst local/sbin/newmail-notify ~/.local/sbin/newmail-notify
inst_email_sync
@@ -61,7 +60,7 @@ if ask "Install email synchronization"; then
# inst config/offlineimap/ ~/.config/offlineimap
fi
-if ask "Install mutt configuration"; then
+if ask "mutt" "Install mutt configuration"; then
inst urlview ~/.urlview
inst lynxrc ~/.lynxrc
inst mutt/mailcap ~/.mutt/
@@ -74,40 +73,50 @@ if ask "Install mutt configuration"; then
mkdir -p ~/.cache/mutt # directory for temporaly html files
fi
-if ask "Install desktop (i3..)"; then
- inst xinitrc ~/.xinitrc
- inst Xresources ~/.Xresources
- inst config/i3/ ~/.config/i3
- inst config/i3blocks/ ~/.config/i3blocks
- inst config/dunst/ ~/.config/dunst
- inst local/bin/mxrandr ~/.local/bin/
+if ask "desktop" "Install desktop generic"; then
# Theme
inst gtk-2.0/gtkrc ~/.gtkrc-2.0
inst gtk-3.0/ ~/.config/gtk-3.0/
inst config/Trolltech.conf ~/.config/Trolltech.conf
# User directories
inst config/user-dirs.dirs ~/.config/user-dirs.dirs
+ # Generic i3/sway
+ inst config/dunst/ ~/.config/dunst
+ inst config/i3blocks/ ~/.config/i3blocks
+fi
+
+if ask "xorg" "Install XOrg (i3)"; then
+ inst xinitrc ~/.xinitrc
+ inst Xresources ~/.Xresources
+ inst config/i3/ ~/.config/i3
+ inst local/bin/mxrandr ~/.local/bin/
+fi
+
+if ask "wayland" "Install Wayland (sway)"; then
+ inst Xresources ~/.Xdefaults # X resources for wayland session
+ inst config/sway/ ~/.config/sway
+ inst config/swaylock/ ~/.config/swaylock
fi
-if ask "Install calendar and contacts"; then
+if ask "cal" "Install calendar and contacts"; then
inst config/khal/config ~/.config/khal/config
inst config/khard/khard.conf ~/.config/khard/khard.conf
inst private/vdirsyncer/ ~/.vdirsyncer
fi
-if ask "Install Surf configuration"; then
+if ask "surf" "Install Surf configuration"; then
inst surf/script.js ~/.surf/script.js
inst surf/styles/default.css ~/.surf/styles/default.css
fi
-if ask "Install MPD configuration"; then
+if ask "mpd" "Install MPD configuration"; then
inst config/mpd/ ~/.config/mpd
fi
-if ask "Install wake-desktop"; then
+if ask "wake-desktop" "Install wake-desktop"; then
inst local/bin/wake-desktop ~/.local/bin/wake-desktop
fi
-if ask "Install backup script"; then
+if ask "backup" "Install backup script"; then
inst local/bin/system-backup ~/.local/bin/system-backup
fi
diff --git a/profile b/profile
index 6c2dcd6..55d2ad2 100644
--- a/profile
+++ b/profile
@@ -14,9 +14,17 @@ export EDITOR=vim
# And if we are on first terminal also automatically start x server
if [ "$(tty)" = "/dev/tty1" ]; then
- if which annoyme >/dev/null 2>&1; then # Check if we are using annoyme
- sleep 1 # just little bit of time to give systemd to start tasks
- ls ~/.annoyme/*.pid 2>/dev/null >&2 && annoyme
- fi
exec startx -- vt1
fi
+
+echo
+echo "(1) i3"
+echo "(2) sway"
+echo -n "Select or pass to shell: "
+read -r PROFILE_SELECTION
+if [ "$PROFILE_SELECTION" -eq 1 ]; then
+ exec startx -- "vt$XDG_VTNR"
+elif [ "$PROFILE_SELECTION" -eq 2 ]; then
+ exec sway
+fi
+unset PROFILE_SELECTION
diff --git a/utils/inst b/utils/inst
index 9987fff..34b2e87 100644
--- a/utils/inst
+++ b/utils/inst
@@ -1,14 +1,19 @@
# Functions used for interactive installation of new changes to running system
# vim: ft=sh
+# Ask if given section should be installed
+# First argument is name (take care not to use special characters for regulard
+# expression) and second argument is a question
ask() {
+ grep -q "^$1$" ".ignore-$(hostname)" && return 1
if $FORCE; then
- echo -e "\e[1;34m$1\e[0m"
+ echo "\e[1;34m$2\e[0m"
# Fall trough with 0 exit (always yes)
else
- echo -e -n "\e[1;34m$1? (Y/n) \e[0m"
- read
- echo "$REPLY" | grep -qE '^[Yy]?$'
+ echo -e -n "\e[1;34m$2? (Y/n) \e[0m"
+ local reply
+ read -r reply
+ echo "$reply" | grep -qE '^[Yy]?$'
fi
}
diff --git a/xinitrc b/xinitrc
index 9ae157e..b3de531 100644
--- a/xinitrc
+++ b/xinitrc
@@ -14,4 +14,4 @@ export force_s3tc_enable=true
mxrandr
-exec ck-launch-session dbus-launch --sh-syntax --exit-with-session i3
+exec i3