Commit Graph

1563 Commits

Author SHA1 Message Date
Michele Guerini Rocco
af6037b338
Merge pull request #111551 from xaverdh/xserver-modern-drivers
nixos/xserver: use modern video drivers
2021-03-09 08:14:24 +01:00
Léo Gaspard
393d300055
xfce module: enable notification daemon by default (#115130)
The notification daemon is just one part of XFCE that is, to the best of
my understanding, not particularly related to it being desktop or not —
for instance, not more related than the session manager or the like.
2021-03-06 19:04:15 +01:00
TredwellGit
e3d705e601 nixos/xserver: use modern video drivers
cirrus is obsolete: https://www.vintage3d.org/cirrus.php
nv is obsolete: https://www.phoronix.com/scan.php?page=article&item=nvidia_kills_nv&num=1
vesa is obsolete: https://www.phoronix.com/scan.php?page=news_item&px=Nzc3Nw
ati and ati_unfree are superseded by amdgpu and amdgpu-pro: https://wiki.gentoo.org/wiki/ATI_FAQ#Is_my_AMD.2FATI_board_supported.3F
nouveau and fbdev added for better fallback support.
2021-03-06 08:47:18 +01: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
WORLDofPEACE
452f7e14d4 nixos/tools: generate an xserver config
The desktop configuration won't enable xserver.
If there's multiple desktops enabled they will now evaluate properly.
2021-02-13 18:46:01 -05:00
WORLDofPEACE
94f0210e60 nixos/tools: make desktopConfiguation types.listOf types.lines
This fixes #108124.
2021-02-13 18:45:27 -05:00
Aaron Andersen
5473527775
Merge pull request #111312 from fdietze/patch-2
herbstluftwm: Add option to specify package
2021-02-09 20:13:03 -05:00
Felix Dietze
5a827051aa herbstluftwm: Add option to specify package 2021-02-09 08:51:21 -01:00
Jan Tojnar
54f4529aec
Merge pull request #111519 from siraben/xdg-utils-naming 2021-02-01 17:18:57 +01:00
Fritz Otlinghaus
91b0341b53
Revert "nixos/xmonad: add haskellPackages type" 2021-02-01 16:59:07 +01:00
Ben Siraphob
a6ac3eedbd treewide: xdg_utils -> xdg-utils 2021-02-01 15:05:09 +07:00
Sandro
a68c03eb14
Merge pull request #111451 from helsinki-systems/xmonad
nixos/xmonad: add haskellPackages type
2021-01-31 15:22:06 +01:00
Sandro
4d2b0ebe18
Merge pull request #111450 from helsinki-systems/exwm
nixos/exwm: add loadScript type
2021-01-31 15:21:46 +01:00
Sandro
094c85ece5
Merge pull request #111449 from helsinki-systems/xserver
nixos/xserver: add serverFlagsSection type
2021-01-31 15:21:34 +01:00
Sandro
79021a2383
Merge pull request #111448 from helsinki-systems/gtk
nixos/lightdm-greeters/gtk: add type
2021-01-31 15:21:22 +01:00
Sandro
a6551d1aac
Merge pull request #111446 from helsinki-systems/pantheon
nixos/pantheon: add sessionPath type
2021-01-31 15:20:49 +01:00
Sandro
26249e6312
Merge pull request #111445 from helsinki-systems/gnome3
nixos/gnome3: add sessionPath type
2021-01-31 15:20:38 +01:00
Fritz Otlinghaus
37f575cd7e
nixos/xmonad: add haskellPackages type 2021-01-31 12:57:14 +01:00
Fritz Otlinghaus
234f4fe5c4
nixos/exwm: add loadScript type 2021-01-31 12:55:40 +01:00
Fritz Otlinghaus
8f261f1552
nixos/xserver: add serverFlagsSection type 2021-01-31 12:53:41 +01:00
Fritz Otlinghaus
c44f508e3e
nixos/lightdm-greeters/gtk: add type 2021-01-31 12:41:17 +01:00
Fritz Otlinghaus
1307b605d7
nixos/gnome3: add sessionPath type 2021-01-31 12:40:13 +01:00
Fritz Otlinghaus
ccd2965c70
nixos/pantheon: add sessionPath type 2021-01-31 12:39:07 +01:00
Fritz Otlinghaus
b9f972a5d8
nixos/cinnamon: add sessionPath type 2021-01-31 12:36:30 +01:00
Dmitry Kalinkin
efda1be800
Merge pull request #99314 from eadwu/clight/fix-config-file
nixos/clight: fix config file generation
2021-01-30 22:10:13 -05:00
Jacek Galowicz
001ba3934e Use lib.cartesianProducOfSets where lib.crossLists was used 2021-01-28 23:49:05 +01:00
Bas van Dijk
8ac4b251c8
nixos: use functionTo to prevent evaluation errors while merging
Without this patch merging options like
services.xserver.windowManager.xmonad.extraPackages
results in the evaluation error:

  error: value is a list while a set was expected, at nixpkgs/lib/options.nix:77:23

With this patch we get the desired merging behaviour that just concatenates the
resulting package lists.

(cherry picked from commit 6e99f9fdecb1f28308c8e0aed0fc851737354864)

Co-Authored-By: Silvan Mosberger <contact@infinisil.com>
2021-01-24 17:18:37 +01:00
Thiago Kenji Okada
c6cf9bcf0b nixos/libinput: add missing renamed module
Related PR #108909.
2021-01-21 19:52:57 -03:00
Linus Heckemann
5153deedd8
Merge pull request #108909 from thiagokokada/libinput-by-device-type
nixos/libinput: separate settings by mouse/touchpad
2021-01-21 10:43:44 +01:00
github-actions[bot]
183b673b64
Merge master into staging-next 2021-01-14 18:54:05 +00:00
Michael Raskin
01372e6624
Merge pull request #109066 from michael-p-m-white/reenable-working-clfswm
Reenable working clfswm
2021-01-14 14:14:56 +00:00
Jan Tojnar
b813710c04
Merge branch 'master' into staging-next 2021-01-14 02:24:17 +01:00
adisbladis
4003f8cbc7
treewide: emacsPackages -> emacs.pkgs & emacsWithPackages -> emacs.pkgs.withPackages
The previous names are now aliases and shouldn't be used anywhere inside nixpkgs.
2021-01-13 17:13:10 +01:00
Thiago Kenji Okada
cd15b3a30a nixos/libinput: separate settings by mouse/touchpad
This commits deprecates `services.xserver.libinput` for multiple
settings, one for each kind of device:

- `services.xserver.libinput.mouse`
- `services.xserver.libinput.touchpad`

Looking at `man 4 libinput`, they basically have the same options so I
simply replicated them, even if some options doesn't make sense for
mouse (`tapping` for example).

With this commit this is now possible:

```nix
{
  services.xserver.libinput = {
    enable = true;
    mouse = {
      accelProfile = "flat";
    };
    touchpad = {
      naturalScrolling = true;
    };
  };
}
```

And you will have a mouse with no natural scrolling but with accel
profile flat, while touchpad will have natural scrolling but accel
profile adaptative (default).

It is possible to support more device types
(tablets/keyboards/touchscreens), but at least looking at the
libinput manual for those devices it doesn't seem that it has any
configuration options for them. They can still be configured using
`services.xserver.inputClassSections` though, and this will work now
since there is no rule by default that matches them.

Closes issue #75007, while also making configuration of mouses and
touchpads using Nix attrs possible like said in PR #73785.
2021-01-13 09:54:28 -03:00
Michael White
952f2c76e0 nixos/clfswm: Restore working quicklisp package 2021-01-11 17:19:50 -07:00
Edmund Wu
771199faf3
nixos/clight: fix config file generation 2021-01-11 13:01:19 -05:00
Frederik Rietdijk
b209617ff0 plasma5Packages: alias to the libsForQt5 used to build the plasma5 desktop
For in NixOS it is beneficial if both plasma5 and pam use the same Qt5
version. Because the plasma5 desktop may use a different version as the
default Qt5 version, we introduce plasma5Packages.
2021-01-10 15:59:45 +01:00
WORLDofPEACE
7c34e83cb2
Merge pull request #108107 from talyz/reintroduce-epiphany
Revert "nixos/gnome3: don't install epiphany default"
2021-01-09 16:45:31 -05:00
talyz
6a12654363
Revert "nixos/gnome3: don't put epiphany in favorite apps"
This reverts commit 70dc25abd9.
2021-01-05 16:12:37 +01:00
talyz
39cce2f144
Revert "nixos/gnome3: don't install epiphany default"
This reverts commit 13b192749c, since
https://github.com/NixOS/nixpkgs/issues/98819 is now fixed.
2021-01-05 16:12:31 +01:00
Thomas Tuegel
e65962eafd
nixos/plasma5: synchronize Qt version with all-packages.nix 2021-01-01 08:26:33 -06: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
Ivan
b90c5cb703
XMonad: configured recompile (#107696)
* nixos/xmonad: xmonad config w/ghc+xmessage

When the "config" option isn't set, we use xmonad-with-packages to
provide xmonad with runtime access to an isolated ghc, ensuring it can
recompile and exec a user's local config (e.g. $HOME/.xmonad/xmonad.hs)
regardless of which ghc (if any) is on PATH.

When the "config" option is set, however, we compile a configured xmonad
executable upfront (during nixos-rebuild), and prior to this commit, it
was not provided with runtime access to an isolated ghc.

As a result, with the "config" option set, it was not possible
to recompile and exec a user's local config unless there was a
compatible version of ghc on PATH with the necessary packages (xmonad,
xmonad-contrib, etc.) in its package database. Adding such a ghc to
environment.systemPackages, e.g.

  (haskellPackages.ghcWithPackages (ps: with ps; [xmonad xmonad-contrib]))

is problematic because it adds both ghc and an unconfigured xmonad to
PATH, e.g.

  $ ls -l $(which xmonad ghc)
  lrwxrwxrwx ... /run/current-system/sw/bin/ghc -> /nix/store/...-ghc-8.10.2-with-packages/bin/ghc
  lrwxrwxrwx ... /run/current-system/sw/bin/xmonad -> /nix/store/...-ghc-8.10.2-with-packages/bin/xmonad

Having the unconfigured xmonad on PATH is particularly bad because
restarting xmonad will dump the user into the unconfigured version, and
if no local config exists (e.g. in $HOME/.xmonad/xmonad.hs), they'll be
left in this unconfigured state.

In this commmit, we give the configured xmonad runtime access to ghc
like xmonad-with-packages does for the unconfigured version. The aim
is to allow the user to switch between the nixos module's config and a
local config (e.g. $HOME/.xmonad/xmonad.hs) at will, so they can try out
config changes without performing a nixos-rebuild.

Since the xmonad on PATH is the configured executable, there's no
danger a user could unwittingly restart into the unconfigured version,
and because xmonad will refuse to recompile when no local config
exists, there's no danger a user could unwittingly recompile into an
unconfigured version.

Given that a local config exists, the recompile/restart behavior depends
on two factors:
- which entry point is used
  * 'XMonad.xmonad' (default)
  * 'XMonad.launch' (recommended in "config" option description)
- what operation is triggered (i.e. via mod+q)
  * `spawn "xmonad --recompile && xmonad --restart"` (default)
  * `restart "xmonad" True`
  * custom function

If the default 'XMonad.xmonad' entrypoint and default mod+q operation
are used, hitting mod+q will compile and exec the local config, which
will remain in use until next time the display manager is restarted.

If the entrypoint is changed to 'XMonad.launch' but mod+q left with its
default operation, hitting mod+q will have no visible effect. The logs
(as seen by running `journalctl --identifier xmonad --follow`) will show
an error,
  X Error of failed request:  BadAccess (attempt to access private resource denied)
which indicates that the shell was unable to start xmonad because
another window manager is already running (namely, the nixos-configured
xmonad).
https://wiki.haskell.org/Xmonad/Frequently_asked_questions#X_Error_of_failed_request:_BadAccess_.28attempt_to_access_private_resource_denied.29

Changing the mod+q operation to `restart "xmonad" True` (as recommended
in the "config" option's description) will allow a restart of the
nixos-configured xmonad to be triggeredy by hitting mod+q.

Finally, if the entrypoint is 'XMonad.launch', mod+q has been
bound to `restart "xmonad" True` and another key bound to a custom
recompile/restart function (e.g. `compileRestart` as shown in the
"config" option example), the user can switch between the nixos module's
config and their local config, with the custom key switching to the
local config and mod+q switching back.

* nixos/xmonad: refactor let binding

* nixos/xmonad: refactor (eliminate duplicate code)

* nixos/xmonad: install man pages

Prior to this commit, man pages were not installed if the "config"
option was set.

* nixos/xmonad: comment grammar fixups

* nixos/xmonad: writeStateToFile in example config

Calling writeStateToFile prior to recompiling and restarting allows
state (workspaces, etc.) to be preserved across the restart.

* nixos/xmonad: add ivanbrennan to maintainers

* nixos/xmonad: adjust compileRestart example

* nixos/xmonad: add missing import to example config
2020-12-28 17:27:36 +01: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
Thomas Tuegel
39b76030be
Merge pull request #104810 from Thra11/plasma-5-20
Plasma 5.20.4
2020-12-13 13:50:53 -06: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