summary refs log tree commit diff
path: root/nixos/modules/services/x11/window-managers
Commit message (Collapse)AuthorAge
* nixos/xmonad: update example configivanbrennan2022-01-19
| | | | | | Update the example config to show a working example for xmonad 0.17.0, which added an argument to the `launch` function and adjusted the location of the recompiled binary.
* nixos/xmonad: enableConfiguredRecompileivanbrennan2022-01-18
| | | | | | | | | | | | | | | | | | | | Commit 9a5b5d9fe858f33f7f5ce0870be2b8a38516a1d4 added Haskell dependencies (GHC and packages) to the xmonad binary's environment even if xmonad had been preconfigured (via the "config" option). The intent was to enable one-off recompiling using a local config file (e.g. ~/.config/xmonad/xmonad.hs), so the user can get quick feedback while developing their config. While this works, it may not be a common use-case, and it requires some careful crafting in xmonad.hs itself. On top of that, it significantly increases the size of the closure. Given all that, commit b69d9d3c23311ce8b8512a7032600a5f8d1595ca removed GHC and packages from the binary's environment. But there are still those among us who want to be able to recompile from a preconfigured xmonad, so let's provide a way to opt-into configured recompilation.
* nixos/xmonad: Type the last optionJanne Heß2021-12-07
|
* xmonad: Don't add ghc to the closure when 'config' is setJules Aguillon2021-10-30
| | | | | | | | | When 'services.xserver.windowManager.xmonad.config' is not null, the restart feature won't work by default and is not desirable unless specific care is made, as explained by the documentation. I think it's reasonable to not include the haskell dependencies in the environment by default. That reduces the size of my system by 2GB.
* nixos/doc: clean up defaults and examplesNaïm Favier2021-10-04
|
* Merge pull request #135108 from p3psi-boo/masterAaron Andersen2021-09-01
|\ | | | | clfswm: support custom package
| * clfswm: support custom packagep3psi2021-09-01
| | | | | | | | | | | | Fix example Remove example
* | nixos: Improve awesome wm exampleRomanos Skiadas2021-08-22
|/ | | | use a useful example instead of a package that doesn't seem to exist
* nixos/qtile: update start commandJonathan Ringer2021-08-21
|
* nixos/mlvwm: init at 0.9.3Johannes Arnold2021-07-29
|
* nixos/fvwm: gestures -> enableGestures as of #118256kat witch2021-06-27
|
* gnome: rename from gnome3Jan Tojnar2021-05-08
| | | | Since GNOME version is now 40, it no longer makes sense to use the old attribute name.
* Merge pull request #119259 from romildo/upd.e16Sandro2021-04-13
|\
| * nixos/e16: add e16 moduleJosé Romildo Malaquias2021-04-12
| |
* | Merge pull request #101852 from takagiy/init-wmderlandSandro2021-04-12
|\ \ | |/ |/|
| * nixos/wmderland: init at 2020-07-17takagiy2021-02-06
| |
* | Merge pull request #111312 from fdietze/patch-2Aaron Andersen2021-02-09
|\ \ | | | | | | herbstluftwm: Add option to specify package
| * | herbstluftwm: Add option to specify packageFelix Dietze2021-02-09
| | |
* | | Revert "nixos/xmonad: add haskellPackages type"Fritz Otlinghaus2021-02-01
| | |
* | | Merge pull request #111451 from helsinki-systems/xmonadSandro2021-01-31
|\ \ \ | | | | | | | | nixos/xmonad: add haskellPackages type
| * | | nixos/xmonad: add haskellPackages typeFritz Otlinghaus2021-01-31
| |/ /
* / / nixos/exwm: add loadScript typeFritz Otlinghaus2021-01-31
|/ /
* | nixos: use functionTo to prevent evaluation errors while mergingBas van Dijk2021-01-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge pull request #109066 from michael-p-m-white/reenable-working-clfswmMichael Raskin2021-01-14
|\ \ | | | | | | Reenable working clfswm
| * | nixos/clfswm: Restore working quicklisp packageMichael White2021-01-11
| | |
* | | treewide: emacsPackages -> emacs.pkgs & emacsWithPackages -> ↵adisbladis2021-01-13
|/ / | | | | | | | | | | emacs.pkgs.withPackages The previous names are now aliases and shouldn't be used anywhere inside nixpkgs.
* | XMonad: configured recompile (#107696)Ivan2020-12-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* | Merge pull request #62104 from Vizaxo/masterRyan Mulligan2020-11-28
|\ \ | | | | | | nixos/exwm: allow custom Emacs load script
| * | nixos/exwm: allow custom Emacs load scriptVizaxo2019-05-27
| | | | | | | | | | | | | | | Add config option services.xserver.windowManager.exwm.loadScript, which is passed to Emacs (as the -l option) to load after the user's init file.
* | | nixos/*: fix indentationzowoq2020-11-23
| |/ |/|
* | nixos/xmonad: add lassulus and xaverdh as maintainersDominik Xaver Hörl2020-10-12
| |
* | nixos/xmonad: improve module docsDominik Xaver Hörl2020-10-12
| |
* | xmonad: put the correct xmonad binary in PATHDominik Xaver Hörl2020-10-10
| |
* | nixos/xmonad: allow passing compile time options to ghc invocationDominik Xaver Hörl2020-09-07
| |
* | nixos/xmonad: allow passing command line argumentsDominik Xaver Hörl2020-09-07
| |
* | nixos/xmonad: Fix behavior of config optKurt Robert Rudolph2020-08-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to this change, the `config` option (which allows you define the haskell configuration for xmonad in your configuration.nix instead of needing something in the home directory) prevents desktop manager resources from starting. This can be demonstrated by configuring the following: ``` services.xserver = { displayManager.defaultSession = "xfce+xmonad"; displayManager.lightdm.enable = true; desktopManager.xterm.enable = false; desktopManager.xfce.enable = true; desktopManager.xfce.enableXfwm = false; desktopManager.xfce.noDesktop = true; windowManager.xmonad = { enable = true; enableContribAndExtras = true; extraPackages = haskellPackages: [ haskellPackages.xmonad-contrib haskellPackages.xmonad-extras haskellPackages.xmonad ]; config = '' import XMonad import XMonad.Config.Xfce main = xmonad xfceConfig { terminal = "terminator" , modMask = mod4Mask } ''; }; }; ``` and after user log in, search for xfce processes `ps aux | grep xfce`. You will not find xfce processes running until after the xmonad process is killed. The bug prevents utilities included with the desktopManager, (e.g. powerManagement, session logout, etc.) from working as expected.
* | nixos/modules: remove trailing whitespaceJörg Thalheim2020-08-07
| | | | | | | | | | This leads to ci failure otherwise if the file gets changed. git-blame can ignore whitespace changes.
* | lwm: init at 1.2.4AndersonTorres2020-05-13
| | | | | | | | lwm is a lightweight window manager
* | berry: init at 0.1.5AndersonTorres2020-05-13
| | | | | | | | berry is a small window manager for X11
* | yeahwm: init at 0.3.5AndersonTorres2020-05-13
| | | | | | | | yeahwm is a small window manager for X11, inspired by evilwm
* | smallwm: init at 2020-02-28AndersonTorres2020-05-13
| |
* | tinywm: init at 2014-04-22AndersonTorres2020-05-08
| | | | | | | | A tiny window manger for X11
* | Revert "nixos/none: remove"worldofpeace2020-04-02
| |
* | nixos/none: removeworldofpeace2020-04-01
| | | | | | | | | | | | This windowManager and desktopManager doesn't even have an option to use it. git history suggests to me that there's no way anyone finds this useful anymore.
* | nixos/displayManager: deprecate separate options for default wm/dmJan Tojnar2019-12-15
| | | | | | | | | | | | | | | | | | | | | | The upstream session files display managers use have no concept of sessions being composed from desktop manager and window manager. To be able to set upstream session files as default session, we need a single option. Having two different ways to set default session would be confusing, though, so we decided to deprecate the old method. We also created separate script for each session, just like we already had a separate desktop file for each one, and started using displayManager.sessionPackages mechanism to make the session handling more uniform.
* | nixos/widnow-managers/xmonad: fix systemd identifier for xmonadft2019-10-19
| |
* | nixos/window-managers: add cwm to importsMichał Krzysztof Feiler2019-10-08
| | | | | | as per request from @romildo under #70035 https://github.com/NixOS/nixpkgs/pull/70035#pullrequestreview-298166798
* | nixos/cwm: initMichał Krzysztof Feiler2019-09-29
| | | | | | | | Added windowManager cwm, basing on the module for dwm.
* | nixos/modules: Remove all usages of types.stringSilvan Mosberger2019-08-31
|/ | | | | | And replace them with a more appropriate type Also fix up some minor module problems along the way
* leftwm: enable serviceMarkus Schneider2019-05-26
|