Commit graph

492 commits

Author SHA1 Message Date
Jan Tojnar b575d76ce1 nixos/gdm: Do not require GTK for account-service-util 2023-06-03 17:31:15 +02:00
Martin Weinelt 4472cf44eb
treewide: Make yescrypt the default algorithm for pam_unix.so
This ensures `passwd` will default to yescrypt for newly generated
passwords.
2023-03-13 07:54:27 +01:00
Eduard Bachmakov 45a6488f9c nixos/sddm + nixos/plasma5: switch PAM service to login.
GDM and LightDM are already using this approach. It also allows us to
enable Kwallet integration more globally without generating stray PAM
services.

The default configuration of login service includes both options sddm
was setting explicitly.
2023-02-21 22:48:09 +01:00
Sandro d26c778ade
Merge pull request #153127 from eyJhb/user-uids-fix
nixos/users+nixos/lightdm: fixed users starting at 1000, and system users below 1000
2023-01-30 11:32:10 +01:00
figsoda 6bb0dbf91f nixos: fix typos 2022-12-17 19:31:14 -05:00
Bobby Rong 1b6468cfb4
nixos/lightdm-greeters/slick: Add options for cursor themes
These options are newly added in 1.6.0.
2022-12-04 11:20:51 +08:00
github-actions[bot] 938efbfd26
Merge master into staging-next 2022-11-07 18:01:17 +00:00
colin ed9998cf2a nixos/lightdm: add greeters.mobile config option
i based this on the neighboring lightdm-greeters/mini.nix module.

lightdm-mobile-greeter doesn't have a lot of configuration options.
it grabs the default user to login as from lightdm, along with which DE
it should launch. so no further configuration should be needed aside
from enabling `services.xserver.displayManager.lightdm.enable` and
either setting `services.xserver.displayManager.defaultSession` to the
appropriate session or explicitly defining a seat like:

```nix
services.xserver.displayManager.lightdm.extraSeatDefaults = ''
  user-session = phosh
'';
```
2022-11-07 05:48:23 -08:00
Thomas Watson 39d6cfd68f nixos/sddm: remove stale qmlcache workaround 2022-10-20 22:15:04 -05:00
pennae 3bddcf5f90
Merge branch 'master' into option-docs-md 2022-09-01 16:10:09 +02:00
pennae bd56368848 nixos/*: md-convert hidden plaintext options
most of these are hidden because they're either part of a submodule that
doesn't have its type rendered (eg because the submodule type is used in
an either type) or because they are explicitly hidden. some of them are
merely hidden from nix-doc-munge by how their option is put together.
2022-08-31 16:32:54 +02:00
pennae 9547123258 nixos/*: convert internal option descriptions to MD
we'll have to do it eventually, may as well be now.
2022-08-31 16:32:54 +02:00
pennae ef176dcf7e nixos/*: automatically convert option descriptions
conversions were done using https://github.com/pennae/nix-doc-munge
using (probably) rev f34e145 running

    nix-doc-munge nixos/**/*.nix
    nix-doc-munge --import nixos/**/*.nix

the tool ensures that only changes that could affect the generated
manual *but don't* are committed, other changes require manual review
and are discarded.
2022-08-31 16:32:53 +02:00
Bobby Rong 2f63816448
Merge pull request #187466 from bobby285271/revert-lightdm-user-shell-bash
Revert "nixos/lightdm: make lightdm user shell bash"
2022-08-30 19:36:11 +08:00
Thiago Kenji Okada 2d92f70c32
Merge pull request #188539 from linj-fork/pr/fix-fontconfig-hint
nixos/fontconfig: add missing config for Xft.hintstyle
2022-08-27 22:46:14 +01:00
Lin Jian c5b6df912b
nixos/fontconfig: add missing config for Xft.hintstyle
This config is removed when removing[1] fonts.fontconfig.hinting.style
option.

However, when adding[2] that option back, this config is missing.

[1]: 65592837b6
[2]: 659096dd89
2022-08-28 05:24:41 +08:00
pennae 51a11254a7 nixos/*: literalDocBook -> literalMD
no change to rendered output
2022-08-27 19:18:29 +02:00
Bobby Rong 5d99fb614b nixos/lightdm-greeters/slick: use mkEnableOption 2022-08-20 21:57:39 +02:00
John Rinehart 392c83491d
nixos/lightdm-greeters/slick: disable slick greeter by default 2022-08-20 16:37:34 +08:00
Bobby Rong 29cb1c877c
Merge pull request #184409 from water-sucks/lightdm-slick-greeter
lightdm-slick-greeter: init at 1.5.9
2022-08-20 09:28:52 +08:00
Bobby Rong c52f565d3a Revert "nixos/lightdm: make lightdm user shell bash"
This reverts commit c134f6443a.
Pantheon is using GSD 3.38 nowadays, closes #101568
2022-08-19 23:25:53 +08:00
Varun Narravula fdac82a307 nixos/lightdm-greeters/slick: init 2022-08-18 15:52:05 +08:00
Kira Bruneau 6e665c4e29
Merge pull request #185987 from LoveIsGrief/display-manager-read-.profile
Attempt to source .profile if .xprofile not found
2022-08-17 15:58:46 -04:00
LoveIsGrief 881512e23f
x11: Source .profile and .xprofile
Other popular distros (OpenSuse, Ubuntu, Gentoo, Arch) read $HOME/.profile when starting X11 display managers.
When moving to nixOS, that is then broken leading to unpredictable behavior (probably programs not working).

This adds similar behavior to https://github.com/sddm/sddm/blob/develop/data/scripts/Xsession

Related to #185979
2022-08-17 20:37:33 +02:00
pennae 087472b1e5 nixos/*: automatically convert option docs 2022-08-06 20:39:12 +02:00
pennae 93c57a9884
Merge pull request #185056 from pennae/option-docs-md
nixos/*: more option docs conversions
2022-08-05 17:36:49 +02:00
Sandro c70ac648b5
Merge pull request #184454 from NixOS/lightdm 2022-08-04 15:05:13 +02:00
pennae 61e93df189 nixos/*: automatically convert option docs to MD
once again using nix-doc-munge (69d080323a)
2022-08-03 22:46:41 +02:00
Bobby Rong 231631eb93
lightdm-gtk-greeter: rename from lightdm_gtk_greeter
To match the current naming convention.
2022-08-01 16:36:52 +08:00
pennae 2e751c0772 treewide: automatically md-convert option descriptions
the conversion procedure is simple:

 - find all things that look like options, ie calls to either `mkOption`
   or `lib.mkOption` that take an attrset. remember the attrset as the
   option
 - for all options, find a `description` attribute who's value is not a
   call to `mdDoc` or `lib.mdDoc`
 - textually convert the entire value of the attribute to MD with a few
   simple regexes (the set from mdize-module.sh)
 - if the change produced a change in the manual output, discard
 - if the change kept the manual unchanged, add some text to the
   description to make sure we've actually found an option. if the
   manual changes this time, keep the converted description

this procedure converts 80% of nixos options to markdown. around 2000
options remain to be inspected, but most of those fail the "does not
change the manual output check": currently the MD conversion process
does not faithfully convert docbook tags like <code> and <package>, so
any option using such tags will not be converted at all.
2022-07-30 15:16:34 +02:00
Sophie Taylor 62494281d8
xpra: fix whitespace 2022-06-19 18:26:10 +10:00
Sophie Taylor f13c61a3b9
xpra: Add the ability to perform a start-desktop 2022-06-19 11:40:41 +10:00
Jan Tojnar ff691ed9ba nixos/gdm: Fix missing icons
Recent `wrapGAppsHook` change stops `adwaita-icon-theme` from being added to `XDG_DATA_DIRS`:
b1e73fa2e0
Since `display-manager.service` does not have `/run/current-system/sw/share` in `XDG_DATA_DIRS`, it does not pick up the globally installed icon theme either, preventing icons from showing.

Let’s make Adwaita available to fix that for now.

Fixes: https://github.com/NixOS/nixpkgs/issues/171692
2022-05-17 00:19:18 +02:00
Janne Heß 57cd07f3a9
treewide: pkgs.systemd -> config.systemd.package
This ensures there is only one systemd package when e.g. testing the
next systemd version.
2022-05-05 20:00:31 +02:00
Jan Tojnar 87d18174d3 nixos/gdm: fix accessibility menu icon
GNOME Shell 42 switched an icon for the accessibility menu in the top panel
to one from gnome-control-center instead of a legacy one from adwaita-icon-theme:
https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2155

Let’s add that dependency to the systemd unit since installing it
through `environment.systemPackages` is not enough due to environment isolation.
2022-03-25 15:02:49 +01:00
Vladimír Čunát fd609f9233
nixos services.xserver.displayManager.session: drop type
For now at least.  I expect someone will find a working type later.
It's incorrect and was causing bad issues.  Example test case:
nix-instantiate nixos/release.nix -A tests.xfce.x86_64-linux --dry-run

This is a partial revert of commit b2d803c from PR #162271.
2022-03-19 21:11:41 +01:00
Robert Hensing 0395086d0c
Merge pull request #162271 from Infinisil/warn-no-type
Throw an error for options without a type
2022-03-16 22:58:45 +01:00
piegames cd7e516b26
Merge pull request #156858: nixos/polkit: don't enable by default 2022-03-05 14:48:35 +01:00
Silvan Mosberger b2d803ca57 nixos/treewide: Add last missing option types
Co-Authored-By: Janne Heß <janne@hess.ooo>
2022-02-28 22:50:06 +01:00
Jan Tojnar 16658b7fe9
Merge pull request #151105 from ncfavier/gio-extra-modules
nixos: make GIO_EXTRA_MODULES a session variable, take two
2022-02-02 19:35:58 +01:00
Jan Tojnar 1a11eb1eb3 gnome.gdm: 41.0 → 41.3
Remove nvidiaWayland NixOS option since it was severely out of date.

https://ftp.gnome.org/pub/GNOME/sources/gdm/41/gdm-41.3.news
2022-01-30 04:47:01 +01:00
Martin Weinelt 4f593e7cdf
nixos/lightdm: enable polkit
Required as visible in the lightdm tests:

> Error updating user /org/freedesktop/Accounts/User1001: GDBus.Error:org.freedesktop.Accounts.Error.PermissionDenied: Not authorized: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.PolicyKit1 was not provided by any .service files
2022-01-27 01:45:45 +01:00
Naïm Favier 23cfef7ec0
nixos: make GIO_EXTRA_MODULES a session variable
Allow applications started by the systemd user session manager to find
their GIO_EXTRA_MODULES.
2022-01-21 00:44:35 +01:00
Naïm Favier d25ffc3a0c
nixos/gdm: add gdm to XDG_DATA_DIRS
This is necessary so that gnome-session can find GDM's gnome-login.session,
see https://gitlab.gnome.org/GNOME/gdm/-/issues/756
2022-01-21 00:44:35 +01:00
eyjhb cd78ec13ab
nixos/lightdm: changed minimum-uid to 1000
This is done to reflect changes in 0e23a175de
2022-01-02 00:55:27 +01:00
Graham Christensen 06edb74413
Merge pull request #148785 from pennae/more-option-doc-staticizing
treewide: more defaultText for options
2021-12-17 11:14:08 -05:00
pennae 9407761763 treewide: add defaultText for options using other shortcut bindings 2021-12-09 01:42:24 +01:00
pennae 2d564521c0 treewide: add literalDocBook text to options with complex defaults
some options have default that are best described in prose, such as
defaults that depend on the system stateVersion, defaults that are
derivations specific to the surrounding context, or those where the
expression is much longer and harder to understand than a simple text
snippet.
2021-12-09 01:38:24 +01:00
pennae ed673a69db treewide: add defaultText for options with simple cfg.* expression defaults
adds defaultText for options with defaults that use only literals, full config.*
paths, and the cfg shortcut binding.
2021-12-09 01:14:16 +01:00
Artturin ebbfccf8a0 nixos/lightdm: fix tmpfile by changing 0 to -
Closes https://github.com/NixOS/nixpkgs/issues/116631
2021-12-03 06:22:21 +02:00
Fabián Heredia Montiel 539811a4d3 nixos/gdm: enable nvidiaWayland by default 2021-11-23 12:17:05 -06:00
Artturin 670f5474b9 nixos/{startx,xserver,sx}: make it possible to use both a gui dm
and startx at the same time without using lib.mkForce
2021-11-16 23:30:27 +02:00
Mariusz `shd` Gliwiński 8e3d255347
[nixos/lightdm] allow for background option to be either path or color 2021-11-12 17:31:13 +01:00
oxalica 91812b84b8
sddm: respect services.xserver.displayManager.defaultSession 2021-11-01 18:57:59 +08:00
Artturi dfad31d753
Merge pull request #142273 from ju1m/display-managers 2021-10-23 03:58:21 +03:00
Julien Moutinho 808ad2afe1 nixos/display-managers: fix cross-compiling 2021-10-20 02:29:05 +02:00
Lorenz Brun a3d711f4e1 nixos/gdm: remove obsolete pulseaudio module
PulseAudio 14.0 has deprecated that module and moved its functionality into
the core, it does nothing other than
printing an error at every start.
2021-10-15 15:47:31 +02:00
Naïm Favier 2ddc335e6f
nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
Artturin 33b7bd2675 nixos/gdm: switch to rfc42 style settings 2021-10-01 20:53:49 +03:00
Michele Guerini Rocco 0e848f7b12
Merge pull request #134302 from rnhmjoj/gdm-no-udev-settle
nixos/gdm: remove udev-settle dependency
2021-09-15 09:52:10 +02:00
figsoda 9c82ab55b1 nixos/xserver: fix extraLayouts with displayManager.sx.enable 2021-09-10 18:48:14 -04:00
figsoda 7239ddf173 nixos/sx: init 2021-08-22 13:44:29 -04:00
Jörg Thalheim 9b962429be
Merge pull request #133014 from Mic92/fix-pam
nixos: reduce pam files rebuilds on updates
2021-08-20 23:23:42 +01:00
Jörg Thalheim 1645acf1d3 nixos: reduce pam files rebuilds on updates
Before whenever environment variables changed, pam files had to be
rebuild.

This is expensive since each file needs its own sandbox set up.
2021-08-20 23:43:30 +02:00
Nikolay Amiantov bd18e491a9 fontconfig service: drop dpi option
Recommend to use services.xserver.dpi option instead. Mention in the
documentation that it's a sledgehammer approach and monitor settings should be
used instead.

Also don't set DPI in fontconfig settings; fontconfig should use Xft settings
by default so let's not override one value in multiple places. For example,
user now can set DPI via ~/.Xresources properly.
2021-08-20 16:55:07 +00:00
rnhmjoj ff9df147c9
nixos/gdm: remove udev-settle dependency
See https://github.com/NixOS/nixpkgs/issues/73095

It looks like it can finally be removed: the `Failed to open gpu
'/dev/dri/card0'` error is gone and the nixosTests.gnome test is
passing (checked 4 times in a row).
2021-08-16 11:40:38 +02:00
Artturin 47f6591706 nixos/gdm: disable the gdm services as it is redundant
and causes issues
2021-08-10 01:43:38 +03:00
davidak 8f02a4486d pantheon: add maintainers team 2021-08-02 19:09:29 +02:00
Luke Granger-Brown 5a7d7dc19f nixos/display-managers: update set-session for new "SessionType" property
GDM 40.1 switched from storing X11 sessions in the "XSession" property
on AccountService to "Session" with a "x11" "SessionType".

For compatibility reasons, we should set both, since AccountService
doesn't seem to provide the compatibility for us.
2021-08-01 22:22:35 +00:00
Ryan Mulligan 073f462987 nixos/gdm: expand gdm.autoSuspend description
closes #100390
2021-06-29 19:35:26 -07:00
Vladimír Čunát 080cd658ca
Merge #121780: treewide meta.maintainers tweaks 2021-05-08 10:47:08 +02:00
Jan Tojnar 468cb5980b gnome: rename from gnome3
Since GNOME version is now 40, it no longer makes sense to use the old attribute name.
2021-05-08 09:47:42 +02:00
Vladimír Čunát 9f054b5e1a
treewide: remove worldofpeace from meta.maintainers
(It was requested by them.)
I left one case due to fetching from their personal repo:
pkgs/desktops/pantheon/desktop/extra-elementary-contracts/default.nix
2021-05-07 15:36:40 +02:00
Jan Tojnar d2e141e412
gnome3.gdm: 3.38.2.1 → 40.0 2021-05-05 22:42:32 +02:00
Stefan Frijters 580cf02c19
nixos/x11: Be more defensive when removing XCOMPOSECACHE 2021-02-27 17:55:58 +01:00
Stefan Frijters ee713d36bc
nixos/x11: Respect XCOMPOSECACHE/XDG_DATA_HOME if set 2021-02-27 17:55:48 +01:00
Stefan Frijters 37460768e2
nixos/x11: Source .xprofile earlier in xsession-wrapper
This allows users to set e.g. XCOMPOSECACHE before it's used.
2021-02-27 17:55:47 +01:00
WORLDofPEACE 4287f5adfa
Merge pull request #100569 from andersk/gdm-plymouth
nixos/gdm: Conflict plymouth-quit, but more carefully
2021-02-21 11:03:18 -05:00
Fritz Otlinghaus c44f508e3e
nixos/lightdm-greeters/gtk: add type 2021-01-31 12:41:17 +01:00
Jacek Galowicz 001ba3934e Use lib.cartesianProducOfSets where lib.crossLists was used 2021-01-28 23:49:05 +01:00
Peter Hoeg 7d07645cba nixos/sddm: use attrs instead of plain text
Instead of treating the sddm config a wall of text that doesn't allow us
to override anything, turn it into an attribute set.

We dump `extraConfig` and instead introduce `settings` that is merged
with the module defaults to provide the final configuration.

There is some additional noise in here due to nixpkgs-fmt.
2020-12-29 05:06:38 +08:00
github-actions[bot] 28fd8e0d59
Merge master into staging-next 2020-12-23 00:48:29 +00:00
José Romildo Malaquias c5f07370f7 nixos/sddm: lxqt moved to libsForQt515 2020-12-16 10:43:21 -03:00
Atemu d3113a62b8 nixos/startx: send Xorg log to the default location
This partially reverts bf3d3dd19b.

I don't know why we weren't getting a default logfile back then but Xorg
definitely provides one now ($XDG_DATA_HOME for regular users and /var/log for
root, see `man Xorg`)
2020-12-13 06:15:33 +01:00
Atemu c72c02ab26 nixos/startx: provide xserverArgs via xserverrc
Fixes #80198
2020-12-13 06:15:32 +01:00
Frederik Rietdijk 409ca6f1f9 Merge staging-next into staging 2020-11-01 11:06:35 +01:00
Doron Behar 77e081bb2b nixos/sddm: Use libsForQt514.sddm if needed (for lxqt)
Currently lxqt is a desktop environment that's compiled against qt514.
To avoid possible issues (#101369), we (hopefully) use the same qt
version as the desktop environment at hand. LXQT should move to qt515,
and for the long term the correct qt version should be inherited by the
sddm module.
2020-10-30 20:37:59 +02:00
Vladimír Čunát 2f6b00b15e
Merge branch 'staging-next' into staging 2020-10-25 09:47:04 +01:00
Andreas Rammhold 250fb4611f
Merge pull request #100456 from maralorn/boolToString
treewide: De-inline uses of lib.boolToString
2020-10-25 00:45:11 +02:00
WORLDofPEACE 6bc94d149b
Merge pull request #101563 from worldofpeace/fix-pantheon-greeter-brightness
nixos/lightdm: make lightdm user shell bash
2020-10-24 11:56:34 -04:00
WORLDofPEACE c134f6443a nixos/lightdm: make lightdm user shell bash
In https://github.com/NixOS/nixpkgs/issues/100119 pantheon's greeter
has g-s-d running which allows brightness controls via pkexec.
This is changed in newer versions of g-s-d (pantheon uses a fork currently),
but whenever brightness is changed with a shell of `shadow` we get
```
Oct 10 23:51:44 kirXps pkexec[18722]: lightdm: Executing command [USER=root] [TTY=unknown] [CWD=/var/lib/lightdm] [COMMAND=/run/current-system/sw/bin/elementary-settings-daemon/gsd-backlight-helper /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-eDP-1/intel_backlight 65587]
```

I'm not sure this should be strictly needed, so we should try to
revert later on when pantheon's g-s-d is updated.
2020-10-24 11:28:18 -04:00
Piotr Bogdan f1f85419d2
nixos/gdm: add gdm to systemd.packages
GDM now provides gnome-session@gnome-login.target.d/session.conf though I'm not even sure if it's needed.
2020-10-24 01:15:14 +02:00
WORLDofPEACE 755ba171c7 nixos/display-managers: add sessionData.desktops to XDG_DATA_DIRS
Fixes #100108

Alternative to https://github.com/NixOS/nixpkgs/pull/100112 which doesn't break stuff.
2020-10-21 14:39:39 -04:00
Anders Kaseorg da5401e022 nixos/gdm: Conflict plymouth-quit, but more carefully
To avoid extra flickering on boot, we want GDM to tell Plymouth to
quit after GDM takes control of the display.  That configuration was
reverted in #71065 because it caused ‘nixos-rebuild switch’ to bring
down the graphical session.  The reason was that if multi-user.target
wants plymouth-quit.service which conflicts display-manager.service,
then when ‘nixos-rebuild switch’ starts multi-user.target,
display-manager.service is stopped so plymouth-quit.service can be
started.  We avoid this problem by removing WantedBy:
multi-user.target from plymouth-quit.service.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2020-10-15 02:04:00 -07:00
Jan Tojnar 2a4607f442
Revert "nixos/display-managers: install sessionData.desktops"
This reverts commit 3cd2b59b8c.

It created infinite recursion when using LXQt, since lxqt module
uses `config.system.path` in `services.xserver.desktopManager.session`.
`config.system.path` is a `buildEnv` that depends on `environment.systemPackages`.
2020-10-15 07:32:08 +02:00
Malte Brandy cebf9198f3
treewide: De-inline uses of lib.boolToString
This commit should not change eval results
2020-10-14 01:46:17 +02:00
Vladimír Čunát 338b25697c
Merge branch 'master' into staging-next
Quite many rebuilds from master:
> Estimating rebuild amount by counting changed Hydra jobs.
>    3926 x86_64-darwin
>    4645 x86_64-linux
2020-10-10 11:32:10 +02:00
WORLDofPEACE 3cd2b59b8c nixos/display-managers: install sessionData.desktops
Fixes https://github.com/NixOS/nixpkgs/issues/100108
2020-10-09 18:38:16 -04:00
Robert Helgesson f292a27f44
nixos/dbus: always use socket activates user session
This removes the `services.dbus.socketActivated` and
`services.xserver.startDbusSession` options. Instead the user D-Bus
session is always socket activated.
2020-09-13 11:17:16 +02:00
WORLDofPEACE b552ded466 nixos/gdm: fix option descriptions
If we use '' '' for strings with mkEnableOption they get a trailing space
before the period.
2020-09-11 14:14:41 -04:00