Swaylock: Difference between revisions
Appearance
m Updated Swaylock page |
mNo edit summary |
||
| Line 8: | Line 8: | ||
];|name=/etc/nixos/configuration.nix|lang=nix}} | ];|name=/etc/nixos/configuration.nix|lang=nix}} | ||
=== Home Manager - Standalone === | |||
=== Home Manager === | |||
{{file|~/.config/home-manager/home.nix|nix|3= | {{file|~/.config/home-manager/home.nix|nix|3= | ||
programs.swaylock.enable = true; | programs.swaylock.enable = true; | ||
}} | }} | ||
=== Home Manager - Through Sway === | |||
{{File|3=programs.sway.extraPackages = with pkgs; [swaylock];|name=/etc/nixos/configuration.nix|lang=nix}} | |||
{{Warning|1=If you don't use the Sway module (<code>programs.sway.enable</code>) you need to set <code>security.pam.services.swaylock = {};</code> manually.}} | {{Warning|1=If you don't use the Sway module (<code>programs.sway.enable</code>) you need to set <code>security.pam.services.swaylock = {};</code> manually.}} | ||
Latest revision as of 03:30, 1 January 2026
Swaylock is a screen locking utility for Wayland compositors.
Installation
Standalone
❄︎ /etc/nixos/configuration.nix
environment.systemPackages = with pkgs; [
swaylock
];
Home Manager - Standalone
❄︎ ~/.config/home-manager/home.nix
programs.swaylock.enable = true;
Home Manager - Through Sway
❄︎ /etc/nixos/configuration.nix
programs.sway.extraPackages = with pkgs; [swaylock];
⚠︎
Warning: If you don't use the Sway module (
programs.sway.enable) you need to set security.pam.services.swaylock = {}; manually.Configuration
Swaylock may be configured using Home Manager, options may be found under the Home Manager Appendix - programs.sway.enable.
❄︎ /etc/nixos/home.nix
programs.swaylock = {
enable = true;
settings = {
color = "808080";
font-size = 24;
indicator-idle-visible = false;
indicator-radius = 100;
line-color = "ffffff";
show-failed-attempts = true;
};
};
If you would like to use a config file instead you may instead specify a config file.
❄︎ /etc/nixos/home.nix
xdg.configFile."swaylock/config".source = ./swaylock-theme;
Adding background
You can add background declaratively using fetchurl similar to Wallpapers for Wayland. In this example, a wallpaper in nixos-artwork is set to image attribute and the remaining configuration from ./swaylock are merged.
❄︎ ~/.config/home-manager/home.nix
xdg.configFile."swaylock/config".text =
let
src = pkgs.fetchurl {
url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/8957e93c95867faafec7f9988cedddd6837859fa/wallpapers/nix-wallpaper-binary-black.png";
sha256 = "0v3111a1ihsh4ajijbjh6y7a8p5cb5g3rdxqjbzx37pn1k9s254s";
};
in
''
image=${src}
''
+ builtins.readFile ./swaylock;
Forks
swaylock-effects allows built-in screenshots and image manipulation effects like blurring.
❄︎ ~/.config/home-manager/home.nix
programs.swaylock.package = pkgs.swaylock-effects;