me
/
guix
Archived
1
0
Fork 0

gnu: terminals: Change libtsm and kmscon repositories.

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.
master
Mathieu Othacehe 2018-10-28 11:27:52 +09:00
parent 2d9dace8c2
commit a7903ca150
No known key found for this signature in database
GPG Key ID: 8354763531769CA6
1 changed files with 97 additions and 81 deletions

View File

@ -187,96 +187,112 @@ text-based approach to terminal recording.")
(license license:gpl3))) (license license:gpl3)))
(define-public libtsm (define-public libtsm
(package (let ((commit "f70e37982f382b03c6939dac3d5f814450bda253")
(name "libtsm") (revision "1"))
(version "3") (package
(source (origin (name "libtsm")
(method url-fetch) (version (git-version "0.0.0" revision commit))
(uri (string-append (source (origin
"https://freedesktop.org/software/kmscon/releases/" (method git-fetch)
"libtsm-" version ".tar.xz")) ;; The freedesktop repository is no longer maintained.
(sha256 (uri (git-reference
(base32 (url (string-append "https://github.com/Aetf/" name))
"01ygwrsxfii0pngfikgqsb4fxp8n1bbs47l7hck81h9b9bc1ah8i")))) (commit commit)))
(build-system gnu-build-system) (sha256
(native-inputs (base32
`(("pkg-config" ,pkg-config))) "0mwn91i5h5d518i1s05y7hzv6bc13vzcvxszpfh77473iwg4wprx"))))
(inputs (build-system cmake-build-system)
`(("libxkbcommon" ,libxkbcommon))) (arguments
(synopsis "Xterm state machine library") `(#:configure-flags '("-DBUILD_TESTING=ON")))
(description "TSM is a state machine for DEC VT100-VT520 compatible (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 terminal emulators. It tries to support all common standards while keeping
compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.") compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.")
(home-page "https://www.freedesktop.org/wiki/Software/libtsm") (home-page "https://www.freedesktop.org/wiki/Software/libtsm")
;; Hash table implementation is lgpl2.1+ licensed. ;; Hash table implementation is lgpl2.1+ licensed.
;; The wcwidth implementation in external/wcwidth.{h,c} uses a license ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license
;; derived from ISC. ;; derived from ISC.
;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released
;; under the bsd 2 license. ;; under the bsd 2 license.
(license (list license:expat license:lgpl2.1+ license:isc license:bsd-2)))) (license (list license:expat license:lgpl2.1+ license:isc license:bsd-2)))))
(define-public kmscon (define-public kmscon
(package (let ((commit "01dd0a231e2125a40ceba5f59fd945ff29bf2cdc")
(name "kmscon") (revision "1"))
(version "8") (package
(source (origin (name "kmscon")
(method url-fetch) (version (git-version "0.0.0" revision commit))
(uri (string-append (source (origin
"https://freedesktop.org/software/kmscon/releases/" (method git-fetch)
"kmscon-" version ".tar.xz")) ;; The freedesktop repository is no longer maintained.
(sha256 (uri (git-reference
(base32 (url (string-append "https://github.com/Aetf/" name))
"0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a")) (commit commit)))
(modules '((guix build utils))) (sha256
(snippet (base32
;; Use elogind instead of systemd. "0q62kjsvy2iwy8adfiygx2bfwlh83rphgxbis95ycspqidg9py87"))
'(begin (modules '((guix build utils)))))
(substitute* "configure" (build-system gnu-build-system)
(("libsystemd-daemon libsystemd-login") (arguments
"libelogind")) `(#:phases (modify-phases %standard-phases
(substitute* "src/uterm_systemd.c" (add-after 'unpack 'autogen.sh
(("#include <systemd/sd-login.h>") (lambda _
"#include <elogind/sd-login.h>") (zero? (system* "sh" "autogen.sh"))))
;; We don't have this header. ;; Use elogind instead of systemd.
(("#include <systemd/sd-daemon\\.h>") (add-before 'configure 'remove-systemd
"") (lambda _
;; Replace the call to 'sd_booted' by the truth value. (substitute* "configure"
(("sd_booted\\(\\)") (("libsystemd-daemon libsystemd-login")
"1")) "libelogind"))
#t)))) (substitute* "src/uterm_systemd.c"
(build-system gnu-build-system) (("#include <systemd/sd-login.h>")
(native-inputs "#include <elogind/sd-login.h>")
`(("pkg-config" ,pkg-config) ;; We don't have this header.
("libxslt" ,libxslt) ;to build the man page (("#include <systemd/sd-daemon\\.h>")
("libxml2" ,libxml2) ;for XML_CATALOG_FILES "")
("docbook-xsl" ,docbook-xsl))) ;; Replace the call to 'sd_booted' by the truth value.
(inputs (("sd_booted\\(\\)")
`(("libdrm" ,libdrm) "1")))))))
("libtsm" ,libtsm) (native-inputs
("libxkbcommon" ,libxkbcommon) `(("pkg-config" ,pkg-config)
("logind" ,elogind) ("autoconf" ,autoconf)
("mesa" ,mesa) ("automake" ,automake)
("pango" ,pango) ("libtool" ,libtool)
("udev" ,eudev))) ("libxslt" ,libxslt) ;to build the man page
(synopsis "Linux KMS-based terminal emulator") ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
(description "Kmscon is a terminal emulator based on Linux's @dfn{kernel ("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) mode setting} (KMS). It can replace the in-kernel virtual terminal (VT)
implementation with a user-space console. Compared to the Linux console, implementation with a user-space console. Compared to the Linux console,
kmscon provides enhanced features including XKB-compatible internationalized kmscon provides enhanced features including XKB-compatible internationalized
keyboard support, UTF-8 input/font support, hardware-accelerated rendering, keyboard support, UTF-8 input/font support, hardware-accelerated rendering,
multi-seat support, a replacement for @command{mingetty}, and more.") multi-seat support, a replacement for @command{mingetty}, and more.")
(home-page "https://www.freedesktop.org/wiki/Software/kmscon") (home-page "https://www.freedesktop.org/wiki/Software/kmscon")
;; Hash table implementation is lgpl2.1+ licensed. ;; Hash table implementation is lgpl2.1+ licensed.
;; The wcwidth implementation in external/wcwidth.{h,c} uses a license ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license
;; derived from ISC. ;; derived from ISC.
;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released
;; under the bsd 2 license. ;; under the bsd 2 license.
;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed
;; under the terms of the GNU GPL. ;; under the terms of the GNU GPL.
(license (list license:expat license:lgpl2.1+ license:bsd-2 (license (list license:expat license:lgpl2.1+ license:bsd-2
license:gpl2+)) license:gpl2+))
(supported-systems (filter (cut string-suffix? "-linux" <>) (supported-systems (filter (cut string-suffix? "-linux" <>)
%supported-systems)))) %supported-systems)))))
(define-public libtermkey (define-public libtermkey
(package (package