diff --git a/doc/guix.texi b/doc/guix.texi index 04192840a0..2ccc788703 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -31,7 +31,7 @@ Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 Nils Gillmann@* -Copyright @copyright{} 2016, 2017, 2018 Jan Nieuwenhuizen@* +Copyright @copyright{} 2016, 2017, 2018, 2019 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016, 2017, 2018, 2019 Christopher Baines@* @@ -13140,6 +13140,7 @@ type @code{}. [#:fonts %default-xorg-fonts] @ [#:configuration-file (xorg-configuration-file @dots{})] @ [#:xorg-server @var{xorg-server}] + [#:xserver-arguments '("-nolisten" "tcp")] Return a @code{startx} script in which @var{modules}, a list of X module packages, and @var{fonts}, a list of X font directories, are available. See @code{xorg-wrapper} for more details on the arguments. The result should be @@ -13148,6 +13149,22 @@ used in place of @code{startx}. Usually the X server is started by a login manager. @end deffn +@cindex @code{-listen tcp}, for X11. +This procedure is useful to override command line options for the X server, +such as having it listen to over TCP: + +@example +(operating-system + ... + (services + (modify-services %desktop-services + (slim-service-type config => + (slim-configuration + (inherit config) + (startx (xorg-start-command + #:xserver-arguments '("-listen" "tcp")))))))) +@end example + @deffn {Scheme Procedure} xorg-configuration-file @ [#:modules %default-xorg-modules] @ [#:fonts %default-xorg-fonts] @ diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index f7d07b309e..f2a3c28c90 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2019 Ludovic Courtès ;;; Copyright © 2015 Sou Bunnbu ;;; Copyright © 2018, 2019 Timothy Sample +;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen ;;; ;;; This file is part of GNU Guix. ;;; @@ -292,7 +293,8 @@ in place of @code{/usr/bin/X}." (configuration-file (xorg-configuration-file #:modules modules #:fonts fonts)) - (xorg-server xorg-server)) + (xorg-server xorg-server) + (xserver-arguments '("-nolisten" "tcp"))) "Return a @code{startx} script in which @var{modules}, a list of X module packages, and @var{fonts}, a list of X font directories, are available. See @code{xorg-wrapper} for more details on the arguments. The result should be @@ -305,8 +307,8 @@ used in place of @code{startx}." (define exp ;; Write a small wrapper around the X server. #~(apply execl #$X #$X ;; Second #$X is for argv[0]. - "-logverbose" "-verbose" "-nolisten" "tcp" "-terminate" - (cdr (command-line)))) + "-logverbose" "-verbose" "-terminate" #$@xserver-arguments + (cdr (command-line)))) (program-file "startx" exp))