1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
3 ;;; Copyright © 2014, 2015, 2017, 2018, 2020 Mark H Weaver <mhw@netris.org>
4 ;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
5 ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
6 ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
7 ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
8 ;;; Copyright © 2015 Cyrill Schenkel <cyrill.schenkel@gmail.com>
9 ;;; Copyright © 2016, 2017, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
10 ;;; Copyright © 2016 Nikita <nikita@n0.is>
11 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
12 ;;; Copyright © 2016 David Craven <david@craven.ch>
13 ;;; Copyright © 2016, 2017 John Darrington <jmd@gnu.org>
14 ;;; Copyright © 2017, 2018, 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
15 ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
16 ;;; Copyright © 2017, 2020 Arun Isaac <arunisaac@systemreboot.net>
17 ;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr>
18 ;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
19 ;;; Copyright © 2018, 2020 Oleg Pykhalov <go.wigust@gmail.com>
20 ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
21 ;;; Copyright © 2019 nee <nee@cock.li>
22 ;;; Copyright © 2019 Yoshinori Arai <kumagusu08@gmail.com>
23 ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
24 ;;; Copyright © 2020 Liliana Marie Prikler <liliana.prikler@gmail.com>
25 ;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
26 ;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
27 ;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
28 ;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org>
29 ;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
30 ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
31 ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
32 ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
33 ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
34 ;;; Copyright © 2021 qblade <qblade@protonmail.com>
36 ;;; This file is part of GNU Guix.
38 ;;; GNU Guix is free software; you can redistribute it and/or modify it
39 ;;; under the terms of the GNU General Public License as published by
40 ;;; the Free Software Foundation; either version 3 of the License, or (at
41 ;;; your option) any later version.
43 ;;; GNU Guix is distributed in the hope that it will be useful, but
44 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
45 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
46 ;;; GNU General Public License for more details.
48 ;;; You should have received a copy of the GNU General Public License
49 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
51 (define-module (gnu packages xorg)
52 #:use-module (guix gexp)
53 #:use-module ((guix licenses) #:prefix license:)
54 #:use-module (guix packages)
55 #:use-module (guix download)
56 #:use-module (guix git-download)
57 #:use-module (guix build-system copy)
58 #:use-module (guix build-system gnu)
59 #:use-module (guix build-system meson)
60 #:use-module (guix build-system perl)
61 #:use-module (guix build-system python)
62 #:use-module (guix utils)
63 #:use-module (gnu packages)
64 #:use-module (gnu packages aidc)
65 #:use-module (gnu packages anthy)
66 #:use-module (gnu packages autotools)
67 #:use-module (gnu packages bash)
68 #:use-module (gnu packages bison)
69 #:use-module (gnu packages check)
70 #:use-module (gnu packages compression)
71 #:use-module (gnu packages emacs)
72 #:use-module (gnu packages flex)
73 #:use-module (gnu packages fonts)
74 #:use-module (gnu packages fontutils)
75 #:use-module (gnu packages freedesktop)
76 #:use-module (gnu packages gettext)
77 #:use-module (gnu packages gl)
78 #:use-module (gnu packages glib)
79 #:use-module (gnu packages gnupg)
80 #:use-module (gnu packages gperf)
81 #:use-module (gnu packages gtk)
82 #:use-module (gnu packages haskell-xyz)
83 #:use-module (gnu packages inkscape)
84 #:use-module (gnu packages image)
85 #:use-module (gnu packages imagemagick)
86 #:use-module (gnu packages libbsd)
87 #:use-module (gnu packages libedit)
88 #:use-module (gnu packages linux)
89 #:use-module (gnu packages llvm)
90 #:use-module (gnu packages m4)
91 #:use-module (gnu packages ncurses)
92 #:use-module (gnu packages onc-rpc)
93 #:use-module (gnu packages pciutils)
94 #:use-module (gnu packages perl)
95 #:use-module (gnu packages perl-check)
96 #:use-module (gnu packages pkg-config)
97 #:use-module (gnu packages python)
98 #:use-module (gnu packages python-compression)
99 #:use-module (gnu packages python-crypto)
100 #:use-module (gnu packages python-xyz)
101 #:use-module (gnu packages qt)
102 #:use-module (gnu packages spice)
103 #:use-module (gnu packages video)
104 #:use-module (gnu packages xiph)
105 #:use-module (gnu packages xml)
106 #:use-module (gnu packages xdisorg))
110 ;; When cross-compiling certain packages, "--disable-malloc0returnsnull"
111 ;; needs to be passed. Otherwise, the configure script will try to run a
112 ;; binary for the host on the build machine.
113 (define (malloc0-flags)
114 (if (%current-target-system)
115 ;; At least on glibc-based systems, malloc(0) evaluates to a non-NULL
116 ;; pointer (except in out-of-memory situations). On other systems,
117 ;; --enable-malloc0returnsnull might be required instead.
118 '("--disable-malloc0returnsnull")
121 ;; packages without propagated input
122 ;; (rationale for this separation: The packages in PROPAGATED_INPUTS need to
123 ;; be defined first, the split makes book-keeping easier.)
126 ;; compiles only on macos
127 ;; (define-public applewmproto
130 (define xorg-cf-files
131 ;; The xorg-cf-files package contains the data files for the imake utility,
132 ;; defining the known settings for a wide variety of platforms (many of which
133 ;; have not been verified or tested in over a decade), and for many of the
134 ;; libraries formerly delivered in the X.Org monolithic releases.
136 ;; License: x11, see COPYING
139 (uri "mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2")
141 (base32 "0kckng0zs1viz0nr84rdl6dswgip7ndn4pnh5nfwnviwpsfmmksd"))))
150 (uri (string-append "mirror://xorg/individual/util/imake-"
153 (base32 "00m7l90ws72k1qm101sd2rx92ckd50cszyng5d4dd77jncbf9lmq"))))
154 (build-system gnu-build-system)
158 (list xorg-cf-files xorgproto))
161 #~(modify-phases %standard-phases
162 (add-after 'install 'install-data
163 (lambda* (#:key inputs outputs #:allow-other-keys)
164 (let ((out (assoc-ref outputs "out"))
165 (unpack (assoc-ref %standard-phases 'unpack))
166 (patch-source-shebangs
167 (assoc-ref %standard-phases 'patch-source-shebangs)))
168 (mkdir "xorg-cf-files")
169 (with-directory-excursion "xorg-cf-files"
170 (unpack #:source #$xorg-cf-files)
171 (patch-source-shebangs #:source #$xorg-cf-files)
172 (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf"
173 "linux.cf" "Amoeba.cf" "cygwin.cf")
174 (("/bin/sh") (which "bash")))
175 (invoke "./configure"
176 (string-append "SHELL=" (which "bash"))
177 (string-append "--prefix=" out))
178 (invoke "make" "install"))))))))
179 (home-page "https://www.x.org/")
180 (synopsis "Source code configuration and build system")
182 "Imake is a deprecated source code configuration and build system which
183 has traditionally been supplied by and used to build the X Window System in
184 X11R6 and previous releases. As of the X Window System X11R7 release, the X
185 Window system has switched to using GNU autotools as the primary build system,
186 and the Imake system is now deprecated, and should not be used by new software
187 projects. Software developers are encouraged to migrate software to the GNU
189 (license license:x11)))
198 "mirror://xorg/individual/util/"
199 "lndir-" version ".tar.bz2"))
202 "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"))))
203 (build-system gnu-build-system)
208 (home-page "https://www.x.org/")
209 (synopsis "Symlink directory into tree")
210 (description "Create a shadow directory of symbolic links to another
212 (license license:x11)))
214 (define-public bdftopcf
222 "mirror://xorg/individual/app/bdftopcf-"
227 "18hiscgljrz10zjcws25bis32nyrg3hzgmiq6scrh7izqmgz0kab"))))
228 (build-system gnu-build-system)
233 (home-page "https://www.x.org/wiki/")
234 (synopsis "Convert X font from BDF to PCF")
236 "BDFtoPCF is a font compiler for the X server and font server. It
237 converts X font from Bitmap Distribution Format to Portable Compiled Format
238 which can be read by any architecture.")
239 (license license:x11)))
241 (define-public xorgproto
247 (uri (string-append "ftp://ftp.freedesktop.org/pub/xorg//individual/proto/"
248 "xorgproto-" version ".tar.bz2"))
251 "05d0kib351qmnlfimaznaw0220fr0ym7fx2gn9h2jqxxilxncbxa"))))
252 (build-system gnu-build-system)
254 ;; To get util-macros in (almost?) all package inputs.
256 (home-page "https://cgit.freedesktop.org/xorg/proto/xorgproto")
257 (synopsis "Xorg protocol headers")
259 "This package provides the headers and specification documents defining
260 the core protocol and (many) extensions for the X Window System.")
261 (license license:x11)))
263 (define-public bigreqsproto
265 (name "bigreqsproto")
271 "mirror://xorg/individual/proto/bigreqsproto-"
276 "07hvfm84scz8zjw14riiln2v4w03jlhp756ypwhq27g48jmic8a6"))))
277 (build-system gnu-build-system)
278 (native-inputs (list pkg-config))
279 (home-page "https://www.x.org/wiki/")
280 (synopsis "Xorg BigReqsProto protocol headers")
282 "Big Requests Extension defines a protocol to enable the use of
283 requests that exceed 262140 bytes in length.")
284 (license license:x11)
285 (properties `((superseded . ,xorgproto)))))
287 (define-public compositeproto
289 (name "compositeproto")
295 "mirror://xorg/individual/proto/compositeproto-"
300 "1z0crmf669hirw4s7972mmp8xig80kfndja9h559haqbpvq5k4q4"))))
301 (build-system gnu-build-system)
306 (home-page "https://www.x.org/wiki/")
307 (synopsis "Xorg CompositeProto protocol headers")
309 "Composite Extension contains header files and documentation for
310 the damage protocol.")
311 (license license:x11)
312 (properties `((superseded . ,xorgproto)))))
314 (define-public damageproto
322 "mirror://xorg/individual/proto/damageproto-"
327 "0nzwr5pv9hg7c21n995pdiv0zqhs91yz3r8rn3aska4ykcp12z2w"))))
328 (build-system gnu-build-system)
329 (native-inputs (list pkg-config))
330 (home-page "https://www.x.org/wiki/")
331 (synopsis "Xorg DamageProto protocol headers")
333 "Damage Extension contains header files and documentation for
334 the damage protocol.")
335 (license license:x11)
336 (properties `((superseded . ,xorgproto)))))
338 (define-public dmxproto
346 "mirror://xorg/individual/proto/dmxproto-"
351 "02b5x9dkgajizm8dqyx2w6hmqx3v25l67mgf35nj6sz0lgk52877"))))
352 (build-system gnu-build-system)
353 (native-inputs (list pkg-config))
354 (home-page "https://www.x.org/wiki/")
355 (synopsis "Xorg DMXProto protocol headers")
357 "DMX (Distributed Multihead X) Extension defines a protocol for clients
358 to access a front-end proxy X server that controls multiple back-end X
359 servers making up a large display.")
360 (license license:x11)
361 (properties `((superseded . ,xorgproto)))))
363 (define-public dri2proto
371 "mirror://xorg/individual/proto/dri2proto-"
376 "015az1vfdqmil1yay5nlsmpf6cf7vcbpslxjb72cfkzlvrv59dgr"))))
377 (build-system gnu-build-system)
378 (home-page "https://www.x.org/wiki/")
379 (synopsis "Xorg DRI2Proto protocol headers")
381 "Direct Rendering Infrastructure 2 Extension defines a protocol to
382 securely allow user applications to access the video hardware without
383 requiring data to be passed through the X server.")
384 (license license:x11)
385 (properties `((superseded . ,xorgproto)))))
387 (define-public dri3proto
395 "mirror://xorg/individual/proto/dri3proto-"
400 "0x609xvnl8jky5m8jdklw4nymx3irkv32w99dfd8nl800bblkgh1"))))
401 (build-system gnu-build-system)
402 (home-page "https://www.x.org/wiki/")
403 (synopsis "Xorg DRI3Proto protocol headers")
405 "Direct Rendering Infrastructure 3 Extension provides mechanisms to
406 translate between direct rendered buffers and X pixmaps. When combined with
407 the Present extension, a complete direct rendering solution for OpenGL is
409 (license (license:x11-style "file://dri3proto.h"
410 "See 'dri3proto.h' in the distribution."))
411 (properties `((superseded . ,xorgproto)))))
413 (define-public %app-defaults-dir "/lib/X11/app-defaults")
415 (define-public editres
423 "mirror://xorg/individual/app/" name "-"
428 "04awfwmy3f9f0bchidc4ssbgrbicn5gzasg3jydpfnp5513d76h8"))))
429 (build-system gnu-build-system)
432 (list (string-append "--with-appdefaultdir="
433 %output ,%app-defaults-dir))))
435 (list libxaw libxmu libxt))
438 (home-page "https://www.x.org/wiki/")
439 (synopsis "Tool to browse and edit X Toolkit resource specifications")
441 "Editres is a tool that allows users and application developers to view
442 the full widget hierarchy of any X Toolkit application that speaks the Editres
443 protocol. In addition, editres will help the user construct resource
444 specifications, allow the user to apply the resource to the application and
445 view the results dynamically. Once the user is happy with a resource
446 specification editres will append the resource string to the user's X
448 (license license:x11)))
451 (define-public encodings
459 "mirror://xorg/individual/font/encodings-"
463 (base32 "0caafx0yqqnqyvbalxhh3mb0r9v36xmcy5zjhygb2i508dhy35mx"))))
464 (build-system gnu-build-system)
469 (home-page "https://www.x.org/wiki/")
470 (synopsis "Xorg font encoding files")
471 (description "Xorg font encoding files.")
472 (license license:public-domain)))
474 (define (%xorg-font-origin font version hash)
477 (uri (string-append "mirror://xorg/individual/font/" font "-"
480 (modules '((guix build utils)))
482 ;; Do not include timestamps in '.pcf.gz' files.
484 (substitute* "Makefile.in"
485 (("^COMPRESS = (.*)$" _ rest)
486 (string-append "COMPRESS = " (string-trim-right rest)
490 (define-syntax-rule (xorg-font-origin font version hash)
491 "Expand to the 'origin' form for the given Xorg font package."
492 (%xorg-font-origin font version (base32 hash)))
494 (define-public font-adobe100dpi
496 (name "font-adobe100dpi")
498 (source (xorg-font-origin
499 "font-adobe-100dpi" version
500 "0m60f5bd0caambrk8ksknb5dks7wzsg7g7xaf0j21jxmx8rq9h5j"))
501 (build-system gnu-build-system)
503 (list bdftopcf font-util mkfontdir))
507 `(#:configure-flags (list
508 ;; install fonts into subdirectory of package output instead of
509 ;; font-util-?.?.?/share/fonts/X11
510 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
511 (home-page "https://www.x.org/wiki/")
512 (synopsis "Xorg adobe-100dpi fonts")
513 (description "Xorg adobe-100dpi fonts.")
514 (license license:x11)))
517 (define-public font-adobe75dpi
519 (name "font-adobe75dpi")
521 (source (xorg-font-origin
522 "font-adobe-75dpi" version
523 "02advcv9lyxpvrjv8bjh1b797lzg6jvhipclz49z8r8y98g4l0n6"))
524 (build-system gnu-build-system)
526 (list bdftopcf font-util mkfontdir))
530 `(#:configure-flags (list
531 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
532 (home-page "https://www.x.org/wiki/")
533 (synopsis "Xorg adobe-75dpi fonts")
534 (description "Xorg adobe-75dpi fonts.")
535 (license license:x11)))
539 ;; (define-public font-adobe-utopia100dpi
540 ;; (define-public font-adobe-utopia75dpi
541 ;; (define-public font-adobe-utopia-type1
544 (define-public font-alias
548 (source (xorg-font-origin
550 "0xjjjindczv3g7m1597l0x19zz75xy70wh5garghz61fpzl1l4gk"))
551 (build-system gnu-build-system)
552 (native-inputs (list pkg-config))
554 `(#:phases (modify-phases %standard-phases
556 'install 'install-fonts-dir
557 ;; The X font server will not add directories to the font
558 ;; path unless they contain a "fonts.dir" file, so add some
560 (lambda* (#:key outputs #:allow-other-keys)
561 (let ((out (assoc-ref outputs "out")))
562 (for-each (lambda (d)
563 (call-with-output-file
564 (string-append out "/share/fonts/X11"
568 '("75dpi" "100dpi" "misc" "cyrillic"))
570 (home-page "https://www.x.org/wiki/")
571 (synopsis "Xorg font aliases")
573 "This package provides some common aliases for Xorg fonts.
574 For example: @code{6x10}, @code{9x15bold}, etc.")
575 (license license:x11)))
578 (define-public font-arabic-misc
580 (name "font-arabic-misc")
582 (source (xorg-font-origin
584 "1x246dfnxnmflzf0qzy62k8jdpkb6jkgspcjgbk8jcq9lw99npah"))
585 (build-system gnu-build-system)
587 (list mkfontdir bdftopcf))
590 (home-page "https://www.x.org/wiki/")
591 (synopsis "Xorg arabic-misc font")
592 (description "Xorg arabic-misc font.")
593 (license license:x11)))
597 ;; (define-public font-bh100dpi
598 ;; (define-public font-bh75dpi
599 ;; (define-public font-bh-lucidatypewriter100dpi
600 ;; (define-public font-bh-lucidatypewriter75dpi
601 ;; (define-public font-bh-ttf
602 ;; (define-public font-bh-type1
603 ;; (define-public font-bitstream100dpi
604 ;; (define-public font-bitstream75dpi
607 (define-public font-cronyx-cyrillic
609 (name "font-cronyx-cyrillic")
611 (source (xorg-font-origin
613 "0ai1v4n61k8j9x2a1knvfbl2xjxk3xxmqaq3p9vpqrspc69k31kf"))
614 (build-system gnu-build-system)
616 (list mkfontdir bdftopcf))
619 (home-page "https://www.x.org/wiki/")
620 (synopsis "Xorg cronyx-cyrillic font")
621 (description "Xorg cronyx-cyrillic font.")
622 (license license:x11)))
626 ;; (define-public font-cursor-misc
629 ;; (define-public font-daewoo-misc
632 (define-public font-dec-misc
634 (name "font-dec-misc")
636 (source (xorg-font-origin
638 "0yzza0l4zwyy7accr1s8ab7fjqkpwggqydbm2vc19scdby5xz7g1"))
639 (build-system gnu-build-system)
641 (list mkfontdir bdftopcf))
644 (home-page "https://www.x.org/wiki/")
645 (synopsis "Xorg dec-misc font")
646 (description "Xorg dec-misc font.")
647 (license license:x11)))
651 ;; (define-public font-ibm-type1
653 (define-public font-isas-misc
655 (name "font-isas-misc")
657 (source (xorg-font-origin
659 "0rx8q02rkx673a7skkpnvfkg28i8gmqzgf25s9yi0lar915sn92q"))
660 (build-system gnu-build-system)
662 (list mkfontdir bdftopcf))
665 (home-page "https://www.x.org/wiki/")
666 (synopsis "Xorg isas-misc font")
667 (description "Xorg isas-misc font.")
668 (license license:x11)))
672 ;; (define-public font-jis-misc
675 (define-public font-micro-misc
677 (name "font-micro-misc")
679 (source (xorg-font-origin
681 "1dldxlh54zq1yzfnrh83j5vm0k4ijprrs5yl18gm3n9j1z0q2cws"))
682 (build-system gnu-build-system)
684 (list mkfontdir bdftopcf))
687 (home-page "https://www.x.org/wiki/")
688 (synopsis "Xorg micro-misc font")
689 (description "Xorg micro-misc font.")
690 (license license:public-domain)))
693 (define-public font-misc-cyrillic
695 (name "font-misc-cyrillic")
697 (source (xorg-font-origin
699 "0q2ybxs8wvylvw95j6x9i800rismsmx4b587alwbfqiw6biy63z4"))
700 (build-system gnu-build-system)
702 (list mkfontdir bdftopcf))
705 (home-page "https://www.x.org/wiki/")
706 (synopsis "Xorg misc-cyrillic fonts")
707 (description "Xorg misc-cyrillic fonts.")
708 (license license:x11)))
711 (define-public font-misc-ethiopic
713 (name "font-misc-ethiopic")
715 (source (xorg-font-origin
717 "1q2azkdwc4x3kh53xclwpf9q654k70lhiyns1cjq594wvxnhz339"))
718 (build-system gnu-build-system)
720 (list mkfontdir mkfontscale))
723 (home-page "https://www.x.org/wiki/")
724 (synopsis "Xorg misc-ethiopic fonts")
725 (description "Xorg misc-ethiopic fonts.")
726 (license license:x11)))
730 ;; (define-public font-misc-meltho
733 (define-public font-misc-misc
735 (name "font-misc-misc")
737 (source (xorg-font-origin
739 "150pq6n8n984fah34n3k133kggn9v0c5k07igv29sxp1wi07krxq"))
740 (build-system gnu-build-system)
742 (list mkfontdir font-util bdftopcf))
746 `(#:configure-flags (list
747 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
748 (home-page "https://www.x.org/wiki/")
749 (synopsis "Xorg misc-misc fonts")
750 (description "Xorg misc-misc fixed fonts.")
751 (license license:public-domain)))
754 (define-public font-mutt-misc
756 (name "font-mutt-misc")
758 (source (xorg-font-origin
760 "13qghgr1zzpv64m0p42195k1kc77pksiv059fdvijz1n6kdplpxx"))
761 (build-system gnu-build-system)
763 (list mkfontdir bdftopcf))
766 (home-page "https://www.x.org/wiki/")
767 (synopsis "Xorg mutt-misc fonts")
768 (description "Xorg mutt-misc fonts.")
769 (license license:x11)))
772 (define-public font-schumacher-misc
774 (name "font-schumacher-misc")
776 (source (xorg-font-origin
778 "0nkym3n48b4v36y4s927bbkjnsmicajarnf6vlp7wxp0as304i74"))
779 (build-system gnu-build-system)
781 (list mkfontdir font-util bdftopcf))
785 `(#:configure-flags (list
786 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
787 (home-page "https://www.x.org/wiki/")
788 (synopsis "Xorg schumacher-misc fonts")
789 (description "Xorg schumacher-misc fonts.")
790 (license license:x11)))
793 (define-public font-screen-cyrillic
795 (name "font-screen-cyrillic")
797 (source (xorg-font-origin
799 "0yayf1qlv7irf58nngddz2f1q04qkpr5jwp4aja2j5gyvzl32hl2"))
800 (build-system gnu-build-system)
802 (list mkfontdir bdftopcf))
805 (home-page "https://www.x.org/wiki/")
806 (synopsis "Xorg screen-cyrillic fonts")
807 (description "Xorg screen-cyrillic fonts.")
808 (license license:x11)))
811 (define-public font-sony-misc
813 (name "font-sony-misc")
815 (source (xorg-font-origin
817 "1xfgcx4gsgik5mkgkca31fj3w72jw9iw76qyrajrsz1lp8ka6hr0"))
818 (build-system gnu-build-system)
820 (list mkfontdir bdftopcf))
823 (home-page "https://www.x.org/wiki/")
824 (synopsis "Xorg sony-misc fonts")
825 (description "Xorg sony-misc fonts.")
826 (license license:x11)))
829 (define-public font-sun-misc
831 (name "font-sun-misc")
833 (source (xorg-font-origin
835 "1q6jcqrffg9q5f5raivzwx9ffvf7r11g6g0b125na1bhpz5ly7s8"))
836 (build-system gnu-build-system)
838 (list mkfontdir bdftopcf))
841 (home-page "https://www.x.org/wiki/")
842 (synopsis "Xorg sun-misc fonts")
843 (description "Xorg sun-misc fonts.")
844 (license license:x11)))
847 (define-public font-util
855 "mirror://xorg/individual/font/font-util-"
859 (base32 "10i2a8b3d1h3w7klsqf31iz7zbd6l8wglil54fkhdb1385281n1s"))))
860 (build-system gnu-build-system)
861 (native-inputs (list pkg-config))
862 (home-page "https://www.x.org/wiki/")
863 (synopsis "Xorg font utilities")
865 "Xorg font package creation/installation utilities.")
866 (license license:x11)))
869 (define-public font-winitzki-cyrillic
871 (name "font-winitzki-cyrillic")
873 (source (xorg-font-origin
875 "181n1bgq8vxfxqicmy1jpm1hnr6gwn1kdhl6hr4frjigs1ikpldb"))
876 (build-system gnu-build-system)
878 (list mkfontdir bdftopcf))
881 (home-page "https://www.x.org/wiki/")
882 (synopsis "Xorg winitzki-cyrillic font")
883 (description "Xorg winitzki-cyrillic font.")
884 (license license:public-domain)))
887 (define-public font-xfree86-type1
889 (name "font-xfree86-type1")
891 (source (xorg-font-origin
893 "0jp3zc0qfdaqfkgzrb44vi9vi0a8ygb35wp082yz7rvvxhmg9sya"))
894 (build-system gnu-build-system)
896 (list mkfontdir mkfontscale))
899 (home-page "https://www.x.org/wiki/")
900 (synopsis "Xorg xfree86-type1 font")
901 (description "Xorg xfree86-type1 font.")
902 (license license:x11)))
905 (define-public fontsproto
913 "mirror://xorg/individual/proto/fontsproto-"
918 "1f2sdsd74y34nnaf4m1zlcbhyv8xb6irnisc99f84c4ivnq4d415"))))
919 (build-system gnu-build-system)
920 (native-inputs (list pkg-config))
921 (home-page "https://www.x.org/wiki/")
922 (synopsis "Xorg FontsProto protocol headers")
924 "Fonts Extension contains header files and documentation for
925 the fonts protocol.")
926 (license license:x11)
927 (properties `((superseded . ,xorgproto)))))
929 (define-public glproto
937 "mirror://xorg/individual/proto/glproto-"
942 "0h5ykmcddwid5qj6sbrszgkcypwn3mslvswxpgy2n2iixnyr9amd"))))
943 (build-system gnu-build-system)
944 (native-inputs (list pkg-config))
945 (home-page "https://www.x.org/wiki/")
946 (synopsis "Xorg GLProto protocol headers")
948 "OpenGL Extension defines a protocol for the client to send 3D
949 rendering commands to the X server.")
950 (license license:x11)
951 (properties `((superseded . ,xorgproto)))))
953 (define-public iceauth
961 "mirror://xorg/individual/app/iceauth-"
966 "1ik0mdidmyvy48hn8p2hwvf3535rf3m96hhf0mvcqrbj44x23vp6"))))
967 (build-system gnu-build-system)
972 (home-page "https://www.x.org/wiki/")
973 (synopsis "ICE authority file utility")
975 "ICEAuth program is used to edit and display the authorization
976 information used in connecting with ICE (Inter-Client Exchange). It
977 operates very much like the xauth program for X11 connection
978 authentication records.")
979 (license license:x11)))
982 (define-public inputproto
990 "mirror://xorg/individual/proto/inputproto-"
995 "07gk7v006zqn3dcfh16l06gnccy7xnqywf3vl9c209ikazsnlfl9"))))
996 (build-system gnu-build-system)
997 (native-inputs (list pkg-config))
998 (home-page "https://www.x.org/wiki/")
999 (synopsis "Xorg InputProto protocol headers")
1001 "Input Extension defines a protocol to provide additional input
1002 devices management such as graphic tablets.")
1003 (license license:x11)
1004 (properties `((superseded . ,xorgproto)))))
1006 (define-public kbproto
1014 "mirror://xorg/individual/proto/kbproto-"
1019 "0mxqj1pzhjpz9495vrjnpi10kv2n1s4vs7di0sh3yvipfq5j30pq"))))
1020 (build-system gnu-build-system)
1021 (native-inputs (list pkg-config))
1022 (home-page "https://www.x.org/wiki/")
1023 (synopsis "Xorg KBProto protocol headers")
1025 "X Keyboard (XKB) Extension defines a protocol to provide a number
1026 of new capabilities and controls for text keyboards.")
1027 (license license:x11)
1028 (properties `((superseded . ,xorgproto)))))
1030 ;; requires applewmproto, which compiles only on macos
1031 ;; (define-public libapplewm
1034 (define-public libdmx
1042 "mirror://xorg/individual/lib/libdmx-"
1047 "0hvjfhrcym770cr0zpqajdy3cda30aiwbjzv16iafkqkbl090gr5"))))
1048 (build-system gnu-build-system)
1050 '(#:configure-flags '("--disable-static")))
1052 (list xorgproto libxext libx11))
1055 (home-page "https://www.x.org/wiki/")
1056 (synopsis "Xorg DMX library")
1058 "DMX (Distributed Multihead X) extension library.")
1059 (license license:x11)))
1062 (define-public libxshmfence
1064 (name "libxshmfence")
1069 "mirror://xorg/individual/lib/"
1070 name "-" version ".tar.bz2"))
1073 "1ir0j92mnd1nk37mrv9bz5swnccqldicgszvfsh62jd14q6k115q"))))
1074 (build-system gnu-build-system)
1076 '(#:configure-flags '("--disable-static")))
1077 (native-inputs (list pkg-config))
1078 (inputs (list xorgproto))
1079 (home-page "https://www.x.org/")
1080 (synopsis "Xorg shared memory fences library")
1082 "This library provides an interface to shared-memory fences for
1083 synchronization between the X server and direct-rendering clients.")
1085 ;; Same license as libevdev.
1086 (license (license:x11-style "file://COPYING"))))
1089 (define-public libfontenc
1097 "mirror://xorg/individual/lib/libfontenc-"
1102 "0y90170dp8wsidr1dzza0grxr1lfh30ji3b5vkjz4j6x1n0wxz1c"))))
1103 (build-system gnu-build-system)
1105 '(#:configure-flags '("--disable-static")))
1107 (list zlib xorgproto))
1110 (home-page "https://gitlab.freedesktop.org/xorg/lib/libfontenc")
1111 (synopsis "Xorg font encoding library")
1112 (description "Xorg font encoding library.")
1113 (license license:x11)))
1116 (define-public libfs
1124 "mirror://xorg/individual/lib/libFS-"
1128 (base32 "03xxyvpfa3rhqcld4p2chkil482jn9cp80hj17jdybcv2hkkgqf8"))))
1129 (build-system gnu-build-system)
1131 (list xtrans xorgproto))
1134 (home-page "https://www.x.org/wiki/")
1135 (synopsis "Xorg Font Service client library")
1137 "Font Service client library is used by clients of X Font
1138 Servers (xfs), such as xfsinfo, fslsfonts, and the X servers
1140 (license license:x11)))
1143 (define-public libpciaccess
1145 (name "libpciaccess")
1151 "mirror://xorg/individual/lib/libpciaccess-"
1156 "12glp4w1kgvmqn89lk19cgr6jccd3awxra4dxisp7pagi06rsk11"))))
1157 (build-system gnu-build-system)
1159 '(;; Make sure libpciaccess can read compressed 'pci.ids' files as
1160 ;; provided by pciutils.
1163 (string-append "--with-pciids-path="
1164 (assoc-ref %build-inputs "pciutils")
1168 (modify-phases %standard-phases
1169 (add-after 'install 'add-L-zlib
1170 (lambda* (#:key inputs outputs #:allow-other-keys)
1171 ;; Provide '-LZLIB/lib' next to '-lz' in the .la file.
1172 (let ((zlib (assoc-ref inputs "zlib"))
1173 (out (assoc-ref outputs "out")))
1174 (substitute* (string-append out "/lib/libpciaccess.la")
1176 (string-append "-L" zlib "/lib -lz")))
1179 (list zlib pciutils)) ;for 'pci.ids.gz'
1182 (home-page "https://www.x.org/wiki/")
1183 (synopsis "Xorg PCI access library")
1184 (description "Xorg Generic PCI access library.")
1185 (license license:x11)))
1188 (define-public libpthread-stubs
1190 (name "libpthread-stubs")
1196 "mirror://xorg/individual/xcb/libpthread-stubs-"
1201 "0cz7s9w8lqgzinicd4g36rjg08zhsbyngh0w68c3np8nlc8mkl74"))))
1202 (build-system gnu-build-system)
1203 (native-inputs (list pkg-config))
1204 (home-page "https://www.x.org/wiki/")
1205 (synopsis "Library with pthread stubs")
1207 "This library provides weak aliases for pthread functions not
1208 provided in libc or otherwise available by default. Libraries like
1209 libxcb rely on pthread stubs to use pthreads optionally, becoming
1210 thread-safe when linked to libpthread, while avoiding any performance
1211 hit when running single-threaded.")
1212 (license license:x11)))
1215 (define-public libsm
1223 "mirror://xorg/individual/lib/libSM-"
1228 "1fwwfq9v3sqmpzpscymswxn76xhxnysa24pfim1mcpxhvjcl89id"))))
1229 (build-system gnu-build-system)
1231 '(#:configure-flags '("--disable-static")))
1233 (list libice)) ; SMlib.h includes ICElib.h
1235 `(("xtrans" ,xtrans)
1236 ("libuuid" ,util-linux "lib")))
1239 (home-page "https://www.x.org/wiki/")
1240 (synopsis "Xorg Session Management library")
1241 (description "Xorg Session Management library.")
1242 (license license:x11)))
1245 (define-public libwindowswm
1247 (name "libwindowswm")
1253 "mirror://xorg/individual/lib/libWindowsWM-"
1258 "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15"))))
1259 (build-system gnu-build-system)
1261 (list xorgproto libxext libx11))
1264 (home-page "https://www.x.org/wiki/")
1265 (synopsis "Xorg WindowsWM library")
1267 "Cygwin/X rootless window management extension.
1268 WindowsWM is a simple library designed to interface with the Windows-WM
1269 extension. This extension allows X window managers to better interact
1270 with the Cygwin XWin server when running X11 in a rootless mode.")
1271 (license license:x11)))
1274 (define-public libxcomposite
1276 (name "libxcomposite")
1282 "mirror://xorg/individual/lib/libXcomposite-"
1287 "13sfcglvz87vl58hd9rszwr73z0z4nwga3c12rfh7f5s2ln8l8dk"))))
1288 (build-system gnu-build-system)
1290 '(#:configure-flags '("--disable-static")))
1292 ;; xcomposite.pc refers to all these.
1293 (list xorgproto libxfixes libx11))
1296 (home-page "https://www.x.org/wiki/")
1297 (synopsis "Xorg Composite library")
1299 "Client library for the Composite extension to the X11 protocol.")
1300 (license license:x11)))
1303 (define-public libxdmcp
1311 "mirror://xorg/individual/lib/libXdmcp-"
1316 "0ab53h0rkq721ihk5hi469x500f3pgbkm1wy01yf24x5m923nli0"))))
1317 (build-system gnu-build-system)
1319 '(#:configure-flags '("--disable-static")))
1321 (list libbsd xorgproto))
1324 (home-page "https://www.x.org/wiki/")
1325 (synopsis "Xorg Display Manager Control Protocol library")
1326 (description "Xorg Display Manager Control Protocol library.")
1327 (license license:x11)))
1330 (define-public libxft
1338 "mirror://xorg/individual/lib/libXft-"
1343 "05lja9s54090xwh31r0bqms4v3pimng5xr09g2rdnafx2vk6hp12"))))
1344 (build-system gnu-build-system)
1346 '(#:configure-flags '("--disable-static")))
1348 ;; xft.pc refers to all these.
1349 `(("libxrender" ,libxrender)
1350 ("freetype" ,freetype)
1351 ("fontconfig" ,fontconfig)))
1353 (list libx11 xorgproto))
1356 (home-page "https://www.x.org/wiki/")
1357 (synopsis "Xorg FreeType library")
1359 "Xorg FreeType library connects X applications with the FreeType font
1360 rasterization library. Xft uses fontconfig to locate fonts so it has no
1361 configuration files.")
1362 (license license:x11)))
1365 (define-public libxkbfile
1373 "mirror://xorg/individual/lib/libxkbfile-"
1378 "1irq9crvscd3yb8sr802dhvvfr35jdy1n2yz094xplmd42mbv3bm"))))
1379 (build-system gnu-build-system)
1381 '(#:configure-flags '("--disable-static")))
1383 ;; Required in xkbfile.pc.
1384 (list libx11 kbproto))
1387 (home-page "https://www.x.org/wiki/")
1388 (synopsis "Xorg XKB file handling library")
1389 (description "Xorg XKB file handling library.")
1390 (license license:x11)))
1393 (define-public libxmu
1401 "mirror://xorg/individual/lib/libXmu-"
1406 "0cdpqnx6258i4l6qhphvkdiyspysg0i5caqjy820kp63wwjk4d4w"))))
1407 (build-system gnu-build-system)
1409 '(#:configure-flags '("--disable-static")))
1411 (list libxt xorgproto libxext))
1414 (home-page "https://www.x.org/wiki/")
1415 (synopsis "Xorg Xmu library")
1417 "Xmu library contains miscellaneous utilities and is not part of the
1418 Xlib standard. It is intended to support clients in the Xorg distribution;
1419 vendors may choose not to distribute this library if they wish. Therefore,
1420 applications developers who depend on this library should be prepared to
1421 treat it as part of their software base when porting.")
1422 (license license:x11)))
1425 (define-public libxpm
1433 "mirror://xorg/individual/lib/libXpm-"
1438 "09dc6nwlb2122h02vl64k9x56mxnyqz2gwpga0abfv4bb1bxmlcw"))))
1439 (build-system gnu-build-system)
1441 '(#:configure-flags '("--disable-static")))
1443 (list libxt xorgproto libxext))
1445 `(("gettext" ,gettext-minimal)
1446 ("pkg-config" ,pkg-config)))
1447 (home-page "https://www.x.org/wiki/")
1448 (synopsis "Xorg XPM library")
1449 (description "XPM (X Pixmap) image file format library.")
1450 (license license:x11)))
1453 (define-public libxres
1461 "mirror://xorg/individual/lib/libXres-"
1466 "049b7dk6hx47161hg47ryjrm6pwsp27r5pby05b0wqb1pcggprmn"))))
1467 (build-system gnu-build-system)
1469 '(#:configure-flags '("--disable-static")))
1471 (list xorgproto libxext libx11))
1474 (home-page "https://www.x.org/wiki/")
1475 (synopsis "Xorg Resource extension library")
1476 (description "X Resource extension library.")
1477 (license license:x11)))
1480 (define-public libxscrnsaver
1482 (name "libxscrnsaver")
1488 "mirror://xorg/individual/lib/libXScrnSaver-"
1493 "1y4vx1vabg7j9hamp0vrfrax5b0lmgm3h0lbgbb3hnkv3dd0f5zr"))))
1494 (build-system gnu-build-system)
1496 '(#:configure-flags '("--disable-static")))
1498 (list libx11 libxext xorgproto))
1501 (home-page "https://www.x.org/wiki/")
1502 (synopsis "Xorg Screen Saver library")
1503 (description "X11 Screen Saver extension client library.")
1504 (license license:x11)))
1507 (define-public libxxf86dga
1509 (name "libxxf86dga")
1514 (uri (string-append "mirror://xorg/individual/lib/"
1515 "libXxf86dga-" version ".tar.bz2"))
1517 (base32 "00vjvcdlc1sga251jkxn6gkxmx9h5n290ffxxpa40qbca1gvr61b"))))
1518 (build-system gnu-build-system)
1520 '(#:configure-flags '("--disable-static")))
1524 (list libx11 libxext))
1527 (home-page "https://www.x.org/wiki/")
1528 (synopsis "Xorg XFree86-DGA library")
1529 (description "Client library for the XFree86-DGA extension.")
1530 (license license:x11)))
1541 "mirror://xorg/individual/app/luit-"
1546 "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h"))
1547 ;; See https://bugs.freedesktop.org/show_bug.cgi?id=47792;
1548 ;; should become obsolete with the next release.
1549 (patches (search-patches "luit-posix.patch"))))
1550 (build-system gnu-build-system)
1555 (home-page "https://www.x.org/wiki/")
1556 (synopsis "Convert terminal I/O from legacy encodings to UTF-8")
1558 "Luit is a filter that can be run between an arbitrary application and
1559 a UTF-8 terminal emulator such as xterm. It will convert application
1560 output from the locale's encoding into UTF-8, and convert terminal
1561 input from UTF-8 into the locale's encoding.")
1562 (license license:x11)))
1565 (define-public makedepend
1573 "mirror://xorg/individual/util/makedepend-"
1578 "072h9nzh8s5vqfz35dli4fba36fnr219asjrb7p89n8ph0paan6m"))))
1579 (build-system gnu-build-system)
1582 (native-inputs (list pkg-config))
1583 (home-page "https://www.x.org/wiki/")
1584 (synopsis "Xorg makedepend utility")
1586 "Makedepend is an utility for creating dependencies in makefiles.")
1587 (license license:x11)))
1590 (define-public mkfontscale
1592 (name "mkfontscale")
1598 "mirror://xorg/individual/app/mkfontscale-"
1602 (base32 "1ixsnsm2mn0zy9ksdid0lj6irnhvasfik9mz8bbrs5sajzmra16a"))))
1603 (build-system gnu-build-system)
1605 (list zlib xorgproto freetype libfontenc))
1608 (home-page "https://www.x.org/wiki/")
1609 (synopsis "Create an index of scalable font files for X server")
1611 "MkFontScale creates the @code{fonts.scale} and @code{fonts.dir} index
1612 files used by the legacy X11 font system.")
1613 (license license:x11)))
1616 (define-public presentproto
1618 (name "presentproto")
1624 "mirror://xorg/individual/proto/presentproto-"
1629 "1f96dlgfwhsd0834z8ydjzjnb0cwha5r6lxgia4say4zhsl276zn"))))
1630 (build-system gnu-build-system)
1631 (home-page "https://www.x.org/wiki/")
1632 (synopsis "Xorg PresentProto protocol headers")
1634 "Present Extension provides a way for applications to update their
1635 window contents from a pixmap in a well defined fashion, synchronizing
1636 with the display refresh and potentially using a more efficient
1637 mechanism than copying the contents of the source pixmap.")
1638 (license (license:x11-style "file://presentproto.h"
1639 "See 'presentproto.h' in the distribution."))
1640 (properties `((superseded . ,xorgproto)))))
1642 (define-public printproto
1650 "mirror://xorg/individual/proto/printproto-"
1655 "06liap8n4s25sgp27d371cc7yg9a08dxcr3pmdjp761vyin3360j"))))
1656 (build-system gnu-build-system)
1657 (native-inputs (list pkg-config))
1658 (home-page "https://www.x.org/wiki/")
1659 (synopsis "Xorg PrintProto protocol headers")
1661 "Print Extension defines a protocol for a portable,
1662 network-transparent printing system.")
1663 (license license:x11)))
1666 (define-public randrproto
1674 "mirror://xorg/individual/proto/randrproto-"
1679 "0s4496z61y5q45q20gldwpf788b9nsa8hb13gnck1mwwwwrmarsc"))))
1680 (build-system gnu-build-system)
1681 (native-inputs (list pkg-config))
1682 (home-page "https://www.x.org/wiki/")
1683 (synopsis "Xorg RandRProto protocol headers")
1685 "Resize and Rotate Extension defines a protocol for clients to
1686 dynamically change X screens, so as to resize, rotate and reflect the root
1687 window of a screen.")
1688 (license license:x11)
1689 (properties `((superseded . ,xorgproto)))))
1692 (define-public recordproto
1694 (name "recordproto")
1700 "mirror://xorg/individual/proto/recordproto-"
1705 "0w3kgr1zabwf79bpc28dcnj0fpni6r53rpi82ngjbalj5s6m8xx7"))))
1706 (build-system gnu-build-system)
1707 (native-inputs (list pkg-config))
1708 (home-page "https://www.x.org/wiki/")
1709 (synopsis "Xorg RecordProto protocol headers")
1711 "Record Extension defines a protocol for the recording and playback
1712 of user actions in the X Window System.")
1713 (license license:x11)
1714 (properties `((superseded . ,xorgproto)))))
1716 (define-public renderproto
1718 (name "renderproto")
1724 "mirror://xorg/individual/proto/renderproto-"
1729 "0dr5xw6s0qmqg0q5pdkb4jkdhaja0vbfqla79qh5j1xjj9dmlwq6"))))
1730 (build-system gnu-build-system)
1731 (native-inputs (list pkg-config))
1732 (home-page "https://www.x.org/wiki/")
1733 (synopsis "Xorg RenderProto protocol headers")
1735 "Rendering Extension defines a protocol for a digital image composition
1736 as the foundation of a new rendering model within the X Window System.")
1737 (license license:x11)
1738 (properties `((superseded . ,xorgproto)))))
1740 (define-public resourceproto
1742 (name "resourceproto")
1748 "mirror://xorg/individual/proto/resourceproto-"
1753 "0638iyfiiyjw1hg3139pai0j6m65gkskrvd9684zgc6ydcx00riw"))))
1754 (build-system gnu-build-system)
1755 (native-inputs (list pkg-config))
1756 (home-page "https://www.x.org/wiki/")
1757 (synopsis "Xorg ResourceProto protocol headers")
1759 "Resource Extension defines a protocol that allows a client to
1760 query the X server about its usage of various resources.")
1761 (license license:x11)
1762 (properties `((superseded . ,xorgproto)))))
1764 (define-public scrnsaverproto
1766 (name "scrnsaverproto")
1772 "mirror://xorg/individual/proto/scrnsaverproto-"
1777 "0rfdbfwd35d761xkfifcscx56q0n56043ixlmv70r4v4l66hmdwb"))))
1778 (build-system gnu-build-system)
1779 (native-inputs (list pkg-config))
1780 (home-page "https://www.x.org/wiki/")
1781 (synopsis "Xorg ScrnSaverProto protocol headers")
1783 "Screen Saver Extension defines a protocol to control screensaver
1784 features and to query screensaver info on specific windows.")
1785 (license license:x11)
1786 (properties `((superseded . ,xorgproto)))))
1788 (define-public sessreg
1796 "mirror://xorg/individual/app/sessreg-" version ".tar.bz2"))
1798 (base32 "0crczl25zynkrslmm8sjaxszhrh4i33m7h5fg4wfdb3k8aarxjyz"))))
1799 (build-system gnu-build-system)
1804 (home-page "https://www.x.org/wiki/")
1805 (synopsis "Register X sessions in system utmp/utmpx databases")
1807 "SessReg is a simple program for managing utmp/wtmp entries for X
1808 sessions. It was originally written for use with xdm, but may also be
1809 used with other display managers such as gdm or kdm.")
1810 (license license:x11)))
1813 (define-public setxkbmap
1821 "mirror://xorg/individual/app/setxkbmap-"
1826 "1xdrxs65v7d0rw1yaz0vsz55w4hxym99216p085ya9978j379wlg"))))
1827 (build-system gnu-build-system)
1829 (list libxkbfile xkeyboard-config libx11))
1834 (list (string-append "--with-xkb-config-root="
1835 (assoc-ref %build-inputs "xkeyboard-config")
1836 "/share/X11/xkb"))))
1837 (home-page "https://www.x.org/wiki/")
1838 (synopsis "Set the keyboard using the X Keyboard Extension")
1840 "Setxkbmap is an X11 client to change the keymaps in the X server
1841 for a specified keyboard to use the layout determined by the options
1842 listed on the command line.")
1843 (license license:x11)))
1846 (define-public smproxy
1854 "mirror://xorg/individual/app/smproxy-"
1859 "0rkjyzmsdqmlrkx8gy2j4q6iksk58hcc92xzdprkf8kml9ar3wbc"))))
1860 (build-system gnu-build-system)
1862 (list libxt libxmu))
1865 (home-page "https://www.x.org/wiki/")
1866 (synopsis "Session Manager Proxy")
1868 "SMProxy allows X applications that do not support X11R6 session
1869 management to participate in an X11R6 session.")
1870 (license license:x11)))
1873 (define-public util-macros
1875 (name "util-macros")
1881 "mirror://xorg/individual/util/util-macros-"
1886 "0w8ryfqylprz37zj9grl4jzdsqq67ibfwq5raj7vm1i7kmp2x08g"))))
1887 (build-system gnu-build-system)
1888 (native-inputs (list pkg-config))
1891 (modify-phases %standard-phases
1892 (add-after 'unpack 'fix-makefile-in
1894 (substitute* "Makefile.in"
1895 ;; Install xorg-macros.pc in PREFIX/lib/pkgconfig,
1896 ;; not PREFIX/share/pkgconfig.
1897 (("\\$\\(datadir\\)/pkgconfig") "$(libdir)/pkgconfig"))
1899 (add-after 'install 'post-install-cleanup
1900 (lambda* (#:key outputs #:allow-other-keys)
1901 (let ((out (assoc-ref outputs "out")))
1902 (with-directory-excursion out
1903 (delete-file "share/util-macros/INSTALL")
1904 (rmdir "share/util-macros"))
1906 (home-page "https://www.x.org/wiki/")
1907 (synopsis "Xorg autoconf macros")
1909 "This package provides a set of autoconf macros used by the
1910 configure.ac scripts in other Xorg modular packages, and is needed to
1911 generate new versions of their configure scripts with autoconf.")
1912 (license license:x11)))
1915 (define-public videoproto
1923 "mirror://xorg/individual/proto/videoproto-"
1928 "00m7rh3pwmsld4d5fpii3xfk5ciqn17kkk38gfpzrrh8zn4ki067"))))
1929 (build-system gnu-build-system)
1930 (native-inputs (list pkg-config))
1931 (home-page "https://www.x.org/wiki/")
1932 (synopsis "Xorg VideoProto protocol headers")
1934 "Video Extension provides a protocol for a video output mechanism,
1935 mainly to rescale video playback in the video controller hardware.")
1936 (license license:x11)
1937 (properties `((superseded . ,xorgproto)))))
1939 (define-public windowswmproto
1941 (name "windowswmproto")
1947 "mirror://xorg/individual/proto/windowswmproto-"
1952 "0syjxgy4m8l94qrm03nvn5k6bkxc8knnlld1gbllym97nvnv0ny0"))))
1953 (build-system gnu-build-system)
1954 (native-inputs (list pkg-config))
1955 (home-page "https://www.x.org/wiki/")
1956 (synopsis "Xorg WindowsWMProto protocol headers")
1958 "WindowsWM Extension defines a protocol, used for coordination between
1959 an X11 server and the Microsoft Windows native window manager. WindowsWM
1960 is only intended to be used on Cygwin when running a rootless XWin
1962 (license license:x11)
1963 (properties `((superseded . ,xorgproto)))))
1965 (define-public x11perf
1973 "mirror://xorg/individual/app/x11perf-"
1978 "0d3wh6z6znwhfdiv0zaggfj0xgish98xa10yy76b9517zj7hnzhw"))))
1979 (build-system gnu-build-system)
1981 (list libx11 libxft libxmu libxrender))
1984 (home-page "https://www.x.org/wiki/")
1985 (synopsis "X server performance benchmarker")
1987 "X11Perf is a simple performance benchmarker for the Xorg X server.")
1988 (license license:x11)))
1991 (define-public xauth
1998 (uri (string-append "mirror://xorg/individual/app/xauth-" version
2001 (base32 "032klzzw8r09z36x1272ssd79bcisz8j5p8gbdy111fiknvx27bd"))))
2002 (build-system gnu-build-system)
2004 (list libxmu libxext libxau libx11))
2006 (list cmdtest pkg-config))
2007 (home-page "https://www.x.org/wiki/")
2008 (synopsis "X authority file utility")
2010 "XAuth program is used to edit and display the authorization
2011 information used in connecting to the X server.")
2012 (license license:x11)))
2015 (define-public xbacklight
2023 "mirror://xorg/individual/app/xbacklight-"
2028 "1plssg0s3pbslg6rfzxp9sx8ryvn8l32zyvc8zp9zsbsfwjg69rs"))))
2029 (build-system gnu-build-system)
2031 (list libxcb xcb-util))
2034 (home-page "https://www.x.org/wiki/")
2035 (synopsis "Control display backlight")
2037 "Xbacklight is used to adjust the backlight brightness where
2038 supported. It uses the RandR extension to find all outputs on the X
2039 server supporting backlight brightness control and changes them all in
2041 (license license:x11)))
2044 (define-public xbitmaps
2052 "mirror://xorg/individual/data/xbitmaps-"
2057 "1vh73sc13s7w5r6gnc6irca56s7998bja7wgdivkfn8jccawgw5r"))))
2058 (build-system gnu-build-system)
2059 (native-inputs (list pkg-config))
2060 (home-page "https://www.x.org/wiki/")
2061 (synopsis "X bitmaps")
2063 "xbitmaps provides basic bitmaps (little pictures) used by some
2065 (license license:x11)))
2067 (define-public xcalc
2074 (uri (string-append "mirror://xorg/individual/app/"
2075 "xcalc-" version ".tar.gz"))
2077 (base32 "0c768lh0nh28ram9ldldhaf51024fngc589v4pjmf3lxmzcihr58"))))
2078 (build-system gnu-build-system)
2080 `(#:phases (modify-phases %standard-phases
2082 'configure 'mutate-makefile
2084 (substitute* "Makefile"
2085 (("^appdefaultdir = .*$")
2086 (string-append "appdefaultdir = " %output
2087 ,%app-defaults-dir "\n")))
2093 (home-page "https://www.x.org/wiki/")
2094 (synopsis "Hand calculator for the X Window system")
2095 (description "Xcalc is a scientific calculator desktop accessory that can
2096 emulate a TI-30 or an HP-10C.")
2097 (license license:x11)))
2100 (define-public xcb-proto
2108 "https://xcb.freedesktop.org/dist/xcb-proto-"
2112 "01d62r286yfc3rpz714nqdgkl0wk9j0wqkd4ylas1d7r4vmkqshq"))
2113 (modules '((guix build utils)))
2116 ;; fractions.gcd has been deprecated since python-3.5.
2117 (substitute* "xcbgen/align.py"
2118 (("from fractions import gcd") "from math import gcd"))
2120 (build-system gnu-build-system)
2122 `(("pkg-config" ,pkg-config) ("python" ,python-minimal-wrapper)))
2123 (home-page "https://xcb.freedesktop.org/")
2124 (synopsis "XML-XCB protocol descriptions")
2126 "XCB-Proto provides the XML-XCB protocol descriptions that libxcb
2127 uses to generate the majority of its code and API. XCB-Proto is
2128 separated from libxcb to allow reuse by other projects, such as
2129 additional language bindings, protocol dissectors, or documentation
2132 XCB-Proto also contains language-independent Python libraries that are
2133 used to parse an XML description and create objects used by Python code
2134 generators in individual language bindings.")
2135 (license license:x11)))
2138 (define-public xcmiscproto
2140 (name "xcmiscproto")
2146 "mirror://xorg/individual/proto/xcmiscproto-"
2151 "1pyjv45wivnwap2wvsbrzdvjc5ql8bakkbkrvcv6q9bjjf33ccmi"))))
2152 (build-system gnu-build-system)
2153 (native-inputs (list pkg-config))
2154 (home-page "https://www.x.org/wiki/")
2155 (synopsis "Xorg XCMiscProto protocol headers")
2157 "XC-MISC Extension defines a protocol that provides Xlib two ways
2158 to query the server for available resource IDs.")
2159 (license license:x11)
2160 (properties `((superseded . ,xorgproto)))))
2162 (define-public xcmsdb
2170 "mirror://xorg/individual/app/xcmsdb-"
2175 "1ik7gzlp2igz183x70883000ygp99r20x3aah6xhaslbpdhm6n75"))))
2176 (build-system gnu-build-system)
2181 (home-page "https://www.x.org/wiki/")
2182 (synopsis "Device Color Characterization utility")
2184 "XCMSDB is used to load, query, or remove Device Color
2185 Characterization data stored in properties on the root window of the
2186 screen as specified in section 7, Device Color Characterization, of the
2187 X11 Inter-Client Communication Conventions Manual (ICCCM).")
2188 (license license:x11)))
2191 (define-public xcursor-themes
2193 (name "xcursor-themes")
2199 "mirror://xorg/individual/data/xcursor-themes-"
2204 "16a96li0s0ggg60v7f6ywxmsrmxdfizcw55ccv7sp4qjfisca7pf"))))
2205 (build-system gnu-build-system)
2207 (list libxcursor xcursorgen))
2212 (list (string-append "--with-cursordir="
2213 (assoc-ref %outputs "out")
2215 (home-page "https://www.x.org/wiki/")
2216 (synopsis "Default Xorg cursors")
2218 "This package provides a default set of cursor themes for the Xorg
2219 X server: @code{handhelds}, @code{redglass} and @code{whiteglass}.")
2220 (license license:x11)))
2222 (define-public hackneyed-x11-cursors
2224 (name "hackneyed-x11-cursors")
2230 (url "https://gitlab.com/Enthymeme/hackneyed-x11-cursors.git")
2232 (file-name (git-file-name name version))
2235 "1mjwbny4rid9dzz6xfb8l5rkwki41sfhdp970cf3w2pi9kyg1njs"))))
2236 (build-system gnu-build-system)
2238 `(#:tests? #f ;no test suite
2239 #:make-flags (list (string-append "PREFIX=" %output))
2241 (modify-phases %standard-phases
2243 (add-before 'build 'set-inkscape-environment-variable
2244 (lambda* (#:key inputs #:allow-other-keys)
2245 (let ((inkscape (search-input-file inputs "/bin/inkscape")))
2246 (setenv "INKSCAPE" inkscape))))
2247 (add-before 'build 'placate-inkscape-warnings
2249 (setenv "HOME" (getcwd))))
2250 (add-after 'build 'generate-black-cursors
2251 (lambda* (#:key make-flags parallel-build #:allow-other-keys)
2252 (let ((build (assoc-ref %standard-phases 'build))
2253 (make-flags/extended
2255 "THEME_NAME=Hackneyed-Dark"
2256 "COMMON_SOURCE=theme/common-dark.svg"
2257 "RSVG_SOURCE=theme/right-handed-dark.svg"
2258 "LSVG_SOURCE=theme/left-handed-dark.svg")))
2259 (build #:make-flags make-flags/extended
2260 #:parallel-build parallel-build))))
2261 (add-after 'install 'install-black-cursors
2262 (lambda* (#:key make-flags #:allow-other-keys)
2263 (apply invoke `("make" "install" ,@make-flags
2264 "THEME_NAME=Hackneyed-Dark")))))))
2265 (native-inputs (list imagemagick inkscape xcursorgen))
2266 (home-page "https://gitlab.com/Enthymeme/hackneyed-x11-cursors")
2267 (synopsis "Classic cursor theme for X11")
2268 (description "Hackneyed is a scalable cursor theme mildly resembling old
2269 Windows 3.x cursors. The cursors are available in white and black colors. A
2270 left-handed version of the cursors is also included.")
2271 (license license:x11)))
2273 (define-public xcursorgen
2281 "mirror://xorg/individual/app/xcursorgen-"
2286 "0ggbv084cavp52hjgcz3vdj0g018axs0m23c03lpc5sgn92gidim"))))
2287 (build-system gnu-build-system)
2289 (list libxcursor libpng))
2292 (home-page "https://www.x.org/wiki/")
2293 (synopsis "Create an X cursor file from PNG images")
2295 "XCursorGen prepares X11 cursor sets for use with libXcursor.")
2296 (license license:x11)))
2299 (define-public xdpyinfo
2307 "mirror://xorg/individual/app/xdpyinfo-"
2312 "0ldgrj4w2fa8jng4b3f3biaj0wyn8zvya88pnk70d7k12pcqw8rh"))))
2313 (build-system gnu-build-system)
2327 (home-page "https://www.x.org/wiki/")
2328 (synopsis "Xorg display information utility")
2330 "Xdpyinfo is used to display information about an X server: the
2331 capabilities of a server, the predefined values for various parameters
2332 used in communicating between clients and the server, and the different
2333 types of screens, visuals, and X11 protocol extensions that are
2335 (license license:x11)))
2338 (define-public xdriinfo
2346 "mirror://xorg/individual/app/xdriinfo-"
2351 "0lcx8h3zd11m4w8wf7dyp89826d437iz78cyrix436bqx31x5k6r"))))
2352 (build-system gnu-build-system)
2357 (home-page "https://www.x.org/wiki/")
2358 (synopsis "Query DRI configuration information")
2360 "XDRIInfo is used to query configuration information of X11
2361 DRI (Direct Rendering Infrastructure) drivers.")
2362 (license license:x11)))
2373 "mirror://xorg/individual/app/xev-"
2378 "1ql592pdhddhkipkrsxn929y9l2nn02a5fh2z3dx47kmzs5y006p"))))
2379 (build-system gnu-build-system)
2380 (arguments `(#:configure-flags ',(malloc0-flags)))
2382 (list libxrender libxrandr xorgproto libx11))
2385 (home-page "https://gitlab.freedesktop.org/xorg/app/xev")
2386 (synopsis "Print contents of X events")
2388 "XEv creates a window and then asks the X server to send it X11
2389 events whenever anything happens to the window (such as it being moved,
2390 resized, typed in, clicked in, etc.). You can also attach it to an
2391 existing window. It is useful for seeing what causes events to occur
2392 and to display the information that they contain; it is essentially a
2393 debugging and development tool, and should not be needed in normal
2395 (license license:x11)))
2398 (define-public xextproto
2406 "mirror://xorg/individual/proto/xextproto-"
2411 "1c2vma9gqgc2v06rfxdiqgwhxmzk2cbmknwf1ng3m76vr0xb5x7k"))))
2412 (build-system gnu-build-system)
2413 (native-inputs (list pkg-config))
2414 (home-page "https://www.x.org/wiki/")
2415 (synopsis "Xorg XExtProto protocol headers")
2417 "XExtProto provides the following extensions: DOUBLE-BUFFER, DPMS,
2418 Extended-Visual-Information, Generic Event Extension, LBX, MIT-SHM,
2419 MIT-SUNDRY-NONSTANDARD, Multi-Buffering, SECURITY, SHAPE, SYNC, TOG-CUP,
2420 XC-APPGROUP, XTEST.")
2421 (license license:x11)
2422 (properties `((superseded . ,xorgproto)))))
2424 (define-public libevdev
2431 (uri (string-append "https://www.freedesktop.org/software/" name "/"
2432 name "-" version ".tar.xz"))
2435 "1l628xblk36vh7aqia1fw6hh62af7va0pd70h28112l5i4afmx33"))))
2436 (build-system gnu-build-system)
2438 `(#:configure-flags '("--disable-static")))
2439 (native-inputs (list python))
2440 (home-page "https://www.freedesktop.org/wiki/Software/libevdev/")
2441 (synopsis "Wrapper library for evdev devices")
2443 "libevdev is a wrapper library for evdev devices. it moves the common
2444 tasks when dealing with evdev devices into a library and provides a library
2445 interface to the callers, thus avoiding erroneous ioctls, etc.
2447 The eventual goal is that libevdev wraps all ioctls available to evdev
2448 devices, thus making direct access unnecessary.")
2449 (license (license:x11-style "file://COPYING"))))
2452 (define-public xf86-input-evdev
2454 (name "xf86-input-evdev")
2460 "mirror://xorg/individual/driver/xf86-input-evdev-"
2465 "1h1y0fwnawlp4yc5llr1l7hwfcxxpln2fxhy6arcf6w6h4z0f9l7"))))
2466 (build-system gnu-build-system)
2469 ("libevdev" ,libevdev)
2471 ("xorg-server" ,xorg-server)))
2472 (native-inputs (list pkg-config))
2475 (list (string-append "--with-sdkdir="
2476 (assoc-ref %outputs "out")
2478 (home-page "https://www.x.org/wiki/")
2479 (synopsis "Generic input driver for X server")
2481 "xf86-input-evdev is a generic input driver for the Xorg X server.
2482 This driver supports all input devices that the kernel knows about,
2483 including most mice, keyboards, tablets and touchscreens.")
2484 (license license:x11)))
2486 (define-public xf86-input-libinput
2488 (name "xf86-input-libinput")
2493 "mirror://xorg/individual/driver/"
2494 name "-" version ".tar.bz2"))
2497 "05ldqr10f2rrnshyk3lc773rz0gp3ccdzwa8n7lsc94i850jl7g1"))))
2498 (build-system gnu-build-system)
2501 (list (string-append "--with-sdkdir="
2502 %output "/include/xorg"))))
2506 `(("libinput" ,libinput-minimal)
2507 ("xorg-server" ,xorg-server)))
2508 (home-page "https://www.x.org/wiki/")
2509 (synopsis "Input driver for X server based on libinput")
2511 "xf86-input-libinput is an input driver for the Xorg X server based
2512 on libinput. It is a thin wrapper around libinput, so while it does
2513 provide all features that libinput supports it does little beyond.")
2514 (license (list license:x11 ; only install-sh
2515 license:expat)))) ; everything else
2517 (define-public xf86-input-joystick
2519 (name "xf86-input-joystick")
2525 "mirror://xorg/individual/driver/xf86-input-joystick-"
2530 "1awfq496d082brgjbr60lhm6jvr9537rflwxqdfqwfzjy3n6jxly"))))
2531 (build-system gnu-build-system)
2532 (inputs (list xorg-server))
2533 (native-inputs (list pkg-config))
2536 (list (string-append "--with-sdkdir="
2537 (assoc-ref %outputs "out")
2539 (home-page "https://www.x.org/wiki/")
2540 (synopsis "Joystick input driver for X server")
2542 "xf86-input-joystick is a joystick input driver for the Xorg X server.
2543 It is used to control the pointer with a joystick device.")
2544 (license license:x11)))
2547 (define-public xf86-input-keyboard
2549 (name "xf86-input-keyboard")
2555 "mirror://xorg/individual/driver/xf86-input-keyboard-"
2560 "12032yg412kyvnmc5fha1in7mpi651d8sa1bk4138s2j2zr01jgp"))))
2561 (build-system gnu-build-system)
2562 (inputs (list xorg-server))
2563 (native-inputs (list pkg-config))
2564 (home-page "https://www.x.org/wiki/")
2565 (synopsis "Keyboard input driver for X server")
2567 "xf86-input-keyboard is a keyboard input driver for the Xorg X server.")
2568 (license license:x11)))
2571 (define-public xf86-input-mouse
2573 (name "xf86-input-mouse")
2579 "mirror://xorg/individual/driver/xf86-input-mouse-"
2584 "1iawr1wyl2qch1mqszcs0s84i92mh4xxprflnycbw1adc18b7v4k"))))
2585 (build-system gnu-build-system)
2586 (inputs (list xorg-server))
2587 (native-inputs (list pkg-config))
2590 (list (string-append "--with-sdkdir="
2591 (assoc-ref %outputs "out")
2593 (home-page "https://www.x.org/wiki/")
2594 (synopsis "Mouse input driver for X server")
2596 "xf86-input-mouse is a mouse input driver for the Xorg X server.
2597 This driver supports four classes of mice: serial, bus and PS/2 mice,
2598 and additional mouse types supported by specific operating systems, such
2600 (license license:x11)))
2603 (define-public xf86-input-synaptics
2605 (name "xf86-input-synaptics")
2611 "mirror://xorg/individual/driver/xf86-input-synaptics-"
2616 "0xhm03qywwfgkpfl904d08lx00y28m1b6lqmks5nxizixwk3by3s"))))
2617 (build-system gnu-build-system)
2618 (inputs (list libx11 libxi libevdev mtdev xorg-server))
2619 (native-inputs (list pkg-config))
2622 (list (string-append "--with-sdkdir="
2623 (assoc-ref %outputs "out")
2625 (string-append "--with-xorg-conf-dir="
2626 (assoc-ref %outputs "out")
2627 "/share/X11/xorg.conf.d"))))
2628 (home-page "https://www.x.org/wiki/")
2629 (synopsis "Touchpad input driver for X server")
2631 "xf86-input-synaptics is a touchpad driver for the Xorg X server.")
2632 (license license:x11)))
2635 (define-public xf86-input-void
2637 (name "xf86-input-void")
2643 "mirror://xorg/individual/driver/xf86-input-void-"
2648 "171k8b8s42s3w73l7ln9jqwk88w4l7r1km2blx1vy898c854yvpr"))))
2649 (build-system gnu-build-system)
2650 (inputs (list xorg-server))
2651 (native-inputs (list pkg-config))
2652 (home-page "https://www.x.org/wiki/")
2653 (synopsis "Void (null) input driver for X server")
2655 "xf86-input-void is a null input driver for the Xorg X server.")
2656 (license license:x11)))
2658 (define-public xf86-video-amdgpu
2660 (name "xf86-video-amdgpu")
2665 (uri (string-append "mirror://xorg/individual/driver/"
2666 "xf86-video-amdgpu-" version ".tar.bz2"))
2668 (base32 "125dq85n46yqmnmr2hknxwcqicwlvz2b2phf0m963fpg9l1j6y30"))))
2669 (build-system gnu-build-system)
2670 (inputs (list xorg-server))
2671 (native-inputs (list pkg-config))
2672 (home-page "https://www.x.org/wiki/")
2673 (synopsis "AMD Radeon video driver for X server")
2675 "xf86-video-amdgpu is an AMD Radeon video driver for the Xorg
2677 (license license:x11)))
2679 (define-public xf86-video-ark
2681 (name "xf86-video-ark")
2687 "mirror://xorg/individual/driver/xf86-video-ark-"
2692 "07p5vdsj2ckxb6wh02s61akcv4qfg6s1d5ld3jn3lfaayd3f1466"))
2693 (patches (search-patches "xf86-video-ark-remove-mibstore.patch"))))
2694 (build-system gnu-build-system)
2695 (inputs (list xorg-server))
2696 (native-inputs (list pkg-config))
2697 (home-page "https://www.x.org/wiki/")
2698 (synopsis "Ark Logic video driver for X server")
2700 "xf86-video-ark is an Ark Logic video driver for the Xorg X server.")
2701 (license license:x11)))
2703 (define-public xf86-video-ast
2705 (name "xf86-video-ast")
2707 (home-page "https://cgit.freedesktop.org/xorg/driver/xf86-video-ast/")
2711 "mirror://xorg/individual/driver/xf86-video-ast-"
2712 version ".tar.bz2"))
2715 "1pm2cy81ma7ldsw0yfk28b33h9z2hcj5rccrxhfxfgvxsiavrnqy"))))
2716 (build-system gnu-build-system)
2717 (inputs (list xorg-server))
2718 (native-inputs (list pkg-config))
2719 (synopsis "ASpeed Technologies video driver for X server")
2721 "xf86-video-ast is an ASpeed Technologies video driver for the Xorg
2723 (license license:x11)))
2725 (define-public xf86-video-ati
2726 ;; The current release is too old to build with our inputs.
2727 (let ((commit "5eba006e4129e8015b822f9e1d2f1e613e252cda")
2730 (name "xf86-video-ati")
2731 (version (git-version "19.1.0" revision commit))
2736 (url "https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati.git")
2738 (file-name (git-file-name name version))
2740 (base32 "1n49wx0v13jh8vv17sxgrmmpi1mk3n2wph07jfmxmzqahpcn4lkn"))))
2741 (build-system gnu-build-system)
2742 (inputs (list mesa xorgproto xorg-server))
2744 (list pkg-config autoconf automake libtool))
2745 (home-page "https://www.x.org/wiki/")
2746 (synopsis "ATI Radeon video driver for X server")
2748 "xf86-video-ati is an ATI Radeon video driver for the Xorg
2750 (license license:x11))))
2753 (define-public xf86-video-cirrus
2755 (name "xf86-video-cirrus")
2761 "mirror://xorg/individual/driver/xf86-video-cirrus-"
2766 "1asifc6ld2g9kap15vfhvsvyl69lj7pw3d9ra9mi4najllh7pj7d"))))
2767 (build-system gnu-build-system)
2768 (inputs (list xorg-server))
2769 (native-inputs (list pkg-config))
2770 (home-page "https://www.x.org/wiki/")
2771 (synopsis "Cirrus Logic video driver for X server")
2773 "xf86-video-cirrus is a Cirrus Logic video driver for the Xorg
2775 (license license:x11)))
2777 (define-public xf86-video-dummy
2779 (name "xf86-video-dummy")
2784 (uri (string-append "mirror://xorg/individual/driver/"
2785 "xf86-video-dummy-" version ".tar.bz2"))
2787 (base32 "1fcm9vwgv8wnffbvkzddk4yxrh3kc0np6w65wj8k88q7jf3bn4ip"))))
2788 (build-system gnu-build-system)
2789 (inputs (list xorg-server))
2790 (native-inputs (list pkg-config))
2791 (home-page "https://www.x.org/wiki/")
2792 (synopsis "Dummy video driver for X server")
2794 "Virtual/offscreen frame buffer driver for the Xorg X server.")
2795 ;; per https://lists.freedesktop.org/archives/xorg/2020-June/060316.html
2796 (license license:x11)))
2798 (define-public xf86-video-fbdev
2800 (name "xf86-video-fbdev")
2806 "mirror://xorg/individual/driver/xf86-video-fbdev-"
2811 "16a66zr0l1lmssa07i3rzy07djxnb45c17ks8c71h8l06xgxihyw"))))
2812 (build-system gnu-build-system)
2813 (inputs (list xorg-server))
2814 (native-inputs (list pkg-config))
2815 (home-page "https://www.x.org/wiki/")
2816 (synopsis "Framebuffer device video driver for X server")
2818 "xf86-video-fbdev is a video driver for the Xorg X server for
2819 framebuffer device.")
2820 (license license:x11)))
2823 (define-public xf86-video-freedreno
2824 (let ((commit "ccba8f89995de7d5e1b216e580b789c4cda05035"))
2826 (name "xf86-video-freedreno")
2827 (version (string-append "1.4.0-1-" (string-take commit 7)))
2830 ;; there's no current tarball
2833 (url (string-append "https://anongit.freedesktop.org/git/xorg/"
2834 "driver/xf86-video-freedreno.git"))
2838 "0bl9m1agi793lcddv94j8afzw1xc9w810q91mbq0n3dscbbcr9nh"))
2839 (file-name (string-append name "-" version))))
2840 (build-system gnu-build-system)
2842 `(("libdrm" ,libdrm)
2845 ("xorg-server" ,xorg-server)
2848 (list pkg-config autoconf automake libtool))
2849 ;; This driver is only supported on ARM systems.
2850 (supported-systems '("armhf-linux" "aarch64-linux"))
2853 (list (string-append "--with-xorg-conf-dir="
2854 (assoc-ref %outputs "out")
2855 "/share/X11/xorg.conf.d"))
2857 (modify-phases %standard-phases
2860 ;; autogen.sh calls configure unconditionally.
2861 (invoke "autoreconf" "-vfi"))))))
2862 (home-page "https://www.x.org/wiki/")
2863 (synopsis "Adreno video driver for X server")
2865 "xf86-video-freedreno is a 2D graphics driver for the Xorg X server.
2866 It supports a variety of Adreno graphics chipsets.")
2867 (license license:x11))))
2870 (define-public xf86-video-geode
2872 (name "xf86-video-geode")
2877 (uri (string-append "mirror://xorg/individual/driver/xf86-video-geode-"
2878 version ".tar.bz2"))
2880 (base32 "0r2dz0agg0k5wrqdbicji6mh6svzyl0xgqk76hpcfdlzn2zx15zl"))))
2881 (build-system gnu-build-system)
2882 (inputs (list xorg-server))
2883 (native-inputs (list pkg-config))
2885 ;; This driver is only supported on i686 systems.
2886 (filter (lambda (system) (string-prefix? "i686-" system))
2887 %supported-systems))
2888 (home-page "https://www.x.org/wiki/")
2889 (synopsis "AMD Geode GX/LX video driver for X server")
2891 "xf86-video-geode is an Xorg X server video driver for the AMD
2892 Geode GX and LX processors. The GX component supports both XAA and EXA
2893 for graphics acceleration. The LX component supports EXA, including
2894 compositing. Both support Xv overlay and dynamic rotation with XRandR.")
2895 (license license:x11)))
2898 ;; Driver for obsolete graphics cards, depends on libglide:
2899 ;; http://sourceforge.net/projects/glide/ ,
2900 ;; last updated in 2003, and which does not compile out of the box any more.
2901 ;; (define-public xf86-video-glide
2903 ;; (name "xf86-video-glide")
2904 ;; (version "1.2.0")
2907 ;; (method url-fetch)
2908 ;; (uri (string-append
2909 ;; "mirror://xorg/X11R7.7/src/everything/xf86-video-glide-"
2914 ;; "0byapm9mnpqk3wijfnnan3d22ii5cw6dmg4xn1625iiz89j5vs1l"))))
2915 ;; (build-system gnu-build-system)
2916 ;; (inputs `(("pkg-config" ,pkg-config)
2917 ;; ("xorg-server" ,xorg-server)))
2918 ;; (home-page "https://www.x.org/wiki/")
2919 ;; (synopsis "Glide video driver for X server")
2921 ;; "xf86-video-glide is a Glide video driver for the Xorg X server.")
2922 ;; (license license:x11)))
2925 (define-public xf86-video-glint
2927 (name "xf86-video-glint")
2933 "mirror://xorg/individual/driver/xf86-video-glint-"
2938 "1lkpspvrvrp9s539bhfdjfh4andaqyk63l6zjn8m3km95smk6a45"))))
2939 (build-system gnu-build-system)
2940 (inputs (list xorgproto xorg-server))
2941 (native-inputs (list pkg-config))
2942 (home-page "https://www.x.org/wiki/")
2943 (synopsis "GLINT/Permedia video driver for X server")
2945 "xf86-video-glint is a GLINT/Permedia video driver for the Xorg
2947 (license license:x11)))
2950 (define-public xf86-video-i128
2952 (name "xf86-video-i128")
2958 "mirror://xorg/individual/driver/xf86-video-i128-"
2963 "1snhpv1igrhifcls3r498kjd14ml6x2xvih7zk9xlsd1ymmhlb4g"))))
2964 (build-system gnu-build-system)
2965 (inputs (list xorg-server))
2966 (native-inputs (list pkg-config))
2967 (home-page "https://www.x.org/wiki/")
2968 (synopsis "I128 video driver for X server")
2970 "xf86-video-i128 is an I128 (Imagine 128) video driver for the Xorg
2972 (license license:x11)))
2975 (define-public xf86-video-intel
2976 (let ((commit "31486f40f8e8f8923ca0799aea84b58799754564")
2979 (name "xf86-video-intel")
2980 (version (git-version "2.99.917" revision commit))
2983 ;; there's no current tarball
2986 (url "https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.git")
2990 "0lv6vlx9gvp34pidmx4gxgb0qjf0km0gabbaxw141nnvj1azv94y"))
2991 (file-name (git-file-name name version))))
2992 (build-system gnu-build-system)
2993 (inputs `(("mesa" ,mesa)
2996 ("libxfont" ,libxfont2)
2997 ("xorg-server" ,xorg-server)))
2999 (list pkg-config autoconf automake libtool))
3001 ;; This driver is only supported on Intel systems.
3002 (filter (lambda (system) (or (string-prefix? "i686-" system)
3003 (string-prefix? "x86_64-" system)))
3004 %supported-systems))
3006 '(#:configure-flags '("--with-default-accel=uxa")))
3007 (home-page "https://www.x.org/wiki/")
3008 (synopsis "Intel video driver for X server")
3010 "xf86-video-intel is a 2D graphics driver for the Xorg X server.
3011 It supports a variety of Intel graphics chipsets.")
3012 (license license:x11))))
3015 (define-public xf86-video-mach64
3017 (name "xf86-video-mach64")
3023 "mirror://xorg/individual/driver/xf86-video-mach64-"
3028 "171wg8r6py1l138s58rlapin3rlpwsg9spmvhc7l68mm3g3hf1vs"))
3029 (patches (search-patches "xf86-video-mach64-glibc-2.20.patch"
3030 "xf86-video-mach64-bool-to-boolean.patch"))))
3031 (build-system gnu-build-system)
3032 (inputs (list mesa xorgproto xorg-server))
3035 (home-page "https://www.x.org/wiki/")
3036 (synopsis "Mach64 video driver for X server")
3038 "xf86-video-mach64 is a video driver for the Xorg X server.
3039 This driver is intended for all ATI video adapters based on the Mach64
3040 series or older chipsets, providing maximum video function within
3041 hardware limitations. The driver is also intended to optionally provide
3042 the same level of support for generic VGA or 8514/A adapters.")
3043 (license license:x11)))
3046 (define-public xf86-video-mga
3048 (name "xf86-video-mga")
3054 "mirror://xorg/individual/driver/xf86-video-mga-"
3059 "0yaxpgyyj9398nzzr5vnsfxcis76z46p9814yzj8179yl7hld296"))))
3060 (build-system gnu-build-system)
3061 (inputs (list mesa xorgproto xorg-server))
3062 (native-inputs (list pkg-config))
3063 (home-page "https://www.x.org/wiki/")
3064 (synopsis "Matrox video driver for X server")
3066 "xf86-video-mga is a Matrox video driver for the Xorg X server.")
3067 (license license:x11)))
3069 (define-public xf86-video-neomagic
3071 (name "xf86-video-neomagic")
3077 "mirror://xorg/individual/driver/xf86-video-neomagic-"
3082 "0r4h673kw8fl7afc30anwbjlbhp82mg15fvaxf470xg7z983k0wk"))))
3083 (build-system gnu-build-system)
3084 (inputs (list xorgproto xorg-server))
3085 (native-inputs (list pkg-config))
3086 (home-page "https://www.x.org/wiki/")
3087 (synopsis "NeoMagic video driver for X server")
3089 "xf86-video-neomagic is a NeoMagic video driver for the Xorg X server.")
3090 (license license:x11)))
3093 ;; This driver depends on XAA which has been removed from xorg-server.
3095 ;; (define-public xf86-video-newport
3097 ;; (name "xf86-video-newport")
3098 ;; (version "0.2.4")
3101 ;; (method url-fetch)
3102 ;; (uri (string-append
3103 ;; "mirror://xorg/individual/driver/xf86-video-newport-"
3108 ;; "1yafmp23jrfdmc094i6a4dsizapsc9v0pl65cpc8w1kvn7343k4i"))))
3109 ;; (build-system gnu-build-system)
3110 ;; (inputs `(("xorg-server" ,xorg-server)))
3111 ;; (native-inputs `(("pkg-config" ,pkg-config)))
3112 ;; (home-page "https://www.x.org/wiki/")
3113 ;; (synopsis "Newport video driver for X server")
3115 ;; "xf86-video-newport is an Xorg X server video driver for the SGI
3117 ;; (license license:x11)))
3120 (define-public xf86-video-nv
3122 (name "xf86-video-nv")
3128 "mirror://xorg/individual/driver/xf86-video-nv-"
3133 "0bdk3pc5y0n7p53q4gc2ff7bw16hy5hwdjjxkm5j3s7hdyg6960z"))))
3134 (build-system gnu-build-system)
3135 (inputs (list xorg-server))
3136 (native-inputs (list pkg-config))
3137 (home-page "https://www.x.org/wiki/")
3138 (synopsis "NVIDIA video driver for X server")
3140 "This package contains Xorg support for the NVIDIA GeForce 8 series of
3141 graphics processors.
3143 There are a few caveats of which to be aware: the XVideo extension is not
3144 supported, and the RENDER extension is not accelerated by this driver.")
3145 (license license:x11)))
3147 (define-public xf86-video-nouveau
3149 (name "xf86-video-nouveau")
3154 (uri (string-append "mirror://xorg/individual/driver/xf86-video-nouveau-"
3155 version ".tar.bz2"))
3157 (base32 "0sqm1jwjg15sp8v7039y2hsbhph8gpjd2bdzcqqiij2mgbi254s9"))
3158 (patches (search-patches "xf86-video-nouveau-fixup-ABI.patch"))))
3159 (build-system gnu-build-system)
3160 (inputs (list xorg-server))
3161 (native-inputs (list pkg-config))
3162 (home-page "https://nouveau.freedesktop.org")
3163 (synopsis "NVIDIA video driver for X server")
3165 "This package provides modern, high-quality Xorg drivers for NVIDIA
3167 (license license:x11)))
3169 (define-public xf86-video-openchrome
3171 (name "xf86-video-openchrome")
3177 "mirror://xorg/individual/driver/xf86-video-openchrome-"
3182 "0x9gq3hw6k661k82ikd1y2kkk4dmgv310xr5q59dwn4k6z37aafs"))))
3183 (build-system gnu-build-system)
3184 (inputs (list libx11
3192 (home-page "https://www.x.org/wiki/")
3193 (synopsis "Openchrome video driver for X server")
3195 "xf86-video-openchrome is a video driver for the Xorg X server.
3196 This driver is intended for VIA chipsets featuring the VIA UniChrome,
3197 UniChrome Pro and Chrome9 integrated graphics processors.")
3198 (license license:x11)))
3201 (define-public xf86-video-qxl
3203 (name "xf86-video-qxl")
3208 "mirror://xorg/individual/driver/"
3209 "xf86-video-qxl-" version ".tar.bz2"))
3212 "14jc24znnahhmz4kqalafmllsg8awlz0y6gpgdpk5ih38ph851mi"))
3213 (patches (search-patches
3214 "xf86-video-qxl-fix-build.patch"))))
3215 (build-system gnu-build-system)
3217 (list libxfont2 spice-protocol xorg-server xorgproto))
3220 (synopsis "Qxl video driver for X server")
3221 (description "xf86-video-qxl is a video driver for the Xorg X server.
3222 This driver is intended for the spice qxl virtio device.")
3223 (home-page "http://www.spice-space.org")
3224 (license license:x11)))
3226 (define-public xf86-video-r128
3228 (name "xf86-video-r128")
3232 (uri (string-append "mirror://xorg/individual/driver/"
3233 name "-" version ".tar.bz2"))
3236 "0mz0v5mqmmbncr2drd5zvia1fb7frz2xqwflhhqbnaxx5j48c740"))))
3237 (build-system gnu-build-system)
3238 (inputs (list mesa xorgproto xorg-server))
3241 (home-page "https://www.x.org/wiki/")
3242 (synopsis "ATI Rage 128 video driver for X server")
3244 "xf86-video-r128 is a video driver for the Xorg X server.
3245 This driver is intended for ATI Rage 128 based cards.")
3246 (license license:x11)))
3248 (define-public xf86-video-savage
3250 (name "xf86-video-savage")
3256 "mirror://xorg/individual/driver/xf86-video-savage-"
3259 (patches (search-patches "xf86-video-savage-xorg-compat.patch"))
3262 "11pcrsdpdrwk0mrgv83s5nsx8a9i4lhmivnal3fjbrvi3zdw94rc"))))
3263 (build-system gnu-build-system)
3264 (inputs (list mesa xorgproto xorg-server))
3265 (native-inputs (list pkg-config))
3266 (home-page "https://www.x.org/wiki/")
3267 (synopsis "Savage video driver for X server")
3269 "xf86-video-savage is an S3 Savage video driver for the Xorg X server.")
3270 (license license:x11)))
3273 (define-public xf86-video-siliconmotion
3275 (name "xf86-video-siliconmotion")
3281 "mirror://xorg/individual/driver/xf86-video-siliconmotion-"
3286 "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh"))
3287 (patches (search-patches "xf86-video-siliconmotion-fix-ftbfs.patch"))))
3288 (build-system gnu-build-system)
3289 (inputs (list xorg-server))
3290 (native-inputs (list pkg-config))
3291 (home-page "https://www.x.org/wiki/")
3292 (synopsis "Silicon Motion video driver for X server")
3294 "xf86-video-siliconmotion is a Silicon Motion video driver for the
3296 (license license:x11)))
3299 (define-public xf86-video-sis
3301 (name "xf86-video-sis")
3307 "mirror://xorg/individual/driver/xf86-video-sis-"
3312 "0nrs6cjldlhakx5987fiiggjrlzilsbdc7l9pz22x1iwslbkz78i"))))
3313 (build-system gnu-build-system)
3314 (inputs (list mesa xorgproto xorg-server))
3317 (home-page "https://www.x.org/wiki/")
3318 (synopsis "Sis video driver for X server")
3320 "xf86-video-SiS is a SiS video driver for the Xorg X server.
3321 This driver supports SiS chipsets of 300/315/330/340 series.")
3322 (license license:bsd-3)))
3325 (define-public xf86-video-suncg6
3327 (name "xf86-video-suncg6")
3333 "mirror://xorg/individual/driver/xf86-video-suncg6-"
3338 "04fgwgk02m4nimlv67rrg1wnyahgymrn6rb2cjj1l8bmzkii4glr"))))
3339 (build-system gnu-build-system)
3340 (inputs (list xorg-server))
3341 (native-inputs (list pkg-config))
3342 (home-page "https://www.x.org/wiki/")
3343 (synopsis "GX/TurboGX video driver for X server")
3345 "xf86-video-suncg6 is a GX/TurboGX video driver for the Xorg X server.")
3346 (license license:x11)))
3349 (define-public xf86-video-sunffb
3351 (name "xf86-video-sunffb")
3357 "mirror://xorg/individual/driver/xf86-video-sunffb-"
3362 "07z3ngifwg2d4jgq8pms47n5lr2yn0ai72g86xxjnb3k20n5ym7s"))))
3363 (build-system gnu-build-system)
3364 (inputs (list xorg-server))
3365 (native-inputs (list pkg-config))
3366 (home-page "https://www.x.org/wiki/")
3367 (synopsis "SUNFFB video driver for X server")
3369 "xf86-video-sunffb is a SUNFFB video driver for the Xorg X server.")
3370 (license license:x11)))
3373 (define-public xf86-video-tdfx
3375 (name "xf86-video-tdfx")
3381 "mirror://xorg/individual/driver/xf86-video-tdfx-"
3386 "0qc5wzwf1n65si9rc37bh224pzahh7gp67vfimbxs0b9yvhq0i9g"))))
3387 (build-system gnu-build-system)
3388 (inputs (list mesa xorgproto xorg-server))
3389 (native-inputs (list pkg-config))
3390 (home-page "https://www.x.org/wiki/")
3391 (synopsis "3Dfx video driver for X server")
3393 "xf86-video-tdfx is a 3Dfx video driver for the Xorg X server.")
3394 (license license:x11)))
3397 (define-public xf86-video-tga
3399 (name "xf86-video-tga")
3405 "mirror://xorg/individual/driver/xf86-video-tga-"
3410 "0cb161lvdgi6qnf1sfz722qn38q7kgakcvj7b45ba3i0020828r0"))
3411 (patches (search-patches "xf86-video-tga-remove-mibstore.patch"))))
3412 (build-system gnu-build-system)
3413 (inputs (list xorgproto xorg-server))
3414 (native-inputs (list pkg-config))
3415 (home-page "https://www.x.org/wiki/")
3416 (synopsis "TGA video driver for X server")
3418 "xf86-video-tga is a TGA (DEC 21030) video driver for the Xorg
3420 (license license:x11)))
3423 (define-public xf86-video-trident
3425 (name "xf86-video-trident")
3431 "mirror://xorg/individual/driver/xf86-video-trident-"
3436 "0gxcar434kx813fxdpb93126lhmkl3ikabaljhcj5qn3fkcijlcy"))))
3437 (build-system gnu-build-system)
3438 (inputs (list xorgproto xorg-server))
3439 (native-inputs (list pkg-config))
3440 (home-page "https://www.x.org/wiki/")
3441 (synopsis "Trident video driver for X server")
3443 "xf86-video-trident is a Trident video driver for the Xorg X server.")
3444 (license license:x11)))
3448 ;; (define-public xf86-video-v4l
3451 (define-public xf86-video-vesa
3453 (name "xf86-video-vesa")
3459 "mirror://xorg/individual/driver/xf86-video-vesa-"
3464 "0nf6ai74c60xk96kgr8q9mx6lrxm5id3765ws4d801irqzrj85hz"))))
3465 (build-system gnu-build-system)
3466 (inputs (list xorg-server))
3467 (native-inputs (list pkg-config))
3468 (home-page "https://www.x.org/wiki/")
3469 (synopsis "VESA video driver for X server")
3471 "xf86-video-vesa is a generic VESA video driver for the Xorg
3473 (license license:x11)))
3483 (url "https://github.com/mjanusz/v86d")
3484 (commit (string-append name "-" version))))
3485 (file-name (git-file-name name version))
3487 (base32 "1c4iiggb5r9i2hxhk8c6q1m2vpfva39l1w33fsfkrz6fav6x34pp"))
3488 (modules '((guix build utils)))
3491 ;; remove bundled x86emu
3492 (for-each delete-file
3493 (filter (lambda (name) ;keep customized Makefile
3494 (not (string-suffix? "Makefile" name)))
3495 (find-files "libs/x86emu")))
3496 ;; remove non-working vbetest utility program (it is unnecessary)
3497 (delete-file "libs/lrmi-0.10/vbe.h")
3498 (delete-file "libs/lrmi-0.10/vbetest.c")
3501 ;; We keep the bundled copy of the Linux Real Mode Interface lrmi-0.10,
3502 ;; because it includes fixes missing from upstream lrmi. We do not use
3503 ;; libx86, because we already use x86emu with the more current lrmi.
3505 (inputs `(("xorg-server-sources" ,(package-source xorg-server)) ;for x86emu
3506 ("xorgproto" ,xorgproto))) ;upstream x86emu uses X11/Xfuncproto.h
3507 (outputs '("out" ;main v86d helper
3508 "testvbe")) ;test program for listing video modes
3509 (supported-systems '("i686-linux" "x86_64-linux"))
3510 (build-system gnu-build-system)
3512 `(#:tests? #f ;there are no tests
3513 #:modules ((guix build utils)
3514 (guix build gnu-build-system)
3517 (modify-phases %standard-phases
3518 ;; Replace the bundled x86emu with its upstream copy from Xorg-server:
3519 (add-after 'unpack 'unpack-x86emu-sources
3520 (lambda* (#:key inputs #:allow-other-keys)
3522 (format #t "decompressing x86emu source code~%")
3523 (with-directory-excursion "libs"
3524 (let ((srcs (assoc-ref inputs "xorg-server-sources"))
3525 (tar-binary (search-input-file inputs "/bin/tar")))
3526 (invoke tar-binary "xvf" srcs "--strip-components=3"
3527 "--wildcards" "*/hw/xfree86/x86emu/")
3529 (with-directory-excursion "x86emu"
3530 (invoke tar-binary "xvf" srcs "--strip-components=1"
3531 "--wildcards" "*/COPYING"))
3534 (lambda* (#:key outputs #:allow-other-keys)
3535 (let ((out (assoc-ref outputs "out")))
3536 (setenv "CC" (which "gcc"))
3537 (setenv "DESTDIR" out)
3538 (invoke "./configure" "--with-x86emu"))))
3539 (add-after 'build 'build-testvbe
3541 (invoke "make" "testvbe")))
3542 (add-after 'install 'install-testvbe
3543 (lambda* (#:key outputs #:allow-other-keys)
3544 (let ((testvbe (assoc-ref outputs "testvbe"))
3545 (olddest (getenv "DESTDIR")))
3546 (setenv "DESTDIR" testvbe)
3547 (invoke "make" "install_testvbe")
3548 (setenv "DESTDIR" olddest)
3550 (add-after 'install 'install-docs
3551 (lambda* (#:key outputs #:allow-other-keys)
3552 (let* ((out (assoc-ref outputs "out"))
3553 (doc-dir (string-append out "/share/doc/v86d")))
3556 (string-append doc-dir "/README"))
3557 (copy-file "libs/lrmi-0.10/README"
3558 (string-append doc-dir "/README.lrmi"))
3559 (copy-file "libs/x86emu/COPYING"
3560 (string-append doc-dir "/COPYING.xorg-server.x86emu"))
3562 (home-page "https://github.com/mjanusz/v86d")
3563 (synopsis "Userspace helper for uvesafb")
3565 "v86d provides a backend for kernel drivers that need to execute x86 BIOS
3566 code. The code is executed in a controlled environment and the results are
3567 passed back to the kernel via the netlink interface. v86d is required by the
3568 uvesafb Linux kernel module that provides an fbdev framebuffer when Kernel
3569 Mode Setting is unavailable. It can be a last resort when no other Xorg X
3570 server driver works.")
3571 (license (list license:gpl2
3572 license:x11)))) ;for bundled lrmi and x86emu
3574 (define-public xf86-video-vmware
3576 (name "xf86-video-vmware")
3582 "mirror://xorg/individual/driver/xf86-video-vmware-"
3587 "0v06qhm059klq40m2yx4wypzb7h53aaassbjfmm6clcyclj1k5s7"))))
3588 (build-system gnu-build-system)
3593 mesa ; for xatracker
3596 (list eudev pkg-config))
3597 (home-page "https://www.x.org/wiki/")
3598 (synopsis "VMware SVGA video driver for X server")
3600 "xf86-video-vmware is a VMware SVGA video driver for the Xorg X server.")
3601 (license license:x11)))
3604 (define-public xf86-video-voodoo
3606 (name "xf86-video-voodoo")
3612 "mirror://xorg/individual/driver/xf86-video-voodoo-"
3617 "1s6p7yxmi12q4y05va53rljwyzd6ry492r1pgi7wwq6cznivhgly"))
3619 (search-patches "xf86-video-voodoo-pcitag.patch"))))
3620 (build-system gnu-build-system)
3621 (inputs (list xorgproto xorg-server))
3622 (native-inputs (list pkg-config))
3623 (home-page "https://www.x.org/wiki/")
3624 (synopsis "Voodoo/Voodoo2 video driver for X server")
3626 "xf86-video-voodoo is a Voodoo video driver for the Xorg X server.")
3627 (license license:x11)))
3630 ;; Only relevant for the frame buffer on BSD systems.
3631 ;; (define-public xf86-video-wsfb
3634 (define-public xf86bigfontproto
3636 (name "xf86bigfontproto")
3642 "mirror://xorg/individual/proto/xf86bigfontproto-"
3647 "0j0n7sj5xfjpmmgx6n5x556rw21hdd18fwmavp95wps7qki214ms"))))
3648 (build-system gnu-build-system)
3649 (home-page "https://www.x.org/wiki/")
3650 (synopsis "Xorg XF86BigFontProto protocol headers")
3652 "XFree86 Bigfont Extension contains header files and documentation
3653 for the XF86BigFontProto protocol.")
3654 (license license:x11)
3655 (properties `((superseded . ,xorgproto)))))
3657 (define-public xf86dgaproto
3659 (name "xf86dgaproto")
3665 "mirror://xorg/individual/proto/xf86dgaproto-"
3670 "0l4hx48207mx0hp09026r6gy9nl3asbq0c75hri19wp1118zcpmc"))))
3671 (build-system gnu-build-system)
3672 (home-page "https://www.x.org/wiki/")
3673 (synopsis "Xorg XF86DGAProto protocol headers")
3675 "XFree86 Direct Graphic Access Extension defines a protocol for
3676 direct linear framebuffer access.")
3677 (license license:x11)
3678 (properties `((superseded . ,xorgproto)))))
3680 (define-public xf86driproto
3682 (name "xf86driproto")
3688 "mirror://xorg/individual/proto/xf86driproto-"
3693 "07v69m0g2dfzb653jni4x656jlr7l84c1k39j8qc8vfb45r8sjww"))))
3694 (build-system gnu-build-system)
3695 (home-page "https://www.x.org/wiki/")
3696 (synopsis "Xorg XF86DRIProto protocol headers")
3698 "XFree86 Direct Rendering Infrastructure Extension defines a
3699 protocol to allow user applications to access the video hardware without
3700 requiring data to be passed through the X server.")
3701 (license license:x11)
3702 (properties `((superseded . ,xorgproto)))))
3704 (define-public xf86vidmodeproto
3706 (name "xf86vidmodeproto")
3712 "mirror://xorg/individual/proto/xf86vidmodeproto-"
3717 "0w47d7gfa8zizh2bshdr2rffvbr4jqjv019mdgyh6cmplyd4kna5"))))
3718 (build-system gnu-build-system)
3719 (home-page "https://www.x.org/wiki/")
3720 (synopsis "Xorg XF86VidModeProto protocol headers")
3722 "XFree86 Video Mode Extension defines a protocol for dynamically
3723 configuring modelines and gamma.")
3724 (license license:x11)
3725 (properties `((superseded . ,xorgproto)))))
3727 (define-public xgamma
3735 "mirror://xorg/individual/app/xgamma-"
3740 "1lr2nb1fhg5fk2fchqxdxyl739602ggwhmgl2wiv5c8qbidw7w8f"))))
3741 (build-system gnu-build-system)
3743 (list libxxf86vm libx11))
3746 (home-page "https://www.x.org/wiki/")
3747 (synopsis "Alter a monitor's gamma correction")
3749 "XGamma is used to query and alter the gamma correction of a
3750 monitor via the X video mode extension.")
3751 (license license:x11)))
3754 (define-public xhost
3762 "mirror://xorg/individual/app/xhost-"
3767 "15n3mnd4i5kh4z32qv11580qjgvnng0wry2y753ljrqkkrbkrp52"))))
3768 (build-system gnu-build-system)
3770 (list libxmu libxau libx11))
3773 (home-page "https://gitlab.freedesktop.org/xorg/app/xhost")
3774 (synopsis "Xorg server access control utility")
3776 "XHost is used to manage the list of host names or user names
3777 allowed to make connections to the X server.")
3778 (license license:x11)))
3781 (define-public xineramaproto
3783 (name "xineramaproto")
3789 "mirror://xorg/individual/proto/xineramaproto-"
3794 "0ns8abd27x7gbp4r44z3wc5k9zqxxj8zjnazqpcyr4n17nxp8xcp"))))
3795 (build-system gnu-build-system)
3796 (native-inputs (list pkg-config))
3797 (home-page "https://www.x.org/wiki/")
3798 (synopsis "Xorg XineramaProto protocol headers")
3800 "Xinerama Extension allows clients to query information about multiple
3801 physical screens controlled by a single X server that appear as a single
3802 screen to core X11 protocol operations.
3804 This extension provides a common network protocol for querying information
3805 which may be provided by different underlying screen combination
3806 technologies in the X server, such as the original Xinerama multiplexer, or
3807 alternative implementations like XRandR or TwinView.")
3808 (license license:x11)
3809 (properties `((superseded . ,xorgproto)))))
3811 (define-public xinput
3819 "mirror://xorg/individual/app/xinput-"
3824 "1vb6xdd1xmk5f7pwc5zcbxfray5sf1vbnscqwf2yl8lv7gfq38im"))))
3825 (build-system gnu-build-system)
3836 (home-page "https://www.x.org/wiki/")
3837 (synopsis "Configure input devices for X server")
3839 "XInput is used to configure and test XInput devices.")
3840 (license license:x11)))
3843 (define-public xkbcomp-intermediate ;used as input for xkeyboard-config
3845 (name "xkbcomp-intermediate")
3850 (uri (string-append "mirror://xorg/individual/app/xkbcomp-"
3851 version ".tar.bz2"))
3854 "0pmhshqinwqh5rip670l3szjpywky67hv232ql6gvdj489n0hlb8"))))
3855 (build-system gnu-build-system)
3857 (list xorgproto libxkbfile libx11))
3860 (home-page "https://www.x.org/wiki/")
3861 (synopsis "Compile XKB keyboard description")
3863 "xkbcomp keymap compiler converts a description of an XKB keymap
3864 into one of several output formats. The most common use for xkbcomp is
3865 to create a compiled keymap file (.xkm extension) which can be read
3866 directly by XKB- capable X servers or utilities.
3868 X Keyboard (XKB) Extension essentially replaces the core protocol
3869 definition of keyboard. The extension makes possible to clearly and
3870 explicitly specify most aspects of keyboard behaviour on per-key basis
3871 and to more closely track the logical and physical state of the
3872 keyboard. It also includes a number of keyboard controls designed to
3873 make keyboards more accessible to people with physical impairments.")
3874 (license license:x11)
3876 ;; The only reason this package is public is to make sure it's built and
3877 ;; published by the continuous integration tool.
3878 (properties '((hidden? . #t)))))
3880 (define-public xkbcomp ; using xkeyboard-config as input
3881 (package (inherit xkbcomp-intermediate)
3885 `(,@(package-inputs xkbcomp-intermediate)
3886 ("xkeyboard-config" ,xkeyboard-config)))
3889 (list (string-append "--with-xkb-config-root="
3890 (assoc-ref %build-inputs "xkeyboard-config")
3891 "/share/X11/xkb"))))))
3894 (define-public xkbevd
3902 "mirror://xorg/individual/app/xkbevd-"
3907 "0sprjx8i86ljk0l7ldzbz2xlk8916z5zh78cafjv8k1a63js4c14"))))
3908 (build-system gnu-build-system)
3910 (list libxkbfile libx11))
3913 (home-page "https://www.x.org/wiki/")
3914 (synopsis "XKB event daemon demo")
3916 "XKB event daemon listens for the specified XKB events and executes
3917 requested commands if they occur.")
3918 (license license:x11)))
3920 (define-public xkbprint
3927 (uri (string-append "mirror://xorg/individual/app/"
3928 "xkbprint-" version ".tar.bz2"))
3930 (base32 "1yi3232g25hhp241irncd8znv3090k2gm0yjcdnz08h89y1zwn2v"))))
3931 (build-system gnu-build-system)
3933 (list libx11 libxkbfile xorgproto))
3936 (home-page "https://www.x.org/wiki/")
3937 (synopsis "Visualise an XKB keyboard layout description")
3939 "The @command{xkbprint} utility visualises (``prints'') an XKB keyboard
3940 description as printable or encapsulated PostScript. It accepts any compiled
3941 keymap (@file{.xkm}) file that includes a geometry description, or can obtain
3942 one from a running X server.")
3943 (license license:x11)))
3945 (define-public xkbutils
3953 "mirror://xorg/individual/app/xkbutils-"
3958 "0c412isxl65wplhl7nsk12vxlri29lk48g3p52hbrs3m0awqm8fj"))))
3959 (build-system gnu-build-system)
3961 (list libxt libxaw xorgproto))
3964 (home-page "https://www.x.org/wiki/")
3965 (synopsis "XKB utilities")
3967 "XKBUtils is a collection of small utilities for X Keyboard (XKB)
3968 extension to the X11 protocol. It includes:
3970 - xkbbell: generate XKB bell events;
3972 - xkbvleds: display the state of LEDs on an XKB keyboard in a window;
3974 - xkbwatch: reports changes in the XKB keyboard state.")
3975 (license license:x11)))
3978 (define-public xkeyboard-config
3980 (name "xkeyboard-config")
3986 "ftp://ftp.freedesktop.org/pub/xorg//individual/data/xkeyboard-config/xkeyboard-config-"
3991 "1kmq2ykwmh10sd6155gml4jhdxmvsll6xdg7zw86czpfhrvd48dk"))))
3992 (build-system gnu-build-system)
3994 (list libx11 xkbcomp-intermediate))
3996 `(("gettext" ,gettext-minimal)
3998 ("pkg-config" ,pkg-config)
3999 ("python" ,python)))
4000 (home-page "https://www.x.org/wiki/")
4001 (synopsis "Xorg XKB configuration files")
4003 "xkeyboard-config provides a database for X Keyboard (XKB) Extension.
4004 There are five components that define a complete keyboard mapping:
4005 symbols, geometry, keycodes, compat, and types; these five components
4006 can be combined together using the @code{rules} component of this database.")
4007 (license license:x11)))
4010 (define-public xkill
4018 "mirror://xorg/individual/app/xkill-"
4023 "0szzd9nzn0ybkhnfyizb876irwnjsnb78rcaxx6prb71jmmbpw65"))))
4024 (build-system gnu-build-system)
4026 (list libxmu libx11))
4029 (home-page "https://www.x.org/wiki/")
4030 (synopsis "Kill a client by its X resource")
4032 "XKill is used to force the X server to close connections to
4033 clients. This program is very dangerous, but is useful for aborting
4034 programs that have displayed undesired windows on a user's screen.")
4035 (license license:x11)))
4038 (define-public xlsatoms
4046 "mirror://xorg/individual/app/xlsatoms-"
4051 "10m3a046jvaw5ywx4y65kl84lsxqan70gww1g1r7cf96ijaqz1jp"))))
4052 (build-system gnu-build-system)
4057 (home-page "https://gitlab.freedesktop.org/xorg/app/xlsatoms")
4058 (synopsis "List interned X server atoms")
4060 "XLsAtoms is used to list the interned atoms defined on X server.")
4061 (license license:x11)))
4064 (define-public xlsclients
4072 "mirror://xorg/individual/app/xlsclients-"
4077 "1h8931sn34mcip6vpi4v7hdmr1r58gkbw4s2p97w98kykks2lgvp"))))
4078 (build-system gnu-build-system)
4083 (home-page "https://www.x.org/wiki/")
4084 (synopsis "List client applications running on a display")
4086 "XLsClients is used to list information about the client programs
4087 running on X server.")
4088 (license license:x11)))
4091 (define-public xlsfonts
4099 "mirror://xorg/individual/app/xlsfonts-"
4104 "0s6kxgv78chkwsqmhw929f4pf91gq63f4yvixxnan1h00cx0pf49"))))
4105 (build-system gnu-build-system)
4107 (list xorgproto libx11))
4110 (home-page "https://www.x.org/wiki/")
4111 (synopsis "List fonts available from an X server")
4113 "xlsfonts lists fonts available from an X server via the X11 core
4115 (license license:x11)))
4117 (define-public xfontsel
4124 "mirror://xorg/individual/app/xfontsel-"
4125 version ".tar.bz2"))
4128 "0700lf6hx7dg88wq1yll7zjvf9gbwh06xff20yffkxb289y0pai5"))))
4129 (build-system gnu-build-system)
4132 (list (string-append "--with-appdefaultdir="
4133 %output ,%app-defaults-dir))))
4135 (list libx11 libxaw libxmu libxt))
4138 (home-page "https://www.x.org/wiki/")
4139 (synopsis "Browse and select X font names")
4141 "XFontSel provides a simple way to display the X11 core protocol fonts
4142 known to your X server, examine samples of each, and retrieve the X Logical
4143 Font Description (XLFD) full name for a font.")
4144 (license license:x11)))
4153 "mirror://xorg/individual/app/xfd-"
4154 version ".tar.bz2"))
4157 "0n6r1v8sm0z0ycqch035xpm46nv5v4mav3kxh36883l3ln5r6bqr"))))
4158 (build-system gnu-build-system)
4161 (list (string-append "--with-appdefaultdir="
4162 %output ,%app-defaults-dir))))
4164 `(("fontconfig" ,fontconfig)
4169 ("libxrender" ,libxrender)
4170 ("libxkbfile" ,libxkbfile)))
4172 `(("gettext" ,gettext-minimal)
4173 ("pkg-config" ,pkg-config)))
4174 (home-page "https://www.x.org/wiki/")
4175 (synopsis "Display all the characters in an X font")
4177 "XFD (X Font Display) package provides an utility that displays a
4178 window containing the name of the font being displayed, a row of command
4179 buttons, several lines of text for displaying character metrics, and a grid
4180 containing one glyph per cell.")
4181 (license license:x11)))
4183 (define-public xmodmap
4191 "mirror://xorg/individual/app/xmodmap-"
4196 "0z28331i2pm16x671fa9qwsfqdmr6a43bzwmp0dm17a3sx0hjgs7"))))
4197 (build-system gnu-build-system)
4199 (list xorgproto libx11))
4202 (home-page "https://gitlab.freedesktop.org/xorg/app/xmodmap")
4203 (synopsis "Modify keymaps and button mappings on X server")
4205 "Xmodmap is used to display and edit the keyboard modifier map and
4206 keymap table that are used by client programs running on X server to
4207 convert event keycodes into keysyms. It is usually run from the user's
4208 session startup script to configure the keyboard according to personal
4210 (license license:x11)))
4214 ;; (define-public xorg-docs
4217 (define-public xorg-sgml-doctools
4219 (name "xorg-sgml-doctools")
4225 "mirror://xorg/individual/doc/xorg-sgml-doctools-"
4230 "0k5pffyi5bx8dmfn033cyhgd3gf6viqj3x769fqixifwhbgy2777"))))
4231 (build-system gnu-build-system)
4232 (native-inputs (list pkg-config))
4233 (home-page "https://www.x.org/wiki/")
4234 (synopsis "Xorg SGML documentation tools")
4236 "This package provides a common set of SGML entities and XML/CSS style
4237 sheets used in building/formatting the documentation provided in other
4238 Xorg packages. It's typically only needed by people building from
4239 source who want to produce formatted documentation from their builds, or
4240 those who have installed the HTML version of the documentation, which
4241 refers to the included common xorg.css stylesheet.")
4242 (license license:x11)))
4253 "mirror://xorg/individual/app/xpr-"
4258 "07qy9lwjvxighcmg6qvjkgagad3wwvidrfx0jz85lgynz3qy0dmr"))))
4259 (build-system gnu-build-system)
4261 (list xorgproto libxmu libx11))
4264 (home-page "https://www.x.org/wiki/")
4265 (synopsis "Print an X window dump from xwd")
4267 "XPr takes as input a window dump file produced by xwd and formats
4268 it for output on various types of printers.")
4269 (license license:x11)))
4272 (define-public xprop
4279 (uri (string-append "mirror://xorg/individual/app/xprop-"
4280 version ".tar.bz2"))
4283 "18ckr8g1z50zkc01hprkpm1npwbq32yqib4b3l98c95z2q1yv4lv"))))
4284 (build-system gnu-build-system)
4286 (list libx11 xorgproto))
4289 (home-page "https://www.x.org/wiki/")
4290 (synopsis "Display X server properties")
4292 "xprop is used to display and/or set window and font properties of
4294 (license license:x11)))
4297 (define-public xrandr
4305 "mirror://xorg/individual/app/xrandr-"
4309 "0ql75s1n3dm2m3g1ilb9l6hqh15r0v709bgghpwazy3jknpnvivv"))))
4310 (build-system gnu-build-system)
4312 (list libxrender libxrandr xorgproto libx11))
4315 (home-page "https://www.x.org/wiki/")
4316 (synopsis "Command line interface to X RandR extension")
4318 "xrandr - primitive command line interface to X11 Resize, Rotate,
4319 and Reflect (RandR) extension.")
4320 (license license:x11)))
4330 (uri (string-append "mirror://xorg/individual/app/xrdb-"
4331 version ".tar.bz2"))
4333 (base32 "1d78prd8sfszq2rwwlb32ksph4fymf988lp75aj8iysg44f06pag"))))
4334 (build-system gnu-build-system)
4336 (list libxmu libx11))
4339 (home-page "https://gitlab.freedesktop.org/xorg/app/xrdb")
4340 (synopsis "X server resource database utility")
4342 "XRDB is used to get or set the contents of the RESOURCE_MANAGER
4343 property on the root window of screen 0, or the SCREEN_RESOURCES
4344 property on the root window of any or all screens, or everything
4345 combined. You would normally run this program from your X startup
4347 (license license:x11)))
4350 (define-public xrefresh
4358 "mirror://xorg/individual/app/xrefresh-"
4363 "0lv3rlshh7s0z3aqx5ahnnf8cl082m934bk7gv881mz8nydznz98"))))
4364 (build-system gnu-build-system)
4369 (home-page "https://www.x.org/wiki/")
4370 (synopsis "Refresh all or part of an X screen")
4372 "Xrefresh is a simple X program that causes all or part of your
4373 screen to be repainted. This is useful when system messages have messed
4375 (license license:x11)))
4386 "mirror://xorg/individual/app/xset-"
4391 "0my987wjvra7l92ry6q44ky383yg3phzxhdbn3lqhapm1ll9bzg4"))))
4392 (build-system gnu-build-system)
4394 (list xorgproto libxmu libxext libx11))
4397 (home-page "https://www.x.org/wiki/")
4398 (synopsis "User preference utility for X server")
4400 "XSet is used to set various user preference options of the display.")
4401 (license license:x11)))
4404 (define-public xsetroot
4412 "mirror://xorg/individual/app/xsetroot-"
4417 "0z21mqvmdl6rl63q77479wgkfygnll57liza1i3va7sr4fx45i0h"))))
4418 (build-system gnu-build-system)
4420 (list libxmu libxcursor xbitmaps))
4423 (home-page "https://www.x.org/wiki/")
4424 (synopsis "Root window parameter setting utility for X server")
4426 "XSetRoot allows you to tailor the appearance of the root window on
4427 a display running X server.")
4428 (license license:x11)))
4431 (define-public xtrans
4439 "mirror://xorg/individual/lib/xtrans-"
4444 "0wyp0yc6gi72hwc3kjmvm3vkj9p6s407cb6dxx37jh9wb68l8z1p"))))
4445 (build-system gnu-build-system)
4446 (native-inputs (list pkg-config))
4447 (home-page "https://www.x.org/wiki/")
4448 (synopsis "Xorg Network Transport layer library")
4450 "Xtrans is a library of code that is shared among various X packages to
4451 handle network protocol transport in a modular fashion, allowing a single
4452 place to add new transport types. It is used by the X server, libX11,
4453 libICE, the X font server, and related components.")
4454 (license license:x11)))
4457 (define-public xvinfo
4465 "mirror://xorg/individual/app/xvinfo-"
4470 "0gz7fvxavqlrqynpfbrm2nc9yx8h0ksnbnv34fj7n1q6cq6j4lq3"))))
4471 (build-system gnu-build-system)
4473 (list libxext libxv libx11))
4476 (home-page "https://gitlab.freedesktop.org/xorg/app/xvinfo")
4477 (synopsis "Print out X-Video extension adaptor information")
4479 "XVInfo is used to print out the capabilities of any video adaptors
4480 associated with the display that are accessible through the X-Video
4482 (license license:x11)))
4492 (uri (string-append "mirror://xorg/individual/app/xwd-"
4493 version ".tar.bz2"))
4495 (base32 "06q36fh55r62ms0igfxsanrn6gv8lh794q1bw9xzw51p2qs2papv"))))
4496 (build-system gnu-build-system)
4498 (list libxt libxkbfile xorgproto))
4501 (home-page "https://www.x.org/wiki/")
4502 (synopsis "Dump current contents of X window or screen to file")
4504 "Xwd is used to store window images in a specially formatted dump
4505 file. This file can then be read by various other X utilities for
4506 redisplay, printing, editing, formatting, archiving, image processing,
4507 etc. The target window is selected by clicking the pointer in the
4508 desired window. The keyboard bell is rung once at the beginning of the
4509 dump and twice when the dump is completed.")
4510 (license license:x11)))
4513 (define-public xwininfo
4521 "mirror://xorg/individual/app/xwininfo-"
4526 "03h8clirhw5ki1xxp18xbf5vynm7r0dwspsgfin6cxn4vx0m8h3s"))))
4527 (build-system gnu-build-system)
4529 (list libx11 xorgproto))
4532 (home-page "https://www.x.org/wiki/")
4533 (synopsis "Window information utility for X server")
4535 "XWinInfo is used to print out information about windows on an X server.
4536 Various information is displayed depending on which options are selected.")
4537 (license license:x11)))
4548 "mirror://xorg/individual/app/xwud-"
4553 "1a8hdgy40smvblnh3s9f0vkqckl68nmivx7d48zk34m8z18p16cr"))))
4554 (build-system gnu-build-system)
4556 (list xorgproto libx11))
4559 (home-page "https://www.x.org/wiki/")
4560 (synopsis "Display an X window dump from xwd")
4562 "Xwud is used to display in a window an image saved in a specially
4563 formatted dump file, such as produced by xwd.")
4564 (license license:x11)))
4566 (define-public xorg-rgb
4574 "mirror://xorg/individual/app/rgb-"
4579 "1c76zcjs39ljil6f6jpx1x17c8fnvwazz7zvl3vbjfcrlmm7rjmv"))))
4580 (build-system gnu-build-system)
4585 (home-page "https://www.x.org/wiki/")
4586 (synopsis "X color name database")
4588 "This package provides the X color name database.")
4589 (license license:x11)))
4591 ;; packages of height 1 in the propagated-inputs tree
4593 (define-public fixesproto
4601 "mirror://xorg/individual/proto/fixesproto-"
4606 "1ki4wiq2iivx5g4w5ckzbjbap759kfqd72yg18m3zpbb4hqkybxs"))))
4607 (build-system gnu-build-system)
4612 (home-page "https://www.x.org/wiki/")
4613 (synopsis "Xorg FixesProto protocol headers")
4615 "Fixes Extension makes changes to many areas of the protocol to resolve
4616 issues raised by application interaction with core protocol mechanisms that
4617 cannot be adequately worked around on the client side of the wire.")
4618 (license license:x11)
4619 (properties `((superseded . ,xorgproto)))))
4621 (define-public libxdamage
4629 "mirror://xorg/individual/lib/libXdamage-"
4634 "0igaw2akjf712y3rv7lx473jigxmcv9rs9y8sbrvbhya8f30cd5p"))))
4635 (build-system gnu-build-system)
4637 ;; These are all in the Requires or Requires.private field of xdamage.pc
4638 (list libxfixes xorgproto libx11))
4641 (home-page "https://www.x.org/wiki/")
4642 (synopsis "Xorg Damage Extension library")
4643 (description "Xorg library for the XDamage extension.")
4644 (license license:x11)))
4647 (define-public libxext
4655 "mirror://xorg/individual/lib/libXext-"
4660 "0azqxllcsfxc3ilhz6kwc6x7m8wc477p59ir9p0yrsldx766zbar"))))
4661 (build-system gnu-build-system)
4662 (outputs '("out" "doc")) ;man pages represent 40% of the total
4665 (list "--disable-static"
4666 (string-append "--mandir="
4667 (assoc-ref %outputs "doc")
4669 ,@(malloc0-flags))))
4673 (list libxau libx11))
4676 (home-page "https://www.x.org/wiki/")
4677 (synopsis "Xorg Common extensions library")
4679 "Library for common extensions to the X11 protocol.")
4680 (license license:x11)))
4683 (define-public libxinerama
4685 (name "libxinerama")
4691 "mirror://xorg/individual/lib/libXinerama-"
4696 "086p0axqj57nvkaqa6r00dnr9kyrn1m8blgf0zjy25zpxkbxn200"))))
4697 (build-system gnu-build-system)
4699 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
4703 (list libxext libx11))
4706 (home-page "https://www.x.org/wiki/")
4707 (synopsis "Xorg Xinerama protocol library")
4708 (description "API for Xinerama extension to X11 protocol.")
4709 (license license:x11)))
4712 (define-public libxp
4720 "mirror://xorg/individual/lib/libXp-"
4725 "0mwc2jwmq03b1m9ihax5c6gw2ln8rc70zz4fsj3kb7440nchqdkz"))))
4726 (build-system gnu-build-system)
4730 (list libx11 libxext))
4733 (home-page "https://www.x.org/wiki/")
4734 (synopsis "Xorg Print Client library")
4735 (description "Xorg Print Client library.")
4736 (license license:x11)))
4739 (define-public libxrender
4747 "mirror://xorg/individual/lib/libXrender-"
4752 "0j89cnb06g8x79wmmnwzykgkkfdhin9j7hjpvsxwlr3fz1wmjvf0"))))
4753 (build-system gnu-build-system)
4756 (list "--disable-static" ,@(malloc0-flags))))
4763 (home-page "https://www.x.org/wiki/")
4764 (synopsis "Xorg Render Extension library")
4765 (description "Library for the Render Extension to the X11 protocol.")
4766 (license license:x11)))
4768 (define-public libxtst
4776 "mirror://xorg/individual/lib/libXtst-"
4781 "012jpyj7xfm653a9jcfqbzxyywdmwb2b5wr1dwylx14f3f54jma6"))))
4782 (build-system gnu-build-system)
4784 '(#:configure-flags '("--disable-static")))
4786 (list libxi xorgproto))
4791 (home-page "https://www.x.org/wiki/")
4792 (synopsis "Xorg library for Xtest and Record extensions")
4794 "libXtst provides the Xlib-based client API for the XTEST & RECORD
4797 The XTEST extension is a minimal set of client and server extensions
4798 required to completely test the X11 server with no user intervention. This
4799 extension is not intended to support general journaling and playback of user
4802 The RECORD extension supports the recording and reporting of all core X
4803 protocol and arbitrary X extension protocol.")
4804 (license license:x11)))
4806 (define-public libxv
4814 "mirror://xorg/individual/lib/libXv-"
4819 "125hn06bd3d8y97hm2pbf5j55gg4r2hpd3ifad651i4sr7m16v6j"))))
4820 (build-system gnu-build-system)
4822 `(#:configure-flags '(,@(malloc0-flags) "--disable-static")))
4826 (list libxext libx11))
4829 (home-page "https://www.x.org/wiki/")
4830 (synopsis "Xorg XVideo Extension library")
4831 (description "Library for the X Video Extension to the X11 protocol.")
4832 (license license:x11)))
4834 (define-public mkfontdir
4842 "mirror://xorg/individual/app/mkfontdir-"
4847 "0c3563kw9fg15dpgx4dwvl12qz6sdqdns1pxa574hc7i5m42mman"))))
4848 (build-system gnu-build-system)
4851 (modify-phases %standard-phases
4852 (add-after 'unpack 'fix-configure
4853 (lambda* (#:key inputs native-inputs #:allow-other-keys)
4854 ;; Replace outdated config.sub and config.guess:
4855 (for-each (lambda (file)
4856 (install-file (string-append
4858 (or native-inputs inputs) "automake")
4860 ,(version-major+minor
4861 (package-version automake))
4863 '("config.sub" "config.guess"))
4865 (add-after 'install 'wrap-mkfontdir
4866 (lambda* (#:key inputs outputs #:allow-other-keys)
4867 (wrap-program (string-append (assoc-ref outputs "out")
4871 (search-input-file inputs "/bin/mkfontscale"))))))))))
4875 (list pkg-config automake)) ;For up to date 'config.guess' and 'config.sub'.
4876 (home-page "https://www.x.org/wiki/")
4877 (synopsis "Create an index of X font files in a directory")
4879 "MkFontDir creates the @code{fonts.dir} files needed by the legacy X
4880 server core font system. The current implementation is a simple wrapper
4881 script around the mkfontscale program.")
4882 (license license:x11)))
4884 (define-public xproto
4892 "mirror://xorg/individual/proto/xproto-"
4897 "0ivpxz0rx2a7nahkpkhfgymz7j0pwzaqvyqpdgw9afmxl1yp9yf6"))))
4898 (build-system gnu-build-system)
4900 (list util-macros)) ; to get util-macros in (almost?) all package inputs
4903 (home-page "https://www.x.org/wiki/")
4904 (synopsis "Xorg X11Proto protocol headers")
4906 "XProto provides the headers and specification documents defining
4907 the X Window System Core Protocol, Version 11.
4909 It also includes a number of headers that aren't purely protocol related,
4910 but are depended upon by many other X Window System packages to provide
4911 common definitions and porting layer.")
4912 (license license:x11)
4913 (properties `((superseded . ,xorgproto)))))
4915 ;; packages of height 2 in the propagated-inputs tree
4917 (define-public libice
4925 "mirror://xorg/individual/lib/libICE-"
4930 "0j638yvmyna2k4mz465jywgdybgdchdqppfx6xfazg7l5khxr1kg"))))
4931 (build-system gnu-build-system)
4933 '(#:configure-flags '("--disable-static")))
4937 (list libbsd xtrans))
4940 (home-page "https://www.x.org/wiki/")
4941 (synopsis "Xorg Inter-Client Exchange library")
4942 (description "Xorg Inter-Client Exchange library.")
4943 (license license:x11)))
4946 (define-public libxau
4954 "mirror://xorg/individual/lib/libXau-"
4959 "1v3krc6x0zliaa66qq1bf9j60x5nqfy68v8axaiglxpnvgqcpy6c"))))
4960 (build-system gnu-build-system)
4962 '(#:configure-flags '("--disable-static")))
4967 (home-page "https://www.x.org/wiki/")
4968 (synopsis "Xorg Authorization library")
4970 "libXau provides an authorization library for individual access to
4971 an X Window System display.")
4972 (license license:x11)))
4974 (define-public libxfixes
4982 "mirror://xorg/individual/lib/libXfixes-"
4987 "0k2v4i4r24y3kdr5ici1qqhp69djnja919xfqp54c2rylm6s5hd7"))))
4988 (build-system gnu-build-system)
4990 '(#:configure-flags '("--disable-static")))
4997 (home-page "https://www.x.org/wiki/")
4998 (synopsis "Xorg Fixes Extension library")
4999 (description "Library for the XFixes Extension to the X11 protocol.")
5000 (license license:x11)))
5002 (define-public libxfont
5010 "mirror://xorg/individual/lib/libXfont-"
5015 "0hiji1bvpl78aj3a3141hkk353aich71wv8l5l2z51scfy878zqs"))))
5016 (build-system gnu-build-system)
5018 '(#:configure-flags '("--disable-static")))
5020 (list freetype libfontenc xorgproto))
5025 (home-page "https://www.x.org/wiki/")
5026 (synopsis "Xorg Font handling library")
5028 "libXfont provides the core of the legacy X11 font system, handling the
5029 index files (fonts.dir, fonts.alias, fonts.scale), the various font file
5030 formats, and rasterizing them. It is used by the X servers, the X Font
5031 Server (xfs), and some font utilities (bdftopcf for instance), but should
5032 not be used by normal X11 clients. X11 clients access fonts via either the
5033 new API's in libXft, or the legacy API's in libX11.")
5034 (license license:x11)))
5036 (define-public libxfont2
5042 (uri (string-append "mirror://xorg/individual/lib/libXfont2-"
5043 version ".tar.bz2"))
5046 "1rk9pjxcm01lbr1dxhnvk4f2qrn6zp068qjbvvz5w0z5d0rin5bd"))))))
5048 (define-public libxi
5056 "mirror://xorg/individual/lib/libXi-"
5061 "0q8hz3slga3w3ch8wp0k7ay9ilhz315qnab0w1y2x9w3cf7hv8rn"))))
5062 (build-system gnu-build-system)
5063 (outputs '("out" "doc")) ;man pages represent 28% of the total
5065 `(#:configure-flags (list "--disable-static"
5066 (string-append "--mandir="
5067 (assoc-ref %outputs "doc")
5069 ,@(malloc0-flags))))
5071 (list xorgproto libx11 libxext libxfixes))
5074 (home-page "https://www.x.org/wiki/")
5075 (synopsis "Xorg Input Extension library")
5076 (description "Library for the XInput Extension to the X11 protocol.")
5077 (license license:x11)))
5079 (define-public libxrandr
5087 "mirror://xorg/individual/lib/libXrandr-"
5092 "08z0mqywrm7ij8bxlfrx0d2wy6kladdmkva1nw5k6qix82z0xsla"))))
5093 (build-system gnu-build-system)
5095 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
5097 ;; In accordance with xrandr.pc.
5098 (list libx11 libxext libxrender xorgproto))
5101 (home-page "https://www.x.org/wiki/")
5102 (synopsis "Xorg Resize and Rotate Extension library")
5104 "Library for the Resize and Rotate Extension to the X11 protocol.")
5105 (license license:x11)))
5107 (define-public libxvmc
5115 "mirror://xorg/individual/lib/libXvMC-"
5120 "1kbdjsvkm5l7axv7g477qj18sab2wnqhliy6197syzizgfbsfgbb"))))
5121 (build-system gnu-build-system)
5123 `(#:configure-flags '(,@(malloc0-flags) "--disable-static")))
5127 (list xorgproto libxext libx11))
5130 (home-page "https://www.x.org/wiki/")
5131 (synopsis "Xorg XvMC library")
5132 (description "Xorg XvMC library.")
5133 (license license:x11)))
5135 (define-public libxxf86vm
5143 "mirror://xorg/individual/lib/libXxf86vm-"
5148 "0mydhlyn72i7brjwypsqrpkls3nm6vxw0li8b2nw0caz7kwjgvmg"))))
5149 (build-system gnu-build-system)
5151 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
5153 (list libxext xorgproto))
5158 (home-page "https://www.x.org/wiki/")
5159 (synopsis "Xorg XF86 Video Mode Extension library")
5161 "Library for the XFree86 Video Mode Extension Extension to the X11
5163 (license license:x11)))
5166 ;; packages of height 3 in the propagated-inputs tree
5168 (define-public libxcb
5175 (uri (string-append "https://xcb.freedesktop.org/dist/"
5176 "libxcb-" version ".tar.xz"))
5179 "0d2chjgyn5lr9sfhacfvqgnj9l9faz11vn322a06jd6lk3dxcpm5"))))
5180 (build-system gnu-build-system)
5181 (outputs '("out" "doc")) ;5.5 MiB of man pages
5183 (list libpthread-stubs libxau libxdmcp))
5185 (list xcb-proto libxslt))
5187 `(("pkg-config" ,pkg-config)
5188 ("python" ,python-minimal-wrapper)))
5190 `(#:configure-flags (list "--enable-xkb"
5192 (string-append "--mandir="
5193 (assoc-ref %outputs "doc")
5195 (home-page "https://xcb.freedesktop.org/")
5196 (synopsis "The X C Binding (XCB) library")
5198 "libxcb provides an interface to the X Window System protocol,
5199 which replaces the current Xlib interface. It has several advantages
5200 over Xlib, including:
5202 - size: small, simple library, and lower memory footprint;
5204 - latency hiding: batch several requests and wait for the replies later;
5206 - direct protocol access: interface and protocol correspond exactly;
5208 - proven thread support: transparently access XCB from multiple threads;
5210 - easy extension implementation: interfaces auto-generated from XML-XCB.")
5211 (license license:x11)))
5213 (define-public libxcvt
5219 (uri (string-append "https://www.x.org/releases/individual"
5220 "/lib/libxcvt-" version ".tar.xz"))
5223 "0acc7vrj5kfb19zvyl7f29rnsvx383dvwc19k70r8prm1lccxsr7"))))
5224 (build-system meson-build-system)
5225 (home-page "https://gitlab.freedesktop.org/xorg/lib/libxcvt")
5226 (synopsis "VESA Coordinated Video Timings (CVT) library")
5227 (description "@code{libxcvt} is a library providing a standalone version
5228 of the X server implementation of the VESA Coordinated Video Timings (CVT)
5229 standard timing modelines generator. @code{libxcvt} also provides a
5230 standalone version of the command line tool @command{cvt} copied from the Xorg
5231 implementation and is meant to be a direct replacement to the version provided
5232 by the Xorg server.")
5233 (license license:x11)))
5235 (define-public xorg-server
5237 (name "xorg-server")
5242 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5243 "/xserver/xorg-server-" version ".tar.xz"))
5246 "1c4dgvpv3kib8rhw37b00vc056nlb1z66c2lwzs4prz8kxmg82y2"))
5250 ;; https://lists.fedoraproject.org/archives/list/devel@lists.
5251 ;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
5255 "http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git"
5256 "/plain/06_use-intel-only-on-pre-gen4.diff"))
5259 "0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
5260 (file-name "xorg-server-use-intel-only-on-pre-gen4.diff"))))))
5261 (build-system gnu-build-system)
5263 ;; The following libraries are required by xorg-server.pc.
5264 (list libpciaccess libxcvt mesa pixman xorgproto))
5269 ("libepoxy" ,libepoxy)
5270 ("libgcrypt" ,libgcrypt)
5273 ("libxdmcp" ,libxdmcp)
5274 ("libxfixes" ,libxfixes)
5275 ("libxfont2" ,libxfont2)
5276 ("libxkbfile" ,libxkbfile)
5277 ("libxrender" ,libxrender)
5278 ("libxres" ,libxres)
5279 ("libxshmfence" ,libxshmfence)
5282 ("xkbcomp" ,xkbcomp)
5283 ("xkeyboard-config" ,xkeyboard-config)
5286 ;; Inputs for Xephyr
5287 ("xcb-util" ,xcb-util)
5288 ("xcb-util-image" ,xcb-util-image)
5289 ("xcb-util-keysyms" ,xcb-util-keysyms)
5290 ("xcb-util-renderutil" ,xcb-util-renderutil)
5291 ("xcb-util-wm" ,xcb-util-wm)))
5293 `(("python" ,python-wrapper)
5294 ("pkg-config" ,pkg-config)))
5297 (list (string-append "--with-xkb-path="
5298 (assoc-ref %build-inputs "xkeyboard-config")
5300 (string-append "--with-xkb-output="
5301 "/tmp") ; FIXME: This is a bit doubtful; where should
5302 ; the compiled keyboard maps go?
5303 (string-append "--with-xkb-bin-directory="
5304 (assoc-ref %build-inputs "xkbcomp")
5306 ;; By default, it ends up with invalid '${prefix}/...', causes:
5307 ;; _FontTransOpen: Unable to Parse address ${prefix}/share/...
5308 ;; It's not used anyway, so set it to empty.
5309 "--with-default-font-path="
5311 ;; Enable the X security extensions (ssh -X).
5312 "--enable-xcsecurity"
5314 ;; The default is to use "uname -srm", which captures the kernel
5315 ;; version and makes builds non-reproducible.
5316 "--with-os-name=GNU"
5317 "--with-os-vendor=Guix" ; not strictly needed, but looks nice
5319 ;; For the log file, etc.
5320 "--localstatedir=/var"
5325 (modify-phases %standard-phases
5326 (add-before 'configure 'pre-configure
5328 (substitute* (find-files "." "\\.c$")
5329 (("/bin/sh") (which "sh")))
5331 ;; Don't try to 'mkdir /var'.
5332 (substitute* "hw/xfree86/Makefile.in"
5333 (("\\$\\(MKDIR_P\\).*logdir.*")
5336 ;; Strip timestamps that would otherwise end up in the 'Xorg'
5338 (substitute* "configure"
5339 (("^BUILD_DATE=.*$")
5340 "BUILD_DATE=19700101\n")
5341 (("^BUILD_TIME=.*$")
5342 "BUILD_TIME=000001\n")))))))
5343 (home-page "https://www.x.org/wiki/")
5344 (synopsis "Xorg implementation of the X Window System")
5346 "This package provides the Xorg X server itself.
5347 The X server accepts requests from client programs to create windows, which
5348 are (normally rectangular) 'virtual screens' that the client program can
5351 Windows are then composed on the actual screen by the X server (or by a
5352 separate composite manager) as directed by the window manager, which usually
5353 communicates with the user via graphical controls such as buttons and
5354 draggable titlebars and borders.")
5355 (license license:x11)))
5357 ;; This package is intended to be used when building GTK+.
5358 ;; Note: It's currently marked as "hidden" to avoid having two non-eq?
5359 ;; packages with the same name and version.
5360 (define-public xorg-server-for-tests
5363 (inherit xorg-server)
5368 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5369 "/xserver/xorg-server-" version ".tar.xz"))
5372 "0md7dqsc5qb30gym06c4zc2cjsdc5ps8nywk1bkcpix05kppybkq"))
5376 ;; https://lists.fedoraproject.org/archives/list/devel@lists.
5377 ;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
5381 "http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git"
5382 "/plain/06_use-intel-only-on-pre-gen4.diff"))
5385 "0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
5386 (file-name "xorg-server-use-intel-only-on-pre-gen4.diff")))))))))
5388 (define-public eglexternalplatform
5390 (name "eglexternalplatform")
5397 (url "https://github.com/NVIDIA/eglexternalplatform")
5400 (git-file-name name version))
5402 (base32 "0lr5s2xa1zn220ghmbsiwgmx77l156wk54c7hybia0xpr9yr2nhb"))))
5403 (build-system copy-build-system)
5406 (modify-phases %standard-phases
5407 (add-after 'unpack 'patch-pkgconfig
5408 (lambda* (#:key outputs #:allow-other-keys)
5409 (substitute* "eglexternalplatform.pc"
5411 (assoc-ref outputs "out")))))
5412 (add-after 'install 'revise
5413 (lambda* (#:key outputs #:allow-other-keys)
5414 (let* ((out (assoc-ref outputs "out")))
5415 (mkdir-p (string-append out "/include/EGL"))
5417 (string-append out "/interface")
5418 (string-append out "/include/EGL"))
5419 (mkdir-p (string-append out "/share/pkgconfig"))
5421 (string-append out "/eglexternalplatform.pc")
5422 (string-append out "/share/pkgconfig/eglexternalplatform.pc"))
5423 (for-each delete-file-recursively
5425 (string-append out "/samples")
5426 (string-append out "/COPYING")
5427 (string-append out "/README.md")))))))))
5428 (synopsis "EGL External Platform interface")
5429 (description "EGLExternalPlatform is an specification of the EGL External
5430 Platform interface for writing EGL platforms and their interactions with modern
5431 window systems on top of existing low-level EGL platform implementations. This
5432 keeps window system implementation specifics out of EGL drivers by using
5433 application-facing EGL functions.")
5434 (home-page "https://github.com/NVIDIA/eglexternalplatform")
5435 (license license:expat)))
5437 (define-public egl-wayland
5439 (name "egl-wayland")
5445 (url "https://github.com/NVIDIA/egl-wayland")
5447 (file-name (git-file-name name version))
5449 (base32 "1iz86cpc4v7izckrcslllnw0vvvgsxg1sr65yb8s9d0f8xa8djdd"))))
5450 (build-system meson-build-system)
5452 (list libglvnd ;needed for headers
5453 mesa-headers pkg-config))
5455 (list mesa wayland wayland-protocols))
5457 (list eglexternalplatform))
5458 (synopsis "EGLStream-based Wayland external platform")
5459 (description "EGL-Wayland is an implementation of a EGL External Platform
5460 library to add client-side Wayland support to EGL on top of EGLDevice and
5461 EGLStream families of extensions.")
5462 (home-page "https://github.com/NVIDIA/egl-wayland")
5463 (license license:expat)))
5465 (define-public xorg-server-xwayland
5467 (name "xorg-server-xwayland")
5472 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5473 "/xserver/xwayland-" version ".tar.xz"))
5476 "18pqvg76grbsyxa3mm3j06i1l8cwb28nbn2gcnqpsk7x75zpbhpb"))))
5477 (inputs (list font-dejavu
5495 (native-inputs (list pkg-config))
5496 (build-system meson-build-system)
5499 (list "-Dxwayland_eglstream=true"
5500 (string-append "-Dxkb_dir="
5501 (assoc-ref %build-inputs "xkeyboard-config")
5503 (string-append "-Dxkb_bin_dir="
5504 (assoc-ref %build-inputs "xkbcomp") "/bin")
5505 ;; The build system insist on providing a default font path; give
5506 ;; that of dejavu, the same used for our fontconfig package.
5507 (string-append "-Ddefault_font_path="
5508 (assoc-ref %build-inputs "font-dejavu")
5510 "-Dxkb_output_dir=/tmp"
5511 (format #f "-Dbuilder_string=\"Build ID: ~a ~a\"" ,name ,version)
5515 ;; For the log file, etc.
5516 "--localstatedir=/var")
5517 #:phases (modify-phases %standard-phases
5518 (add-after 'unpack 'patch-/bin/sh
5520 (substitute* (find-files "." "\\.c$")
5521 (("/bin/sh") (which "sh"))))))))
5522 (synopsis "Xorg server with Wayland backend")
5523 (description "Xwayland is an X server for running X clients under
5525 (home-page "https://www.x.org/wiki/")
5526 (license license:x11)))
5529 ;; packages of height 4 in the propagated-inputs tree
5531 (define-public libx11
5538 (uri (string-append "mirror://xorg/individual/lib/libX11-"
5539 version ".tar.bz2"))
5542 "0v7aj8q3rlchdyfwdna7n7vgpyzyir391dlv5rwy9fxagbikbyhw"))))
5543 (build-system gnu-build-system)
5545 "doc")) ;8 MiB of man pages + XML
5548 (list (string-append "--mandir="
5549 (assoc-ref %outputs "doc")
5552 ,@(malloc0-flags))))
5554 (list xorgproto libxcb))
5558 (list pkg-config xorgproto))
5559 (home-page "https://www.x.org/wiki/")
5560 (synopsis "Xorg Core X11 protocol client library")
5561 (description "Xorg Core X11 protocol client library.")
5562 (license license:x11)))
5564 ;; packages of height 5 in the propagated-inputs tree
5566 (define-public libxcursor
5574 "mirror://xorg/individual/lib/libXcursor-"
5579 "10l7c9fm0jmpkm9ab9dz8r6m1pr87vvgqjnbx1psz50h4pwfklrs"))))
5580 (build-system gnu-build-system)
5582 '(#:configure-flags '("--disable-static")))
5584 (list libx11 libxrender libxfixes xorgproto))
5587 ;; FIXME: The search path below won't be very effective until the bugs
5588 ;; <http://bugs.gnu.org/20255> and <http://bugs.gnu.org/22138> are solved.
5589 (native-search-paths
5590 (list (search-path-specification
5591 (variable "XCURSOR_PATH")
5592 (files '("share/icons")))))
5593 (home-page "https://www.x.org/wiki/")
5594 (synopsis "Xorg Cursor management library")
5595 (description "Xorg Cursor management library.")
5596 (license license:x11)))
5598 (define-public libxt
5606 "mirror://xorg/individual/lib/libXt-"
5611 "0q1x7842r8rcn2m0q4q9f69h4qa097fyizs8brzx5ns62s7w1737"))
5612 (patches (search-patches "libxt-guix-search-paths.patch"))))
5613 (build-system gnu-build-system)
5615 "doc")) ;2 MiB of man pages + XML
5618 (list (string-append "--mandir="
5619 (assoc-ref %outputs "doc")
5622 ,@(malloc0-flags))))
5624 (list libx11 libice libsm))
5629 (home-page "https://www.x.org/wiki/")
5630 (synopsis "Xorg XToolkit Intrinsics library")
5631 (description "Xorg XToolkit Intrinsics library.")
5632 (license license:x11)))
5635 (define-public libxaw
5643 "mirror://xorg/individual/lib/libXaw-"
5648 "13kg59r3086383g1dyhnwxanhp2frssh9062mrgn34nzlf7gkbkn"))))
5649 (build-system gnu-build-system)
5651 '(#:configure-flags '("--disable-static")))
5653 (list libxext libxmu libxpm libxt))
5658 (home-page "https://www.x.org/wiki/")
5659 (synopsis "Xorg Xaw library")
5661 "Xaw is the X Athena Widget Set based on the X Toolkit
5662 Intrinsics (Xt) Library.")
5663 (license license:x11)))
5672 (uri (string-append "mirror://xorg/individual/app/twm-"
5676 "1iv8kdb18n9vk3is5fyh6l40ipq9mkgx8ppj86byf464vr1ais7l"))))
5677 (build-system gnu-build-system)
5679 (list libxt libxmu libxext xorgproto))
5681 (list bison pkg-config))
5682 (home-page "https://www.x.org/wiki/")
5683 (synopsis "Tab Window Manager for the X Window System")
5684 (description "Twm is a window manager for the X Window System.
5685 It provides titlebars, shaped windows, several forms of icon management,
5686 user-defined macro functions, click-to-type and pointer-driven
5687 keyboard focus, and user-specified key and pointer button bindings.")
5688 (license license:x11)))
5690 (define-public xcb-util
5696 (uri (string-append "mirror://xorg/individual/xcb/"
5697 name "-" version ".tar.bz2"))
5700 "1sahmrgbpyki4bb72hxym0zvxwnycmswsxiisgqlln9vrdlr9r26"))))
5701 (build-system gnu-build-system)
5703 '(#:configure-flags '("--disable-static")))
5708 (home-page "https://cgit.freedesktop.org/xcb/util/")
5709 (synopsis "Core XCB utility functions")
5711 "The XCB util module provides a number of libraries which sit on
5712 top of libxcb, the core X protocol library, and some of the extension
5713 libraries. These experimental libraries provide convenience functions
5714 and interfaces which make the raw X protocol more usable. Some of the
5715 libraries also provide client-side code which is not strictly part of
5716 the X protocol but which has traditionally been provided by Xlib.
5718 The XCB util module provides the following libraries:
5720 - aux: Convenient access to connection setup and some core requests.
5722 - atom: Standard core X atom constants and atom caching.
5724 - event: Some utilities that have little to do with events any more.")
5725 (license license:x11)))
5728 (define-public xcb-util-cursor
5730 (name "xcb-util-cursor")
5734 (uri (string-append "https://xcb.freedesktop.org/dist/"
5735 "xcb-util-cursor-" version ".tar.bz2"))
5738 "0krr4rcw6r42cncinzvzzdqnmxk3nrgpnadyg2h8k9x10q3hm885"))))
5739 (build-system gnu-build-system)
5741 '(#:configure-flags '("--disable-static")))
5743 (list m4 pkg-config))
5747 (list xcb-util-renderutil xcb-util-image))
5748 (home-page "https://cgit.freedesktop.org/xcb/util-cursor/")
5749 (synopsis "Port of libxcursor")
5750 (description "XCB-util-cursor is a port of libxcursor.")
5752 ; expat license with added clause regarding advertising
5753 (license:non-copyleft
5755 "See COPYING in the distribution."))))
5757 (define-public xcb-util-errors
5758 (let ((commit "5d660ebe872cadcdc85de9d6f9afe05de629c030")
5761 (name "xcb-util-errors")
5762 (version (git-version "1.0" revision commit))
5766 (url "https://anongit.freedesktop.org/git/xcb/util-errors.git")
5769 (file-name (git-file-name name version))
5772 "12bah0iz5k6b9hwlc5zffyfg2gnrajll3gn5s8zmazgynvw72ahg"))))
5773 (build-system gnu-build-system)
5776 (list util-macros xcb-proto))
5780 `(("autoconf" ,autoconf)
5781 ("automake" ,automake)
5782 ("libtool" ,libtool)
5783 ("python" ,python-wrapper)
5784 ("pkg-config" ,pkg-config)))
5787 (modify-phases %standard-phases
5790 ;; The default 'bootstrap' phase would run 'autogen.sh', which
5791 ;; would try to run ./configure and fail due to unpatched
5793 (invoke "autoreconf" "-v" "--install"))))))
5794 (home-page "https://cgit.freedesktop.org/xcb/util-errors/")
5795 (synopsis "XCB helper library for printing information about X11 errors")
5797 "The XCB util module provides a number of libraries which sit on
5798 top of libxcb, the core X protocol library, and some of the extension
5799 libraries. These experimental libraries provide convenience functions
5800 and interfaces which make the raw X protocol more usable. Some of the
5801 libraries also provide client-side code which is not strictly part of
5802 the X protocol but which has traditionally been provided by Xlib.
5804 The XCB util-errors module provides a utility library that gives human
5805 readable names to error codes, event codes, and also to major and minor
5807 (license license:x11))))
5809 (define-public xcb-util-image
5811 (name "xcb-util-image")
5815 (uri (string-append "mirror://xorg/individual/xcb/"
5816 name "-" version ".tar.bz2"))
5819 "1z1gxacg7q4cw6jrd26gvi5y04npsyavblcdad1xccc8swvnmf9d"))))
5820 (build-system gnu-build-system)
5822 '(#:configure-flags '("--disable-static")))
5829 (home-page "https://cgit.freedesktop.org/xcb/util-image/")
5830 (synopsis "XCB port of Xlib's XImage and XShmImage")
5832 "The XCB util module provides a number of libraries which sit on
5833 top of libxcb, the core X protocol library, and some of the extension
5834 libraries. These experimental libraries provide convenience functions
5835 and interfaces which make the raw X protocol more usable. Some of the
5836 libraries also provide client-side code which is not strictly part of
5837 the X protocol but which has traditionally been provided by Xlib.
5839 The XCB util-image module provides the following library:
5841 - image: Port of Xlib's XImage and XShmImage functions.")
5842 (license license:x11)))
5845 (define-public xcb-util-keysyms
5847 (name "xcb-util-keysyms")
5851 (uri (string-append "mirror://xorg/individual/xcb/"
5852 name "-" version ".tar.bz2"))
5855 "1nbd45pzc1wm6v5drr5338j4nicbgxa5hcakvsvm5pnyy47lky0f"))))
5856 (build-system gnu-build-system)
5858 '(#:configure-flags '("--disable-static")))
5863 (home-page "https://cgit.freedesktop.org/xcb/util-keysyms/")
5864 (synopsis "Standard X constants and conversion to/from keycodes")
5866 "The XCB util module provides a number of libraries which sit on
5867 top of libxcb, the core X protocol library, and some of the extension
5868 libraries. These experimental libraries provide convenience functions
5869 and interfaces which make the raw X protocol more usable. Some of the
5870 libraries also provide client-side code which is not strictly part of
5871 the X protocol but which has traditionally been provided by Xlib.
5873 The XCB util-keysyms module provides the following library:
5875 - keysyms: Standard X key constants and conversion to/from keycodes.")
5876 (license license:x11)))
5879 (define-public xcb-util-renderutil
5881 (name "xcb-util-renderutil")
5885 (uri (string-append "mirror://xorg/individual/xcb/"
5886 name "-" version ".tar.bz2"))
5889 "0nza1csdvvxbmk8vgv8vpmq7q8h05xrw3cfx9lwxd1hjzd47xsf6"))))
5890 (build-system gnu-build-system)
5892 '(#:configure-flags '("--disable-static")))
5897 (home-page "https://cgit.freedesktop.org/xcb/util-renderutil/")
5898 (synopsis "Convenience functions for the Render extension")
5900 "The XCB util module provides a number of libraries which sit on
5901 top of libxcb, the core X protocol library, and some of the extension
5902 libraries. These experimental libraries provide convenience functions
5903 and interfaces which make the raw X protocol more usable. Some of the
5904 libraries also provide client-side code which is not strictly part of
5905 the X protocol but which has traditionally been provided by Xlib.
5907 The XCB util-renderutil module provides the following library:
5909 - renderutil: Convenience functions for the Render extension.")
5910 (license license:x11)))
5913 (define-public xcb-util-wm
5915 (name "xcb-util-wm")
5919 (uri (string-append "mirror://xorg/individual/xcb/"
5920 name "-" version ".tar.bz2"))
5923 "0gra7hfyxajic4mjd63cpqvd20si53j1q3rbdlkqkahfciwq3gr8"))))
5924 (build-system gnu-build-system)
5926 '(#:configure-flags '("--disable-static")))
5930 (list m4 pkg-config))
5931 (home-page "https://cgit.freedesktop.org/xcb/util-wm/")
5932 (synopsis "Client and window-manager helpers for ICCCM and EWMH")
5934 "The XCB util modules provides a number of libraries which sit on
5935 top of libxcb, the core X protocol library, and some of the extension
5936 libraries. These experimental libraries provide convenience functions
5937 and interfaces which make the raw X protocol more usable. Some of the
5938 libraries also provide client-side code which is not strictly part of
5939 the X protocol but which has traditionally been provided by Xlib.
5941 The XCB util-wm module provides the following libraries:
5943 - ewmh: Both client and window-manager helpers for EWMH.
5945 - icccm: Both client and window-manager helpers for ICCCM.")
5946 (license license:x11)))
5948 (define-public xinit
5954 (uri (string-append "mirror://xorg/individual/app/xinit-"
5955 version ".tar.bz2"))
5958 "1fdbakx59vyh474skjydj1bbglpby3y03nl7mxn0z9v8gdhqz6yy"))))
5959 (build-system gnu-build-system)
5961 (list xorgproto libx11))
5966 (home-page "https://www.x.org/")
5967 (synopsis "Commands to start the X Window server")
5969 "The xinit program is used to start the X Window System server and a
5970 first client program on systems that are not using a display manager such as
5971 xdm. This package also provides the @code{startx} command, which provides a
5972 user-friendly mechanism to start the X server.")
5973 (license license:x11)))
5975 ;; package outside the x.org system proper of height 5
5977 (define-public libxaw3d
5985 "mirror://xorg/individual/lib/libXaw3d-"
5990 "0i653s8g25cc0mimkwid9366bqkbyhdyjhckx7bw77j20hzrkfid"))))
5991 (build-system gnu-build-system)
5993 (list libxext libxmu libxt))
5998 (home-page "https://www.x.org/wiki/")
5999 (synopsis "Xorg Xaw3d library")
6001 "Xaw is the X 3D Athena Widget Set based on the X Toolkit
6002 Intrinsics (Xt) Library.")
6003 (license license:x11)))
6005 (define-public xclock
6012 (uri (string-append "https://www.x.org/releases/individual/app/"
6013 "xclock-" version ".tar.bz2"))
6015 (base32 "1fr3q4rszgx7x2zxy2ip592a3fgx20hfwac49p2l5b7jqsr1ying"))))
6016 (build-system gnu-build-system)
6019 (list (string-append "--with-appdefaultdir="
6020 %output ,%app-defaults-dir))))
6030 (home-page "https://gitlab.freedesktop.org/xorg/app/xclock")
6031 (synopsis "Analog / digital clock for X")
6032 (description "The xclock program displays the time in analog or digital
6034 (license (license:x11-style "file://COPYING" "See COPYING for details."))))
6044 "mirror://xorg/individual/app/" name "-"
6049 "19bsg5ykal458d52v0rvdx49v54vwxwqg8q36fdcsv9p2j8yri87"))))
6050 (build-system gnu-build-system)
6053 (list (string-append "--with-appdefaultdir="
6054 %output ,%app-defaults-dir))))
6059 (home-page "https://www.x.org/wiki/")
6060 (synopsis "Display or capture a magnified part of a X11 screen")
6061 (description "Xmag displays and captures a magnified snapshot of a portion
6063 (license license:x11)))
6065 (define-public xmessage
6073 "mirror://xorg/individual/app/" name "-"
6078 "0sw0b0cbrjl44brw7qi1jkm61xd7a1lpj04418c6iqk6mf83llwr"))))
6079 (build-system gnu-build-system)
6082 (list (string-append "--with-appdefaultdir="
6083 %output ,%app-defaults-dir))))
6088 (home-page "https://www.x.org/wiki/")
6089 (synopsis "Displays a message or query in a window")
6091 "Xmessage displays a message or query in a window. The user can click
6092 on a button to dismiss it or can select one of several buttons
6093 to answer a question. Xmessage can also exit after a specified time.")
6094 (license license:x11)))
6096 (define-public xterm
6104 (string-append "https://invisible-mirror.net/archives/xterm/"
6105 "xterm-" version ".tgz")
6106 (string-append "ftp://ftp.invisible-island.net/xterm/"
6107 "xterm-" version ".tgz")))
6109 (base32 "10lc72spa69n9d7zg9nwhgwz70qzidp5i17jgw3lq3qg1a25sg4n"))))
6110 (build-system gnu-build-system)
6112 '(#:configure-flags '("--enable-wide-chars" "--enable-load-vt-fonts"
6113 "--enable-i18n" "--enable-doublechars"
6114 "--enable-luit" "--enable-mini-luit")
6115 #:tests? #f ; no test suite
6117 (modify-phases %standard-phases
6118 (add-after 'build 'patch-file-names
6119 (lambda* (#:key outputs #:allow-other-keys)
6120 (let ((out (assoc-ref outputs "out")))
6121 (substitute* "uxterm"
6122 (("([ `\\|])(sh|sed|awk|xmessage) " _ prefix command)
6123 (string-append prefix (which command) " "))
6124 (("(`|\"|LANG=C )(locale) " _ prefix command)
6125 (string-append prefix (which command) " "))
6127 (string-append "=" out "/bin/xterm")))))))))
6133 ("fontconfig" ,fontconfig)
6134 ("freetype" ,freetype)
6135 ("ncurses" ,ncurses)
6139 ("libXcursor" ,libxcursor)
6140 ("libXext" ,libxext)
6142 ("xorgproto" ,xorgproto)
6143 ("libXaw" ,libxaw)))
6144 (home-page "https://invisible-island.net/xterm/")
6145 (synopsis "Terminal emulator for the X Window System")
6147 "The xterm program is a terminal emulator for the X Window System. It
6148 provides DEC VT102/VT220 (VTxxx) and Tektronix 4014 compatible terminals for
6149 programs that cannot use the window system directly.")
6150 (license license:x11)))
6152 (define-public perl-x11-xcb
6154 (name "perl-x11-xcb")
6159 "mirror://cpan/authors/id/M/MS/MSTPLBG/"
6160 "X11-XCB-" version ".tar.gz"))
6163 "1cjpghw7cnackw20lbd7yzm222kz5bnrwz52f8ay24d1f4pwrnxf"))))
6164 (build-system perl-build-system)
6166 '(;; Disable parallel build to prevent a race condition.
6167 #:parallel-build? #f
6169 (modify-phases %standard-phases
6170 (add-before 'configure 'set-perl-search-path
6173 (string-append (getcwd) ":"
6174 (getenv "PERL5LIB")))
6176 (add-before 'build 'patch-Makefile
6177 (lambda* (#:key inputs #:allow-other-keys)
6178 (substitute* "Makefile"
6179 ;; XXX: Without this hack, attempts at using XCB.so fails with
6180 ;; an error such as "XCB.so: undefined symbol: xcb_xinerama_id"
6182 (string-append "LDDLFLAGS = "
6183 "-lxcb -lxcb-util -lxcb-xinerama -lxcb-icccm ")))
6185 ;; Tests require a running X11 server.
6188 (list perl-extutils-depends perl-extutils-pkgconfig
6189 perl-module-install perl-test-deep perl-test-exception))
6191 (list perl-data-dump
6193 perl-mousex-nativetraits
6197 perl-xs-object-magic))
6199 (list libxcb xcb-proto xcb-util xcb-util-wm))
6200 (home-page "https://metacpan.org/release/X11-XCB")
6201 (synopsis "Perl bindings for libxcb")
6203 "These bindings wrap @code{libxcb} (a C library to speak with X11,
6204 in many cases better than @code{Xlib}), and provides an object oriented
6205 interface to its methods (using @code{Mouse}).")
6206 (license license:perl-license)))
6208 (define-public perl-x11-protocol
6210 (name "perl-x11-protocol")
6215 "mirror://cpan/authors/id/S/SM/SMCCAM/X11-Protocol-"
6219 "1dq89bh6fqv7l5mbffqcismcljpq5f869bx7g8lg698zgindv5ny"))))
6220 (build-system perl-build-system)
6221 (arguments '(#:tests? #f)) ;tests require a running x server
6222 (synopsis "Raw interface to X Window System servers")
6224 "X11::Protocol is a client-side interface to the X11 Protocol, allowing
6225 perl programs to display windows and graphics on X11 servers.")
6226 (home-page "https://metacpan.org/release/X11-Protocol")
6227 ;; From the package README: "you can redistribute and/or modify it under
6228 ;; the same terms as Perl itself. (As an exception, the file
6229 ;; Keysyms.pm,which is derived from a file in the standard X11
6230 ;; distribution, has another, less restrictive copying policy, as do some
6231 ;; of the extension modules in the directory Protocol/Ext: see those files
6233 (license license:perl-license)))
6235 (define-public perl-x11-protocol-other
6237 (name "perl-x11-protocol-other")
6243 "mirror://cpan/authors/id/K/KR/KRYDE/X11-Protocol-Other-"
6246 (base32 "1x3kvic52jgp2mvd5wzrqrprqi82cdk8l4075v8b33ksvj9mjqiw"))))
6247 (build-system perl-build-system)
6249 (list perl-encode-hanextra perl-module-util))
6251 (list perl-x11-protocol))
6252 (home-page "https://metacpan.org/release/X11-Protocol-Other")
6253 (synopsis "Miscellaneous helpers for @code{X11::Protocol} connections")
6255 "@code{X11::Protocol::Other} contains window manager related functions for
6256 use by client programs, as per the @dfn{ICCCM} (Inter-Client Communication
6257 Conventions Manual) and some of the @dfn{EWMH}
6258 (Extended Window Manager Hints).")
6259 (license license:gpl3+)))
6261 (define-public xcompmgr
6267 ;; There's no current tarball.
6270 (url "https://anongit.freedesktop.org/git/xorg/app/xcompmgr.git")
6271 (commit (string-append "xcompmgr-" version))))
6273 (base32 "11i7vyk3pynw8q8aczpy56qncm84y0cmhlvyja3sj8dgy60g03q2"))
6274 (file-name (git-file-name name version))))
6275 (build-system gnu-build-system)
6277 (list pkg-config autoconf automake))
6285 (synopsis "X Compositing manager using RENDER")
6286 (description "xcompmgr is a sample compositing manager for X servers
6287 supporting the XFIXES, DAMAGE, RENDER, and COMPOSITE extensions. It enables
6288 basic eye-candy effects.")
6289 (home-page "https://cgit.freedesktop.org/xorg/app/xcompmgr/")
6290 (license (license:x11-style
6291 "https://cgit.freedesktop.org/xorg/app/xcompmgr/tree/COPYING"))))
6300 (uri (string-append "https://www.xpra.org/src/xpra-"
6303 (base32 "1h9fxarhp6f90fbjrpbkjbfwb86js2gbfl6asqa5hbl1aprrwaxg"))
6304 (patches (search-patches "xpra-4.2-systemd-run.patch"))))
6305 (build-system python-build-system)
6306 ;; see also http://xpra.org/trac/wiki/Dependencies
6307 (inputs `(("bash-minimal" ,bash-minimal) ; for wrap-program
6308 ;; Essential dependencies.
6309 ("libjpeg" ,libjpeg-turbo)
6310 ("libwebp" ,libwebp)
6313 ("libxrandr" ,libxrandr)
6314 ("libxtst" ,libxtst)
6315 ("libxfixes" ,libxfixes)
6316 ("libxkbfile" ,libxkbfile)
6317 ("libxcomposite" ,libxcomposite)
6318 ("libxdamage" ,libxdamage)
6319 ("libxext" ,libxext)
6321 ("python-pycairo" ,python-pycairo)
6322 ("python-pygobject" ,python-pygobject)
6324 ("xorg-server" ,xorg-server)
6325 ("xf86-video-dummy" ,xf86-video-dummy)
6326 ("xf86-input-mouse" ,xf86-input-mouse)
6327 ("xf86-input-keyboard" ,xf86-input-keyboard)
6328 ("python-pillow" ,python-pillow)
6329 ;; Optional dependencies.
6330 ("libx264" ,libx264)
6333 ("python-rencode" ,python-rencode) ; For speed.
6334 ("python-numpy" ,python-numpy)
6335 ("python-pyopengl" ,python-pyopengl) ; Drawing acceleration.
6336 ("python-pyopengl-accelerate" ,python-pyopengl-accelerate) ; Same.
6337 ("python-paramiko" ,python-paramiko) ; Tunneling over SSH.
6338 ("python-dbus" ,python-dbus) ; For desktop notifications.
6339 ("dbus" ,dbus) ; For dbus-launch command.
6340 ("python-lz4" ,python-lz4) ; Faster compression than zlib.
6341 ("python-netifaces" ,python-netifaces)))
6342 (native-inputs (list pkg-config pandoc python-cython))
6344 `(#:configure-flags '("--without-Xdummy"
6345 "--without-Xdummy_wrapper"
6348 "--without-strict") ; Ignore compiler warnings.
6349 #:modules ((guix build python-build-system)
6351 #:tests? #f ; Do not run test-cases. This would rebuild all modules and
6352 ; they seem to require python2.
6354 (modify-phases %standard-phases
6355 ;; built by 'install phase
6357 (add-before 'install 'fix-paths
6358 (lambda* (#:key inputs outputs #:allow-other-keys)
6359 ;; Fix binary paths.
6360 (substitute* '("xpra/scripts/config.py" "xpra/x11/vfb_util.py")
6362 (string-append "\"" (assoc-ref inputs "xorg-server") "/bin/Xvfb\""))
6364 (string-append "\"" (assoc-ref inputs "xorg-server") "/bin/Xorg\""))
6366 (string-append "\"" (assoc-ref inputs "xauth") "/bin/xauth\"")))
6367 ;; Fix directory of config files.
6368 (substitute* '("xpra/scripts/config.py" "xpra/platform/xposix/paths.py")
6369 (("\"/etc/xpra/?\"")
6370 (string-append "\"" (assoc-ref outputs "out") "/etc/xpra/\"")))
6371 ;; XXX: Stolen from (gnu packages linux)
6372 (define (append-to-file name body)
6373 (let ((file (open-file name "a")))
6376 ;; Add Xorg module paths.
6378 "fs/etc/xpra/xorg.conf"
6379 (string-append "\nSection \"Files\"\nModulePath \""
6380 (assoc-ref inputs "xf86-video-dummy") "/lib/xorg/modules,"
6381 (assoc-ref inputs "xf86-input-mouse") "/lib/xorg/modules,"
6382 (assoc-ref inputs "xf86-input-keyboard") "/lib/xorg/modules,"
6383 (assoc-ref inputs "xorg-server") "/lib/xorg/modules\"\n"
6385 (substitute* '("xpra/scripts/config.py"
6386 "fs/etc/xpra/conf.d/60_server.conf.in"
6387 "tests/unittests/unit/server/mixins/notification_test.py")
6388 ;; The trailing -- is intentional, so we only replace it inside
6391 (string-append (search-input-file inputs "/bin/dbus-launch")
6393 ;; /run/user does not exist on guix system
6394 (substitute* "./xpra/scripts/config.py"
6395 (("socket-dir.*: \"\",")
6396 "socket-dir\" : \"~/.xpra\","))
6398 ;; GTK3 will not be found, if GI can’t find its typelibs.
6400 'install 'wrap-program
6401 (lambda* (#:key outputs #:allow-other-keys)
6402 (let ((prog (string-append (assoc-ref outputs "out")
6404 ;; XXX: only export typelibs in inputs
6406 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
6408 (home-page "https://www.xpra.org/")
6409 (synopsis "Remote access to individual applications or full desktops")
6410 (description "Xpra is a persistent remote display server and client for
6411 forwarding applications and desktop screens. It gives you remote access to
6412 individual applications or full desktops. On X11, it is also known as
6413 ``@command{screen} for X11'': it allows you to run programs, usually on a
6414 remote host, direct their display to your local machine, and then to
6415 disconnect from these programs and reconnect from the same or another machine,
6416 without losing any state. It can also be used to forward full desktops from
6417 X11 servers, Windows, or macOS.")
6418 (license license:gpl2+)))
6427 (uri (string-append "https://github.com/uim/uim/releases/download/"
6428 version "/uim-" version ".tar.bz2"))
6431 "1p7sl0js47ja4glmax93ci59h02ipqw3wxkh4f1qgaz5qjy9nn9l"))))
6432 (build-system gnu-build-system)
6434 (list anthy libedit libxft m17n-lib ncurses))
6436 `(("emacs" ,emacs-minimal)
6437 ("intltool" ,intltool)
6438 ("pkg-config" ,pkg-config)))
6440 `(#:modules ((guix build gnu-build-system)
6442 (guix build emacs-utils))
6443 #:imported-modules (,@%gnu-build-system-modules
6444 (guix build emacs-utils))
6446 (list "--with-anthy-utf8"
6447 (string-append "--with-lispdir=" %output "/share/emacs")
6448 ;; Set proper runpath
6449 (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
6451 (modify-phases %standard-phases
6452 ;; Set path of uim-el-agent and uim-el-helper-agent executables
6453 (add-after 'configure 'configure-uim-el
6454 (lambda* (#:key outputs #:allow-other-keys)
6455 (let ((out (assoc-ref outputs "out")))
6456 (emacs-substitute-variables "emacs/uim-var.el"
6457 ("uim-el-agent" (string-append out "/bin/uim-el-agent"))
6458 ("uim-el-helper-agent" (string-append out "/bin/uim-el-helper-agent"))))
6460 ;; Fix installation path by renaming share/emacs/uim-el to
6461 ;; share/emacs/site-lisp
6462 (add-after 'install 'fix-install-path
6463 (lambda* (#:key outputs #:allow-other-keys)
6464 (let ((share-emacs (string-append (assoc-ref outputs "out")
6466 (rename-file (string-append share-emacs "/uim-el")
6467 (string-append share-emacs "/site-lisp")))
6469 ;; Generate emacs autoloads for uim.el
6470 (add-after 'fix-install-path 'make-autoloads
6471 (lambda* (#:key outputs #:allow-other-keys)
6472 (emacs-generate-autoloads
6473 ,name (string-append (assoc-ref outputs "out")
6474 "/share/emacs/site-lisp"))
6476 (home-page "https://github.com/uim/uim")
6477 (synopsis "Multilingual input method framework")
6478 (description "Uim is a multilingual input method library and environment.
6479 It provides a simple, easily extensible and high code-quality input method
6480 development platform, and useful input method environment for users of desktop
6481 and embedded platforms.")
6482 (license (list license:lgpl2.1+ ; scm/py.scm, pixmaps/*.{svg,png} (see pixmaps/README)
6483 license:gpl2+ ; scm/pinyin-big5.scm
6484 license:gpl3+ ; scm/elatin-rules.cm
6485 license:public-domain ; scm/input-parse.scm, scm/match.scm
6486 ;; gtk2/toolbar/eggtrayicon.{ch},
6487 ;; qt3/chardict/kseparator.{cpp,h},
6488 ;; qt3/pref/kseparator.{cpp,h}
6490 ;; pixmaps/*.{svg,png} (see pixmaps/README),
6494 (define-public uim-gtk
6495 (package/inherit uim
6500 ,@(package-inputs uim)))
6502 (substitute-keyword-arguments (package-arguments uim)
6503 ((#:configure-flags configure-flags)
6504 (append configure-flags (list "CFLAGS=-O2 -g -fcommon")))))
6505 (synopsis "Multilingual input method framework (GTK+ support)")))
6507 (define-public uim-qt
6508 (package/inherit uim
6512 ("qtx11extras" ,qtx11extras)
6513 ,@(package-inputs uim)))
6515 (substitute-keyword-arguments (package-arguments uim)
6516 ((#:configure-flags configure-flags)
6517 (append configure-flags (list "--with-qt5-immodule"
6519 "CPPFLAGS=-fcommon")))))
6520 (synopsis "Multilingual input method framework (Qt support)")))
6522 (define-public keynav
6525 (version "0.20110708.0")
6530 "http://http.debian.net/debian/pool/main/k/keynav/keynav_"
6531 version ".orig.tar.gz"))
6532 (file-name (string-append name "-" version ".tar.gz"))
6535 "1gizjhji3yspxxxvb90js3z1bv18rbf5phxg8rciixpj3cccff8z"))))
6536 (build-system gnu-build-system)
6548 `(#:tests? #f ;No tests.
6550 (modify-phases %standard-phases
6551 (add-after 'unpack 'setenv
6553 (setenv "CC" (which "gcc"))
6555 (add-after 'unpack 'patch-keynav
6557 (substitute* "keynav.c"
6558 (("xdo_symbol_map") "xdo_get_symbol_map")
6559 (("xdo_window_setclass") "xdo_set_window_class")
6560 (("xdo_window_get_active") "xdo_get_window_at_mouse")
6561 (("xdo_click") "xdo_click_window")
6562 (("xdo_mouseup") "xdo_mouse_up")
6563 (("xdo_mousedown") "xdo_mouse_down")
6564 (("xdo_mousemove") "xdo_move_mouse")
6565 (("xdo_mousemove_relative") "xdo_move_mouse_relative")
6566 (("xdo_mouselocation") "xdo_get_mouse_location")
6567 (("xdo_mouse_wait_for_move_to") "xdo_wait_for_mouse_move_to")
6568 (("xdo_keysequence_up") "xdo_send_keysequence_window_up")
6569 (("xdo_keysequence_down") "xdo_send_keysequence_window_down"))
6573 (lambda* (#:key outputs #:allow-other-keys)
6574 (let ((out (assoc-ref outputs "out")))
6575 (install-file "keynav" (string-append out "/bin"))
6576 (install-file "keynavrc" (string-append out "/etc")))
6578 (home-page "https://www.semicomplete.com/projects/keynav/")
6579 (synopsis "Keyboard-driven mouse cursor mover")
6581 "Keynav makes your keyboard a fast mouse cursor mover. You can move the
6582 cursor to any point on the screen with a few key strokes. It also simulates
6583 mouse click. You can do everything mouse can do with a keyboard.")
6584 (license license:bsd-3)))
6586 (define-public transset
6592 (uri (string-append "https://www.x.org/releases/individual/app/"
6593 name "-" version ".tar.gz"))
6596 "0rya202y87dwl35jnmq8hs3arzdrv5z4vf1xmi0py4rnmhdpszaw"))))
6597 (build-system gnu-build-system)
6600 (inputs (list libxcomposite libxdamage libxrender))
6601 (synopsis "Set the transparency of X11 windows")
6602 (description "@command{transset} is a simple program for X servers
6603 supporting the XFIXES, DAMAGE, and COMPOSITE extensions. It lets the
6604 user set the transparency on a window.")
6605 (home-page "https://gitlab.freedesktop.org/xorg/app/transset")
6606 (license license:x11)))
6608 (define-public bdfresize
6613 ;; Former upstream at
6614 ;; <http://openlab.ring.gr.jp/efont/dist/tools/bdfresize/>
6615 ;; vanished so use Debian, which in practice is the new
6619 (url "https://salsa.debian.org/debian/bdfresize.git")
6620 (commit (string-append "debian/" version))))
6623 "0n3i29wicak8n10vkkippym8yw4ir8f7a263a8rwb8q16wqrxx85"))
6624 (modules '((guix build utils)))
6627 (for-each make-file-writable (find-files "."))
6629 ;; Remove broken declaration.
6630 (substitute* "charresize.c"
6631 (("char\t\\*malloc\\(\\);")
6634 ;; Remove old configury that doesn't support modern
6635 ;; command-line options, new architectures, etc.
6636 (for-each delete-file
6637 '("configure" "install-sh"
6638 "missing" "mkinstalldirs"))
6640 (file-name (git-file-name name version))))
6641 (build-system gnu-build-system)
6643 (list pkg-config autoconf automake))
6644 (synopsis "Resize fonts in the BDF format")
6646 "This package provides @command{bdfresize}, a command to magnify or
6647 reduce fonts in the Glyph Bitmap Distribution Format (BDF). It produces BDF
6649 (home-page "https://tracker.debian.org/pkg/bdfresize")
6650 (license license:gpl2+)) )
6652 (define-public console-setup
6654 (name "console-setup")
6660 (url "https://salsa.debian.org/installer-team/console-setup.git")
6663 (base32 "0sf560s14firyvzpgww79ydzc6p3jvjkbvsi8zsr5m3hr833w0ba"))
6664 (file-name (git-file-name name version))))
6665 (build-system gnu-build-system)
6668 (let ((bash (assoc-ref %build-inputs "bash"))
6669 (out (assoc-ref %outputs "out")))
6670 (list (string-append "SHELL=" bash "/bin/bash")))
6671 #:tests? #f ; no tests
6673 (modify-phases %standard-phases
6675 (add-after 'unpack 'patch-file-names
6677 ;; 'ckbcomp' calls out to 'cat' (!). Give it the right file
6679 (substitute* '("Keyboard/ckbcomp")
6681 (string-append "\"" (which "cat")
6684 (add-before 'build 'make-doubled-bdfs
6685 (lambda* (#:key native-inputs inputs #:allow-other-keys)
6686 (invoke "make" "-C" "Fonts"
6688 (string-append "SHELL="
6689 (assoc-ref (or native-inputs inputs)
6693 (lambda* (#:key native-inputs inputs outputs #:allow-other-keys)
6694 (let ((out (assoc-ref %outputs "out")))
6695 (invoke "make" "install-linux"
6696 (string-append "prefix=" out)
6697 (string-append "SHELL="
6698 (assoc-ref (or native-inputs inputs)
6705 sharutils ; for 'uuencode'
6708 (list perl)) ; used by 'ckbcomp'
6709 (synopsis "Set up the Linux console font and keyboard")
6711 "console-setup provides the console with the same keyboard
6712 configuration scheme that the X Window System has. In particular, the
6713 @command{ckbcomp} program compiles an XKB keyboard description to a keymap
6714 suitable for @command{loadkeys} or @command{kbdcontrol}. As a result, there
6715 is no need to duplicate or change the console keyboard files just to make
6716 simple customizations.
6718 Besides the keyboard, the package also configures the font on the console. It
6719 includes a rich collection of fonts and supports several languages that would
6720 otherwise be unsupported on the console (such as Armenian, Georgian, Lao, and
6722 (home-page "https://salsa.debian.org/installer-team/console-setup/")
6724 ;; Most of the code is GPLv2+; the Expat license applies to 'setupcon' and
6725 ;; 'ckbcomp-mini'. The installed precompiled keyboard files are covered
6726 ;; by simple permissive licenses. See the 'COPYRIGHT' file.
6727 (license (list license:gpl2+
6730 (define-public xcur2png
6738 (url "https://github.com/eworm-de/xcur2png")
6740 (file-name (git-file-name name version))
6742 (base32 "0858wn2p14bxpv9lvaz2bz1rk6zk0g8zgxf8iy595m8fqv4q2fya"))))
6743 (build-system gnu-build-system)
6747 (list libpng libxcursor))
6748 (synopsis "Decode X cursors")
6750 "xcur2png is a program decomposes an X cursor into a set of PNG images and
6751 a configuration file reusable by xcursorgen.")
6752 (home-page "https://github.com/eworm-de/xcur2png")
6753 (license license:gpl3+)))
6755 (define-public gccmakedep
6762 (uri (string-append "mirror://xorg/individual/util/gccmakedep-"
6763 version ".tar.bz2"))
6765 (base32 "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj"))))
6766 (build-system gnu-build-system)
6767 (synopsis "Create dependencies in makefiles using 'gcc -M'")
6769 "@command{gccmakedep} is a deprecated program which calls @code{gcc -M}
6770 to output Makefile rules describing the dependencies of each source file, so
6771 that Make knows which object files must be recompiled when a dependency has
6773 (home-page "https://gitlab.freedesktop.org/xorg/util/gccmakedep")
6774 (license license:x11)))
6776 (define-public xdialog
6782 (uri (string-append "http://xdialog.free.fr/Xdialog-"
6783 version ".tar.bz2"))
6786 "16jqparb33lfq4cvd9l3jgd7fq86fk9gv2ixc8vgqibid6cnhi0x"))))
6791 ("gettext" ,gettext-minimal)
6794 `(#:configure-flags '("--with-gtk2")))
6795 (build-system gnu-build-system)
6796 (home-page "http://xdialog.free.fr/")
6797 (synopsis "Convert a terminal program into a program with an X interface")
6798 (description "X11 replacement for the text util dialog Xdialog is designed
6799 to be a drop-in replacement for the dialog and cdialog programs. It converts
6800 any terminal-based program into a program with an X interface. The dialogs
6801 are easier to see and use, and Xdialog adds more functionality such as a help
6802 button and box, a treeview, an editbox, file and directory selectors, a range
6803 box, and a calendar. It uses GTK+, and will match your desktop theme.")
6804 (license license:gpl2+)))
6806 (define-public xvfb-run
6809 (version "1.20.10-3")
6813 (uri (string-append "mirror://debian/pool/main/x/xorg-server/"
6814 "xorg-server_" version ".diff.gz"))
6816 (base32 "08gs9ni8ss8rw4n9cql1s8q05mj517vk1vm1varj1dsx75k4j25v"))))
6817 (build-system gnu-build-system)
6820 (modify-phases %standard-phases
6822 ;; Apply the source patch to an empty directory.
6823 (lambda* (#:key inputs #:allow-other-keys)
6824 (let* ((source (assoc-ref inputs "source"))
6825 (diff.gz (basename source))
6826 (diff (substring diff.gz 0 (string-rindex diff.gz #\.))))
6829 (copy-file source diff.gz)
6830 (invoke "gunzip" diff.gz)
6831 (invoke "patch" "-Np1" "-i" diff)
6832 (chdir "debian/local"))))
6833 (delete 'configure) ; nothing to configure
6836 (chmod "xvfb-run" #o755)
6837 (substitute* "xvfb-run"
6838 (("(\\(| )(fmt|stty|awk|cat|kill|getopt|mktemp|touch|rm|mcookie)"
6840 (string-append prefix (which command)))
6841 ;; These also feature in UI messages, so be more strict.
6842 (("(AUTHFILE |command -v |exec )(Xvfb|xauth)"
6844 (string-append prefix (which command))))))
6846 ;; There are no tests included. Here we test whether we can run
6847 ;; a simple client and whether xvfb-run --help succeeds
6848 ;; without xvfb-run itself relying on $PATH.
6849 (lambda* (#:key tests? #:allow-other-keys)
6851 (let ((old-PATH (getenv "PATH"))
6852 (xterm (which "xterm")))
6854 (invoke "./xvfb-run" xterm "-e" "true")
6855 (invoke "./xvfb-run" "--help")
6856 (setenv "PATH" old-PATH)))))
6858 (lambda* (#:key outputs #:allow-other-keys)
6859 (let* ((out (assoc-ref outputs "out"))
6860 (bin (string-append out "/bin"))
6861 (man (string-append out "/share/man/man1")))
6862 (install-file "xvfb-run" bin)
6863 (install-file "xvfb-run.1" man)))))))
6865 (list util-linux ; for getopt
6868 (list xterm)) ; for the test
6869 ;; This script is not part of the upstream xorg-server. It is provided only
6870 ;; as a patch added to Debian's package.
6871 (home-page "https://packages.debian.org/sid/xorg-server-source")
6872 (synopsis "Run X11 client or command in a virtual X server environment")
6874 "The @command{xvfb-run} wrapper simplifies running commands and scripts
6875 within a virtual X server environment. It sets up an X authority file or uses
6876 an existing user-specified one, writes a cookie to it, and then starts the
6877 @command{Xvfb} X server as a background process. It also takes care of killing
6878 the server and cleaning up before returning the exit status of the command.")
6879 (license (list license:x11 ; the script
6880 license:gpl2+)))) ; the man page
6882 (define-public setroot
6890 (url "https://github.com/ttzhou/setroot")
6891 (commit (string-append "v" version))))
6892 (file-name (git-file-name name version))
6894 (base32 "0w95828v0splk7bj5kfacp4pq6wxpyamvyjmahyvn5hc3ycq21mq"))))
6895 (build-system gnu-build-system)
6898 (list (string-append "CC=" ,(cc-for-target))
6899 (string-append "DESTDIR=" (assoc-ref %outputs "out"))
6902 #:tests? #f ; no tests
6904 (modify-phases %standard-phases
6905 (delete 'configure))))
6907 (list imlib2 libx11 libxinerama))
6908 (home-page "https://github.com/ttzhou/setroot")
6909 (synopsis "Simple X background setter inspired by imlibsetroot and feh")
6910 (description "Setroot is a lightweight X background setter with feh's
6911 syntax without its image viewing capabilities. It supports multiple monitors
6912 and can restore previously set wallpapers and options.")
6913 (license license:gpl3+)))