Tools: Latest: Quickshell: Build Your Own Desktop on Linux

Tools: Latest: Quickshell: Build Your Own Desktop on Linux

Example

Native integrations:

Installation Instead of relying on ready-made solutions (Waybar, Polybar, ...), you create your own. Quickshell is a modern toolkit built with C++ for creating desktop interface components — bars, widgets, lock screens, launchers, and even complete environments — using QtQuick + QML. It is a foundation for building a custom desktop, running alongside a compositor like Hyprland, Sway, or i3. In practice, it replaces several pieces: Simple example (bar): One of its strengths is that it comes already integrated with the system: This eliminates a lot of boilerplate. Or build from scratch on any system: For more information, visit the repository. Templates let you quickly answer FAQs or store snippets for re-use. Hide child comments as well For further actions, you may consider blocking this person and/or reporting abuse

Code Block

Copy

PanelWindow { anchors { top: true left: true right: true } implicitHeight: 30 Text { anchors.centerIn: parent text: "hello world" } } PanelWindow { anchors { top: true left: true right: true } implicitHeight: 30 Text { anchors.centerIn: parent text: "hello world" } } PanelWindow { anchors { top: true left: true right: true } implicitHeight: 30 Text { anchors.centerIn: parent text: "hello world" } } yay -S quickshell

Or

paru -S quickshell

Command

Copy

$ yay -S quickshell

Or

paru -S quickshell

Command

Copy

$ yay -S quickshell

Or

paru -S quickshell

Command

Copy

$ -weight: 600;">sudo -weight: 500;">apt -weight: 500;">install cmake ninja-build qt6-base-dev qt6-declarative-dev \ qt6-wayland wayland-protocols libpipewire-0.3-dev \ libdbus-1-dev libxkbcommon-dev -weight: 600;">sudo -weight: 500;">apt -weight: 500;">install cmake ninja-build qt6-base-dev qt6-declarative-dev \ qt6-wayland wayland-protocols libpipewire-0.3-dev \ libdbus-1-dev libxkbcommon-dev -weight: 600;">sudo -weight: 500;">apt -weight: 500;">install cmake ninja-build qt6-base-dev qt6-declarative-dev \ qt6-wayland wayland-protocols libpipewire-0.3-dev \ libdbus-1-dev libxkbcommon-dev -weight: 500;">git clone https://github.com/quickshell-mirror/quickshell.-weight: 500;">git cd quickshell -weight: 500;">git clone https://github.com/quickshell-mirror/quickshell.-weight: 500;">git cd quickshell -weight: 500;">git clone https://github.com/quickshell-mirror/quickshell.-weight: 500;">git cd quickshell cmake -B build -G Ninja cmake --build build cmake -B build -G Ninja cmake --build build cmake -B build -G Ninja cmake --build build -weight: 600;">sudo cmake ---weight: 500;">install build -weight: 600;">sudo cmake ---weight: 500;">install build -weight: 600;">sudo cmake ---weight: 500;">install build ~/.config/quickshell/main.qml ~/.config/quickshell/main.qml ~/.config/quickshell/main.qml import QtQuick import Quickshell PanelWindow { anchors.top: true anchors.left: true anchors.right: true implicitHeight: 30 Text { anchors.centerIn: parent text: "Quickshell is working" } } import QtQuick import Quickshell PanelWindow { anchors.top: true anchors.left: true anchors.right: true implicitHeight: 30 Text { anchors.centerIn: parent text: "Quickshell is working" } } import QtQuick import Quickshell PanelWindow { anchors.top: true anchors.left: true anchors.right: true implicitHeight: 30 Text { anchors.centerIn: parent text: "Quickshell is working" } } - It is not a "bar program". - It is also not a complete, ready-made desktop. - notifications - display manager - system controls - QtQuick (UI) - QML (configuration/programming) - Hot reload (save → instant -weight: 500;">update) ([Quickshell][2]) - Wayland + X11 (windowing) - Hyprland, i3, Sway (workspaces) - PipeWire (audio) - BlueZ (Bluetooth) - UPower (battery) - MPRIS (media players) - standard system tray - Arch Linux / EndeavourOS / Manjaro - Works best on Wayland (Hyprland, Sway, etc.) - May be limited on X11 - Still in development → bugs are normal - No config = blank screen