mirror of
https://github.com/nix-community/home-manager.git
synced 2025-03-09 18:26:54 +00:00
Instead of having to manually stub packages that should not be downloaded we instead automatically stub all packages (except a small list of whitelisted ones). Tests can re-introduce the real package by using the `realPkgs` module argument.
30 lines
1 KiB
Nix
30 lines
1 KiB
Nix
{ config, pkgs, options, lib, ... }:
|
|
|
|
{
|
|
services.screen-locker = {
|
|
enable = true;
|
|
inactiveInterval = 5;
|
|
lockCmd = "${pkgs.i3lock}/bin/i3lock -n -c AA0000";
|
|
xssLockExtraOptions = [ "-test" ];
|
|
xautolockExtraOptions = [ "-test" ];
|
|
enableDetectSleep = true;
|
|
};
|
|
|
|
# Use the same verification script as the basic configuration. The result
|
|
# with the old options should be identical.
|
|
nmt.script =
|
|
(import ./basic-configuration.nix { inherit config pkgs; }).nmt.script;
|
|
|
|
test.asserts.warnings.expected = with lib;
|
|
let
|
|
renamed = {
|
|
xssLockExtraOptions = "xss-lock.extraOptions";
|
|
xautolockExtraOptions = "xautolock.extraOptions";
|
|
enableDetectSleep = "xautolock.detectSleep";
|
|
};
|
|
in mapAttrsToList (old: new:
|
|
builtins.replaceStrings [ "\n" ] [ " " ] ''
|
|
The option `services.screen-locker.${old}' defined in
|
|
${showFiles options.services.screen-locker.${old}.files}
|
|
has been renamed to `services.screen-locker.${new}'.'') renamed;
|
|
}
|