me
/
guix
Archived
1
0
Fork 0

gnu: Add sbcl-stumpwm-ttf-fonts.

* gnu/packages/wm.scm (sbcl-stumpwm-ttf-fonts): New variable.
* doc/guix-cookbook.texi (Customizing a Window Manager): Document
SBCL-STUMPWM-TTF-FONTS installation and configuration.
master
Oleg Pykhalov 2020-03-22 11:20:50 +03:00
parent 31ee29161c
commit 65051fdce1
No known key found for this signature in database
GPG Key ID: 167F8EA5001AFA9C
2 changed files with 85 additions and 2 deletions

View File

@ -11,6 +11,7 @@
Copyright @copyright{} 2019 Ricardo Wurmus@* Copyright @copyright{} 2019 Ricardo Wurmus@*
Copyright @copyright{} 2019 Efraim Flashner@* Copyright @copyright{} 2019 Efraim Flashner@*
Copyright @copyright{} 2019 Pierre Neidhardt@* Copyright @copyright{} 2019 Pierre Neidhardt@*
Copyright @copyright{} 2020 Oleg Pykhalov@*
Permission is granted to copy, distribute and/or modify this document Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or under the terms of the GNU Free Documentation License, Version 1.3 or
@ -1319,7 +1320,8 @@ chapter is to demonstrate some advanced configuration concepts.
reference. reference.
@menu @menu
* Customizing the Kernel:: Creating and using a custom Linux kernel on Guix System. * Customizing the Kernel:: Creating and using a custom Linux kernel on Guix System.
* Customizing a Window Manager:: Handle customization of a Window manager on Guix System.
@end menu @end menu
@node Customizing the Kernel @node Customizing the Kernel
@ -1562,6 +1564,56 @@ likely that you'll need to modify the initrd on a machine using a custom
kernel, since certain modules which are expected to be built may not be kernel, since certain modules which are expected to be built may not be
available for inclusion into the initrd. available for inclusion into the initrd.
@node Customizing a Window Manager
@section Customizing a Window Manager
@cindex wm
@node StumpWM
@subsection StumpWM
@cindex stumpwm
You could install StumpWM with a Guix system by adding
@code{stumpwm-checkout} and optionally @code{`(,stumpwm-checkout "lib")}
packages to a system configuration file, e.g. @file{/etc/config.scm}.
An example configuration can look like this:
@lisp
(use-modules (gnu))
(use-package-modules wm)
(operating-system
;; …
(packages (append (list sbcl stumpwm-checkout `(,stumpwm-checkout "lib"))
%base-packages)))
@end lisp
@cindex stumpwm fonts
By default StumpWM uses X11 fonts, which could be small or pixelated on
your system. You could fix this by installing StumpWM contrib Lisp
module @code{sbcl-stumpwm-ttf-fonts}, adding it to Guix system packages:
@lisp
(use-modules (gnu))
(use-package-modules fonts wm)
(operating-system
;; …
(packages (append (list sbcl stumpwm-checkout `(,stumpwm-checkout "lib"))
sbcl-stumpwm-ttf-fonts font-dejavu %base-packages)))
@end lisp
Then you need to add the following code to a StumpWM configuration file
@file{~/.stumpwm.d/init.lisp}:
@lisp
(require :ttf-fonts)
(setf xft:*font-dirs* '("/run/current-system/profile/share/fonts/"))
(setf clx-truetype:+font-cache-filename+ (concat (getenv "HOME") "/.fonts/font-cache.sexp"))
(xft:cache-fonts)
(set-font (make-instance 'xft:font :family "DejaVu Sans Mono" :subfamily "Book" :size 11))
@end lisp
@c ********************************************************************* @c *********************************************************************
@node Advanced package management @node Advanced package management
@chapter Advanced package management @chapter Advanced package management

View File

@ -14,7 +14,7 @@
;;; Copyright © 2016 Ivan Vilata i Balaguer <ivan@selidor.net> ;;; Copyright © 2016 Ivan Vilata i Balaguer <ivan@selidor.net>
;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com> ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2017, 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr> ;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
;;; Copyright © 2018, 2019 Meiyo Peng <meiyo@riseup.net> ;;; Copyright © 2018, 2019 Meiyo Peng <meiyo@riseup.net>
@ -1661,6 +1661,37 @@ productive, customizable lisp based systems.")
(define-public sbcl-stumpwm+slynk (define-public sbcl-stumpwm+slynk
(deprecated-package "sbcl-stumpwm-with-slynk" stumpwm+slynk)) (deprecated-package "sbcl-stumpwm-with-slynk" stumpwm+slynk))
(define-public sbcl-stumpwm-ttf-fonts
(let ((commit "dd5b037923ec7d3cc27c55806bcec5a1b8cf4e91")
(revision "1"))
(package
(name "sbcl-ttf-fonts")
(version (git-version "0.0.1" revision commit)) ;no upstream release
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stumpwm/stumpwm-contrib.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0ahxdj9f884afpzxczx6mx7l4nwg4kw6afqaq7lwhf7lxcwylldn"))))
(inputs
`(("stumpwm" ,stumpwm "lib")
("clx-truetype" ,sbcl-clx-truetype)))
(build-system asdf-build-system/sbcl)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/ttf-fonts"))))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Implementation of TTF font rendering for Lisp")
(description "This package provides a Lisp implementation of TTF font
rendering.")
(license (list license:gpl2+ license:gpl3+ license:bsd-2)))))
(define-public lemonbar (define-public lemonbar
(let ((commit "35183ab81d2128dbb7b6d8e119cc57846bcefdb4") (let ((commit "35183ab81d2128dbb7b6d8e119cc57846bcefdb4")
(revision "1")) (revision "1"))