GitPedia

Qylock

A cozy collection of sddm-themes & quickshell lockscreen setups.

From Darkkal44·Updated June 28, 2026·View on GitHub·

ꜱᴅᴅᴍ • ǫᴜɪᴄᴋsʜᴇʟʟ • ɴɪxᴏs • ꜰᴀǫ • ɢᴀʟʟᴇʀʏ • ᴀᴄᴋɴᴏᴡʟᴇᴅɢᴇᴍᴇɴᴛꜱ • ᴄʀᴇᴅɪᴛꜱ The project is written primarily in QML, distributed under the GNU General Public License v3.0 license, first published in 2026. It has gained significant community traction with 2,141 stars and 82 forks on GitHub. Key topics include: dotfiles, greeter-theme, linux, linux-theme, lockscreen.

<p align="center"> <img src="./Assets/title.png" alt="qylock" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.5);"/> </p> <p align="center"> <a href="#sddm-setup"><img src="https://img.shields.io/badge/SDDM-black?style=for-the-badge&color=7aa2f7&labelColor=1a1b26&logo=linux&logoColor=white"/></a>&nbsp;<a href="#quickshell-setup"><img src="https://img.shields.io/badge/QUICKSHELL-black?style=for-the-badge&color=bb9af7&labelColor=1a1b26&logo=qt&logoColor=white"/></a>&nbsp;<a href="https://github.com/Darkkal44/qylock/stargazers"><img src="https://img.shields.io/github/stars/Darkkal44/qylock?style=for-the-badge&color=9ece6a&labelColor=1a1b26&logo=github&logoColor=white"/></a>&nbsp;<a href="https://github.com/Darkkal44/qylock"><img src="https://img.shields.io/github/repo-size/Darkkal44/qylock?style=for-the-badge&color=e0af68&labelColor=1a1b26&logo=git&logoColor=white"/></a> </p> <div align="center"> <pre> <a href="#sddm-setup">ꜱᴅᴅᴍ</a> • <a href="#quickshell-setup">ǫᴜɪᴄᴋsʜᴇʟʟ</a> • <a href="#nixos-setup">ɴɪxᴏs</a> • <a href="#faq">ꜰᴀǫ</a> • <a href="#gallery">ɢᴀʟʟᴇʀʏ</a> • <a href="#acknowledgements">ᴀᴄᴋɴᴏᴡʟᴇᴅɢᴇᴍᴇɴᴛꜱ</a> • <a href="#credits">ᴄʀᴇᴅɪᴛꜱ</a> </pre> </div> <br> <p align="center"> <img src="https://img.shields.io/badge/-HELLO%20THERE!!-e0af68?style=for-the-badge&labelColor=1a1b26&logo=coffeescript&logoColor=white" height="60" /> </p> <p>Welcome to <b>Qylock</b>! Pretty much a bunch of lockscreen themes I've put together for SDDM and Quickshell. Enjoyyyyyyy!!!! </p> <p><i>Hope ya find something that fits your setup~</i></p> <br>

[!IMPORTANT]
Have a problem? Please check the FAQ before opening a new issue. Most common setup errors are already documented there!

<br> <br> <p align="center">━━━━━━━ ❖ ━━━━━━━</p>

<a id="sddm-setup"></a>
<br>

<p align="center"> <img src="https://img.shields.io/badge/-SDDM%20SETUP-7aa2f7?style=for-the-badge&labelColor=1a1b26&logo=linux&logoColor=white" height="60" /> </p> <br>

Start by installing these dependencies using the package manager of your distro. (Note: Names might vary depending on your distribution.)

📦 DEPENDENCIES

Packages
Coresddm qt6-declarative qt6-5compat qt6-svg
Videoqt6-multimedia qt6-multimedia-ffmpeg
GStreamergst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly
Optionalfzf
<details> <summary><b>View Font Requirements</b></summary> <br>

Some themes rely on fonts that cannot be bundled here (copyright issues). Download the font and drop it into themes/<theme_name>/font/ — it loads automatically.

ThemeFontFilename
NieR: AutomataFOT-Rodin Pro DBFOT-Rodin Pro DB.otf
TerrariaAndy BoldAndy Bold.ttf
Genshin ImpactHYWenHei-85Wzhcn.ttf
SwordThe Last ShurikenThe Last Shuriken.ttf
MinecraftMinecraft Regularminecraft.ttf
Honkai: Star RailDIN Nextfont.ttf
osu!Torus RegularTorus Regular.otf
</details> <br>

🚀 INSTALLATION

[!NOTE]
These themes are made and tested only on arch linux, but the script will work in most of the distro's out there, so all you gotta do is get the dependencies right as its different for all the distros.

sh
chmod +x sddm.sh && ./sddm.sh
<br> <p align="center">━━━━━━━ ❖ ━━━━━━━</p>

<a id="quickshell-setup"></a>
<br>

<p align="center"> <img src="https://img.shields.io/badge/-QUICKSHELL%20SETUP-bb9af7?style=for-the-badge&labelColor=1a1b26&logo=qt&logoColor=white" height="60" /> </p> <br>

Start by installing these dependencies using the package manager of your distro. (Note: Names might vary depending on your distribution.)

📦 DEPENDENCIES

Packages
Corequickshell qt6-declarative qt6-5compat
Videoqt6-multimedia qt6-multimedia-ffmpeg
GStreamergst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly
Optionalfzf
<br>

🚀 INSTALLATION

sh
chmod +x quickshell.sh && ./quickshell.sh
<br>

⌨️ SHORTCUT BINDING

Point your Window Manager keybind (e.g., in Hyprland, Qtile, Sway, or i3) directly to:

sh
~/.local/share/quickshell-lockscreen/lock.sh
<br> <p align="center">━━━━━━━ ❖ ━━━━━━━</p>

<a id="nixos-setup"></a>
<br>

<p align="center"> <img src="https://img.shields.io/badge/-NIXOS%20SETUP-5277c3?style=for-the-badge&labelColor=1a1b26&logo=nixos&logoColor=white" height="60" /> </p> <br>

A flake is provided for NixOS users — no sddm.sh / quickshell.sh needed. Themes live in the Nix store and the active theme is chosen declaratively.

🚀 USAGE

Add the input and import the module in your flake.nix:

nix
{ inputs.qylock.url = "github:Darkkal44/qylock"; outputs = { self, nixpkgs, qylock, ... }: { nixosConfigurations.my-host = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ qylock.nixosModules.default ({ pkgs, ... }: { services.displayManager.sddm.enable = true; services.displayManager.sddm.wayland.enable = true; programs.qylock = { enable = true; theme = "nier-automata"; # any directory name under themes/ # sddm.enable = true; # installs theme + sets it active (default) # quickshell.enable = true; # adds `qylock-lock` to PATH (default) # Optional per-theme tweaks (replaces the interactive prompts): themeOptions = { terraria.backgroundMode = "time"; # time | random | static Genshin.backgroundMode = "time"; clockwork.orbital = { themeMode = "dark"; enableWindup = true; }; osu.gameMode = "menu"; # menu | game }; }; }) ]; }; }; }

For the Quickshell lockscreen, bind your WM keybind to qylock-lock (instead of ~/.local/share/quickshell-lockscreen/lock.sh). Pass a theme name as $1 to override on the fly: qylock-lock clockwork/tape.

📦 OUTPUTS

OutputPurpose
packages.<sys>.qylock-sddm-themesSDDM themes under share/sddm/themes/
packages.<sys>.qylock-quickshellqylock-lock wrapper with Qt6 QML deps wired in
devShells.<sys>.defaultquickshell, qt6, gstreamer, fzf — to run the bash scripts locally
nixosModules.defaultprograms.qylock.* options shown above

[!NOTE]
The flake pins nixos-unstable because quickshell isn't in stable nixpkgs yet. If your system tracks a stable channel, override the flake's nixpkgs input to your unstable channel.

<br> <p align="center">━━━━━━━ ◈ ━━━━━━━</p>

<a id="faq"></a>
<br>

<p align="center"> <img src="https://img.shields.io/badge/-FAQ-7aa2f7?style=for-the-badge&labelColor=1a1b26&logo=helpdesk&logoColor=white" height="60" /> </p> <br>

[!TIP]
Can't find your issue here? Feel free to open a discussion or an issue, but please double-check the sections below first!

<br>

⌨️ Virtual Keyboard popping up?

If the virtual keyboard keeps opening on its own at startup, you can disable it in your SDDM config:

  1. Open /etc/sddm.conf.d/virtualkeyboard.conf as root.
  2. Under the [General] section, set InputMethod to empty:
ini
[General] InputMethod=
<br>

📺 Low quality background video?

To keep the download size small, some videos are compressed. For the full 4K/HD version:

  1. Get the original video from the links in the Acknowledgements section.
  2. Rename it to bg.mp4.
  3. Replace the bg.mp4 inside your current theme's folder.
<br>

🛠️ Themes not loading (library import version error)?

[!NOTE]
This error typically occurs because many stable distributions (like Debian or older Fedora versions) still use the Qt5-based version of SDDM. Since these themes are written in native Qt6 for modern systems, they require a specific transpilation step to work on legacy backends.

If you encounter library errors at the login screen:

  1. Re-run the installation script: ./sddm.sh.
  2. When prompted, select the Qt5 (Legacy) option.
  3. The script will automatically convert the themes and install the compatible versions for you.
Required Packages (Qt5 Legacy Mode)
Coresddm qt5-declarative qt5-graphicaleffects qt5-quickcontrols2
Videoqt5-multimedia gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly
Toolsperl
<br>

❄️ Quickshell not working on KDE Plasma?

[!NOTE]
This is a known limitation of KWin. You can still use the SDDM portion of the themes for your login screen, but the Quickshell lockscreen itself is a no-go on Plasma because it lacks support for the ext-session-lock-v1 protocol.

<br> <p align="center">━━━━━━━ ❖ ━━━━━━━</p>

<a id="gallery"></a>
<br>

<p align="center"> <img src="https://img.shields.io/badge/-GALLERY-9ece6a?style=for-the-badge&labelColor=1a1b26&logo=unsplash&logoColor=white" height="60" /> </p> <br> <div align="center"> <table style="border-collapse: collapse; border: none;"> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Coffee</b><br><br> <img src="./Assets/pixel_coffee.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Dusk City</b><br><br> <img src="./Assets/pixel_dusk_city.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Hollow Knight</b><br><br> <img src="./Assets/pixel_hollowknight.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Munchlax</b><br><br> <img src="./Assets/pixel_munchlax.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Night City</b><br><br> <img src="./Assets/pixel_night_city.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Rainy Room</b><br><br> <img src="./Assets/pixel_rainyroom.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Skyscrapers</b><br><br> <img src="./Assets/pixel_skyscrapers.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Cyberpunk</b><br><br> <img src="./Assets/pixel-cyberpunk.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Emerald</b><br><br> <img src="./Assets/pixel-emerald.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Sakura</b><br><br> <img src="./Assets/pixel-sakura.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Pixel · Waterfall</b><br><br> <img src="./Assets/pixel-waterfall.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Enfield</b><br><br> <img src="./Assets/enfield.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Sword</b><br><br> <img src="./Assets/sword.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Forest</b><br><br> <img src="./Assets/forest.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Winter</b><br><br> <img src="./Assets/winter.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Dog Samurai</b><br><br> <img src="./Assets/dog_samurai.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>The Last of Us</b><br><br> <img src="./Assets/the_last_of_us.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Field</b><br><br> <img src="./Assets/field.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Girl · Coffee</b><br><br> <img src="./Assets/girl_coffee.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Girl · Pillow</b><br><br> <img src="./Assets/girl_pillow.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Man · Bicycle</b><br><br> <img src="./Assets/man_bicycle.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Women · Umbrella</b><br><br> <img src="./Assets/women_umbrella.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Nothing</b><br><br> <img src="./Assets/nothing.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Material You</b><br><br> <img src="./Assets/material-you.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Honkai: Star Rail</b><br><br> <img src="./Assets/star_rail.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Genshin Impact</b><br><br> <img src="./Assets/genshin.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Wuthering Waves</b><br><br> <img src="./Assets/wuwa.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>osu!</b><br><br> <img src="./Assets/osu.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>osu! mania</b><br><br> <img src="./Assets/osumania.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Minecraft</b><br><br> <img src="./Assets/minecraft.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>NieR: Automata</b><br><br> <img src="./Assets/nier_automata.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Reverse: 1999 - I</b><br><br> <img src="./Assets/R1999_1.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Reverse: 1999 - II</b><br><br> <img src="./Assets/R1999_2.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Clockwork</b><br><br> <img src="./Assets/clockwork.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Terraria</b><br><br> <img src="./Assets/terraria.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Ninja Gaiden</b><br><br> <img src="./Assets/ninja_gaiden.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> </tr> <tr> <td align="center" width="50%" style="padding: 15px; border: none;"> <b>Windows 7</b><br><br> <img src="./Assets/win7.gif" width="100%" style="border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.3);"/> </td> <td align="center" width="50%" style="padding: 15px; border: none;"> </td> </tr> </table> </div> <br> <p align="center">━━━━━━━ ❖ ━━━━━━━</p>

<a id="acknowledgements"></a>
<br>

<p align="center"> <img src="https://img.shields.io/badge/-ACKNOWLEDGEMENTS-bb9af7?style=for-the-badge&labelColor=1a1b26&logo=google-photos&logoColor=white" height="60" /> </p> <br>

Huge thanks to all the amazing artists for these wallpapers and fonts! Here's where everything comes from:

ThemeWallpaperFontThemeWallpaperFont
Pixel · CoffeeMoeWallsPixelify SansPixel · MunchlaxMoeWallsPixelify Sans
Pixel · Dusk CityWallsFlowPixelify SansPixel · Night CityWallsFlowPixelify Sans
Pixel · Hollow KnightMoeWallsPixelify SansPixel · Rainy RoomMoeWallsPixelify Sans
Pixel · SkyscrapersWallsFlowPixelify SansPixel · Cyberpunk-Pixelify Sans
Pixel · Emerald-Pixelify SansPixel · Sakura-Pixelify Sans
Pixel · Waterfall-Pixelify SansEnfieldWallsFlowOrbitron
SwordWallsFlowThe Last ShurikenThe Last of UsMoeWallsOutfit
FieldMoeWalls-Girl · CoffeeMoeWalls-
Girl · PillowMoeWallsItimMan · BicycleMoeWallsItim
Women · UmbrellaMoeWallsItimForestMoeWallsFigtree
WinterMoeWallsOrbitronDog SamuraiMoeWallsOrbitron
Honkai: Star RailYouTubeDIN NextGenshin ImpactYouTubeHYWenHei
Wuthering WavesYouTubeOrbitronosu!OfficialTorus Regular
osu! maniaOfficialTorus RegularMinecraftMinecraft WikiMinecraft
NieR: AutomataRedditFOT-Rodin Pro DBReverse: 1999TaptapOutfit
ClockworkWallsFlowOrbitronTerrariaTerraria ForumsAndy Bold
Ninja GaidenNoisy PixelTekturWindows 7WallpaperAccessSegoe UI
<br> <p align="center">━━━━━━━ ❖ ━━━━━━━</p>

<a id="credits"></a>
<br>

<p align="center"> <img src="https://img.shields.io/badge/-CREDITS-f7768e?style=for-the-badge&labelColor=1a1b26&logo=kofi&logoColor=white" height="60" /> </p> <div align="center">

💖 SUPPORTERS

MaxAwkwardChương KínhMerhawiGhebrekalSilenettwawzifranchecolMerhawiGhebrekalTrench Martyr

<br>

🛠️ SPECIAL THANKS

Pumphium, kaizky, DragonChicken

</div> <br> <p align="center">━━━━━━━ ༓ ━━━━━━━</p> <div align="center"> <p><i>Make your login your own.</i></p> <a href="https://ko-fi.com/darkkal"> <img src="https://ko-fi.com/img/githubbutton_sm.svg" alt="Support me on Ko-fi"> </a> </div>

Contributors

Showing top 3 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from Darkkal44/qylock via the GitHub API.Last fetched: 6/28/2026