QARSlp Qtile + Arch Ricing Script

by: gibranlp thisdoesnotwork@gibranlp.dev

This is a custom theme for the Qtile window manager that dynamically adapts to the colors generated by pywal . With this theme, you can easily change the appearance of your Qtile environment to match any image or wallpaper using pywal’s color extraction and manipulation capabilities.

This config files provide a few minimal and clean look themes, with a focus on simplicity and usability.

It features a dark & light color schemes with contrasting colors for active and inactive windows, as well as customizable font sizes and styles.

If you want to know more you can check this project on Github

Features

Set Random Wallpaper Theme

To set a random wallpaper simply type Alt + R and theentire system will change with the wallpaper.

Random Wallpaper

Different Display Sizes

I use different computers with different monitor sizes, so i managed to make this theme to change to look good on every monitor i have, this theme differenciates between 4K (3840x2160), HD (1920x1080) and a lower resolution (1366 x 768) of a mini laptop.

  • 4K (3480 x 2160)
    • 4K
  • HD (1920 x 1080)
    • HD
  • Lower Resolution (1366 x 768)
    • 4K

Top Bar or Bottom Bar? no problem

With this rofi widget you can change your bar to the top or the bottom, with any theme.

  • Bar

Fonts

The entire system is configures to use the Fira Code Medium font, and Awesome Pro 6 for all the icons in the bar and in the Rofi Widgets.

If you want to change the fonts, make sure you have the fonts installed and then change the lines 29 and 30 in the file ~/.config/qtile/functions.py

## Fonts
main_font = "Fira Code Medium" # Font in use for the entire system
awesome_font = "Font Awesome 6 Pro" # Font for the icons

Groups Labels

There are Several labels for the groups already defined you can change them by uncommenting the line you want between the lines 476 - 482 in the file ~/.config/qtile/functions.py

#group_labels=["零","一","二","三","四","五","六","七","八","九"] # Kanji Numbers
#group_labels=["0","1","2","3","4","5","6","7","8","9"] # Numbers
#group_labels=["","","","","","","","","",""] # Circles
#group_labels=["","","","","","","","","",""] # Dot Circles
#group_labels=["󰏃","󰏃","󰏃","󰏃","󰏃","󰏃","󰏃","󰏃","󰏃","󰏃",] # Custom
  • Kanji Numbers

    • wifi
  • Numbers

    • wifi
  • Circles

    • wifi
  • Dot Circles

    • wifi
  • Custom

    • wifi

You can use any icon from here in case you want to make your own custom groups

Ethernet & Wifi

Icon

The network icon will change automatically depending if you are connectedo the Ethernet or Wifi, when connected to wifi the SSID will also be visible.

  • Wifi

    • wifi
  • Ethernet

    • Ethernet

Net & Wlan Qtile Widgets

In the QARSlp & Slash themes, you can click in the Network icon and the widget will display the current local IP and the Public IP.

  • Wifi

    • wifi
  • Ethernet

    • Ethernet

General Margins and Borders

If you want to change the margins for all themes just go into the lines 57-62 in the file ~/.config/qtile/functions.py

## Margins
layout_margin=10 # Layout margins
single_layout_margin=10 # Single window margin 
## Borders
layout_border_width=4 # Layout border width
single_border_width=4 # Single border width

Calendar Notifications

Using Dunst if you click on the clock you will get the current month in the calendar, if you move the mouse wheel on the clock you can change the month upp and down also.

Calendar Calendar1 Calendar2

Lightdm

This Qtile theme also changes Lightdm with the current wallpaper and color scheme.

Lightdm1 Lightdm2 Lightdm3

Themes

Theme Selector

Select the theme you want to use (QARSlp, Slash, Minimal, no_bar), so far, i have in mind a lot more themes.

Themes

QARSlp

QARSlp1 QARSlp2

Slash

Slash1 Slash2

Backends

You can select different backends trough a Rofi widget using the same wallpaper, the backends available are Wal, Colorz, Colorthief and Haishoku.

Backends

Wal

Wal1 Wal2

Colorz

Colorz1 Colorz2

Colorthief

Colorthief1 Colorthief2

Haishoku

Haishoku1 Haishoku2

Random Colors of the Theme

If you still need more colors all you have to do is to press Alt + Shift + R and this will randomize the current color scheme.

Rofi Utilities

I have added some Rofi utilities, to make life simpler, here they are:

Launcher

Launch any application or search for files and folders

Launcher

QARSlp Shortcuts

Check out all the shortcuts of the system

Shortcuts

Multi Monitor Management

Manage multi monitors fast and easy, select your main monitor and resolution, and then select where to put the sencodary monitor (left, right, up, down)

Multi Monitor

Color Picker

Select Hex or RGB and you can then click on the screen to get the color using Farge , you will get the color via notification using Dunst

Color Picker1 Color Picker1

Wifi Menu

Select and connect to Wifi using Rofi.

Wifi

Sesion Menu

Lock the PC, Sign out, Reboot or Poweroff.

Session

Screenshot Widget

Take Screenshots of the Screen, an Area, a Window, or the Screen in 5 seconds using Scrot and Flameshot

Screenshot

Night Light

Change the temperature of the monitor using Redshift

Night Light

Conclusion

With QARSlp you can have an always riced system, ready for productivity and fun, its compatible and the ricing also covers applications like VScode, Telegram, Chrome, Brave, all GTk and CLI apps. It also come with Pijulios Picom so you can have some animations when opening, moving and closing windows.

Installation

To install QARSlp you will need to install a few dependencies:

Pacman

feh base-devel alsa-utils pulseaudio-alsa pavucontrol openssh alacritty xcolor playerctl scrot rofi surfraw python-pip ranger lxappearance bmon acpilight lm_sensors nm-connection-editor arandr python-psutil python-xdg python-iwlib python-dateutil ueberzug xsettingsd zsh dunst tk lightdm-gtk-greeter-settings reflector rsync curl cmus bc neofetch cmus xorg-xkill xdg-user-dirs bluez bluez-tools blueman htop os-prober gnome-disk-utility networkmanager unzip xarchiver tlp gvfs barrier noto-fonts noto-fonts-cjk libayatana-appindicator tlp powertop tumbler redshift libmicrodns protobuf xorg-xdpyinfo

AUR

QARSlp works with the Qtile-git and qtile-extras-git versions among other packages

qtile-git farge qtile-extras-git wpgtk-git cava thunar-extended thunar-volman hugo nbfc ntfs-3g i3lock-fancy picom-pijulius-git

Pip

You also need to install these pip packages

requests fontawesome ipc colorz colorthief haishoku dbus-next git+http://github.com/bcbnz/python-rofi.git

If you want to use ZSH run this commands to install Oh-My-Zsh

h -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
git clone https://github.com/zsh-users/zsh-autosuggestions.git ~/.oh-my-zsh/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/plugins/zsh-syntax-highlighting

Once all the dependencies are installed, you must generate the templates for GTK by runing:

wpg-install.sh -gio

Then run the copy_files.sh script to generate all the folders and copy all the necesary files.

Finally in a terminal run:

genwal

This will generate the first palette of colors and set the wallpaper, the path of the wallpaper is ~/Pictures/Wallpapers, just put all your wallpapers inside and enjoy.

Next Steps

  • I will be working in the light themes which now look bad in general.
  • Generate an AUR Installation package
  • Add more themes (if you have suggestions add them in issues)
  • Create a Taskwarrior interface with Rofi

If you like it please help me support this project, some coffee would help me to improve it and dedicate more time. thanks.