Merge pull request #78583 from worldofpeace/remove-auto-displaymanager
nixos/display-managers/auto: remove
This commit is contained in:
commit
a8ea4f0d33
@ -85,11 +85,14 @@
|
|||||||
<programlisting>
|
<programlisting>
|
||||||
<xref linkend="opt-services.xserver.displayManager.defaultSession"/> = "none+i3";
|
<xref linkend="opt-services.xserver.displayManager.defaultSession"/> = "none+i3";
|
||||||
</programlisting>
|
</programlisting>
|
||||||
And, finally, to enable auto-login for a user <literal>johndoe</literal>:
|
Every display manager in NixOS supports auto-login, here is an example
|
||||||
|
using lightdm for a user <literal>alice</literal>:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
<xref linkend="opt-services.xserver.displayManager.auto.enable"/> = true;
|
<xref linkend="opt-services.xserver.displayManager.lightdm.enable"/> = true;
|
||||||
<xref linkend="opt-services.xserver.displayManager.auto.user"/> = "johndoe";
|
<xref linkend="opt-services.xserver.displayManager.lightdm.autoLogin.enable"/> = true;
|
||||||
|
<xref linkend="opt-services.xserver.displayManager.lightdm.autoLogin.user"/> = "alice";
|
||||||
</programlisting>
|
</programlisting>
|
||||||
|
The options are named identically for all other display managers.
|
||||||
</para>
|
</para>
|
||||||
</simplesect>
|
</simplesect>
|
||||||
<simplesect xml:id="sec-x11-graphics-cards-nvidia">
|
<simplesect xml:id="sec-x11-graphics-cards-nvidia">
|
||||||
|
@ -457,6 +457,39 @@ users.users.me =
|
|||||||
The <literal>gcc5</literal> and <literal>gfortran5</literal> packages have been removed.
|
The <literal>gcc5</literal> and <literal>gfortran5</literal> packages have been removed.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
The <option>services.xserver.displayManager.auto</option> module has been removed.
|
||||||
|
It was only intended for use in internal NixOS tests, and gave the false impression
|
||||||
|
of it being a special display manager when it's actually LightDM.
|
||||||
|
Please use the <xref linkend="opt-services.xserver.displayManager.lightdm.autoLogin"/> options instead,
|
||||||
|
or any other display manager in NixOS as they all support auto-login. If you used this module specifically
|
||||||
|
because it permitted root auto-login you can override the lightdm-autologin pam module like:
|
||||||
|
<programlisting>
|
||||||
|
<link xlink:href="#opt-security.pam.services._name__.text">security.pam.services.lightdm-autologin.text</link> = lib.mkForce ''
|
||||||
|
auth requisite pam_nologin.so
|
||||||
|
auth required pam_succeed_if.so quiet
|
||||||
|
auth required pam_permit.so
|
||||||
|
|
||||||
|
account include lightdm
|
||||||
|
|
||||||
|
password include lightdm
|
||||||
|
|
||||||
|
session include lightdm
|
||||||
|
'';
|
||||||
|
</programlisting>
|
||||||
|
The difference is the:
|
||||||
|
<programlisting>
|
||||||
|
auth required pam_succeed_if.so quiet
|
||||||
|
</programlisting>
|
||||||
|
line, where default it's:
|
||||||
|
<programlisting>
|
||||||
|
auth required pam_succeed_if.so uid >= 1000 quiet
|
||||||
|
</programlisting>
|
||||||
|
not permitting users with uid's below 1000 (like root).
|
||||||
|
All other display managers in NixOS are configured like this.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
@ -865,7 +865,6 @@
|
|||||||
./services/x11/unclutter.nix
|
./services/x11/unclutter.nix
|
||||||
./services/x11/unclutter-xfixes.nix
|
./services/x11/unclutter-xfixes.nix
|
||||||
./services/x11/desktop-managers/default.nix
|
./services/x11/desktop-managers/default.nix
|
||||||
./services/x11/display-managers/auto.nix
|
|
||||||
./services/x11/display-managers/default.nix
|
./services/x11/display-managers/default.nix
|
||||||
./services/x11/display-managers/gdm.nix
|
./services/x11/display-managers/gdm.nix
|
||||||
./services/x11/display-managers/lightdm.nix
|
./services/x11/display-managers/lightdm.nix
|
||||||
|
@ -34,6 +34,13 @@ with lib;
|
|||||||
as the underlying package isn't being maintained. Working alternatives are
|
as the underlying package isn't being maintained. Working alternatives are
|
||||||
libinput and synaptics.
|
libinput and synaptics.
|
||||||
'')
|
'')
|
||||||
|
(mkRemovedOptionModule [ "services" "xserver" "displayManager" "auto" ] ''
|
||||||
|
The services.xserver.displayManager.auto module has been removed
|
||||||
|
because it was only intended for use in internal NixOS tests, and gave the
|
||||||
|
false impression of it being a special display manager when it's actually
|
||||||
|
LightDM. Please use the services.xserver.displayManager.lightdm.autoLogin options
|
||||||
|
instead, or any other display manager in NixOS as they all support auto-login.
|
||||||
|
'')
|
||||||
|
|
||||||
# Do NOT add any option renames here, see top of the file
|
# Do NOT add any option renames here, see top of the file
|
||||||
];
|
];
|
||||||
|
@ -556,8 +556,7 @@ in
|
|||||||
|
|
||||||
services.xserver.displayManager.lightdm.enable =
|
services.xserver.displayManager.lightdm.enable =
|
||||||
let dmconf = cfg.displayManager;
|
let dmconf = cfg.displayManager;
|
||||||
default = !( dmconf.auto.enable
|
default = !(dmconf.gdm.enable
|
||||||
|| dmconf.gdm.enable
|
|
||||||
|| dmconf.sddm.enable
|
|| dmconf.sddm.enable
|
||||||
|| dmconf.xpra.enable );
|
|| dmconf.xpra.enable );
|
||||||
in mkIf (default) true;
|
in mkIf (default) true;
|
||||||
|
@ -23,7 +23,7 @@ mapAttrs (channel: chromiumPkg: makeTest rec {
|
|||||||
|
|
||||||
machine.imports = [ ./common/user-account.nix ./common/x11.nix ];
|
machine.imports = [ ./common/user-account.nix ./common/x11.nix ];
|
||||||
machine.virtualisation.memorySize = 2047;
|
machine.virtualisation.memorySize = 2047;
|
||||||
machine.services.xserver.displayManager.auto.user = "alice";
|
machine.test-support.displayManager.auto.user = "alice";
|
||||||
machine.environment.systemPackages = [ chromiumPkg ];
|
machine.environment.systemPackages = [ chromiumPkg ];
|
||||||
|
|
||||||
startupHTML = pkgs.writeText "chromium-startup.html" ''
|
startupHTML = pkgs.writeText "chromium-startup.html" ''
|
||||||
|
@ -5,7 +5,7 @@ with lib;
|
|||||||
let
|
let
|
||||||
|
|
||||||
dmcfg = config.services.xserver.displayManager;
|
dmcfg = config.services.xserver.displayManager;
|
||||||
cfg = dmcfg.auto;
|
cfg = config.test-support.displayManager.auto;
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
@ -15,7 +15,7 @@ in
|
|||||||
|
|
||||||
options = {
|
options = {
|
||||||
|
|
||||||
services.xserver.displayManager.auto = {
|
test-support.displayManager.auto = {
|
||||||
|
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
default = false;
|
default = false;
|
@ -1,9 +1,14 @@
|
|||||||
{ lib, ... }:
|
{ lib, ... }:
|
||||||
|
|
||||||
{ services.xserver.enable = true;
|
{
|
||||||
|
imports = [
|
||||||
|
./auto.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
services.xserver.enable = true;
|
||||||
|
|
||||||
# Automatically log in.
|
# Automatically log in.
|
||||||
services.xserver.displayManager.auto.enable = true;
|
test-support.displayManager.auto.enable = true;
|
||||||
|
|
||||||
# Use IceWM as the window manager.
|
# Use IceWM as the window manager.
|
||||||
# Don't use a desktop manager.
|
# Don't use a desktop manager.
|
||||||
|
@ -6,7 +6,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
|||||||
|
|
||||||
machine = { lib, ... }: {
|
machine = { lib, ... }: {
|
||||||
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
test-support.displayManager.auto.user = "alice";
|
||||||
services.xserver.displayManager.defaultSession = lib.mkForce "none+i3";
|
services.xserver.displayManager.defaultSession = lib.mkForce "none+i3";
|
||||||
services.xserver.windowManager.i3.enable = true;
|
services.xserver.windowManager.i3.enable = true;
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ import ./make-test-python.nix ({ pkgs, ...} :
|
|||||||
];
|
];
|
||||||
|
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
test-support.displayManager.auto.user = "alice";
|
||||||
environment.systemPackages = [ pkgs.signal-desktop ];
|
environment.systemPackages = [ pkgs.signal-desktop ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ import ./make-test.nix ({ pkgs, ... }: {
|
|||||||
systemd.extraConfig = "DefaultEnvironment=\"XXX_SYSTEM=foo\"";
|
systemd.extraConfig = "DefaultEnvironment=\"XXX_SYSTEM=foo\"";
|
||||||
systemd.user.extraConfig = "DefaultEnvironment=\"XXX_USER=bar\"";
|
systemd.user.extraConfig = "DefaultEnvironment=\"XXX_USER=bar\"";
|
||||||
services.journald.extraConfig = "Storage=volatile";
|
services.journald.extraConfig = "Storage=volatile";
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
test-support.displayManager.auto.user = "alice";
|
||||||
|
|
||||||
systemd.shutdown.test = pkgs.writeScript "test.shutdown" ''
|
systemd.shutdown.test = pkgs.writeScript "test.shutdown" ''
|
||||||
#!${pkgs.stdenv.shell}
|
#!${pkgs.stdenv.shell}
|
||||||
|
@ -356,7 +356,7 @@ let
|
|||||||
virtualisation.qemu.options =
|
virtualisation.qemu.options =
|
||||||
if useKvmNestedVirt then ["-cpu" "kvm64,vmx=on"] else [];
|
if useKvmNestedVirt then ["-cpu" "kvm64,vmx=on"] else [];
|
||||||
virtualisation.virtualbox.host.enable = true;
|
virtualisation.virtualbox.host.enable = true;
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
test-support.displayManager.auto.user = "alice";
|
||||||
users.users.alice.extraGroups = let
|
users.users.alice.extraGroups = let
|
||||||
inherit (config.virtualisation.virtualbox.host) enableHardening;
|
inherit (config.virtualisation.virtualbox.host) enableHardening;
|
||||||
in lib.mkIf enableHardening (lib.singleton "vboxusers");
|
in lib.mkIf enableHardening (lib.singleton "vboxusers");
|
||||||
|
@ -9,7 +9,7 @@ with lib;
|
|||||||
nodes.machine = {
|
nodes.machine = {
|
||||||
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
||||||
|
|
||||||
services.xserver.displayManager.auto.user = "bob";
|
test-support.displayManager.auto.user = "bob";
|
||||||
services.xserver.xautolock.enable = true;
|
services.xserver.xautolock.enable = true;
|
||||||
services.xserver.xautolock.time = 1;
|
services.xserver.xautolock.time = 1;
|
||||||
};
|
};
|
||||||
|
@ -4,12 +4,20 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
|||||||
machine =
|
machine =
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
|
|
||||||
{ imports = [ ./common/user-account.nix ];
|
{
|
||||||
|
imports = [
|
||||||
|
./common/user-account.nix
|
||||||
|
];
|
||||||
|
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
|
|
||||||
services.xserver.displayManager.auto.enable = true;
|
services.xserver.displayManager.lightdm = {
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
enable = true;
|
||||||
|
autoLogin = {
|
||||||
|
enable = true;
|
||||||
|
user = "alice";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
services.xserver.desktopManager.xfce.enable = true;
|
services.xserver.desktopManager.xfce.enable = true;
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
|||||||
|
|
||||||
machine = { pkgs, ... }: {
|
machine = { pkgs, ... }: {
|
||||||
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
test-support.displayManager.auto.user = "alice";
|
||||||
services.xserver.displayManager.defaultSession = "none+xmonad";
|
services.xserver.displayManager.defaultSession = "none+xmonad";
|
||||||
services.xserver.windowManager.xmonad = {
|
services.xserver.windowManager.xmonad = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -14,7 +14,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
|||||||
|
|
||||||
client = { pkgs, ... }: {
|
client = { pkgs, ... }: {
|
||||||
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
test-support.displayManager.auto.user = "alice";
|
||||||
environment.systemPackages = [ pkgs.freerdp ];
|
environment.systemPackages = [ pkgs.freerdp ];
|
||||||
services.xrdp.enable = true;
|
services.xrdp.enable = true;
|
||||||
services.xrdp.defaultWindowManager = "${pkgs.icewm}/bin/icewm";
|
services.xrdp.defaultWindowManager = "${pkgs.icewm}/bin/icewm";
|
||||||
|
@ -10,12 +10,12 @@ with lib;
|
|||||||
simple = {
|
simple = {
|
||||||
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
||||||
programs.xss-lock.enable = true;
|
programs.xss-lock.enable = true;
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
test-support.displayManager.auto.user = "alice";
|
||||||
};
|
};
|
||||||
|
|
||||||
custom_lockcmd = { pkgs, ... }: {
|
custom_lockcmd = { pkgs, ... }: {
|
||||||
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
||||||
services.xserver.displayManager.auto.user = "alice";
|
test-support.displayManager.auto.user = "alice";
|
||||||
|
|
||||||
programs.xss-lock = {
|
programs.xss-lock = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -11,7 +11,7 @@ with lib;
|
|||||||
machine = {
|
machine = {
|
||||||
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
imports = [ ./common/x11.nix ./common/user-account.nix ];
|
||||||
|
|
||||||
services.xserver.displayManager.auto.user = "bob";
|
test-support.displayManager.auto.user = "bob";
|
||||||
|
|
||||||
programs.yabar.enable = true;
|
programs.yabar.enable = true;
|
||||||
programs.yabar.bars = {
|
programs.yabar.bars = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user