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
cursor_warp = False
auto_fullscreen = True
focus_on_window_activation = "smart"
wmname = "Qtile"
focus_on_window_activation = "urgent"
wmname = "LG3D"
widget_defaults = dict(
font='Cascadia Code',
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 .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):
keys.extend([
Key([mod], j, lazy.group[i.name].toscreen(),
desc="Switch to group {}".format(i.name)),
Key([mod, "shift"], j, lazy.window.togroup(i.name),
desc="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)),
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
from libqtile import hook
from libqtile.command.client import InteractiveCommandClient
@hook.subscribe.startup
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,127 +2,147 @@ import os
from libqtile.config import Key, KeyChord
from libqtile.lazy import lazy
from libqtile.utils import guess_terminal
mod = "mod1"
terminal = guess_terminal()
mod = "mod4"
terminal = "st"
# terminal = "xfce4-terminal"
home = os.path.expanduser
keys = [
Key([mod], "h", lazy.layout.left(), desc="Move focus to left"),
Key([mod], "l", lazy.layout.right(), desc="Move focus to right"),
Key([mod], "j", lazy.layout.down(), desc="Move focus down"),
Key([mod], "k", lazy.layout.up(), desc="Move focus up"),
# '`': 'grave',
# '-': 'minus',
# '=': 'equal',
# '[': 'bracketleft',
# ']': 'bracketright',
# '\\': 'backslash',
# ';': 'semicolon',
# '\'': 'quote',
# ',': 'comma',
# '.': 'dot',
Key([mod], "h", lazy.layout.left(), desc="Move focus to left"),
Key([mod], "l", lazy.layout.right(), desc="Move focus to right"),
Key([mod], "j", lazy.layout.down(), desc="Move focus down"),
Key([mod], "k", lazy.layout.up(), desc="Move focus up"),
Key([mod], "Tab", lazy.screen.toggle_group(),
desc="Toggle back and forth between latest groups"),
Key([mod], "d", lazy.spawn("rofi -show combi"), desc="spawn rofi"),
Key([mod], "Tab", lazy.screen.toggle_group(),
desc="Toggle back and forth between latest groups"),
Key([mod], "d", lazy.spawn("rofi -show combi"), desc="spawn rofi"),
# Move windows between left/right columns or move up/down in current stack.
# Moving out of range in Columns layout will create new column.
Key([mod, "shift"],
"h",
lazy.layout.shuffle_left(),
desc="Move window to the left"),
Key([mod, "shift"],
"l",
lazy.layout.shuffle_right(),
desc="Move window to the right"),
Key([mod, "shift"],
"j",
lazy.layout.shuffle_down(),
desc="Move window down"),
Key([mod, "shift"], "k", lazy.layout.shuffle_up(), desc="Move window up"),
# Move windows between left/right columns or move up/down in current
# stack. Moving out of range in Columns layout will create new column.
Key([mod, "shift"], "h",
lazy.layout.shuffle_left(), desc="Move window to the left"),
Key([mod, "shift"], "l",
lazy.layout.shuffle_right(), desc="Move window to the right"),
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
# will be to screen edge - window would shrink.
Key([mod, "control"],
"h",
lazy.layout.grow_left(),
desc="Grow window to the left"),
Key([mod, "control"],
"l",
lazy.layout.grow_right(),
desc="Grow window to the right"),
Key([mod, "control"],
"j",
lazy.layout.grow_down(),
desc="Grow window down"),
Key([mod, "control"], "k", lazy.layout.grow_up(), desc="Grow window up"),
KeyChord([mod], "w", [
Key([], "g", lazy.layout.grow()),
Key([], "s", lazy.layout.shrink()),
Key([], "n", lazy.layout.normalize(), desc="Reset all window sizes"),
Key([], "m", lazy.layout.maximize())],
mode="Windows"
),
Key([mod], "f", lazy.window.toggle_fullscreen(), desc='Toggle fullscreen'),
Key([mod, "shift"], "f", lazy.window.toggle_floating(),
desc='Toggle floating'),
# Grow windows. If current window is on the edge of screen and direction
# will be to screen edge - window would shrink.
Key([mod, "control"], "h",
lazy.layout.grow_left(), desc="Grow window to the left"),
Key([mod, "control"], "l",
lazy.layout.grow_right(), desc="Grow window to the right"),
Key([mod, "control"], "j",
lazy.layout.grow_down(), desc="Grow window down"),
Key([mod, "control"], "k",
lazy.layout.grow_up(), desc="Grow window up"),
# KeyChord([mod], "w", [
# Key([], "g", lazy.layout.grow()),
# Key([], "s", lazy.layout.shrink()),
# Key([], "n", lazy.layout.normalize(), desc="Reset all window sizes"),
# Key([], "m", lazy.layout.maximize())],
# mode="Windows"
# ),
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.
# Split = all windows displayed
# Unsplit = 1 window displayed, like Max layout, but still with
# multiple stack panes
Key([mod, "shift"],
"Return",
lazy.layout.toggle_split(),
desc="Toggle between split and unsplit sides of stack"),
Key([mod], "Return", lazy.spawn(terminal), desc="Launch terminal"),
# Toggle between split and unsplit sides of stack.
# Split = all windows displayed
# Unsplit = 1 window displayed, like Max layout, but still with
# multiple stack panes
Key([mod, "shift"], "Return",
lazy.layout.toggle_split(),
desc="Toggle between split and unsplit sides of stack"),
Key([mod], "Return", lazy.spawn(terminal), desc="Launch terminal"),
# Toggle between different layouts as defined below
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], "e", lazy.screen.prev_group(), desc="Move to the group on the left"),
Key([mod], "u", 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"], "space", lazy.layout.flip()),
Key([mod, "control"], "r", lazy.restart(), desc="Restart Qtile"),
Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown Qtile"),
Key([mod, "shift"],
"d",
lazy.spawncmd(),
desc="Spawn a command using a prompt widget"),
Key([mod], "s", lazy.spawn("passmenu"), desc="Spawn passmenu"),
# Toggle between different layouts as defined below
Key([mod], "space", lazy.next_layout(), desc="Toggle between layouts"),
Key([mod, 'shift'], "space",
lazy.spawn("chlayout"), desc="Next keyboard layout."),
Key([mod], "comma",
lazy.screen.prev_group(), desc="Move to the group on the 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"], "space", lazy.layout.flip()),
Key([mod, "control"], "r", lazy.restart(), desc="Restart Qtile"),
Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown Qtile"),
Key([mod, "control"], "n",
lazy.spawn("lock-screen"), desc="Lock screen"),
Key([mod, "control"], "s",
lazy.spawn("toggle-screenkey"), desc="Show keys on screen"),
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], "i", lazy.spawn("sxiv " + home("~/Pictures/keyboard-layout.jpg")), desc="Show current keyboard layout"),
# 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], "b", lazy.spawn(home("~/Desktop/GitRepositories/rofi-bluetooth/rofi-bluetooth")),
# desc="Control bluetooth devices"),
Key([mod], "b", lazy.spawn('rofi-bluetooth'),
desc="Manage bluetooth devices"),
# Key([mod], "x", lazy.spawn(home("~/scripts/kill-process.sh")),
# desc="Kill processes using rofi"),
Key([mod], "v", lazy.spawn('polybar-wireguard --toggle'),
desc="Manage VPN connections"),
# == audio
# Key([mod], "x", lazy.spawn(home("~/scripts/kill-process.sh")),
# desc="Kill processes using rofi"),
Key([], "XF86AudioRaiseVolume",
lazy.spawn("pactl set-sink-volume @DEFAULT_SINK@ +5%")),
Key([], "XF86AudioLowerVolume",
lazy.spawn("pactl set-sink-volume @DEFAULT_SINK@ -5%")),
Key([], "XF86AudioMute",
lazy.spawn("pactl set-sink-mute @DEFAULT_SINK@ toggle")),
Key([], "XF86AudioMicMute",
lazy.spawn("pactl set-source-mute @DEFAULT_SOURCE@ toggle")),
# == audio
Key([], "XF86AudioRaiseVolume",
lazy.spawn("pactl set-sink-volume @DEFAULT_SINK@ +5%")),
Key([], "XF86AudioLowerVolume",
lazy.spawn("pactl set-sink-volume @DEFAULT_SINK@ -5%")),
Key([], "XF86AudioMute",
lazy.spawn("pactl set-sink-mute @DEFAULT_SINK@ toggle")),
Key([], "XF86AudioMicMute",
lazy.spawn("pactl set-source-mute @DEFAULT_SOURCE@ toggle")),
# == backlight
Key([], "XF86MonBrightnessUp",
lazy.spawn("xbacklight -inc 5")),
Key([], "XF86MonBrightnessDown",
lazy.spawn("xbacklight -dec 5")),
# == backlight
Key([], "XF86MonBrightnessUp",
lazy.spawn("xbacklight -inc 5")),
Key([], "XF86MonBrightnessDown",
lazy.spawn("xbacklight -dec 5")),
# Key([], "XF86KbdBrightnessUp",
# lazy.spawn(home("~/scripts/keyboard_backlight.sh inc"))),
# Key([], "XF86KbdBrightnessDown",
# lazy.spawn(home("~/scripts/keyboard_backlight.sh dec"))),
Key([], "Print",
lazy.spawn("flameshot gui")),
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",
# lazy.spawn(home("~/scripts/toggle-touchpad.sh"))),
Key([], "XF86TouchpadToggle",
lazy.spawn("toggle-touchpad.sh")),
]

View File

@ -7,9 +7,9 @@ from libqtile.config import Match
# "border_focus": "#5294e2",
# "border_normal": "#2c5380"}
layouts = [
layout.MonadTall(margin=8, border_focus='#5294e2',
border_normal='#2c5380'),
#layout.Columns(border_focus_stack='#d75f5f'),
# layout.MonadTall(margin=8, border_focus='#5294e2',
# border_normal='#2c5380'),
layout.Columns(margin=8, border_focus_stack='#d75f5f'),
layout.Max(),
# Try more layouts by unleashing below layouts.
# layout.Stack(num_stacks=2),
@ -31,6 +31,10 @@ floating_layout = layout.Floating(float_rules=[
Match(wm_class='makebranch'), # gitk
Match(wm_class='maketag'), # gitk
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='pinentry'), # GPG key password entry
])

View File

@ -1,5 +1,3 @@
from libqtile.config import Screen
from .widgets import *
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
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_