Add qtile config

This commit is contained in:
Şahin Akkaya 2022-03-18 02:11:36 +03:00
parent 6514f48479
commit f7cd6b1274
14 changed files with 174 additions and 1728 deletions

View File

@ -12,8 +12,8 @@ follow_mouse_focus = True
bring_front_click = False bring_front_click = False
cursor_warp = False cursor_warp = False
auto_fullscreen = True auto_fullscreen = True
focus_on_window_activation = "smart" focus_on_window_activation = "urgent"
wmname = "Qtile" wmname = "LG3D"
widget_defaults = dict( widget_defaults = dict(
font='Cascadia Code', font='Cascadia Code',
fontsize=13, fontsize=13,

View File

@ -1,21 +1,42 @@
from libqtile.config import Group, Key, Match from libqtile.config import Group, Key, Match, ScratchPad, DropDown
from libqtile.lazy import lazy from libqtile.lazy import lazy
from .keys import keys, mod from .keys import keys, mod
groups = [Group(i) for i in "123456789"] groups = [Group(i) for i in "1234567890"]
symbols = ['semicolon', 'comma', 'period', 'p', 'y', 'equal', 'g', 'c', 'r', 'percent'] browsers = [
Match(wm_class="firefox"),
Match(wm_class="Google-chrome")]
file_managers = [Match(wm_class="Thunar")]
video_players = [
Match(wm_class="streamlink-twitch-gui"),
Match(wm_class="mpv")]
groups = [
Group('1'),
Group('2', matches=[Match(wm_class="VirtualBox Manager")]),
Group('3', matches=[Match(wm_class="Thunderbird")]),
Group('4', matches=[Match(wm_class="st-256color")]),
Group('5', matches=file_managers),
Group('6'),
Group('7', matches=browsers),
Group('8', matches=video_players),
Group('9'),
Group('0', matches=[Match(wm_class="TelegramDesktop")]),
]
groups.append(ScratchPad("scratchpad", [
# define a drop down terminal.
# it is placed in the upper third of screen by default.
DropDown("term", "st", opacity=1.0)
]))
symbols = 'arstgmneio'
for i, j in zip(groups, symbols): for i, j in zip(groups, symbols):
keys.extend([ keys.extend([
Key([mod], j, lazy.group[i.name].toscreen(), Key([mod], j, lazy.group[i.name].toscreen(),
desc="Switch to group {}".format(i.name)), desc="Switch to group {}".format(i.name)),
Key([mod, "shift"], j, lazy.window.togroup(i.name), Key([mod, "shift"], j, lazy.window.togroup(i.name, switch_group=True),
desc="move focused window to group {}".format(i.name)), desc="Switch to & move focused window to group {}".format(i.name)),
# Use below if you prefer to switch to that group.
# Key([mod, "shift"], j, lazy.window.togroup(i.name, switch_group=True),
# desc="Switch to & move focused window to group {}".format(i.name)),
]) ])

View File

@ -1,9 +1,20 @@
import os
import subprocess import subprocess
from libqtile import hook from libqtile import hook
from libqtile.command.client import InteractiveCommandClient
@hook.subscribe.startup @hook.subscribe.startup
def autostart(): def autostart():
subprocess.call([os.path.expanduser('~/.config/qtile/autostart.sh')]) subprocess.call(['autostart.sh'])
@hook.subscribe.startup_complete
def focus_group():
c = InteractiveCommandClient()
c.group['4'].toscreen()
@hook.subscribe.client_managed
def show_window(window):
window.group.cmd_toscreen()

View File

@ -2,14 +2,23 @@ import os
from libqtile.config import Key, KeyChord from libqtile.config import Key, KeyChord
from libqtile.lazy import lazy from libqtile.lazy import lazy
from libqtile.utils import guess_terminal
mod = "mod1" mod = "mod4"
terminal = guess_terminal() terminal = "st"
# terminal = "xfce4-terminal" # terminal = "xfce4-terminal"
home = os.path.expanduser home = os.path.expanduser
keys = [ keys = [
# '`': 'grave',
# '-': 'minus',
# '=': 'equal',
# '[': 'bracketleft',
# ']': 'bracketright',
# '\\': 'backslash',
# ';': 'semicolon',
# '\'': 'quote',
# ',': 'comma',
# '.': 'dot',
Key([mod], "h", lazy.layout.left(), desc="Move focus to left"), Key([mod], "h", lazy.layout.left(), desc="Move focus to left"),
Key([mod], "l", lazy.layout.right(), desc="Move focus to right"), Key([mod], "l", lazy.layout.right(), desc="Move focus to right"),
Key([mod], "j", lazy.layout.down(), desc="Move focus down"), Key([mod], "j", lazy.layout.down(), desc="Move focus down"),
@ -19,82 +28,82 @@ keys = [
desc="Toggle back and forth between latest groups"), desc="Toggle back and forth between latest groups"),
Key([mod], "d", lazy.spawn("rofi -show combi"), desc="spawn rofi"), Key([mod], "d", lazy.spawn("rofi -show combi"), desc="spawn rofi"),
# Move windows between left/right columns or move up/down in current stack. # Move windows between left/right columns or move up/down in current
# Moving out of range in Columns layout will create new column. # stack. Moving out of range in Columns layout will create new column.
Key([mod, "shift"], Key([mod, "shift"], "h",
"h", lazy.layout.shuffle_left(), desc="Move window to the left"),
lazy.layout.shuffle_left(), Key([mod, "shift"], "l",
desc="Move window to the left"), lazy.layout.shuffle_right(), desc="Move window to the right"),
Key([mod, "shift"], Key([mod, "shift"], "j",
"l", lazy.layout.shuffle_down(), desc="Move window down"),
lazy.layout.shuffle_right(), Key([mod, "shift"], "k",
desc="Move window to the right"), lazy.layout.shuffle_up(), desc="Move window up"),
Key([mod, "shift"],
"j",
lazy.layout.shuffle_down(),
desc="Move window down"),
Key([mod, "shift"], "k", lazy.layout.shuffle_up(), desc="Move window up"),
# Grow windows. If current window is on the edge of screen and direction # Grow windows. If current window is on the edge of screen and direction
# will be to screen edge - window would shrink. # will be to screen edge - window would shrink.
Key([mod, "control"], Key([mod, "control"], "h",
"h", lazy.layout.grow_left(), desc="Grow window to the left"),
lazy.layout.grow_left(), Key([mod, "control"], "l",
desc="Grow window to the left"), lazy.layout.grow_right(), desc="Grow window to the right"),
Key([mod, "control"], Key([mod, "control"], "j",
"l", lazy.layout.grow_down(), desc="Grow window down"),
lazy.layout.grow_right(), Key([mod, "control"], "k",
desc="Grow window to the right"), lazy.layout.grow_up(), desc="Grow window up"),
Key([mod, "control"], # KeyChord([mod], "w", [
"j", # Key([], "g", lazy.layout.grow()),
lazy.layout.grow_down(), # Key([], "s", lazy.layout.shrink()),
desc="Grow window down"), # Key([], "n", lazy.layout.normalize(), desc="Reset all window sizes"),
Key([mod, "control"], "k", lazy.layout.grow_up(), desc="Grow window up"), # Key([], "m", lazy.layout.maximize())],
KeyChord([mod], "w", [ # mode="Windows"
Key([], "g", lazy.layout.grow()), # ),
Key([], "s", lazy.layout.shrink()), Key([mod], "f",
Key([], "n", lazy.layout.normalize(), desc="Reset all window sizes"), lazy.window.toggle_fullscreen(), desc='Toggle fullscreen'),
Key([], "m", lazy.layout.maximize())], Key([mod, "shift"], "f",
mode="Windows" lazy.window.toggle_floating(), desc='Toggle floating'),
),
Key([mod], "f", lazy.window.toggle_fullscreen(), desc='Toggle fullscreen'),
Key([mod, "shift"], "f", lazy.window.toggle_floating(),
desc='Toggle floating'),
# Toggle between split and unsplit sides of stack. # Toggle between split and unsplit sides of stack.
# Split = all windows displayed # Split = all windows displayed
# Unsplit = 1 window displayed, like Max layout, but still with # Unsplit = 1 window displayed, like Max layout, but still with
# multiple stack panes # multiple stack panes
Key([mod, "shift"], Key([mod, "shift"], "Return",
"Return",
lazy.layout.toggle_split(), lazy.layout.toggle_split(),
desc="Toggle between split and unsplit sides of stack"), desc="Toggle between split and unsplit sides of stack"),
Key([mod], "Return", lazy.spawn(terminal), desc="Launch terminal"), Key([mod], "Return", lazy.spawn(terminal), desc="Launch terminal"),
# Toggle between different layouts as defined below # Toggle between different layouts as defined below
Key([mod], "space", lazy.next_layout(), desc="Toggle between layouts"), Key([mod], "space", lazy.next_layout(), desc="Toggle between layouts"),
Key([mod, 'shift'], "space", lazy.widget["keyboardlayout"].next_keyboard(), desc="Next keyboard layout."), Key([mod, 'shift'], "space",
Key([mod], "e", lazy.screen.prev_group(), desc="Move to the group on the left"), lazy.spawn("chlayout"), desc="Next keyboard layout."),
Key([mod], "u", lazy.screen.next_group(), desc="Move to the group on the right"), Key([mod], "comma",
Key([mod], "q", lazy.window.kill(), desc="Kill focused window"), lazy.screen.prev_group(), desc="Move to the group on the left"),
Key([mod, "shift", "control"], "h", lazy.layout.swap_column_left()), Key([mod], "period",
lazy.screen.next_group(), desc="Move to the group on the right"),
Key([mod], "q",
lazy.window.kill(), desc="Kill focused window"),
Key([mod, "shift", "control"], "h",
lazy.layout.swap_column_left()),
Key([mod, "shift", "control"], "l", lazy.layout.swap_column_right()), Key([mod, "shift", "control"], "l", lazy.layout.swap_column_right()),
Key([mod, "shift"], "space", lazy.layout.flip()), # Key([mod, "shift"], "space", lazy.layout.flip()),
Key([mod, "control"], "r", lazy.restart(), desc="Restart Qtile"), Key([mod, "control"], "r", lazy.restart(), desc="Restart Qtile"),
Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown Qtile"), Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown Qtile"),
Key([mod, "shift"], Key([mod, "control"], "n",
"d", lazy.spawn("lock-screen"), desc="Lock screen"),
lazy.spawncmd(), Key([mod, "control"], "s",
desc="Spawn a command using a prompt widget"), lazy.spawn("toggle-screenkey"), desc="Show keys on screen"),
Key([mod], "s", lazy.spawn("passmenu"), desc="Spawn passmenu"), Key([mod, "shift"], "d",
lazy.spawncmd(), desc="Spawn a command using a prompt widget"),
Key([mod], "p", lazy.spawn("passmenu"), desc="Spawn passmenu"),
# Key([mod, "shift"], "e", lazy.spawn("menu_powermenu"), desc="Spawn powermenu using rofi"), # Key([mod, "shift"], "e", lazy.spawn("menu_powermenu"), desc="Spawn powermenu using rofi"),
# Key([mod], "n", lazy.spawn(home("~/Desktop/GitRepositories/networkmanager-dmenu/networkmanager_dmenu")), desc="Launch network manager"), # Key([mod], "n", lazy.spawn(home("~/Desktop/GitRepositories/networkmanager-dmenu/networkmanager_dmenu")), desc="Launch network manager"),
# Key([mod], "i", lazy.spawn("sxiv " + home("~/Pictures/keyboard-layout.jpg")), desc="Show current keyboard layout"), # Key([mod], "i", lazy.spawn("sxiv " + home("~/Pictures/keyboard-layout.jpg")), desc="Show current keyboard layout"),
# Key([mod], "b", lazy.spawn(home("~/Desktop/GitRepositories/rofi-bluetooth/rofi-bluetooth")), Key([mod], "b", lazy.spawn('rofi-bluetooth'),
# desc="Control bluetooth devices"), desc="Manage bluetooth devices"),
Key([mod], "v", lazy.spawn('polybar-wireguard --toggle'),
desc="Manage VPN connections"),
# Key([mod], "x", lazy.spawn(home("~/scripts/kill-process.sh")), # Key([mod], "x", lazy.spawn(home("~/scripts/kill-process.sh")),
# desc="Kill processes using rofi"), # desc="Kill processes using rofi"),
@ -117,12 +126,23 @@ keys = [
Key([], "XF86MonBrightnessDown", Key([], "XF86MonBrightnessDown",
lazy.spawn("xbacklight -dec 5")), lazy.spawn("xbacklight -dec 5")),
# Key([], "XF86KbdBrightnessUp", Key([], "Print",
# lazy.spawn(home("~/scripts/keyboard_backlight.sh inc"))), lazy.spawn("flameshot gui")),
# Key([], "XF86KbdBrightnessDown",
# lazy.spawn(home("~/scripts/keyboard_backlight.sh dec"))), Key(["shift"], "Print",
lazy.spawn("flameshot full")),
Key(["control"], "Print",
lazy.spawn("flameshot full")),
Key([], 'F12', lazy.group['scratchpad'].dropdown_toggle('term')),
Key([], "XF86KbdBrightnessUp",
lazy.spawn("keyboard_backlight.sh inc")),
Key([], "XF86KbdBrightnessDown",
lazy.spawn("keyboard_backlight.sh dec")),
# Key([], "XF86TouchpadToggle", Key([], "XF86TouchpadToggle",
# lazy.spawn(home("~/scripts/toggle-touchpad.sh"))), lazy.spawn("toggle-touchpad.sh")),
] ]

View File

@ -7,9 +7,9 @@ from libqtile.config import Match
# "border_focus": "#5294e2", # "border_focus": "#5294e2",
# "border_normal": "#2c5380"} # "border_normal": "#2c5380"}
layouts = [ layouts = [
layout.MonadTall(margin=8, border_focus='#5294e2', # layout.MonadTall(margin=8, border_focus='#5294e2',
border_normal='#2c5380'), # border_normal='#2c5380'),
#layout.Columns(border_focus_stack='#d75f5f'), layout.Columns(margin=8, border_focus_stack='#d75f5f'),
layout.Max(), layout.Max(),
# Try more layouts by unleashing below layouts. # Try more layouts by unleashing below layouts.
# layout.Stack(num_stacks=2), # layout.Stack(num_stacks=2),
@ -31,6 +31,10 @@ floating_layout = layout.Floating(float_rules=[
Match(wm_class='makebranch'), # gitk Match(wm_class='makebranch'), # gitk
Match(wm_class='maketag'), # gitk Match(wm_class='maketag'), # gitk
Match(wm_class='ssh-askpass'), # ssh-askpass Match(wm_class='ssh-askpass'), # ssh-askpass
Match(wm_class='sxiv'),
Match(wm_class='telegram-desktop'),
Match(wm_class='streamlink-twitch-gui'),
Match(wm_class='pinentry-gtk-2'),
Match(title='branchdialog'), # gitk Match(title='branchdialog'), # gitk
Match(title='pinentry'), # GPG key password entry Match(title='pinentry'), # GPG key password entry
]) ])

View File

@ -1,5 +1,3 @@
from libqtile.config import Screen from libqtile.config import Screen
from .widgets import *
screens = [Screen()] screens = [Screen()]

View File

@ -1,57 +0,0 @@
from libqtile import widget
from libqtile import qtile
colors = [
["#282c34", "#282c34"], # panel background
["#3d3f4b", "#434758"], # background for current screen tab
["#ffffff", "#ffffff"], # font color for group names
["#ff5555", "#ff5555"], # border line color for current tab
["#74438f", "#74438f"], # border line color for 'other tabs' and color for 'odd widgets'
["#4f76c7", "#4f76c7"], # color for the 'even widgets'
["#e1acff", "#e1acff"], # window name
["#ecbbfb", "#ecbbfb"] # backbround for inactive screens
]
widget_defaults = dict(
font='Cantarell',
fontsize=12,
padding=3,
)
extension_defaults = widget_defaults.copy()
class MyVolume(widget.Volume):
def _configure(self, qtile, bar):
widget.Volume._configure(self, qtile, bar)
self.volume = self.get_volume()
if self.volume <= 0:
self.text = ''
elif self.volume <= 15:
self.text = ''
elif self.volume < 50:
self.text = ''
else:
self.text = ''
# drawing here crashes Wayland
def _update_drawer(self, wob=False):
if self.volume <= 0:
self.text = ''
elif self.volume <= 15:
self.text = ''
elif self.volume < 50:
self.text = ''
else:
self.text = ''
self.draw()
if wob:
with open(self.wob, 'a') as f:
f.write(str(self.volume) + "\n")
volume = MyVolume(
fontsize=18,
font='Font Awesome 5 Free',
foreground=colors[4],
background='#2f343f',
mouse_callbacks = {'Button1': lambda: qtile.cmd_spawn("pavucontrol")}
)

View File

@ -1,30 +0,0 @@
## Copyright (C) 2020-2021 Aditya Shakya <adi1090x@gmail.com>
## Everyone is permitted to copy and distribute copies of this file under GNU-GPL3
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[color]
BG = #1E2128
BGL = #2A2D34
BGA = #808080
FG = #D8D8D8
AC = #62AEEF
BLACK = #000000
WHITE = #FFFFFF
RED = #E06B74
GREEN = #98C379
YELLOW = #E5C07A
BLUE = #62AEEF
PURPLE = #C778DD
CYAN = #55B6C2
TEAL = #8BC5BF
AMBER = #D4B158
ORANGE = #D49474
BROWN = #AC8476
GRAY = #8C8C8C
BLUEGRAY = #6F8A91
PINK = #D46389
LIME = #D7DD91
INDIGO = #7985D0
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

View File

@ -1,318 +0,0 @@
## Copyright (C) 2020-2021 Aditya Shakya <adi1090x@gmail.com>
## Everyone is permitted to copy and distribute copies of this file under GNU-GPL3
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; Global WM Settings
[global/wm]
; Adjust the _NET_WM_STRUT_PARTIAL top value
; Used for top aligned bars
margin-bottom = 10
; Adjust the _NET_WM_STRUT_PARTIAL bottom value
; Used for bottom aligned bars
margin-top = 0
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; File Inclusion
; include an external file, like module file, etc.
include-file = ~/.config/qtile/polybar/system.ini
include-file = ~/.config/qtile/polybar/default/colors.ini
include-file = ~/.config/qtile/polybar/default/modules.ini
include-file = ~/.config/qtile/polybar/default/decor.ini
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; Bar Settings
[bar/main]
; Use either of the following command to list available outputs:
; If unspecified, the application will pick the first one it finds.
; $ polybar -m | cut -d ':' -f 1
; $ xrandr -q | grep " connected" | cut -d ' ' -f1
monitor =
; Use the specified monitor as a fallback if the main one is not found.
monitor-fallback =
; Require the monitor to be in connected state
; XRandR sometimes reports my monitor as being disconnected (when in use)
monitor-strict = false
; Tell the Window Manager not to configure the window.
; Use this to detach the bar if your WM is locking its size/position.
override-redirect = false
; Put the bar at the bottom of the screen
bottom = false
; Prefer fixed center position for the `modules-center` block
; When false, the center position will be based on the size of the other blocks.
fixed-center = true
; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%),
; the percentage can optionally be extended with a pixel offset like so:
; 50%:-10, this will result in a width or height of 50% minus 10 pixels
width = 100%
height = 26
; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
; the percentage can optionally be extended with a pixel offset like so:
; 50%:-10, this will result in an offset in the x or y direction
; of 50% minus 10 pixels
offset-x = 0%
offset-y = 0%
; Background ARGB color (e.g. #f00, #ff992a, #ddff1023)
background = ${color.BG}
; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023)
foreground = ${color.FG}
; Background gradient (vertical steps)
; background-[0-9]+ = #aarrggbb
;;background-0 =
; Value used for drawing rounded corners
; Note: This shouldn't be used together with border-size because the border
; doesn't get rounded
; Individual top/bottom values can be defined using:
; radius-{top,bottom}
radius-top = 0.0
radius-bottom = 0.0
; Under-/overline pixel size and argb color
; Individual values can be defined using:
; {overline,underline}-size
; {overline,underline}-color
line-size = 2
line-color = ${color.AC}
; Values applied to all borders
; Individual side values can be defined using:
; border-{left,top,right,bottom}-size
; border-{left,top,right,bottom}-color
; The top and bottom borders are added to the bar height, so the effective
; window height is:
; height + border-top-size + border-bottom-size
; Meanwhile the effective window width is defined entirely by the width key and
; the border is placed withing this area. So you effectively only have the
; following horizontal space on the bar:
; width - border-right-size - border-left-size
border-size = 6
border-color = ${color.BG}
; Number of spaces to add at the beginning/end of the bar
; Individual side values can be defined using:
; padding-{left,right}
padding = 0
; Number of spaces to add before/after each module
; Individual side values can be defined using:
; module-margin-{left,right}
module-margin-left = 0
module-margin-right = 0
; Fonts are defined using <font-name>;<vertical-offset>
; Font names are specified using a fontconfig pattern.
; font-0 = "JetBrains Mono:size=10;3"
; font-1 = MaterialIcons:size=10
; font-2 = Termsynu:size=8;-1
; font-3 = FontAwesome:size=10
; See the Fonts wiki page for more details
; text
font-0 = "JetBrains Mono:size=10;3"
; icons
font-1 = "Iosevka Nerd Font Mono:size=20;7"
; glyphs
font-2 = "Iosevka Nerd Font Mono:size=23;8"
; dot
font-3 = "Iosevka Nerd Font Mono:size=18;8"
; clock & mpd
font-4 = "Iosevka:style=bold:size=10;4"
; Modules are added to one of the available blocks
; modules-left = cpu ram
; modules-center = xwindow xbrightness
; modules-right = ipc clock
# Default
modules-left = LD menu RD dot-alt LD qtile RD dot cpu dot used-memory dot filesystem
modules-center = LD date RD dot-alt LD mpd RD sep song
;modules-center = LD date RD dot-alt LD
modules-right = volume dot backlight dot ethernet dot wlan dot LD battery RD dot-alt LD sysmenu RD
# Alternate
;modules-left = qtile 2LD cpu 3LD memory 4LD filesystem 5LD
;modules-center = mpd
;modules-right = 2RD volume 3RD brightness 4RD battery 5RD ethernet 6RD date sep
; The separator will be inserted between the output of each module
separator =
; This value is used to add extra spacing between elements
; @deprecated: This parameter will be removed in an upcoming version
spacing = 0
; Opacity value between 0.0 and 1.0 used on fade in/out
dim-value = 1.0
; Value to be used to set the WM_NAME atom
; If the value is empty or undefined, the atom value
; will be created from the following template: polybar-[BAR]_[MONITOR]
; NOTE: The placeholders are not available for custom values
wm-name =
; Locale used to localize various module data (e.g. date)
; Expects a valid libc locale, for example: sv_SE.UTF-8
locale =
; Position of the system tray window
; If empty or undefined, tray support will be disabled
; NOTE: A center aligned tray will cover center aligned modules
;
; Available positions:
; left
; center
; right
; none
tray-position = right
; If true, the bar will not shift its
; contents when the tray changes
tray-detached = false
; Tray icon max size
tray-maxsize = 16
; DEPRECATED! Since 3.3.0 the tray always uses pseudo-transparency
; Enable pseudo transparency
; Will automatically be enabled if a fully transparent
; background color is defined using `tray-background`
; tray-transparent = false
; Background color for the tray container
; ARGB color (e.g. #f00, #ff992a, #ddff1023)
; By default the tray container will use the bar
; background color.
tray-background = ${color.BG}
; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
tray-offset-x = 0
tray-offset-y = 0
; Pad the sides of each tray icon
tray-padding = 0
; Scale factor for tray clients
tray-scale = 1.0
; Restack the bar window and put it above the
; selected window manager's root
;
; Fixes the issue where the bar is being drawn
; on top of fullscreen window's
;
; Currently supported WM's:
; bspwm
; i3 (requires: `override-redirect = true`)
; wm-restack =
; Set a DPI values used when rendering text
; This only affects scalable fonts
; dpi =
; Enable support for inter-process messaging
; See the Messaging wiki page for more details.
enable-ipc = true
; Fallback click handlers that will be called if
; there's no matching module handler found.
click-left =
click-middle =
click-right =
scroll-up =
scroll-down =
double-click-left =
double-click-middle =
double-click-right =
; Requires polybar to be built with xcursor support (xcb-util-cursor)
; Possible values are:
; - default : The default pointer as before, can also be an empty string (default)
; - pointer : Typically in the form of a hand
; - ns-resize : Up and down arrows, can be used to indicate scrolling
cursor-click =
cursor-scroll =
;; WM Workspace Specific
; bspwm
;;scroll-up = bspwm-desknext
;;scroll-down = bspwm-deskprev
;;scroll-up = bspc desktop -f prev.local
;;scroll-down = bspc desktop -f next.local
;i3
;;scroll-up = i3wm-wsnext
;;scroll-down = i3wm-wsprev
;;scroll-up = i3-msg workspace next_on_output
;;scroll-down = i3-msg workspace prev_on_output
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; Application Settings
[settings]
; The throttle settings lets the eventloop swallow up til X events
; if they happen within Y millisecond after first event was received.
; This is done to prevent flood of update event.
;
; For example if 5 modules emit an update event at the same time, we really
; just care about the last one. But if we wait too long for events to swallow
; the bar would appear sluggish so we continue if timeout
; expires or limit is reached.
throttle-output = 5
throttle-output-for = 10
; Time in milliseconds that the input handler will wait between processing events
;throttle-input-for = 30
; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events
screenchange-reload = false
; Compositing operators
; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t
compositing-background = source
compositing-foreground = over
compositing-overline = over
compositing-underline = over
compositing-border = over
; Define fallback values used by all module formats
;format-foreground =
;format-background =
;format-underline =
;format-overline =
;format-spacing =
;format-padding =
;format-margin =
;format-offset =
; Enables pseudo-transparency for the bar
; If set to true the bar can be transparent without a compositor.
pseudo-transparency = false
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; __________ ______
;; / ____/ __ \/ ____/
;; / __/ / / / / /_
;; / /___/ /_/ / __/
;; /_____/\____/_/
;;
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

View File

@ -1,47 +0,0 @@
## Copyright (C) 2020-2021 Aditya Shakya <adi1090x@gmail.com>
## Everyone is permitted to copy and distribute copies of this file under GNU-GPL3
;; DECOR _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[module/sep]
type = custom/text
content = -
content-background = ${color.BG}
content-foreground = ${color.BG}
;; Dots
[module/dot]
type = custom/text
content =
content-foreground = ${color.BGL}
content-padding = 1
content-font = 4
[module/dot-alt]
inherit = module/dot
content-foreground = ${color.BLUEGRAY}
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[module/LD]
type = custom/text
content = "%{T3}%{T-}"
content-background = ${color.BG}
content-foreground = ${color.BGL}
[module/RD]
type = custom/text
content = "%{T3}%{T-}"
content-background = ${color.BG}
content-foreground = ${color.BGL}
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; __________ ______
;; / ____/ __ \/ ____/
;; / __/ / / / / /_
;; / /___/ /_/ / __/
;; /_____/\____/_/
;;
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

View File

@ -1,16 +0,0 @@
#!/usr/bin/env bash
## Copyright (C) 2020-2021 Aditya Shakya <adi1090x@gmail.com>
## Everyone is permitted to copy and distribute copies of this file under GNU-GPL3
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
# 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 the bar
polybar -q main -c "$DIR"/config.ini &

File diff suppressed because it is too large Load Diff

View File

@ -1,47 +0,0 @@
#!/usr/bin/env bash
## Copyright (C) 2020-2021 Aditya Shakya <adi1090x@gmail.com>
## Everyone is permitted to copy and distribute copies of this file under GNU-GPL3
## Files and Directories
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
SFILE="$DIR/system.ini"
RFILE="$DIR/.system"
## Get system variable values for various modules
get_values() {
CARD=$(light -L | grep 'backlight' | head -n1 | cut -d'/' -f3)
BATTERY=$(upower -i `upower -e | grep 'BAT'` | grep 'native-path' | cut -d':' -f2 | tr -d '[:blank:]')
ADAPTER=$(upower -i `upower -e | grep 'AC'` | grep 'native-path' | cut -d':' -f2 | tr -d '[:blank:]')
INTERFACE=$(ip link | awk '/state UP/ {print $2}' | tr -d :)
}
## Write values to `system.ini` file
set_values() {
if [[ "$ADAPTER" ]]; then
sed -i -e "s/adapter = .*/adapter = $ADAPTER/g" ${SFILE}
fi
if [[ "$BATTERY" ]]; then
sed -i -e "s/battery = .*/battery = $BATTERY/g" ${SFILE}
fi
if [[ "$CARD" ]]; then
sed -i -e "s/graphics_card = .*/graphics_card = $CARD/g" ${SFILE}
fi
if [[ "$INTERFACE" ]]; then
sed -i -e "s/network_interface = .*/network_interface = $INTERFACE/g" ${SFILE}
fi
}
## Launch Polybar with selected style
launch_bar() {
STYLE="default"
bash "$HOME"/.config/qtile/polybar/"$STYLE"/launch.sh
}
# Execute functions
if [[ ! -f "$RFILE" ]]; then
get_values
set_values
touch ${RFILE}
fi
launch_bar

View File

@ -1,28 +0,0 @@
## Copyright (C) 2020-2021 Aditya Shakya <adi1090x@gmail.com>
## Everyone is permitted to copy and distribute copies of this file under GNU-GPL3
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;;
;; System Variables (Edit according to your system)
;;
;; Warning : DO NOT DELETE THIS FILE
;;
;; Run `ls -1 /sys/class/power_supply/` to list list batteries and adapters.
;;
;; Run `ls -1 /sys/class/backlight/` to list available graphics cards.
;;
;; Run `ip link | awk '/state UP/ {print $2}' | tr -d :` to get active network interface.
;;
;; Polybar Variables For Modules :
;; card = ${system.graphics_card}
;; battery = BAT0
;; adapter = AC
;; interface = ${system.network_interface}
[system]
adapter = AC0
battery = BAT0
graphics_card = intel_backlight
wlan_interface = wlan0
ethernet_interface = enp3s0
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_