+
+(define-public bdfresize
+ (package
+ (name "bdfresize")
+ (version "1.5-11")
+ (source (origin
+ ;; Former upstream at
+ ;; <http://openlab.ring.gr.jp/efont/dist/tools/bdfresize/>
+ ;; vanished so use Debian, which in practice is the new
+ ;; upstream.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://salsa.debian.org/debian/bdfresize.git")
+ (commit (string-append "debian/" version))))
+ (sha256
+ (base32
+ "0n3i29wicak8n10vkkippym8yw4ir8f7a263a8rwb8q16wqrxx85"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (for-each make-file-writable (find-files "."))
+
+ ;; Remove broken declaration.
+ (substitute* "charresize.c"
+ (("char\t\\*malloc\\(\\);")
+ ""))
+
+ ;; Remove old configury that doesn't support modern
+ ;; command-line options, new architectures, etc.
+ (for-each delete-file
+ '("configure" "install-sh"
+ "missing" "mkinstalldirs"))
+ #t))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)))
+ (synopsis "Resize fonts in the BDF format")
+ (description
+ "This packages provides @command{bdfresize}, a command to magnify or
+reduce fonts in the Glyph Bitmap Distribution Format (BDF). It produces BDF
+output.")
+ (home-page "https://tracker.debian.org/pkg/bdfresize")
+ (license license:gpl2+)) )
+
+(define-public console-setup
+ (package
+ (name "console-setup")
+ (version "1.191")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://salsa.debian.org/installer-team/console-setup.git")
+ (commit version)))
+ (sha256
+ (base32 "0wplhjadk530fqxhfnizil32rcvkcl5m2r18yskspcib53r4pmim"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:make-flags
+ (let ((bash (assoc-ref %build-inputs "bash"))
+ (out (assoc-ref %outputs "out")))
+ (list (string-append "SHELL=" bash "/bin/bash")))
+ #:tests? #f ;no tests
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'patch-file-names
+ (lambda _
+ ;; 'ckbcomp' calls out to 'cat' (!). Give it the right file
+ ;; name.
+ (substitute* '("Keyboard/ckbcomp")
+ (("\"cat ")
+ (string-append "\"" (which "cat")
+ " ")))
+ #t))
+ (add-before 'build 'make-doubled-bdfs
+ (lambda* (#:key inputs #:allow-other-keys)
+ (invoke "make" "-C" "Fonts"
+ "doubled_bdfs"
+ (string-append "SHELL="
+ (assoc-ref inputs "bash")
+ "/bin/bash"))))
+ (replace 'install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref %outputs "out")))
+ (invoke "make" "install-linux"
+ (string-append "prefix=" out)
+ (string-append "SHELL="
+ (assoc-ref inputs "bash")
+ "/bin/bash"))))))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("bdftopcf" ,bdftopcf)
+ ("bdfresize" ,bdfresize)
+ ("sharutils" ,sharutils))) ;for 'uuencode'
+ (inputs
+ `(("perl" ,perl))) ;used by 'ckbcomp'
+ (synopsis "Set up the Linux console font and keyboard")
+ (description
+ "console-setup provides the console with the same keyboard
+configuration scheme that X Window System has. In particular, the
+@command{ckbcomp} program compiles an XKB keyboard description to a keymap
+suitable for @command{loadkeys} or @command{kbdcontrol}. As a result, there
+is no need to duplicate or change the console keyboard files just to make
+simple customizations.
+
+Besides the keyboard, the package also configures the font on the console. It
+includes a rich collection of fonts and supports several languages that would
+otherwise be unsupported on the console (such as Armenian, Georgian, Lao, and
+Thai).")
+ (home-page "https://salsa.debian.org/installer-team/console-setup/")
+
+ ;; Most of the code is GPLv2+; the Expat license applies to 'setupcon' and
+ ;; 'ckbcomp-mini'. The installed precompiled keyboard files are covered
+ ;; by simple permissive licenses. See the 'COPYRIGHT' file.
+ (license (list license:gpl2+
+ license:expat))))