From 3413fef9ceb070e1477a757f33255ec2d377cf1b Mon Sep 17 00:00:00 2001 From: Matus Namesny Date: Thu, 20 Jan 2022 10:49:50 +0100 Subject: [PATCH] Add legacy i3 --- .config/i3/config | 213 +++++++++++++++++++++++++++ .config/polybar/config | 249 ++++++++++++++++++++++++++++++++ .config/polybar/launch.sh | 20 +++ .config/rofi/Pop-Dark-Blue.rasi | 122 ++++++++++++++++ .config/rofi/config | 1 + 5 files changed, 605 insertions(+) create mode 100644 .config/i3/config create mode 100644 .config/polybar/config create mode 100755 .config/polybar/launch.sh create mode 100644 .config/rofi/Pop-Dark-Blue.rasi create mode 100644 .config/rofi/config diff --git a/.config/i3/config b/.config/i3/config new file mode 100644 index 0000000..891c3be --- /dev/null +++ b/.config/i3/config @@ -0,0 +1,213 @@ +# 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 +# is used in the bar {} block below. +font pango:monospace 8 + +# 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 + +# Before i3 v4.8, we used to recommend this one as the default: +# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 +# The font above is very space-efficient, that is, it looks good, sharp and +# clear in small sizes. However, its unicode glyph coverage is limited, the old +# X core fonts rendering does not support right-to-left and this being a bitmap +# font, it doesn’t scale on retina/hidpi displays. + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# start a terminal +bindsym $mod+Return exec i3-sensible-terminal + +# kill focused window +bindsym $mod+Shift+q kill + +# start dmenu (a program launcher) +bindsym $mod+d exec rofi -modi drun -show drun +bindsym $mod+Tab exec rofi -modi window -show window + +# change focus +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+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 + +# split i +bindsym $mod+v split v + +# enter 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+f 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+d focus child + +# Define names for default workspaces for which we configure key bindings later on. +# We use variables to avoid repeating the names in multiple places. +set $ws1 "1" +set $ws2 "2" +set $ws3 "3" +set $ws4 "4" +set $ws5 "5" +set $ws6 "6" +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+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 $ws10 + +# Workspaces back and forth +bindsym $mod+b workspace back_and_forth + +# Screenshot +bindsym Print exec gnome-screenshot + +# Next | Prev worksapce +bindsym $mod+Next workspace next +bindsym $mod+Prior workspace prev + +# Pulse Audio controls +bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume +bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% #decrease sound volume +bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle # mute sound + +# Sreen brightness controls +bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness +bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness + +# Set background +exec --no-startup-id ~/.fehbg & + +# Polybar +exec_always --no-startup-id $HOME/.config/polybar/launch.sh + +# Keyboard layout +exec setxkbmap -model pc104 -layout us,sk -variant ,qwerty -option grp:win_space_toggle + +# Lock screen +bindsym $mod+l exec --no-startup-id $HOME/bin/lock.sh $HOME/Pictures/Wallpapers/1-blurred.png + +# Start Compton +exec --no-startup-id compton + +# Start nextcloud client +exec --no-startup-id nextcloud + +# Conky +exec --no-startup-id $HOME/bin/startup/start_conky.sh + +# Redshift +exec --no-startup-id redshift-gtk + +# KeePassXC +exec --no-startup-id $HOME/bin/startup/start_keepassxc.sh + +# Nemo +bindsym $mod+n exec nemo + +# Turn on/off monitors +bindsym $mod+m exec $HOME/bin/xrandr/switch_monitors.sh -i +bindsym $mod+Shift+m exec $HOME/bin/xrandr/switch_monitors.sh -e + +# Monitor setup +exec --no-startup-id $HOME/bin/xrandr/monitor_setup.sh single + +# Window titlebar and gaps +for_window [class="^.*"] border pixel 2 + +# 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'" + +# resize window (you can also use the mouse for that) +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 10 px or 10 ppt + bindsym k resize grow height 10 px or 10 ppt + bindsym l resize shrink height 10 px or 10 ppt + bindsym semicolon resize grow width 10 px or 10 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 + + # back to normal: Enter or Escape or $mod+r + bindsym Return mode "default" + bindsym Escape mode "default" + bindsym $mod+r mode "default" +} + +bindsym $mod+r mode "resize" + +#bar { +# status_command i3blocks +#} diff --git a/.config/polybar/config b/.config/polybar/config new file mode 100644 index 0000000..502280e --- /dev/null +++ b/.config/polybar/config @@ -0,0 +1,249 @@ +;===================================================== +; +; To learn more about how to configure Polybar +; go to https://github.com/jaagr/polybar +; +; The README contains alot of information +; +;===================================================== + +[settings] +compositing-background = over +compositing-foreground = over +compositing-overline = over +compositing-underline = over +compositing-border = over + +[colors] +background = #EE222222 +foreground = #dfdfdf + +primary = #0a6cf5 +secondary = #009646 +alert = #bd2c40 + +[bar/default] +width = 100% +height = 27 +radius = 3.0 +fixed-center = true + +monitor = ${env:MONITOR:} + +background = ${colors.background} +foreground = ${colors.foreground} + +line-size = 2 +line-color = #f00 + +border-size = 0 +border-color = #00000000 + +padding-left = 2 +padding-right = 2 + +module-margin-left = 2 +module-margin-right = 2 + +font-0 = FontAwesome:size=10;1 +font-1 = siji:pixelsize=10;1 +font-2 = Weather Icons:size=10;1 + +modules-left = powermenu i3 +modules-center = datetime openweathermap +modules-right = system-usb-udev updates pulseaudio-tail wlan eth vpn xkeyboard battery + +tray-detached = false +tray-position = right + +scroll-up = i3wm-wsnext +scroll-down = i3wm-wsprev + +[module/xwindow] +type = internal/xwindow +label = %title:0:30:...% + +[module/xkeyboard] +type = internal/xkeyboard +blacklist-0 = num lock + +label-layout = " %layout%" +label-layout-underline = ${colors.primary} + +label-indicator = %name% +label-indicator-underline = ${colors.secondary} + +[module/openweathermap] +type = custom/script +exec = ~/bin/polybar/openweathermap-simple.sh +interval = 600 +label-font = 3 + +[module/filesystem] +type = internal/fs +interval = 25 + +mount-0 = / + +label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%% +label-unmounted = %mountpoint% not mounted +label-unmounted-foreground = ${colors.foreground-alt} + +[module/bspwm] +type = internal/bspwm + +label-focused = %index% +label-focused-background = ${colors.background-alt} +label-focused-underline= ${colors.primary} +label-focused-padding = 2 + +label-occupied = %index% +label-occupied-padding = 2 + +label-urgent = %index%! +label-urgent-background = ${colors.alert} +label-urgent-padding = 2 + +label-empty = %index% +label-empty-foreground = ${colors.foreground-alt} +label-empty-padding = 2 + +[module/i3] +type = internal/i3 +format = +index-sort = true +wrapping-scroll = false + +; Only show workspaces on the same output as the bar +;pin-workspaces = true + +label-mode-padding = 2 +label-mode-foreground = #000 +label-mode-background = ${colors.primary} + +; focused = Active workspace on focused monitor +label-focused = %index% +label-focused-background = ${colors.background} +label-focused-underline = ${colors.primary} +label-focused-padding = 2 + +; unfocused = Inactive workspace on any monitor +label-unfocused = %index% +label-unfocused-padding = 2 + +; visible = Active workspace on unfocused monitor +label-visible = %index% +label-visible-background = ${self.label-focused-background} +label-visible-underline = ${self.label-focused-underline} +label-visible-padding = ${self.label-focused-padding} + +; urgent = Workspace with urgency hint set +label-urgent = %index% +label-urgent-background = ${colors.alert} +label-urgent-padding = 2 + +[module/wlan] +type = internal/network +interface = wlo1 +interval = 3.0 + +format-connected =  +label-connected = "%essid%" + +format-disconnected = + +[module/eth] +type = internal/network +interface = enp8s0 +interval = 3.0 + +format-connected-prefix-foreground = ${colors.foreground-alt} +label-connected = "" + +format-disconnected = + +[module/powermenu] +type = custom/menu + +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +label-open = "" +label-open-font = 4 +label-close = "" +label-close-foreground = ${colors.foreground} +label-separator = " / " +label-separator-foreground = ${colors.foreground} + +;logout +menu-0-2 = "" +menu-0-2-exec = i3-msg exit +menu-0-2-foreground = ${colors.foreground} +; reboot +menu-0-1 = "" +menu-0-1-exec = systemctl reboot +menu-0-1-foreground = ${colors.foreground} +; shutdown +menu-0-0 = "" +menu-0-0-exec = systemctl poweroff +menu-0-0-foreground = ${colors.alert} + +[module/datetime] +type = custom/script + +exec = date +'%H:%M' + +tail = false +interval = 60 + +click-left = gsimplecal + +[module/system-usb-udev] +type = custom/script +exec = ~/bin/polybar/system-usb-udev.sh +tail = true +click-left = ~/bin/polybar/system-usb-udev.sh --mount +click-right = ~/bin/polybar/system-usb-udev.sh --unmount + +[module/pulseaudio-tail] +type = custom/script +exec = ~/bin/polybar/pulseaudio-tail.sh 2> /dev/null +tail = true +click-right = ~/bin/polybar/pulseaudio-tail.sh --show 2> /dev/null +click-left = ~/bin/polybar/pulseaudio-tail.sh --mute 2> /dev/null +scroll-up = ~/bin/polybar/pulseaudio-tail.sh --up 2> /dev/null +scroll-down = ~/bin/polybar/pulseaudio-tail.sh --down 2> /dev/null + +[module/vpn] +type = custom/script +exec = ~/bin/polybar/vpn_running.sh +interval = 5 +click-left = ~/bin/polybar/vpn_country.sh + +[module/updates] +type = custom/script +exec = ~/bin/polybar/updates.sh 2> /dev/null +interval = 600 +format-prefix = "" +format-underline = ${colors.alert} + +[module/battery] +type = internal/battery +battery = BAT0 +adapter = AC +full-at = 96 + +format-charging = +format-charging-underline = ${colors.secondary} + +format-discharging = +format-discharging-underline = ${colors.alert} + +label-full = "" +label-discharging = " %percentage%%" +label-charging = " %percentage%%" + + +[global/wm] +margin-top = 5 +margin-bottom = 5 diff --git a/.config/polybar/launch.sh b/.config/polybar/launch.sh new file mode 100755 index 0000000..45e79a9 --- /dev/null +++ b/.config/polybar/launch.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env sh + +# Terminate already running bar instances +killall -q polybar + +# Wait until the processes have been shut down +while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done + +# Launch polybar + +intern=eDP-1 +extern=HDMI-1 + +if xrandr | grep "$extern disconnected"; then + m=$intern +else + m=$extern +fi + +MONITOR=$m polybar default & diff --git a/.config/rofi/Pop-Dark-Blue.rasi b/.config/rofi/Pop-Dark-Blue.rasi new file mode 100644 index 0000000..edc0a83 --- /dev/null +++ b/.config/rofi/Pop-Dark-Blue.rasi @@ -0,0 +1,122 @@ +/** + * Author: Primetoxinz + */ +* { + text-color: #f2f2f2; + background-color: #222222; + lightbg: #534c48; + red: #f15d22; + orange: #faa41a; + blue: #0a6cf5; + + selected-normal-foreground: @foreground; + normal-foreground: @foreground; + alternate-normal-background: @background; + selected-urgent-foreground: @foreground; + urgent-foreground: @foreground; + alternate-urgent-background: @background; + active-foreground: @foreground; + selected-active-foreground: @foreground; + alternate-normal-foreground: @foreground; + alternate-active-background: @blue; + bordercolor: @foreground; + normal-background: @background; + selected-normal-background: @blue; + separatorcolor: @orange; + spacing: 2; + urgent-background: @red; + alternate-urgent-foreground: @foreground; + selected-urgent-background: @red; + alternate-active-foreground: @foreground; + selected-active-background: @blue; + active-background: @orange; +} +#window { + border: 0; + text-color: @foreground; + background-color: rgba ( 0, 0, 0, 0 % ); + padding: 5; + text-color: @bordercolor; + background-color: @background; +} +#mainbox { + border: 0; + padding: 0; +} +#message { + border: 1px dash 0px 0px ; + text-color: @separatorcolor; + padding: 2px 0px 0px ; +} +#textbox { + text-color: @foreground; +} +#listview { + fixed-height: 0; + border: 2px 0px 0px ; + padding: 2px 0px 0px ; + text-color: @separatorcolor; +} +#element { + border: 0; +} +#element.normal.normal { + text-color: @normal-foreground; + background-color: @normal-background; +} +#element.normal.urgent { + text-color: @urgent-foreground; + background-color: @urgent-background; +} +#element.normal.active { + text-color: @active-foreground; + background-color: @active-background; +} +#element.selected.normal { + text-color: @selected-normal-foreground; + background-color: @selected-normal-background; +} +#element.selected.urgent { + text-color: @selected-urgent-foreground; + background-color: @selected-urgent-background; +} +#element.selected.active { + text-color: @selected-active-foreground; + background-color: @selected-active-background; +} +#element.alternate.normal { + text-color: @alternate-normal-foreground; + background-color: @alternate-normal-background; +} +#element.alternate.urgent { + text-color: @alternate-urgent-foreground; + background-color: @alternate-urgent-background; +} +#element.alternate.active { + text-color: @alternate-active-foreground; + background-color: @alternate-active-background; +} +#sidebar { + border: 1px dash 0px 0px ; +} +#button selected { + text-color: @selected-normal-foreground; + background-color: @selected-normal-background; +} +#inputbar { + spacing: 0; + border: 0px ; +} +#button normal { + text-color: @foreground; +} + +#inputbar { + children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; +} +#textbox-prompt-colon { + expand: false; + str: ":"; + margin: 0px 0.3em 0em 0em ; + text-color: @normal-foreground; +} diff --git a/.config/rofi/config b/.config/rofi/config new file mode 100644 index 0000000..0e5ac2c --- /dev/null +++ b/.config/rofi/config @@ -0,0 +1 @@ +rofi.theme: /home/matus/.config/rofi/Pop-Dark-Blue.rasi