Commit Graph

472 Commits

Author SHA1 Message Date
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
WORLDofPEACE
e044909aba
Merge pull request #93764 from evenbrenden/xdg-session-id-user-units
nixos/displayManager: add XDG_SESSION_ID to systemd user environment
2020-09-08 21:29:24 -04:00
Even Brenden
660882d883 nixos/displayManager: add XDG_SESSION_ID to systemd user environment
xss-lock needs XDG_SESSION_ID to respond to loginctl lock-session(s)
(and possibly other session operations such as idle hint management).
This change adds XDG_SESSION_ID to the list of imported environment
variables when starting systemctl.

Inspired by home-manager, add importVariables configuration.

Set session to XDG_SESSION_ID when running xss-lock as a service.

Co-authored-by: misuzu <bakalolka@gmail.com>
2020-09-05 20:36:18 +02:00
Florian Klink
962e15aebc nixos: remove StandardOutput=syslog, StandardError=syslog lines
Since systemd 243, docs were already steering users towards using
`journal`:

eedaf7f322

systemd 246 will go one step further, it shows warnings for these units
during bootup, and will [automatically convert these occurences to
`journal`](f3dc6af20f):

> [    6.955976] systemd[1]: /nix/store/hwyfgbwg804vmr92fxc1vkmqfq2k9s17-unit-display-manager.service/display-manager.service:27: Standard output type syslog is obsolete, automatically updating to journal. Please update│······················
 your unit file, and consider removing the setting altogether.

So there's no point of keeping `syslog` here, and it's probably a better
idea to just not set it, due to:

> This setting defaults to the value set with DefaultStandardOutput= in
> systemd-system.conf(5), which defaults to journal.
2020-08-13 18:49:15 +02:00
Jörg Thalheim
ba930d8679
nixos/modules: remove trailing whitespace
This leads to ci failure otherwise if the file gets changed.
git-blame can ignore whitespace changes.
2020-08-07 14:45:39 +01:00
worldofpeace
490cd7889e nixos/displayManager: make autoLogin options independent of DM type
Co-authored-by: volth <volth@volth.com>
2020-07-09 21:15:35 -04:00
worldofpeace
eb3c53b4e9 nixos/pantheon: update greeter whitelist to new wording
This was a simple non fatal deprecation.

https://github.com/elementary/wingpanel/pull/326
2020-07-07 11:35:21 -04:00
worldofpeace
d508591039
Merge pull request #86163 from worldofpeace/wallpaper-refactor
Gnome and Pantheon: install nixos wallpapers
2020-06-07 14:44:59 -04:00
Florian Klink
de358a00b5 nixos/sddm: always run systemctl of the currently running systemd 2020-05-21 10:33:22 +02:00
Florian Klink
3fcfcb8bcb nixos/display-managers: always run systemctl of the currently running systemd 2020-05-21 10:32:59 +02:00
adisbladis
0f1eb8cd79
nixos/display-managers: Also set DBUS_SESSION_BUS_ADDRESS in the wrapper script context 2020-05-20 23:09:46 +01:00
adisbladis
effceb8bfe
nixos/display-managers: Use dbus socket unit shipped by upstream
This ensures a correct DBUS_SESSION_BUS_ADDRESS environment variable
is set and imported into the systemd user environment.

Previously this would refer to a non-existing path preventing commands
interacting with the systemd manager from working.

Closes #87502
2020-05-19 00:40:55 +01:00
Jan Tojnar
3d1706c28d nixos/lightdm: change background type to path 2020-04-29 13:24:37 -04:00
worldofpeace
62587f43dd nixos-artwork: add file path attributes
This makes things so much easier, and we install to
the path that both gnome-backgrounds and
elementary-wallpapers install to.
2020-04-29 13:23:35 -04:00
Dominik Xaver Hörl
c10d82358f treewide: add types to boolean / enable options or make use of mkEnableOption 2020-04-27 09:32:01 +02:00
Dominik Xaver Hörl
0412bde942 treewide: add bool type to enable options, or make use of mkEnableOption
Add missing type information to manually specified enable options or replace them by mkEnableOption where appropriate.
2020-04-21 08:55:36 +02:00
worldofpeace
e4c5e68fca
Merge pull request #84255 from prikhi/lightdm-mini-greeter-040
lightdm-mini-greeter: 0.3.4 -> 0.4.0
2020-04-14 08:38:23 -04:00
Jan Tojnar
f74f2f3548
nixos/gdm: fix startup
In 7f838b4dde, we dropped systemd-udev-settle.service from display-manager.service's wants.
Unfortunately, we are doing something wrong since without it both Xorg and Wayland fail to start:

	Failed to open gpu '/dev/dri/card0': GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Operation not permitted

Until we sort this out, let's add systemd-udev-settle.service to GDM to unblock the channels.
2020-04-05 16:40:30 +02:00
Pavan Rikhi
84b8775a67
lightdm-mini-greeter: 0.3.4 -> 0.4.0 2020-04-04 09:40:49 -04:00
worldofpeace
b0ac19e050 nixos: add freedesktop/gnome/myself maintainers 2020-04-01 20:53:09 -04:00
worldofpeace
3ad74e3997 nixos/display-managers: don't start pulseaudio
Hey, we have sockets.
2020-03-29 13:59:41 -04:00