Veila is built for wlroots-style compositors like labwc, Niri, Hyprland, Sway, MangoWC and others that support the Wayland ext-session-lock-v1 protocol. Its main goal is to provide a secure, fast and elegant lock screen without relying on heavyweight UI stacks.
Arch Linux | NixOS | Ubuntu | Fedora
- Fast and secure locking with a clean polished UI
- Multi-monitor support
- Simple setup with
config.toml - Built-in themes plus support custom themes
- Flexible styling for the clock, password field, colors, fonts and more
- Widgets: weather, battery, now playing, keyboard layout, Caps Lock, avatar and username
- Color-only backgrounds, wallpaper backgrounds and per-monitor background overrides
- Preview mode, generate lockscreen to a PNG for screenshots and theme work
- Lightweight design without a heavy desktop UI toolkit
On Arch Linux, install Veila from the AUR:
# prebuilt release package (recommended)
yay -S veila-bin
# or latest git build
yay -S veila-gitStart the daemon:
veiladOr better run it as a user service with systemd:
systemctl --user enable --now veilad.serviceLock the screen:
veila lockFlake installation:
{
inputs.veila.url = "github:naurissteins/Veila";
outputs = { nixpkgs, veila, ... }: {
nixosConfigurations.my-host = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
veila.nixosModules.default
{
programs.veila.enable = true;
}
];
};
};
}The module installs veila, veilad and veila-curtain and configures the required PAM service.
Install directly:
nix profile install github:naurissteins/Veila#veilaAdd PAM service:
{
environment.systemPackages = [
inputs.veila.packages.${pkgs.system}.default
];
security.pam.services.veila = {};
}For full installation, configuration, theming and more, visit: