nixos-config/system/desktop/xlock.nix

37 lines
732 B
Nix

{ lib, pkgs, ... }:
with lib;
let
name = "lock";
# desktop file
# ------------
# makes it possible to be used by other programs
desktopFile = pkgs.writeTextFile {
name = "${name}.desktop";
destination = "/share/applications/${name}.desktop";
text = ''
[Desktop Entry]
Categories=Application;Utility;
Comment=Screen Saver
Encoding=UTF-8
Exec=${lockProgram}/bin/${name}
Icon=gnome-lockscreen
Name=${name}
Terminal=false
Type=Application
'';
};
# the lock program
lockProgram = pkgs.writeShellScriptBin "${name}" ''
${pkgs.xlockmore}/bin/xlock -mode life1d -size 1
'';
in {
environment.systemPackages = [ lockProgram desktopFile ];
}