Commit Graph

964 Commits

Author SHA1 Message Date
lassulus
fc035da4a4 xserver.displayManager: change default
Switch from slim to lightdm as the display-manager.
    If plasma5 is used as desktop-manager use sdddm.
    If gnome3 is used as desktop-manager use gdm.

    Based on 
2018-08-31 17:57:39 +02:00
Jan Tojnar
8a8056c302
Merge pull request from michaelpj/imp/freedesktop-modules
freedesktop modules: init
2018-08-30 16:14:35 +01:00
Vladimír Čunát
6f2f91f307
Merge : libinput: split .bin output 2018-08-30 15:29:32 +02:00
Vladimír Čunát
ab539ab863
libinput: make .bin the first output
That's the convention:
2018-08-30 15:27:26 +02:00
Samuel Dionne-Riel
bc5b26b4ab Reviews use of old nixos wallpaper to use one with the new logo.
The wallpaper used is *structurally compatible* with the other one,
meaning that the logo is at the same location, and not bigger.

It has one drawback: the logo is brighter, which clashes with the grub
usage. This is to be fixed with new options in grub.
2018-08-29 00:04:58 -04:00
Michael Peyton Jones
13e2e19158
xdg: add modules for supporting various XDG specs 2018-08-16 21:23:34 +01:00
Mitsuhiro Nakamura
7fbdd7fcf4 lightdm: enable the accounts daemon to find dbus interface 2018-08-16 21:52:25 +09:00
Mitsuhiro Nakamura
6c84945099 lightdm: fix typos 2018-08-16 21:52:25 +09:00
Jan Tojnar
fe51bf322c
Merge pull request from michaelpj/fix/redshift-geoclue-agents
redshift/geoclue/localtime: progress in fixing agent confusion
2018-08-14 17:13:09 +02:00
Edmund Wu
2d1ecc482d
lightdm-enso-os-greeter: init at 0.2.1 2018-08-14 11:06:17 -04:00
Michael Peyton Jones
316669327c
geoclue2 service: add option to run demo agent 2018-08-14 15:55:04 +01:00
Michael Peyton Jones
a1762065c3
redshift: install desktop files, and use absolute paths in them to avoid confusing geoclue agent 2018-08-14 15:53:39 +01:00
Edmund Wu
ced374cf98
display-managers: rely on socket to activate pulseaudio 2018-08-10 12:43:47 -04:00
Silvan Mosberger
c08244fc1b
Merge pull request from dlahoti/patch-1
add `/share/sddm/themes` to `environment.pathsToLink`
2018-08-09 23:41:47 +02:00
Deven Lahoti
414e6de41a nixos/sddm: add /share/sddm/themes to environment.pathsToLink
Without this, there are no SDDM themes available in the directory configured in `sddm.conf`.
2018-08-09 15:17:22 -05:00
Jan Tojnar
69c47a3d91
nixos/metacity: switch to gnome3.metacity 2018-08-09 17:36:47 +02:00
Bastian Köcher
60e1e81201 services.plasma5: Make activationscript use absolute path to
`kbuildsyscoca5`
2018-08-06 17:15:53 +02:00
xeji
1258e6dd3a
Merge pull request from rembo10/lightdm-gtk-greeter
nixos/lightdm-gtk-greeter: svg icon support
2018-08-04 17:55:54 +02:00
Silvan Mosberger
fcb4254276
Merge pull request from jfrankenau/fix-pulse-module-x11-publish
nixos/display-managers: fix loading of module-x11-publish
2018-08-03 17:00:14 +02:00
Johannes Frankenau
b7ce7d5b3f nixos/display-managers: fix loading of module-x11-publish
module-x11-publish is only provided by the pulseaudioFull package.
2018-08-03 12:22:28 +02:00
Jan Tojnar
62e665e1ec
nixos/gnome3: warn against sessionPath 2018-08-01 20:36:25 +02:00
Tor Hedin Brønner
9cd6342008
nixos/gnome3: Add back debug 2018-08-01 19:14:33 +02:00
Tor Hedin Brønner
ee34f2537a
nixos/gnome3: Add back sessionPath
Implement through `services.xserver.displayManager.sessionCommands`.
2018-08-01 19:14:33 +02:00
Tor Hedin Brønner
efa27d33cf
nixos/desktopManager: Only trace if the default session isn't found
The default session might be found in `extraSessionFilePackages`, but it's not
viable to detect at evaluation time, so emit a warning.

In LightDM instead of checking `defaultSessionName` against
`displayManager.session.names` we rely on the assertions in
`desktopManager` and `windowMananger` and just check that there's at least one
default set. The second assertion could never actually be triggered.
2018-08-01 19:14:32 +02:00
Tor Hedin Brønner
9fad9fb869
nixos/displayManager: Create a common environment wrapper for all dms
This makes it easier to support a wider variety of .desktop session files. In
particular this makes it possible to use both the «legacy» sessions and upstream
session files.

We separate `xsession` into two parts, `xsessionWrapper` and `xsession`.
`xsessionWrapper` sets up the correct environment and then lauches the session's
Exec command (from the .desktop file), falling back to launching the default
window/desktopManager through the `xsession` script (required by at least some
nixos tests).

`xsession` then _only_ handles launching desktop-managers/window-managers defined
through `services.xserver.desktopManager.session`.
2018-08-01 19:14:32 +02:00
Jan Tojnar
e6056c72d1
nixos/gnome3: use upstream session file
Pass gnome-session to extraSessionFilePackages, remove unnecessary environment variables, move the rest out of old session option, and then drop the option.
2018-08-01 19:14:31 +02:00
Jan Tojnar
eb65e5ce56
nixos/gnome3: remove session path
Global environment variables are not very Nix-y.
2018-08-01 19:14:31 +02:00
Jan Tojnar
0e1c01451f
nixos/gnome3: rely on xdg autostart for xdg-user-dirs 2018-08-01 19:14:30 +02:00
Jan Tojnar
cc6d77c83f
gnome3.gdm: add upstream xsession 2018-08-01 19:14:30 +02:00
Jan Tojnar
83fc9a9825
nixos/display-manager.default: add extraSessionFilePackages option 2018-08-01 19:14:30 +02:00
Jan Tojnar
a8c6489fd4
nixos/services.xserver.displayManager: move X sessions to a subdirectory
Previously, the mkDesktops function produced a flat package containing
session files in the top level. As a preparation for introduction of
Wayland sessions, the files will now be placed to $out/share/xsessions.
2018-08-01 19:14:29 +02:00
José Romildo Malaquias
63b8e9a2d1 lxqt: add ${config.system.path}/share to XDG_CONFIG_DIRS 2018-07-27 19:59:45 -03:00
volth
cc55a3ebcb treewide: fix build with disallowed aliases ()
fixes build with disallowed aliases
2018-07-21 22:03:24 -04:00
Jörg Thalheim
e9ff0f9448
Merge pull request from volth/unused4
[bot] nixos/*: remove unused arguments in lambdas
2018-07-21 16:39:08 +01:00
volth
2e979e8ceb [bot] nixos/*: remove unused arguments in lambdas 2018-07-20 20:56:59 +00:00
volth
6d2857a311 [bot] treewide: remove unused 'inherit' in let blocks 2018-07-20 19:38:19 +00:00
volth
87f5930c3f [bot]: remove unreferenced code 2018-07-20 18:48:37 +00:00
Thomas Tuegel
5ea799defc
Merge pull request from peterhoeg/f/sddmqt
sddm: use tmpfiles.d to wipe QML cache
2018-07-14 13:16:18 -05:00
Thomas Tuegel
1301973797
Merge pull request from bkchr/kde_update_start_menu
services.plasma5: Update start menu with an activationScript
2018-07-14 13:13:39 -05:00
rembo10
c84e668109 nixos/lightdm-gtk-greeter: svg icon support 2018-07-12 18:20:07 +03:00
volth
88939a1949 nixos: remove option services.xserver.desktopManager.xfce.screenLock 2018-07-12 01:45:41 +00:00
Ambroz Bizjak
f26153754a nixos/xserver: Implement configuration of NVIDIA Optimus via PRIME
This adds configuration options which automate the configuration of NVIDIA Optimus using PRIME. This allows using the NVIDIA proprietary driver on Optimus laptops, in order to render using the NVIDIA GPU while outputting to displays connected only to the integrated Intel GPU. It also adds an option for enabling kernel modesetting for the NVIDIA driver (via a kernel command line flag); this is particularly useful together with Optimus/PRIME because it fixes tearing on PRIME-connected screens.

The user still needs to enable the Optimus/PRIME feature and specify the bus IDs of the Intel and NVIDIA GPUs, but this is still much easier for users and more reliable. The implementation handles both the X configuration file as well as getting display managers to run certain necessary `xrandr` commands just after X has started.

Configuration of commands run after X startup is done using a new configuration option `services.xserver.displayManager.setupCommands`. Support for this option is implemented for LightDM, GDM and SDDM; all of these have been tested with this feature including logging into a Plasma session.

Note: support of `setupCommands` for GDM is implemented by making GDM run the session executable via a wrapper; the wrapper will run the `setupCommands` before execing. This seemed like the simplest and most reliable approach, and solves running these commands both for GDM's X server and user X servers (GDM starts separate X servers for itself and user sessions). An alternative approach would be with autostart files but that seems harder to set up and less reliable.

Note that some simple features for X configuration file generation (in `xserver.nix`) are added which are used in the implementation:
- `services.xserver.extraConfig`: Allows adding arbitrary new sections. This is used to add the Device section for the Intel GPU.
- `deviceSection` and `screenSection` within `services.xserver.drivers`. This allows the nvidia configuration module to add additional contents into the `Device` and `Screen` sections of the "nvidia" driver, and not into such sections for other drivers that may be enabled.
2018-07-09 18:46:13 +02:00
Peter Hoeg
cd4e54b3a1 sddm: use tmpfiles.d to wipe QML cache 2018-07-09 14:51:05 +08:00
Matthew Bauer
a92472fae1
Merge pull request from yshui/libinput-button
libinput: add button to scrollMethod
2018-07-05 22:10:26 -04:00
Bastian Köcher
8b3fb83160 services.plasma5: Update start menu with an activationScript
To update the plasma start menu `kbuildsyscoca5` needs to be executed.
There are several people complaining about missing applications in their
plasma start menu.
This patch adds a activationScript for plasma, that runs
`kbuildsyscoca5` for each user that has `isNormalUser` == `true`.
2018-07-03 15:18:07 +02:00
Florian Klink
fff5923686 nixos/modules: users.(extraUsers|extraGroup->users|group) 2018-06-30 03:02:58 +02:00
Yuxuan Shui
a8ff4a073f nixos/libinput: add button to scrollMethod
Close 
2018-06-28 12:15:00 +01:00
Ambroz Bizjak
d9fa88dfe8 Use a NixOS module for generating the gdk-pixbuf loaders cache.
Fixes issue  and makes it possible to enable Plasma and KDE at the same time.

Previously, this worked like this:
- The gdk-pixbuf package comes with a cache file covering the modules bundled
  with gdk-pixbuf.
- The librsvg package comes with a cache covering modules from gdk-pixbuf as
  well as librsvg.
- plasma5 and xfce modules set the environment variable GDK_PIXBUF_MODULE_FILE
  to the one from librsvg, so that SVG was supported in addition to the
  formats supported by gdk-pixbuf. However if both were enabled a configuration
  conflict would result (despite setting to the same value).

While this sort of worked (ignoring the conflict which perhaps could be hacked
around), it is unscalable and a hack, as there would be a real problem when one
wanted to add a third package that supports additional image formats.

A new NixOS module (gdk-pixbuf) is added with a configuration option
(modulePackages) that other modules use to request specific packages to be
included in the loaders cache. When any package is present in the list, the
module generates a system-wide loaders cache which includes the requested
packages (and always gdk-pixbuf itself), and sets the environment variable
GDK_PIXBUF_MODULE_FILE to point to the generated cache file.

The plasma5 and xfce modules are updated to add librsvg to modulePackages
instead of setting GDK_PIXBUF_MODULE_FILE.

Note that many packages create wrappers that set GDK_PIXBUF_MODULE_FILE,
some directly to the one from librsvg. Therefore this change does not
change the existing hack in the librsvg package which ensures that
file is generated. This change aims only to solve the conflict in the
global environent variable configuration.
2018-06-25 16:23:45 +02:00
Matthew Justin Bauer
8180c32b73
Merge pull request from mnacamura/lightdm-mini-greeter
lightdm-mini-greeter: init at 0.3.2
2018-06-18 11:38:35 -04:00
Mitsuhiro Nakamura
83b389394b lightdm-mini-greeter: init at 0.3.2 2018-06-18 18:55:06 +09:00
tilpner
903292a2d8
nixos/awesome: Add noArgb option
Add option to disable client transparency support in awesome,
which greatly improves performance in my setup
(and presumably will in some others).
2018-06-13 19:47:26 +02:00
Jan Malakhovski
b01ccbb899 nixos: xserver: add related packages 2018-06-13 16:25:10 +00:00
Peter Hoeg
159c1576c8
Merge pull request from peterhoeg/m/sddm
sddm: add support for hidpi mode
2018-05-30 16:23:07 +08:00
Shea Levy
6da6accd30
treewide: Remove uses of builtins.toPath.
toPath has confusing semantics and is never necessary; it can always
either just be omitted or replaced by pre-concatenating `/.`. It has
been marked as "!!! obsolete?" for more than 10 years in a C++
comment, hopefully removing it will let us properly deprecate and,
eventually, remove it.
2018-05-22 16:42:02 -04:00
Jan Tojnar
75cc398b97
Merge pull request from jtojnar/gdm-wayland
GDM wayland improvements
2018-05-16 16:39:12 +02:00
Jan Tojnar
54135fc733
gnome3.gdm: allow choosing user account without GNOME
Account chooser depends on AccountsService, which is normally enabled by
GNOME module but it was missing when using GDM without GNOME.
2018-05-16 16:25:22 +02:00
Peter Hoeg
b368a1103b sddm: add support for hidpi mode 2018-05-16 12:15:29 +08:00
Jan Tojnar
d5060ac3a7
Merge pull request from jtojnar/flatpak
Flatpak
2018-05-15 14:19:33 +02:00
Jan Tojnar
ec80c5e4c4
nixos/flatpak: allow specifying extra portals 2018-05-15 13:31:13 +02:00
Arcadio Rubio García
efde5fefb3 nixos: stumpwm: switch from package marked as broken to working quicklisp package () 2018-05-14 18:37:53 +02:00
Jan Malakhovski
44d612d6e5 nixos: services.xserver.desktopManager.xterm.enable: fix type 2018-05-13 01:15:23 +00:00
Milo
b405a6537c nixos/bspwm: spawn bpswm process in the background and properly set waiPID () 2018-04-30 17:03:05 +00:00
Jörg Thalheim
468f3ce0ed nixos/xserver: remove nvidiaLegacy173 from videoDrivers.examples
see 92265e807e (commitcomment-28773179)
2018-04-27 23:02:09 +01:00
Jan Malakhovski
92265e807e nixos: xserver: add related packages 2018-04-27 18:10:04 +01:00
Frederik Rietdijk
595a72589f Merge master into staging 2018-04-08 10:54:17 +02:00
Tim Engler
d488a9dc7a nixos/lxqt: enable upower if config.powerManagement is enabled () 2018-04-06 08:49:55 +01:00
Johannes Lötzsch
1ab3736146 mate/mate-screensaver: fixed unixAuth
Without this fix, it's not possible to unlock the mate-screensaver.
2018-04-01 19:01:26 +02:00
Frederik Rietdijk
9d2ff98571 Merge remote-tracking branch 'upstream/master' into HEAD 2018-03-30 08:14:35 +02:00
Maximilian Bosch
5caa22fe0a Revert restrictive validation behavior for DM/WM defaults in the X module
The original idea behind this change (described in ticket ) was to
improve the assertions to avoid that users of the X server accidentally
forget to configure a DM or WM.

However this caused several issues with setups that require X, but no DM
or WM. The keymap testcases became instable as well as now disabling DMs
needs to be done explicitly.
(see https://github.com/NixOS/nixpkgs/pull/31268#issuecomment-347080036)

In the end the idea behind the change and  was obviously a
mistake, so reverting it completely for now should be fine.
2018-03-28 20:34:05 +02:00
Nikolay Amiantov
4f0b59de9a xserver service: cleanup LD_LIBRARY_PATH
X libraries in LD_LIBRARY_PATH seem to not be needed anymore.
I've tracked this addition as far as I could
(02cef04c81) and they seem to be added for unfree
NVIDIA and ATI drivers but at least for NVIDIA they are not needed anymore. We
can add them with patchelf instead if it turns out to be the case with ATI.
2018-03-26 14:01:49 +03:00
Florian Klink
6ac74d60ad networkmanager-pptp: remove package
Currently broken on NixOS due to hardcoded modprobe binary path (see
bug  from Oct 2017), no activity on a proposed fix for months.
As the protocol is terribly broken anyways, let's better remove it
completely, and not talk about anymore ;-)

Closes .
2018-03-23 22:24:50 +01:00
Jörg Thalheim
5c1c4fbb06
Merge pull request from herrwiese/evilwm
nixos/window-managers: actually add evilwm to default.nix
2018-03-18 11:13:23 +00:00
Andreas Wiese
c7e1dff94e nixos/window-managers: actually add evilwm to default.nix
Commit 1f2b938 introduced a module for evilwm as a window-manager, but
did not actually add this module to window-manager's default.nix which
renders it useless.
2018-03-15 10:22:53 +01:00
Jan Malakhovski
7079e744d4 Merge branch 'master' into staging
Resolved the following conflicts (by carefully applying patches from the both
branches since the fork point):

   pkgs/development/libraries/epoxy/default.nix
   pkgs/development/libraries/gtk+/3.x.nix
   pkgs/development/python-modules/asgiref/default.nix
   pkgs/development/python-modules/daphne/default.nix
   pkgs/os-specific/linux/systemd/default.nix
2018-03-10 20:38:13 +00:00
Will Fancher
6b9a99e55d LightDM: Set default user session when possible. 2018-03-04 23:54:09 +00:00
Tuomas Tynkkynen
1e107443ad Merge commit '618ac29687a650d854c8bea7efd4490387589ce2' into staging 2018-03-03 22:40:32 +02:00
Jan Tojnar
618ac29687
cantarell-fonts: rename from cantarell_fonts 2018-03-03 00:36:38 +01:00
Shea Levy
fec543436d
nixos: Move uses of stdenv.shell to runtimeShell. 2018-03-01 14:38:53 -05:00
Jan Tojnar
a31d98f312
tree-wide: autorename gnome packages to use dashes 2018-02-25 17:41:16 +01:00
Franz Pletz
0dcf5df0ed
Merge pull request from WilliButz/fix-xautolock
nixos/xautolock: fix default defaults/examples, add assertions
2018-02-22 23:10:03 +00:00
adisbladis
1de98e8568
plasma: 5.11.5 -> 5.12.1 2018-02-14 17:24:20 +08:00
Thomas Tuegel
4688dd0cf5
Merge pull request from ttuegel/bugfix/plasma-integration/font-style
plasma-integration: Fix font style name bug with Qt >= 5.8
2018-02-04 17:41:50 -06:00
Thomas Tuegel
77a607aa88
nixos/plasma5: Fix font style names in kdeglobals 2018-02-04 13:31:04 -06:00
Jörg Thalheim
a4170403e6
Merge pull request from rnhmjoj/digits
Avoid package attributes starting with a digit
2018-02-02 19:30:23 +00:00
WilliButz
c2fa5f1729
nixos/xautolock: fix default defaults/examples, add assertions
see issue 
2018-01-31 21:43:23 +01:00
Vladimír Čunát
5402412b97
Merge : xfce: cleanup, hyphenate attributes 2018-01-21 09:52:58 +01:00
rnhmjoj
c946c101d6
avoid package attributes starting with a digit 2018-01-16 21:13:16 +01:00
Eelco Dolstra
dddcd10ecc
Don't set 'config.xorg = {}'
This makes memoization of Nixpkgs evaluation less effective, since
some Nixpkgs invocations may have 'config = {}' while others may have
'config = { xorg = {}; }'.

Instead set 'config = {}'.
2018-01-11 19:31:05 +01:00
José Romildo Malaquias
8b416450ea mate: let caja find extensions and gsettings schemas 2018-01-09 02:40:04 +02:00
José Romildo Malaquias
598c6c13f0 mate-panel: let mate-panel find applets in config system path 2018-01-09 02:40:04 +02:00
José Romildo Malaquias
ca27392d9c mate-control-center: add gsettings schemas path to XDG vars
mate-control-center depends on mate-settings-daemon, but the later needs
gsettings schemas  provided by the former. To fix this the gsettings schema
path from mate-control-center is added to XDG_DATA_DIRS at session
startup.
2018-01-09 02:40:04 +02:00
José Romildo Malaquias
1bacb88c6a mate-session-manager: add debug option to mate service 2018-01-09 02:40:04 +02:00
Yegor Timoshenko
f7a9f96725
nixos/xfce: clean up, use hyphenated attributes 2018-01-08 05:12:05 +00:00
José Romildo Malaquias
d0eb40b311 lightdm-gtk-greater: add configuration options for clock format and indicators 2018-01-06 02:20:53 +00:00
Uli Schlachter
5465d6f7de awesome: Use --search instead of $LUA_PATH/$LUA_CPATH
Instead of polluting the environment with environment variables which
are inherited by processes spawned from awesome, use the command line
argument "--search" to add things to the search path.

cc 
2018-01-02 17:24:56 +00:00
Yegor Timoshenko
0dd6bd214d
xfce: resolve conflict with KDE
This resolves some aspects of , but GDK_PIXBUF_MODULE_FILE doesn't really belong to any DE module.
2017-12-31 05:22:15 +00:00
Yegor Timoshenko
c31ac41810
libinput: disableWhileTyping = false by default 2017-12-30 22:02:16 +00:00
adisbladis
563078184e
services.xserver.desktopManager.plasma5: add qtvirtualkeyboard to systemPackages 2017-12-28 21:13:46 +08:00
Peter Hoeg
7798051817
Merge pull request from peterhoeg/u/kdeapp
kde-applications: 17.08.3 -> 17.12.0
2017-12-28 08:22:27 +08:00
José Romildo Malaquias
6e0387a1e6 mate: fix XDG_MENU_PREFIX 2017-12-25 07:15:07 +01:00