* [bug#33186] [PATCH 2/7] services: kmscon: Do not switch to vt at start.
2018-10-28 12:40 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Mathieu Othacehe
@ 2018-10-28 12:40 ` Mathieu Othacehe
2018-11-06 15:35 ` Ludovic Courtès
2018-10-28 12:40 ` [bug#33186] [PATCH 3/7] services: kmscon: Add an auto-login option Mathieu Othacehe
` (5 subsequent siblings)
6 siblings, 1 reply; 24+ messages in thread
From: Mathieu Othacehe @ 2018-10-28 12:40 UTC (permalink / raw)
To: 33186
* gnu/services/base.scm (kmscon-service-type): Add "--no-switchvt" to kmscon
command to prevent a switch to virtual terminal every time a new kmscon
service is spawned.
---
gnu/services/base.scm | 1 +
1 file changed, 1 insertion(+)
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 47c7d8bb2..4c341309b 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -2057,6 +2057,7 @@ This service is not part of @var{%base-services}."
#~(list
#$(file-append kmscon "/bin/kmscon") "--login"
"--vt" #$virtual-terminal
+ "--no-switchvt"
#$@(if hardware-acceleration? '("--hwaccel") '())
"--" #$login-program #$@login-arguments))
--
2.17.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 3/7] services: kmscon: Add an auto-login option.
2018-10-28 12:40 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Mathieu Othacehe
2018-10-28 12:40 ` [bug#33186] [PATCH 2/7] services: kmscon: Do not switch to vt at start Mathieu Othacehe
@ 2018-10-28 12:40 ` Mathieu Othacehe
2018-11-06 15:36 ` Ludovic Courtès
2018-10-28 12:40 ` [bug#33186] [PATCH 4/7] gnu: glibc: Export supported locales Mathieu Othacehe
` (4 subsequent siblings)
6 siblings, 1 reply; 24+ messages in thread
From: Mathieu Othacehe @ 2018-10-28 12:40 UTC (permalink / raw)
To: 33186
Add an auto-login option that behaves as the one of mingetty-service.
* gnu/services/base.scm (kmscon-configuration)[auto-login]: New field.
(kmscon-service-type): Pass it to kmscon command.
* doc/guix.texi: Document it.
---
doc/guix.texi | 6 +++++-
gnu/services/base.scm | 9 ++++++++-
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/doc/guix.texi b/doc/guix.texi
index 87579d414..c58d7909f 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -31,7 +31,7 @@ Copyright @copyright{} 2016, 2017, 2018 Jan Nieuwenhuizen@*
Copyright @copyright{} 2016 Julien Lepiller@*
Copyright @copyright{} 2016 Alex ter Weele@*
Copyright @copyright{} 2017, 2018 Clément Lassieur@*
-Copyright @copyright{} 2017 Mathieu Othacehe@*
+Copyright @copyright{} 2017, 2018 Mathieu Othacehe@*
Copyright @copyright{} 2017 Federico Beffa@*
Copyright @copyright{} 2017, 2018 Carlo Zancanaro@*
Copyright @copyright{} 2017 Thomas Danckaert@*
@@ -10873,6 +10873,10 @@ A gexp denoting the name of the log-in program. The default log-in program is
@item @code{login-arguments} (default: @code{'("-p")})
A list of arguments to pass to @command{login}.
+@item @code{auto-login} (default: #f)
+When passed a login name, as a string, the specified user will be logged
+in automatically without prompting for their login name or password.
+
@item @code{hardware-acceleration?} (default: #f)
Whether to use hardware acceleration.
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 4c341309b..8a8df45a1 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2040,6 +2041,8 @@ This service is not part of @var{%base-services}."
(default (file-append shadow "/bin/login")))
(login-arguments kmscon-configuration-login-arguments
(default '("-p")))
+ (auto-login kmscon-configuration-auto-login
+ (default #f))
(hardware-acceleration? kmscon-configuration-hardware-acceleration?
(default #f))) ; #t causes failure
@@ -2051,6 +2054,7 @@ This service is not part of @var{%base-services}."
(virtual-terminal (kmscon-configuration-virtual-terminal config))
(login-program (kmscon-configuration-login-program config))
(login-arguments (kmscon-configuration-login-arguments config))
+ (auto-login (kmscon-configuration-auto-login config))
(hardware-acceleration? (kmscon-configuration-hardware-acceleration? config)))
(define kmscon-command
@@ -2059,7 +2063,10 @@ This service is not part of @var{%base-services}."
"--vt" #$virtual-terminal
"--no-switchvt"
#$@(if hardware-acceleration? '("--hwaccel") '())
- "--" #$login-program #$@login-arguments))
+ "--" #$login-program #$@login-arguments
+ #$@(if auto-login
+ #~(#$auto-login)
+ #~())))
(shepherd-service
(documentation "kmscon virtual terminal")
--
2.17.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 4/7] gnu: glibc: Export supported locales.
2018-10-28 12:40 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Mathieu Othacehe
2018-10-28 12:40 ` [bug#33186] [PATCH 2/7] services: kmscon: Do not switch to vt at start Mathieu Othacehe
2018-10-28 12:40 ` [bug#33186] [PATCH 3/7] services: kmscon: Add an auto-login option Mathieu Othacehe
@ 2018-10-28 12:40 ` Mathieu Othacehe
2018-11-06 15:37 ` Ludovic Courtès
2018-10-28 12:40 ` [bug#33186] [PATCH 5/7] gnu: terminals: Change libtsm and kmscon repositories Mathieu Othacehe
` (3 subsequent siblings)
6 siblings, 1 reply; 24+ messages in thread
From: Mathieu Othacehe @ 2018-10-28 12:40 UTC (permalink / raw)
To: 33186
Debian and Archlinux (at least) force the installation of the
localedata/SUPPORTED file of the glibc. This file lists all the supported
locales of the glibc.
* gnu/packages/patches/glibc-supported-locales.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (glibc/linux): Add the previous patch,
(glibc-2.28): ditto.
---
gnu/local.mk | 1 +
gnu/packages/base.scm | 6 ++--
.../patches/glibc-supported-locales.patch | 31 +++++++++++++++++++
3 files changed, 36 insertions(+), 2 deletions(-)
create mode 100644 gnu/packages/patches/glibc-supported-locales.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 56c434d0a..0828f4358 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -754,6 +754,7 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-vectorized-strcspn-guards.patch \
%D%/packages/patches/glibc-versioned-locpath.patch \
%D%/packages/patches/glibc-2.27-git-fixes.patch \
+ %D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch \
%D%/packages/patches/glog-gcc-5-demangling.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 4065af0ab..d278b36a5 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -594,7 +594,8 @@ store.")
"glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"
- "glibc-reinstate-prlimit64-fallback.patch"))))
+ "glibc-reinstate-prlimit64-fallback.patch"
+ "glibc-supported-locales.patch"))))
(build-system gnu-build-system)
;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc
@@ -888,7 +889,8 @@ GLIBC/HURD for a Hurd host"
(patches (search-patches "glibc-allow-kernel-2.6.32.patch"
"glibc-ldd-x86_64.patch"
"glibc-hidden-visibility-ldconfig.patch"
- "glibc-versioned-locpath.patch"))))))
+ "glibc-versioned-locpath.patch"
+ "glibc-supported-locales.patch"))))))
;; Below are old libc versions, which we use mostly to build locale data in
;; the old format (which the new libc cannot cope with.)
diff --git a/gnu/packages/patches/glibc-supported-locales.patch b/gnu/packages/patches/glibc-supported-locales.patch
new file mode 100644
index 000000000..f1c8a8887
--- /dev/null
+++ b/gnu/packages/patches/glibc-supported-locales.patch
@@ -0,0 +1,31 @@
+This patch is taken from debian's glibc package (generate-supported.mk).
+
+diff --git a/localedata/Makefile.old b/localedata/Makefile
+index 34877c0..a61d9b9 100644
+--- a/localedata/Makefile.old
++++ b/localedata/Makefile
+@@ -91,7 +91,8 @@ endif
+ # Files to install.
+ install-others := $(addprefix $(inst_i18ndir)/, \
+ $(addsuffix .gz, $(charmaps)) \
+- $(locales))
++ $(locales)) \
++ $(inst_i18ndir)/SUPPORTED
+
+ tests: $(objdir)/iconvdata/gconv-modules
+
+@@ -195,6 +196,14 @@ endif
+
+ include SUPPORTED
+
++$(inst_i18ndir)/SUPPORTED: SUPPORTED $(+force)
++ for locale in $(SUPPORTED-LOCALES); do \
++ [ $$locale = true ] && continue; \
++ echo $$locale | sed 's,/, ,' >> LOCALES; \
++ done
++ $(make-target-directory)
++ $(INSTALL_DATA) LOCALES $@
++
+ INSTALL-SUPPORTED-LOCALES=$(addprefix install-, $(SUPPORTED-LOCALES))
+
+ # Sometimes the whole collection of locale files should be installed.
--
2.17.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 4/7] gnu: glibc: Export supported locales.
2018-10-28 12:40 ` [bug#33186] [PATCH 4/7] gnu: glibc: Export supported locales Mathieu Othacehe
@ 2018-11-06 15:37 ` Ludovic Courtès
2018-11-07 9:49 ` Mathieu Othacehe
0 siblings, 1 reply; 24+ messages in thread
From: Ludovic Courtès @ 2018-11-06 15:37 UTC (permalink / raw)
To: Mathieu Othacehe; +Cc: 33186
Hi,
Mathieu Othacehe <m.othacehe@gmail.com> skribis:
> Debian and Archlinux (at least) force the installation of the
> localedata/SUPPORTED file of the glibc. This file lists all the supported
> locales of the glibc.
>
> * gnu/packages/patches/glibc-supported-locales.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Add it.
> * gnu/packages/base.scm (glibc/linux): Add the previous patch,
> (glibc-2.28): ditto.
Sounds good.
Note that this is for ‘core-updates-next’.
> --- /dev/null
> +++ b/gnu/packages/patches/glibc-supported-locales.patch
> @@ -0,0 +1,31 @@
> +This patch is taken from debian's glibc package (generate-supported.mk).
Please add a line saying what it does.
Thanks!
Ludo’.
^ permalink raw reply [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 5/7] gnu: terminals: Change libtsm and kmscon repositories.
2018-10-28 12:40 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Mathieu Othacehe
` (2 preceding siblings ...)
2018-10-28 12:40 ` [bug#33186] [PATCH 4/7] gnu: glibc: Export supported locales Mathieu Othacehe
@ 2018-10-28 12:40 ` Mathieu Othacehe
2018-11-06 15:38 ` Ludovic Courtès
2018-10-28 12:40 ` [bug#33186] [PATCH 6/7] gnu: slang: Use a correct location for terminfo dirs Mathieu Othacehe
` (2 subsequent siblings)
6 siblings, 1 reply; 24+ messages in thread
From: Mathieu Othacehe @ 2018-10-28 12:40 UTC (permalink / raw)
To: 33186
Those two packages (from the same author) are no longer maintained and do not
even compile. Switch to a fork that is maintained even if it does not have any
release yet.
* gnu/packages/terminals.scm (libtsm)[origin]: Use
"https://github.com/Aetf/libtsm" as new origin and switch to git-fetch method.
(kmscon)[origin]: Use "https://github.com/Aetf/kmscon" as new origin and
switch to git-fetch method.
---
gnu/packages/terminals.scm | 176 ++++++++++++++++++++-----------------
1 file changed, 95 insertions(+), 81 deletions(-)
diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index 5cdc08139..836cf131d 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -187,96 +187,110 @@ text-based approach to terminal recording.")
(license license:gpl3)))
(define-public libtsm
- (package
- (name "libtsm")
- (version "3")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://freedesktop.org/software/kmscon/releases/"
- "libtsm-" version ".tar.xz"))
- (sha256
- (base32
- "01ygwrsxfii0pngfikgqsb4fxp8n1bbs47l7hck81h9b9bc1ah8i"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("pkg-config" ,pkg-config)))
- (inputs
- `(("libxkbcommon" ,libxkbcommon)))
- (synopsis "Xterm state machine library")
- (description "TSM is a state machine for DEC VT100-VT520 compatible
+ (let ((commit "f70e37982f382b03c6939dac3d5f814450bda253")
+ (revision "1"))
+ (package
+ (name "libtsm")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url (string-append "https://github.com/Aetf/" name))
+ (commit commit)))
+ (sha256
+ (base32
+ "0mwn91i5h5d518i1s05y7hzv6bc13vzcvxszpfh77473iwg4wprx"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:configure-flags '("-DBUILD_TESTING=ON")))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libxkbcommon" ,libxkbcommon)
+ ("check" ,check)))
+ (synopsis "Xterm state machine library")
+ (description "TSM is a state machine for DEC VT100-VT520 compatible
terminal emulators. It tries to support all common standards while keeping
compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.")
- (home-page "https://www.freedesktop.org/wiki/Software/libtsm")
- ;; Hash table implementation is lgpl2.1+ licensed.
- ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license
- ;; derived from ISC.
- ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released
- ;; under the bsd 2 license.
- (license (list license:expat license:lgpl2.1+ license:isc license:bsd-2))))
+ (home-page "https://www.freedesktop.org/wiki/Software/libtsm")
+ ;; Hash table implementation is lgpl2.1+ licensed.
+ ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license
+ ;; derived from ISC.
+ ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released
+ ;; under the bsd 2 license.
+ (license (list license:expat license:lgpl2.1+ license:isc license:bsd-2)))))
(define-public kmscon
- (package
- (name "kmscon")
- (version "8")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://freedesktop.org/software/kmscon/releases/"
- "kmscon-" version ".tar.xz"))
- (sha256
- (base32
- "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a"))
- (modules '((guix build utils)))
- (snippet
- ;; Use elogind instead of systemd.
- '(begin
- (substitute* "configure"
- (("libsystemd-daemon libsystemd-login")
- "libelogind"))
- (substitute* "src/uterm_systemd.c"
- (("#include <systemd/sd-login.h>")
- "#include <elogind/sd-login.h>")
- ;; We don't have this header.
- (("#include <systemd/sd-daemon\\.h>")
- "")
- ;; Replace the call to 'sd_booted' by the truth value.
- (("sd_booted\\(\\)")
- "1"))
- #t))))
- (build-system gnu-build-system)
- (native-inputs
- `(("pkg-config" ,pkg-config)
- ("libxslt" ,libxslt) ;to build the man page
- ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
- ("docbook-xsl" ,docbook-xsl)))
- (inputs
- `(("libdrm" ,libdrm)
- ("libtsm" ,libtsm)
- ("libxkbcommon" ,libxkbcommon)
- ("logind" ,elogind)
- ("mesa" ,mesa)
- ("pango" ,pango)
- ("udev" ,eudev)))
- (synopsis "Linux KMS-based terminal emulator")
- (description "Kmscon is a terminal emulator based on Linux's @dfn{kernel
+ (let ((commit "01dd0a231e2125a40ceba5f59fd945ff29bf2cdc")
+ (revision "1"))
+ (package
+ (name "kmscon")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url (string-append "https://github.com/Aetf/" name))
+ (commit commit)))
+ (sha256
+ (base32
+ "0q62kjsvy2iwy8adfiygx2bfwlh83rphgxbis95ycspqidg9py87"))
+ (modules '((guix build utils)))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'autogen.sh
+ (lambda _
+ (zero? (system* "sh" "autogen.sh"))))
+ ;; Use elogind instead of systemd.
+ (add-before 'configure 'remove-systemd
+ (lambda _
+ (substitute* "configure"
+ (("libsystemd-daemon libsystemd-login")
+ "libelogind"))
+ (substitute* "src/uterm_systemd.c"
+ (("#include <systemd/sd-login.h>")
+ "#include <elogind/sd-login.h>")
+ ;; We don't have this header.
+ (("#include <systemd/sd-daemon\\.h>")
+ "")
+ ;; Replace the call to 'sd_booted' by the truth value.
+ (("sd_booted\\(\\)")
+ "1")))))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("libxslt" ,libxslt) ;to build the man page
+ ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
+ ("docbook-xsl" ,docbook-xsl)))
+ (inputs
+ `(("libdrm" ,libdrm)
+ ("libtsm" ,libtsm)
+ ("libxkbcommon" ,libxkbcommon)
+ ("logind" ,elogind)
+ ("mesa" ,mesa)
+ ("pango" ,pango)
+ ("udev" ,eudev)))
+ (synopsis "Linux KMS-based terminal emulator")
+ (description "Kmscon is a terminal emulator based on Linux's @dfn{kernel
mode setting} (KMS). It can replace the in-kernel virtual terminal (VT)
implementation with a user-space console. Compared to the Linux console,
kmscon provides enhanced features including XKB-compatible internationalized
keyboard support, UTF-8 input/font support, hardware-accelerated rendering,
multi-seat support, a replacement for @command{mingetty}, and more.")
- (home-page "https://www.freedesktop.org/wiki/Software/kmscon")
- ;; Hash table implementation is lgpl2.1+ licensed.
- ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license
- ;; derived from ISC.
- ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released
- ;; under the bsd 2 license.
- ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed
- ;; under the terms of the GNU GPL.
- (license (list license:expat license:lgpl2.1+ license:bsd-2
- license:gpl2+))
- (supported-systems (filter (cut string-suffix? "-linux" <>)
- %supported-systems))))
+ (home-page "https://www.freedesktop.org/wiki/Software/kmscon")
+ ;; Hash table implementation is lgpl2.1+ licensed.
+ ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license
+ ;; derived from ISC.
+ ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released
+ ;; under the bsd 2 license.
+ ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed
+ ;; under the terms of the GNU GPL.
+ (license (list license:expat license:lgpl2.1+ license:bsd-2
+ license:gpl2+))
+ (supported-systems (filter (cut string-suffix? "-linux" <>)
+ %supported-systems)))))
(define-public libtermkey
(package
--
2.17.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 6/7] gnu: slang: Use a correct location for terminfo dirs.
2018-10-28 12:40 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Mathieu Othacehe
` (3 preceding siblings ...)
2018-10-28 12:40 ` [bug#33186] [PATCH 5/7] gnu: terminals: Change libtsm and kmscon repositories Mathieu Othacehe
@ 2018-10-28 12:40 ` Mathieu Othacehe
2018-11-06 15:40 ` Ludovic Courtès
2018-10-28 12:40 ` [bug#33186] [PATCH 7/7] gnu: python-3.6: Disable congestion test Mathieu Othacehe
2018-11-06 15:34 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Ludovic Courtès
6 siblings, 1 reply; 24+ messages in thread
From: Mathieu Othacehe @ 2018-10-28 12:40 UTC (permalink / raw)
To: 33186
As termcap is disabled and no terminfo directory is given, slang is not able
to query terminal capabilities. Specifying a correct path for terminfo will
automatically disable termcap support in the configuration.
* gnu/packages/slang.scm (slang)[source]: Remove the snippet disabling
termcap.
[arguments]: Set MISC_TERMINFO_DIRS to a correct location.
---
gnu/packages/slang.scm | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/slang.scm b/gnu/packages/slang.scm
index 24eb5fa13..185d44191 100644
--- a/gnu/packages/slang.scm
+++ b/gnu/packages/slang.scm
@@ -50,13 +50,21 @@
'(begin
(substitute* "src/Makefile.in"
(("/bin/ln") "ln"))
- (substitute* "configure"
- (("-ltermcap") ""))
#t))))
(build-system gnu-build-system)
(arguments
'(#:parallel-tests? #f
- #:parallel-build? #f)) ; there's at least one race
+ #:parallel-build? #f ; there's at least one race
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'substitute-before-config
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((ncurses (assoc-ref inputs "ncurses")))
+ (substitute* "configure"
+ (("MISC_TERMINFO_DIRS=\"\"")
+ (string-append "MISC_TERMINFO_DIRS="
+ "\"" ncurses "/share/terminfo" "\"")))
+ #t))))))
(inputs
`(("readline" ,readline)
("zlib" ,zlib)
--
2.17.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 6/7] gnu: slang: Use a correct location for terminfo dirs.
2018-10-28 12:40 ` [bug#33186] [PATCH 6/7] gnu: slang: Use a correct location for terminfo dirs Mathieu Othacehe
@ 2018-11-06 15:40 ` Ludovic Courtès
2018-11-07 9:39 ` Mathieu Othacehe
0 siblings, 1 reply; 24+ messages in thread
From: Ludovic Courtès @ 2018-11-06 15:40 UTC (permalink / raw)
To: Mathieu Othacehe; +Cc: 33186
Mathieu Othacehe <m.othacehe@gmail.com> skribis:
> As termcap is disabled and no terminfo directory is given, slang is not able
> to query terminal capabilities. Specifying a correct path for terminfo will
> automatically disable termcap support in the configuration.
>
> * gnu/packages/slang.scm (slang)[source]: Remove the snippet disabling
> termcap.
> [arguments]: Set MISC_TERMINFO_DIRS to a correct location.
Note that ncurses honors the TERMINFO_DIRS environment variable, so I
suppose it would work to just set it at run time?
Now, if this change means that Slang will work out-of-the-box by
default, it’s probably preferable.
Thanks.
^ permalink raw reply [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 6/7] gnu: slang: Use a correct location for terminfo dirs.
2018-11-06 15:40 ` Ludovic Courtès
@ 2018-11-07 9:39 ` Mathieu Othacehe
0 siblings, 0 replies; 24+ messages in thread
From: Mathieu Othacehe @ 2018-11-07 9:39 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 33186
Hey,
> Note that ncurses honors the TERMINFO_DIRS environment variable, so I
> suppose it would work to just set it at run time?
Slang uses this piece of code to locate terminfo directory:
--8<---------------cut here---------------start------------->8---
static SLCONST char *Terminfo_Dirs [] =
{
"", /* $TERMINFO */
"", /* $HOME/.terminfo */
#ifdef MISC_TERMINFO_DIRS
MISC_TERMINFO_DIRS, <---- set during configure
#endif
"/usr/local/etc/terminfo",
"/usr/local/share/terminfo",
"/usr/local/lib/terminfo",
"/etc/terminfo",
"/usr/share/terminfo",
"/usr/lib/terminfo",
"/usr/share/lib/terminfo",
"/lib/terminfo",
NULL,
};
--8<---------------cut here---------------end--------------->8---
So TERMINFO_DIRS is not used sadly.
>
> Now, if this change means that Slang will work out-of-the-box by
> default, it’s probably preferable.
I'll stick with this patch then.
Pushed as 8243f4e55a9f87821370eb2198fa9b5c8eac6648.
Mathieu
^ permalink raw reply [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 7/7] gnu: python-3.6: Disable congestion test.
2018-10-28 12:40 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Mathieu Othacehe
` (4 preceding siblings ...)
2018-10-28 12:40 ` [bug#33186] [PATCH 6/7] gnu: slang: Use a correct location for terminfo dirs Mathieu Othacehe
@ 2018-10-28 12:40 ` Mathieu Othacehe
2018-11-06 15:43 ` Ludovic Courtès
2018-11-06 15:34 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Ludovic Courtès
6 siblings, 1 reply; 24+ messages in thread
From: Mathieu Othacehe @ 2018-10-28 12:40 UTC (permalink / raw)
To: 33186
The socket congestion test is known to hang or fail randomly. It is disabled
on python 3.6 branch upstream.
* gnu/packages/patches/python-disable-congestion-test.patch: New file.
* gnu/packages/python.scm (python-3.6)[patches]: Add the previous patch.
* gnu/local.mk (dist_patch_DATA): Add it.
---
gnu/local.mk | 1 +
.../python-disable-congestion-test.patch | 60 +++++++++++++++++++
gnu/packages/python.scm | 1 +
3 files changed, 62 insertions(+)
create mode 100644 gnu/packages/patches/python-disable-congestion-test.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 0828f4358..11974903d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1078,6 +1078,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-3-search-paths.patch \
%D%/packages/patches/python-3-fix-tests.patch \
%D%/packages/patches/python-CVE-2018-14647.patch \
+ %D%/packages/patches/python-disable-congestion-test.patch \
%D%/packages/patches/python-axolotl-AES-fix.patch \
%D%/packages/patches/python-cairocffi-dlopen-path.patch \
%D%/packages/patches/python-fix-tests.patch \
diff --git a/gnu/packages/patches/python-disable-congestion-test.patch b/gnu/packages/patches/python-disable-congestion-test.patch
new file mode 100644
index 000000000..eca2379cf
--- /dev/null
+++ b/gnu/packages/patches/python-disable-congestion-test.patch
@@ -0,0 +1,60 @@
+This patch is taken from python upstream repository:
+ https://bugs.python.org/issue34587.
+
+From 7484bdfd1e2e33fdd2c44dd4ffa044aacd495337 Mon Sep 17 00:00:00 2001
+From: Victor Stinner <vstinner@redhat.com>
+Date: Mon, 17 Sep 2018 14:01:20 -0700
+Subject: [PATCH] bpo-34587, test_socket: remove RDSTest.testCongestion()
+ (GH-9277)
+
+The test tries to fill the receiver's socket buffer and expects an
+error. But the RDS protocol doesn't require that. Moreover, the Linux
+implementation of RDS expects that the producer of the messages
+reduces its rate, it's not the role of the receiver to trigger an
+error.
+
+The test fails on Fedora 28 by design, so remove it.
+---
+ Lib/test/test_socket.py | 27 -------------------
+ .../2018-09-13-20-58-07.bpo-34587.rCcxp3.rst | 5 ++++
+ 2 files changed, 5 insertions(+), 27 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst
+
+diff --git Lib/test/test_socket.py Lib/test/test_socket.py
+index 4f3c4774e4..f4d58ebf71 100644
+--- Lib/test/test_socket.py
++++ Lib/test/test_socket.py
+@@ -2054,33 +2054,6 @@ class RDSTest(ThreadedRDSSocketTest):
+ self.data = b'select'
+ self.cli.sendto(self.data, 0, (HOST, self.port))
+
+- def testCongestion(self):
+- # wait until the sender is done
+- self.evt.wait()
+-
+- def _testCongestion(self):
+- # test the behavior in case of congestion
+- self.data = b'fill'
+- self.cli.setblocking(False)
+- try:
+- # try to lower the receiver's socket buffer size
+- self.cli.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, 16384)
+- except OSError:
+- pass
+- with self.assertRaises(OSError) as cm:
+- try:
+- # fill the receiver's socket buffer
+- while True:
+- self.cli.sendto(self.data, 0, (HOST, self.port))
+- finally:
+- # signal the receiver we're done
+- self.evt.set()
+- # sendto() should have failed with ENOBUFS
+- self.assertEqual(cm.exception.errno, errno.ENOBUFS)
+- # and we should have received a congestion notification through poll
+- r, w, x = select.select([self.serv], [], [], 3.0)
+- self.assertIn(self.serv, r)
+-
+
+ @unittest.skipIf(fcntl is None, "need fcntl")
+ @unittest.skipUnless(HAVE_SOCKET_VSOCK,
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index fbb280224..37755287c 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -377,6 +377,7 @@ data types.")
(uri (string-append "https://www.python.org/ftp/python/"
version "/Python-" version ".tar.xz"))
(patches (search-patches
+ "python-disable-congestion-test.patch"
"python-fix-tests.patch"
"python-3-fix-tests.patch"
"python-3-deterministic-build-info.patch"
--
2.17.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 7/7] gnu: python-3.6: Disable congestion test.
2018-10-28 12:40 ` [bug#33186] [PATCH 7/7] gnu: python-3.6: Disable congestion test Mathieu Othacehe
@ 2018-11-06 15:43 ` Ludovic Courtès
2018-11-06 15:59 ` Marius Bakke
0 siblings, 1 reply; 24+ messages in thread
From: Ludovic Courtès @ 2018-11-06 15:43 UTC (permalink / raw)
To: Mathieu Othacehe; +Cc: boskovits, 33186
Mathieu Othacehe <m.othacehe@gmail.com> skribis:
> The socket congestion test is known to hang or fail randomly. It is disabled
> on python 3.6 branch upstream.
>
> * gnu/packages/patches/python-disable-congestion-test.patch: New file.
> * gnu/packages/python.scm (python-3.6)[patches]: Add the previous patch.
> * gnu/local.mk (dist_patch_DATA): Add it.
Does this have anything to do with https://issues.guix.info/issue/33248
and https://issues.guix.info/issue/33213 and related issues?
If so please add a “Fixes” tag and close all these bugs. :-)
Now, in which branch should it go? Would be nice in ‘core-updates’, but
it would again delay merging that branch. What do people think?
Marius? Gábor?
Ludo’.
^ permalink raw reply [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 7/7] gnu: python-3.6: Disable congestion test.
2018-11-06 15:43 ` Ludovic Courtès
@ 2018-11-06 15:59 ` Marius Bakke
2018-11-06 16:29 ` Gábor Boskovits
2018-11-27 10:27 ` bug#33186: " Ludovic Courtès
0 siblings, 2 replies; 24+ messages in thread
From: Marius Bakke @ 2018-11-06 15:59 UTC (permalink / raw)
To: Ludovic Courtès, Mathieu Othacehe; +Cc: boskovits, 33186
[-- Attachment #1: Type: text/plain, Size: 935 bytes --]
ludo@gnu.org (Ludovic Courtès) writes:
> Mathieu Othacehe <m.othacehe@gmail.com> skribis:
>
>> The socket congestion test is known to hang or fail randomly. It is disabled
>> on python 3.6 branch upstream.
>>
>> * gnu/packages/patches/python-disable-congestion-test.patch: New file.
>> * gnu/packages/python.scm (python-3.6)[patches]: Add the previous patch.
>> * gnu/local.mk (dist_patch_DATA): Add it.
>
> Does this have anything to do with https://issues.guix.info/issue/33248
> and https://issues.guix.info/issue/33213 and related issues?
>
> If so please add a “Fixes” tag and close all these bugs. :-)
>
> Now, in which branch should it go? Would be nice in ‘core-updates’, but
> it would again delay merging that branch. What do people think?
> Marius? Gábor?
The faulty test is already removed on 'core-updates' (albeit more
heavy-handedly). So I don't think there's anything to do here.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 7/7] gnu: python-3.6: Disable congestion test.
2018-11-06 15:59 ` Marius Bakke
@ 2018-11-06 16:29 ` Gábor Boskovits
2018-11-27 10:27 ` bug#33186: " Ludovic Courtès
1 sibling, 0 replies; 24+ messages in thread
From: Gábor Boskovits @ 2018-11-06 16:29 UTC (permalink / raw)
To: Marius Bakke; +Cc: 33186
[-- Attachment #1: Type: text/plain, Size: 1086 bytes --]
2018. nov. 6., K 16:59 dátummal Marius Bakke <mbakke@fastmail.com> ezt írta:
> ludo@gnu.org (Ludovic Courtès) writes:
>
> > Mathieu Othacehe <m.othacehe@gmail.com> skribis:
> >
> >> The socket congestion test is known to hang or fail randomly. It is
> disabled
> >> on python 3.6 branch upstream.
> >>
> >> * gnu/packages/patches/python-disable-congestion-test.patch: New file.
> >> * gnu/packages/python.scm (python-3.6)[patches]: Add the previous patch.
> >> * gnu/local.mk (dist_patch_DATA): Add it.
> >
> > Does this have anything to do with https://issues.guix.info/issue/33248
> > and https://issues.guix.info/issue/33213 and related issues?
> >
> > If so please add a “Fixes” tag and close all these bugs. :-)
> >
> > Now, in which branch should it go? Would be nice in ‘core-updates’, but
> > it would again delay merging that branch. What do people think?
> > Marius? Gábor?
>
> The faulty test is already removed on 'core-updates' (albeit more
> heavy-handedly). So I don't think there's anything to do here.
>
Ok, I agree.
>
[-- Attachment #2: Type: text/html, Size: 2092 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* bug#33186: [PATCH 7/7] gnu: python-3.6: Disable congestion test.
2018-11-06 15:59 ` Marius Bakke
2018-11-06 16:29 ` Gábor Boskovits
@ 2018-11-27 10:27 ` Ludovic Courtès
1 sibling, 0 replies; 24+ messages in thread
From: Ludovic Courtès @ 2018-11-27 10:27 UTC (permalink / raw)
To: Marius Bakke; +Cc: boskovits, 33186-done
Hello,
Marius Bakke <mbakke@fastmail.com> skribis:
> ludo@gnu.org (Ludovic Courtès) writes:
>
>> Mathieu Othacehe <m.othacehe@gmail.com> skribis:
>>
>>> The socket congestion test is known to hang or fail randomly. It is disabled
>>> on python 3.6 branch upstream.
>>>
>>> * gnu/packages/patches/python-disable-congestion-test.patch: New file.
>>> * gnu/packages/python.scm (python-3.6)[patches]: Add the previous patch.
>>> * gnu/local.mk (dist_patch_DATA): Add it.
>>
>> Does this have anything to do with https://issues.guix.info/issue/33248
>> and https://issues.guix.info/issue/33213 and related issues?
>>
>> If so please add a “Fixes” tag and close all these bugs. :-)
>>
>> Now, in which branch should it go? Would be nice in ‘core-updates’, but
>> it would again delay merging that branch. What do people think?
>> Marius? Gábor?
>
> The faulty test is already removed on 'core-updates' (albeit more
> heavy-handedly). So I don't think there's anything to do here.
So Mathieu, I’m closing this issue.
https://issues.guix.info/issue/33186
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 24+ messages in thread
* [bug#33186] [PATCH 1/7] gnu: Add guile-newt.
2018-10-28 12:40 ` [bug#33186] [PATCH 1/7] gnu: Add guile-newt Mathieu Othacehe
` (5 preceding siblings ...)
2018-10-28 12:40 ` [bug#33186] [PATCH 7/7] gnu: python-3.6: Disable congestion test Mathieu Othacehe
@ 2018-11-06 15:34 ` Ludovic Courtès
2018-11-07 9:12 ` Mathieu Othacehe
6 siblings, 1 reply; 24+ messages in thread
From: Ludovic Courtès @ 2018-11-06 15:34 UTC (permalink / raw)
To: Mathieu Othacehe; +Cc: 33186
Hello!
Mathieu Othacehe <m.othacehe@gmail.com> skribis:
> * gnu/packages/guile.scm (guile-newt): New variable.
[...]
> + '(#:make-flags
> + '("GUILE_AUTO_COMPILE=0") ; to prevent guild errors
Actually warnings. :-)
> + #:phases
> + (modify-phases %standard-phases
> + (add-after 'unpack 'bootstrap
> + (lambda _
> + (zero? (system* "autoreconf" "-vfi")))))))
This phase shouldn’t be necessary.
Otherwise LGTM, thanks!
Ludo’.
^ permalink raw reply [flat|nested] 24+ messages in thread