From c7477b365e3bd20c2ef884d771435bdca634bb32 Mon Sep 17 00:00:00 2001 From: Alexey Zinchenko Date: Tue, 26 Feb 2019 20:44:01 +0300 Subject: [PATCH] Added configs. --- i3/config | 327 +++++++++++++++++++++++++++++++ polybar/config | 257 ++++++++++++++++++++++++ polybar/i3wmthemer_bar_launch.sh | 16 ++ 3 files changed, 600 insertions(+) create mode 100644 i3/config create mode 100644 polybar/config create mode 100755 polybar/i3wmthemer_bar_launch.sh diff --git a/i3/config b/i3/config new file mode 100644 index 0000000..5c416a7 --- /dev/null +++ b/i3/config @@ -0,0 +1,327 @@ +set $mod Mod4 + +set $primary_output DP-4 +set $secondary_output HDMI-0 + +new_window pixel 1 +new_float normal + +hide_edge_borders none + +bindsym $mod+u border none +bindsym $mod+y border pixel 1 +bindsym $mod+n border normal + +font xft:URWGothic-Book 11 + +floating_modifier $mod + +bindsym $mod+Return exec urxvt + +# Window kill command +bindsym $mod+Shift+q kill + +# start program launcher +bindsym $mod+d 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 + +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 + +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +# workspace back and forth (with/without active container) +workspace_auto_back_and_forth yes +bindsym $mod+b workspace back_and_forth +bindsym $mod+Shift+b move container to workspace back_and_forth; workspace back_and_forth + +# split orientation +bindsym $mod+h split h;exec notify-send 'tile horizontally' +bindsym $mod+v split v;exec notify-send 'tile vertically' +bindsym $mod+q split toggle + +# toggle fullscreen mode for the focused container +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 +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# toggle sticky +bindsym $mod+Shift+s sticky toggle + +# focus the parent container +bindsym $mod+a focus parent + +# move the currently focused window to the scratchpad +bindsym $mod+Shift+minus move scratchpad + +# Show the next scratchpad window or hide the focused scratchpad window. +# If there are multiple scratchpad windows, this command cycles through them. +bindsym $mod+minus scratchpad show + +# navigate workspaces next / previous +bindsym $mod+Ctrl+Right workspace next +bindsym $mod+Ctrl+Left workspace prev + +# workspaces +set $ws1 1:www +set $ws2 2:msgr +set $ws3 3:code +set $ws4 4:term +set $ws5 5:music +set $ws6 6:steam +set $ws7 7 +set $ws8 8 +set $ws9 9 +set $ws10 10 + +# 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 $ws10 + +# Move focused container to workspace +bindsym $mod+Ctrl+1 move container to workspace $ws1 +bindsym $mod+Ctrl+2 move container to workspace $ws2 +bindsym $mod+Ctrl+3 move container to workspace $ws3 +bindsym $mod+Ctrl+4 move container to workspace $ws4 +bindsym $mod+Ctrl+5 move container to workspace $ws5 +bindsym $mod+Ctrl+6 move container to workspace $ws6 +bindsym $mod+Ctrl+7 move container to workspace $ws7 +bindsym $mod+Ctrl+8 move container to workspace $ws8 +bindsym $mod+Ctrl+9 move container to workspace $ws9 +bindsym $mod+Ctrl+0 move container to workspace $ws10 + + +# Move to workspace with focused container +bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1 +bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2 +bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3 +bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4 +bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5 +bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6 +bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7 +bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8 +bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9 +bindsym $mod+Shift+0 move container to workspace $ws10; workspace $ws10 + +# Open specific applications in floating mode +for_window [title="alsamixer"] floating enable border pixel 1 +for_window [class="Calamares"] floating enable border normal +for_window [class="Clipgrab"] floating enable +for_window [title="File Transfer*"] floating enable +for_window [class="Galculator"] floating enable border pixel 1 +for_window [class="GParted"] floating enable border normal +for_window [title="i3_help"] floating enable sticky enable border normal +for_window [class="Lightdm-gtk-greeter-settings"] floating enable +for_window [class="Lxappearance"] floating enable sticky enable border normal +for_window [title="MuseScore: Play Panel"] floating enable +for_window [class="Nitrogen"] floating enable sticky enable border normal +for_window [class="Oblogout"] fullscreen enable +for_window [class="octopi"] floating enable +for_window [title="About Pale Moon"] floating enable +for_window [class="Pamac-manager"] floating enable +for_window [class="Pavucontrol"] floating enable +for_window [class="qt5ct"] floating enable sticky enable border normal +for_window [class="Qtconfig-qt4"] floating enable sticky enable border normal +for_window [class="Simple-scan"] floating enable border normal +for_window [class="(?i)System-config-printer.py"] floating enable border normal +for_window [class="Skype"] floating enable border normal +for_window [class="Thus"] floating enable border normal +for_window [class="Timeset-gui"] floating enable border normal +for_window [class="(?i)virtualbox"] floating enable border normal +for_window [class="Xfburn"] floating enable + +#for_window [class="Steam"] floating enable + +# switch to workspace with urgent window automatically +for_window [urgent=latest] focus + +# 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'" + +# Set shut down, restart and locking features +#bindsym $mod+0 mode "$mode_system" +#set $mode_system (l)ock, (e)xit, switch_(u)ser, (s)uspend, (h)ibernate, (r)eboot, (Shift+s)hutdown +#mode "$mode_system" { +# bindsym l exec --no-startup-id i3exit lock, mode "default" +# bindsym s exec --no-startup-id i3exit suspend, mode "default" +# bindsym u exec --no-startup-id i3exit switch_user, mode "default" +# bindsym e exec --no-startup-id i3exit logout, mode "default" +# bindsym h exec --no-startup-id i3exit hibernate, mode "default" +# bindsym r exec --no-startup-id i3exit reboot, mode "default" +# bindsym Shift+s exec --no-startup-id i3exit shutdown, mode "default" +# +# # exit system mode: "Enter" or "Escape" +# bindsym Return mode "default" +# bindsym Escape mode "default" +#} + +# Resize window (you can also use the mouse for that) +bindsym $mod+r mode "resize" +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 5 px or 5 ppt + bindsym k resize grow height 5 px or 5 ppt + bindsym l resize shrink height 5 px or 5 ppt + bindsym semicolon resize grow width 5 px or 5 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 + + # exit resize mode: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + +# Autostart applications +exec --no-startup-id nitrogen --restore; sleep 1; compton -bC +exec --no-startup-id pamac-tray +exec_always --no-startup-id /$HOME/.config/polybar/i3wmthemer_bar_launch.sh + +# Theme colors +client.focused #272827 #272827 #657b83 #272827 #272827 +client.focused_inactive #272827 #272827 #657b83 #272827 #272827 +client.unfocused #272827 #272827 #657b83 #272827 #272827 +client.urgent #272827 #272827 #657b83 #272827 #272827 +client.placeholder #272827 #272827 #657b83 #272827 #272827 + +client.background #272827 + +# Gaps +#gaps inner 10 +#gaps outer -4 + +smart_gaps on + +# Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps. Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace). If you also press Shift with these keys, the change will be global for all workspaces. +set $mode_gaps Gaps: (o) outer, (i) inner +set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) +set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global) +bindsym $mod+Shift+g mode "$mode_gaps" + +mode "$mode_gaps" { + bindsym o mode "$mode_gaps_outer" + bindsym i mode "$mode_gaps_inner" + bindsym Return mode "default" + bindsym Escape mode "default" +} +mode "$mode_gaps_inner" { + bindsym plus gaps inner current plus 5 + bindsym minus gaps inner current minus 5 + bindsym 0 gaps inner current set 0 + + bindsym Shift+plus gaps inner all plus 5 + bindsym Shift+minus gaps inner all minus 5 + bindsym Shift+0 gaps inner all set 0 + + bindsym Return mode "default" + bindsym Escape mode "default" +} +mode "$mode_gaps_outer" { + bindsym plus gaps outer current plus 5 + bindsym minus gaps outer current minus 5 + bindsym 0 gaps outer current set 0 + + bindsym Shift+plus gaps outer all plus 5 + bindsym Shift+minus gaps outer all minus 5 + bindsym Shift+0 gaps outer all set 0 + + bindsym Return mode "default" + bindsym Escape mode "default" +} + +# Assignment +assign [class="Firefox"] → number $ws1 +assign [class="TelegramDesktop"] → number $ws2 +assign [class="Thunderbird"] → number $ws2 +assign [class="jetbrains-idea"] → number $ws3 +assign [class="cantata"] → number $ws5 +assign [class="Steam"] → number $ws6 + +workspace "1:www" output $primary_output +workspace "2:msgr" output $secondary_output +workspace "3:code" output $primary_output +workspace "6:steam" output $primary_output + +# Custom keybindings +bindcode 123 exec "amixer set Master 1+" +bindcode 122 exec "amixer set Master 1-" +bindcode 121 exec "amixer -D pulse set Master 1+ toggle" +bindcode 173 exec "mpc prev" +bindcode 171 exec "mpc next" +bindcode 172 exec "mpc toggle" +bindcode 148 exec "galculator" +bindcode 163 exec "thunderbird" +bindcode 180 exec "firefox" + +bindsym $mod+l exec --no-startup-id "i3lock -i ~/Pictures/lockscreen.png -t" + +# Screenshots: Ctrl - clipboard, shift - selection, mod - window +bindsym Control+Shift+Print exec "maim -s | xclip -selection clipboard -t image/png" +bindsym Print exec "maim ~/Pictures/Screenshots/$(date +'%d-%m-%Y_%H:%M:%S').png" +bindsym Shift+Print exec "maim -s ~/Pictures/Screenshots/$(date +'%d-%m-%Y_%H:%M:%S').png | xclip -selection -t image/png" +bindsym Control+Print exec "maim | xclip -selection clipboard -t image/png" +bindsym $mod+Print exec "maim -i $(xdotool getactivewindow) ~/Pictures/Screenshots/$(date +'%d-%m-%Y_%H:%M:%S').png" +bindsym $mod+Control+Print exec "maim -i $(xdotool getactivewindow) | xclip -selection clipboard -t image/png" + + +# Autostart system +exec_always "setxkbmap -model pc104 -layout us,ru -variant ,, -option grp:alt_shift_toggle" +exec --no-startup-id redshift-gtk +exec_always lxsession +#usb mounting +exec_always "[[ -z $(pgrep -xU $UID udiskie) ]] && udiskie" + +# Autostart applications + +exec --no-startup-id firefox +exec --no-startup-id telegram-desktop +exec --no-startup-id cantata +exec --no-startup-id intellij-idea-ultimate-edition +exec --no-startup-id steam-native +#exec --no-startup-id osmo \ No newline at end of file diff --git a/polybar/config b/polybar/config new file mode 100644 index 0000000..7bd271c --- /dev/null +++ b/polybar/config @@ -0,0 +1,257 @@ +; Configuration guide: https://github.com/jaagr/polybar/wiki/Configuration + +[settings] +screenchange-reload = true + +[global/wm] +margin-top = 0 +margin-bottom = 0 + +[colors] +background = #00ffffff +foreground = #ffffffff +underline = #ffffffff +urgent = #ff993333 + + + +[bar/main] + +monitor = DP-4 + +width = 100% +height = 25 +radius = 0 +fixed-center = false + +background = ${colors.background} +foreground = ${colors.foreground} + +line-size = 3 +line-color = + +border-size = 0 +border-color = + +padding-left = 0 +padding-right = 2 + +module-margin-left = 1 +module-margin-right = 2 + +font-0 = "Source Code Pro Semibold:size=10;1" +font-1 = "Font Awesome 5 Free:style=Solid:size=10;1" +font-2 = "Font Awesome 5 Brands:size=10;1" +font-3 = "Material Icons:size=10;-1" + +modules-left = i3 +modules-center = +modules-right = mpd pulseaudio keyboard date + +tray-position = center +;tray-padding = + +cursor-click = pointer +cursor-scroll = ns-resize + +; https://github.com/jaagr/polybar/wiki/Module:-i3 +[module/i3] +type = internal/i3 + +index-sort = true +strip-wsnumbers = true +enable-scroll = false + +ws-icon-0 = 1:www; +ws-icon-1 = 2:msgr; +ws-icon-2 = 3:code; +ws-icon-3 = 4:term; +ws-icon-4 = 5:music; +ws-icon-5 = 6:steam; +ws-icon-default =  + +label-focused = %icon% +label-focused-underline = ${colors.underline} +label-focused-padding = 2 + +label-unfocused = %icon% +label-unfocused-padding = 2 + +label-visible = %icon% +label-visible-padding = 2 + +label-urgent = %icon% +label-urgent-underline = ${colors.urgent} +label-urgent-padding = 2 + +; https://github.com/jaagr/polybar/wiki/Module:-xkeyboard +[module/keyboard] +type = internal/xkeyboard + +; List of indicators to ignore +blacklist-0 = num lock +blacklist-1 = scroll lock +blacklist-2 = caps lock + +; https://github.com/jaagr/polybar/wiki/Module:-mpd +[module/mpd] +type = internal/mpd + +; Host where mpd is running (either ip or domain name) +; Can also be the full path to a unix socket where mpd is running. +host = 127.0.0.1 +port = 6600 +password = + +format-online = +label-offline = mpd is offline + +; Only applies if is used +bar-progress-width = 30 +bar-progress-indicator = | +bar-progress-fill = ─ +bar-progress-empty = ─ + +; https://github.com/jaagr/polybar/wiki/Module:-pulseaudio +[module/pulseaudio] +type = internal/pulseaudio + +; Interval for volume increase/decrease (in percent points) +; Default: 5 +interval = 5 + +; Available tokens: +; %percentage% (default) +label-volume = Volume: %percentage%% + +; Available tokens: +; %percentage% (default) +label-muted = Volume: muted +label-muted-foreground = ${colors.foreground} + +; https://github.com/jaagr/polybar/wiki/Module:-date +[module/date] +type = internal/date +interval = 1 + +date = +date-alt = %d %B, %Y + +time = %H:%M:%S +time-alt = %H:%M:%S + +format-padding = 0 + +label = %date% %time% + + + +[bar/systeminfo] +monitor = HDMI-0 + +bottom = true + +width = 100% +height = 25 +fixed-center = true + +background = ${colors.background} +foreground = ${colors.foreground} + +line-size = 3 + +padding-left = 2 +padding-right = 2 + +module-margin-left = 1 +module-margin-right = 2 + +font-0 = "Source Code Pro Semibold:size=8;1" +font-1 = "Symbol Nerd Font:size=8;1" +font-2 = "Material Icons:size=8;-1" + + +modules-left = network memory +modules-center = filesystem +modules-right = cpu temperature + +; https://github.com/jaagr/polybar/wiki/Module:-cpu +[module/cpu] +type = internal/cpu + +; Seconds to sleep between updates +; Default: 1 +interval = 0.5 + +format =