* gnu/home/services/sway.scm: Export field accessors for sway-* configuration
records.
Change-Id: I0f116508bdd710dec810dcbb69cf3c7b91daead4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/home/services/sway.scm (make-alist-predicate): Add an optional argument.
(bindings?): Remove procedure.
(keybinding-options?): New procedures.
(codebinding-options?): New procedures.
(gesture-options?): New procedures.
(mouse-bindings?): Allow to pass options to mouse-bindings.
(sway-configuration) [keybindings]: Allow to pass options to key-bindings.
[gestures]: Allow to pass options to gesture-bindings.
(sway-mode) [keybindings]: Allow to pass options to key-bindings.
(serialize-binding): Support options.
(serialize-mouse-binding): Support options.
(serialize-keybinding): Support options.
(serialize-gesture): Support options.
(serialize-variable): Inline previous definition.
* doc/guix.texi (Sway window manager): Document this.
Change-Id: Icf210aca4a9b44adc0baead7430637f6fcda17e5
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/home/services/sway.scm: New file.
(home-sway-service-type): New variable.
(sway-configuration->file): New procedure.
(sway-configuration): New configuration record.
(sway-bar): New configuration record.
(sway-output): New configuration record.
(sway-input): New configuration record.
(point): New configuration record.
(sway-color): New configuration record.
(sway-border-color): New configuration record.
(sway-mode): New configuration record.
(flatmap): New procedure.
* gnu/local.mk: Add gnu/home/services/sway.scm.
* doc/guix.texi (Sway window manager): New node to document the above
changes.
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
Change-Id: I880261570c5afdb795f2ce18bac2b9a5c898677f