# Justine Smithies # https://github.com/justinesmithies/qtile-wayland-dotfiles # Widgets setup # Get the icons at https://www.nerdfonts.com/cheat-sheet import os import subprocess from libqtile import qtile from libqtile import widget from colors import colors from ordinaldate import custom_date from keys import terminal widget_defaults = dict( font='GoMono Nerd Font', fontsize='12', padding=2, foreground=colors['light0'] ) extension_defaults = widget_defaults.copy() primary_widgets = [ widget.Spacer(length=10), widget.GroupBox( padding=0, active=colors['light0'], borderwidth=3, inactive=colors['light4'], this_current_screen_border=colors['neutral_green'], this_screen_border=colors['neutral_green'], other_screen_border='#00000000', other_current_screen_border='#00000000', font='GoMono Nerd Font', fontsize=12, highlight_method='line', highlight_color=['00000000', '00000000'] ), widget.CurrentLayoutIcon(scale=0.5, **widget_defaults), widget.CurrentLayout(**widget_defaults), widget.Spacer(), widget.GenPollText( func=custom_date, update_interval=1, **widget_defaults, mouse_callbacks={ 'Button1': lambda: qtile.cmd_spawn(os.path.expanduser("~/.config/qtile/statusbar/calendar.sh show"), shell=True), 'Button3': lambda: qtile.cmd_spawn(os.path.expanduser("~/.config/qtile/statusbar/calendar.sh edit"), shell=True) } ), widget.Spacer(), widget.CheckUpdates( **widget_defaults, update_interval=600, distro='Arch_paru', custom_command='~/.config/qtile/statusbar/void-updates.sh', display_format=' {updates}', colour_have_updates=colors['neutral_green'], execute='foot bash -c "sudo xbps-install -Suv"' ), widget.Spacer(length=5), widget.GenPollText(update_interval=1, **widget_defaults, func=lambda: subprocess.check_output(os.path.expanduser("~/.config/qtile/statusbar/idleinhibit")).decode(), mouse_callbacks={'Button1': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/idleinhibit toggle"), shell=True)}), widget.Spacer(length=5), widget.KeyboardLayout(configured_keyboards=['us', 'gb']), widget.Spacer(length=5), widget.GenPollText(update_interval=1, **widget_defaults, func=lambda: subprocess.check_output(os.path.expanduser("~/.config/qtile/statusbar/brightnesscontrol")).decode(), mouse_callbacks={'Button1': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/brightnesscontrol down"), shell=True), 'Button3': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/brightnesscontrol up"), shell=True)}), widget.Spacer(length=5), widget.GenPollText(update_interval=1, **widget_defaults, func=lambda: subprocess.check_output(os.path.expanduser("~/.config/qtile/statusbar/volumecontrol")).decode(), mouse_callbacks={'Button1': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/volumecontrol down"), shell=True), 'Button2': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/volumecontrol mute"), shell=True), 'Button3': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/volumecontrol up"), shell=True)}), widget.Spacer(length=5), widget.GenPollText(update_interval=1, **widget_defaults, func=lambda: subprocess.check_output(os.path.expanduser("~/.config/qtile/statusbar/battery.py")).decode(), mouse_callbacks={'Button1': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/battery.py --c left-click"), shell=True)}), widget.Spacer(length=5), widget.GenPollText(update_interval=1, **widget_defaults, func=lambda: subprocess.check_output(os.path.expanduser("~/.config/qtile/statusbar/network.sh")).decode(), mouse_callbacks={'Button1': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/network.sh ShowInfo"), shell=True), 'Button3': lambda: qtile.spawn(terminal + ' -e nmtui', shell=True)}), widget.Spacer(length=10), ] secondary_widgets = [ widget.Spacer(length=10), widget.GroupBox( padding=0, active=colors['light0'], borderwidth=3, inactive=colors['light4'], this_current_screen_border=colors['neutral_green'], this_screen_border=colors['neutral_green'], other_screen_border='#00000000', other_current_screen_border='#00000000', font='GoMono Nerd Font', fontsize=12, highlight_method='line', highlight_color=['00000000', '00000000'] ), widget.CurrentLayoutIcon(scale=0.6, **widget_defaults), widget.CurrentLayout(**widget_defaults), widget.Spacer(length=440), widget.GenPollText( func=custom_date, update_interval=1, **widget_defaults, mouse_callbacks={ 'Button1': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/calendar.sh show"), shell=True), 'Button3': lambda: qtile.spawn(os.path.expanduser("~/.config/qtile/statusbar/calendar.sh edit"), shell=True) } ), widget.Spacer(), ]