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, 2022 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, 2022 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 Matthew James Kraai <kraai@ftbfs.org>
30 ;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
31 ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
32 ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
33 ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
34 ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
35 ;;; Copyright © 2021 qblade <qblade@protonmail.com>
36 ;;; Copyright © 2021 Lu Hui <luhux76@gmail.com>
38 ;;; This file is part of GNU Guix.
40 ;;; GNU Guix is free software; you can redistribute it and/or modify it
41 ;;; under the terms of the GNU General Public License as published by
42 ;;; the Free Software Foundation; either version 3 of the License, or (at
43 ;;; your option) any later version.
45 ;;; GNU Guix is distributed in the hope that it will be useful, but
46 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
47 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
48 ;;; GNU General Public License for more details.
50 ;;; You should have received a copy of the GNU General Public License
51 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
53 (define-module (gnu packages xorg)
54 #:use-module (guix gexp)
55 #:use-module ((guix licenses) #:prefix license:)
56 #:use-module (guix packages)
57 #:use-module (guix download)
58 #:use-module (guix git-download)
59 #:use-module (guix build-system copy)
60 #:use-module (guix build-system gnu)
61 #:use-module (guix build-system meson)
62 #:use-module (guix build-system perl)
63 #:use-module (guix build-system python)
64 #:use-module (guix utils)
65 #:use-module (gnu packages)
66 #:use-module (gnu packages aidc)
67 #:use-module (gnu packages anthy)
68 #:use-module (gnu packages autotools)
69 #:use-module (gnu packages bash)
70 #:use-module (gnu packages bison)
71 #:use-module (gnu packages check)
72 #:use-module (gnu packages compression)
73 #:use-module (gnu packages emacs)
74 #:use-module (gnu packages flex)
75 #:use-module (gnu packages fonts)
76 #:use-module (gnu packages fontutils)
77 #:use-module (gnu packages freedesktop)
78 #:use-module (gnu packages gettext)
79 #:use-module (gnu packages gl)
80 #:use-module (gnu packages glib)
81 #:use-module (gnu packages gnupg)
82 #:use-module (gnu packages gperf)
83 #:use-module (gnu packages gtk)
84 #:use-module (gnu packages haskell-xyz)
85 #:use-module (gnu packages inkscape)
86 #:use-module (gnu packages image)
87 #:use-module (gnu packages imagemagick)
88 #:use-module (gnu packages libbsd)
89 #:use-module (gnu packages libedit)
90 #:use-module (gnu packages linux)
91 #:use-module (gnu packages llvm)
92 #:use-module (gnu packages m4)
93 #:use-module (gnu packages ncurses)
94 #:use-module (gnu packages onc-rpc)
95 #:use-module (gnu packages pciutils)
96 #:use-module (gnu packages perl)
97 #:use-module (gnu packages perl-check)
98 #:use-module (gnu packages pkg-config)
99 #:use-module (gnu packages python)
100 #:use-module (gnu packages python-compression)
101 #:use-module (gnu packages python-crypto)
102 #:use-module (gnu packages python-xyz)
103 #:use-module (gnu packages qt)
104 #:use-module (gnu packages spice)
105 #:use-module (gnu packages video)
106 #:use-module (gnu packages xiph)
107 #:use-module (gnu packages xml)
108 #:use-module (gnu packages xdisorg))
112 ;; When cross-compiling certain packages, "--disable-malloc0returnsnull"
113 ;; needs to be passed. Otherwise, the configure script will try to run a
114 ;; binary for the host on the build machine.
115 (define (malloc0-flags)
116 (if (%current-target-system)
117 ;; At least on glibc-based systems, malloc(0) evaluates to a non-NULL
118 ;; pointer (except in out-of-memory situations). On other systems,
119 ;; --enable-malloc0returnsnull might be required instead.
120 '("--disable-malloc0returnsnull")
123 ;; packages without propagated input
124 ;; (rationale for this separation: The packages in PROPAGATED_INPUTS need to
125 ;; be defined first, the split makes book-keeping easier.)
128 ;; compiles only on macos
129 ;; (define-public applewmproto
132 (define xorg-cf-files
133 ;; The xorg-cf-files package contains the data files for the imake utility,
134 ;; defining the known settings for a wide variety of platforms (many of which
135 ;; have not been verified or tested in over a decade), and for many of the
136 ;; libraries formerly delivered in the X.Org monolithic releases.
138 ;; License: x11, see COPYING
141 (uri "mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2")
143 (base32 "0kckng0zs1viz0nr84rdl6dswgip7ndn4pnh5nfwnviwpsfmmksd"))))
152 (uri (string-append "mirror://xorg/individual/util/imake-"
155 (base32 "00m7l90ws72k1qm101sd2rx92ckd50cszyng5d4dd77jncbf9lmq"))))
156 (build-system gnu-build-system)
160 (list xorg-cf-files xorgproto))
163 #~(modify-phases %standard-phases
164 (add-after 'install 'install-data
165 (lambda* (#:key inputs outputs #:allow-other-keys)
166 (let ((out (assoc-ref outputs "out"))
167 (unpack (assoc-ref %standard-phases 'unpack))
168 (patch-source-shebangs
169 (assoc-ref %standard-phases 'patch-source-shebangs)))
170 (mkdir "xorg-cf-files")
171 (with-directory-excursion "xorg-cf-files"
172 (unpack #:source #$xorg-cf-files)
173 (patch-source-shebangs #:source #$xorg-cf-files)
174 (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf"
175 "linux.cf" "Amoeba.cf" "cygwin.cf")
176 (("/bin/sh") (which "bash")))
177 (invoke "./configure"
178 (string-append "SHELL=" (which "bash"))
179 (string-append "--prefix=" out))
180 (invoke "make" "install"))))))))
181 (home-page "https://www.x.org/")
182 (synopsis "Source code configuration and build system")
184 "Imake is a deprecated source code configuration and build system which
185 has traditionally been supplied by and used to build the X Window System in
186 X11R6 and previous releases. As of the X Window System X11R7 release, the X
187 Window system has switched to using GNU autotools as the primary build system,
188 and the Imake system is now deprecated, and should not be used by new software
189 projects. Software developers are encouraged to migrate software to the GNU
191 (license license:x11)))
200 "mirror://xorg/individual/util/"
201 "lndir-" version ".tar.bz2"))
204 "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"))))
205 (build-system gnu-build-system)
210 (home-page "https://www.x.org/")
211 (synopsis "Symlink directory into tree")
212 (description "Create a shadow directory of symbolic links to another
214 (license license:x11)))
216 (define-public bdftopcf
224 "mirror://xorg/individual/app/bdftopcf-"
229 "18hiscgljrz10zjcws25bis32nyrg3hzgmiq6scrh7izqmgz0kab"))))
230 (build-system gnu-build-system)
235 (home-page "https://www.x.org/wiki/")
236 (synopsis "Convert X font from BDF to PCF")
238 "BDFtoPCF is a font compiler for the X server and font server. It
239 converts X font from Bitmap Distribution Format to Portable Compiled Format
240 which can be read by any architecture.")
241 (license license:x11)))
243 (define-public xorgproto
249 (uri (string-append "ftp://ftp.freedesktop.org/pub/xorg//individual/proto/"
250 "xorgproto-" version ".tar.bz2"))
253 "05d0kib351qmnlfimaznaw0220fr0ym7fx2gn9h2jqxxilxncbxa"))))
254 (build-system gnu-build-system)
256 ;; To get util-macros in (almost?) all package inputs.
258 (home-page "https://cgit.freedesktop.org/xorg/proto/xorgproto")
259 (synopsis "Xorg protocol headers")
261 "This package provides the headers and specification documents defining
262 the core protocol and (many) extensions for the X Window System.")
263 (license license:x11)))
265 (define-public bigreqsproto
267 (name "bigreqsproto")
273 "mirror://xorg/individual/proto/bigreqsproto-"
278 "07hvfm84scz8zjw14riiln2v4w03jlhp756ypwhq27g48jmic8a6"))))
279 (build-system gnu-build-system)
280 (native-inputs (list pkg-config))
281 (home-page "https://www.x.org/wiki/")
282 (synopsis "Xorg BigReqsProto protocol headers")
284 "Big Requests Extension defines a protocol to enable the use of
285 requests that exceed 262140 bytes in length.")
286 (license license:x11)
287 (properties `((superseded . ,xorgproto)))))
289 (define-public compositeproto
291 (name "compositeproto")
297 "mirror://xorg/individual/proto/compositeproto-"
302 "1z0crmf669hirw4s7972mmp8xig80kfndja9h559haqbpvq5k4q4"))))
303 (build-system gnu-build-system)
308 (home-page "https://www.x.org/wiki/")
309 (synopsis "Xorg CompositeProto protocol headers")
311 "Composite Extension contains header files and documentation for
312 the damage protocol.")
313 (license license:x11)
314 (properties `((superseded . ,xorgproto)))))
316 (define-public damageproto
324 "mirror://xorg/individual/proto/damageproto-"
329 "0nzwr5pv9hg7c21n995pdiv0zqhs91yz3r8rn3aska4ykcp12z2w"))))
330 (build-system gnu-build-system)
331 (native-inputs (list pkg-config))
332 (home-page "https://www.x.org/wiki/")
333 (synopsis "Xorg DamageProto protocol headers")
335 "Damage Extension contains header files and documentation for
336 the damage protocol.")
337 (license license:x11)
338 (properties `((superseded . ,xorgproto)))))
340 (define-public dmxproto
348 "mirror://xorg/individual/proto/dmxproto-"
353 "02b5x9dkgajizm8dqyx2w6hmqx3v25l67mgf35nj6sz0lgk52877"))))
354 (build-system gnu-build-system)
355 (native-inputs (list pkg-config))
356 (home-page "https://www.x.org/wiki/")
357 (synopsis "Xorg DMXProto protocol headers")
359 "DMX (Distributed Multihead X) Extension defines a protocol for clients
360 to access a front-end proxy X server that controls multiple back-end X
361 servers making up a large display.")
362 (license license:x11)
363 (properties `((superseded . ,xorgproto)))))
365 (define-public dri2proto
373 "mirror://xorg/individual/proto/dri2proto-"
378 "015az1vfdqmil1yay5nlsmpf6cf7vcbpslxjb72cfkzlvrv59dgr"))))
379 (build-system gnu-build-system)
380 (home-page "https://www.x.org/wiki/")
381 (synopsis "Xorg DRI2Proto protocol headers")
383 "Direct Rendering Infrastructure 2 Extension defines a protocol to
384 securely allow user applications to access the video hardware without
385 requiring data to be passed through the X server.")
386 (license license:x11)
387 (properties `((superseded . ,xorgproto)))))
389 (define-public dri3proto
397 "mirror://xorg/individual/proto/dri3proto-"
402 "0x609xvnl8jky5m8jdklw4nymx3irkv32w99dfd8nl800bblkgh1"))))
403 (build-system gnu-build-system)
404 (home-page "https://www.x.org/wiki/")
405 (synopsis "Xorg DRI3Proto protocol headers")
407 "Direct Rendering Infrastructure 3 Extension provides mechanisms to
408 translate between direct rendered buffers and X pixmaps. When combined with
409 the Present extension, a complete direct rendering solution for OpenGL is
411 (license (license:x11-style "file://dri3proto.h"
412 "See 'dri3proto.h' in the distribution."))
413 (properties `((superseded . ,xorgproto)))))
415 (define-public %app-defaults-dir "/lib/X11/app-defaults")
417 (define-public editres
425 "mirror://xorg/individual/app/" name "-"
430 "04awfwmy3f9f0bchidc4ssbgrbicn5gzasg3jydpfnp5513d76h8"))))
431 (build-system gnu-build-system)
434 (list (string-append "--with-appdefaultdir="
435 %output ,%app-defaults-dir))))
437 (list libxaw libxmu libxt))
440 (home-page "https://www.x.org/wiki/")
441 (synopsis "Tool to browse and edit X Toolkit resource specifications")
443 "Editres is a tool that allows users and application developers to view
444 the full widget hierarchy of any X Toolkit application that speaks the Editres
445 protocol. In addition, editres will help the user construct resource
446 specifications, allow the user to apply the resource to the application and
447 view the results dynamically. Once the user is happy with a resource
448 specification editres will append the resource string to the user's X
450 (license license:x11)))
453 (define-public encodings
461 "mirror://xorg/individual/font/encodings-"
465 (base32 "0caafx0yqqnqyvbalxhh3mb0r9v36xmcy5zjhygb2i508dhy35mx"))))
466 (build-system gnu-build-system)
471 (home-page "https://www.x.org/wiki/")
472 (synopsis "Xorg font encoding files")
473 (description "Xorg font encoding files.")
474 (license license:public-domain)))
476 (define (%xorg-font-origin font version hash)
479 (uri (string-append "mirror://xorg/individual/font/" font "-"
482 (modules '((guix build utils)))
484 ;; Do not include timestamps in '.pcf.gz' files.
486 (substitute* "Makefile.in"
487 (("^COMPRESS = (.*)$" _ rest)
488 (string-append "COMPRESS = " (string-trim-right rest)
492 (define-syntax-rule (xorg-font-origin font version hash)
493 "Expand to the 'origin' form for the given Xorg font package."
494 (%xorg-font-origin font version (base32 hash)))
496 (define-public font-adobe100dpi
498 (name "font-adobe100dpi")
500 (source (xorg-font-origin
501 "font-adobe-100dpi" version
502 "0m60f5bd0caambrk8ksknb5dks7wzsg7g7xaf0j21jxmx8rq9h5j"))
503 (build-system gnu-build-system)
505 (list bdftopcf font-util mkfontdir))
509 `(#:configure-flags (list
510 ;; install fonts into subdirectory of package output instead of
511 ;; font-util-?.?.?/share/fonts/X11
512 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
513 (home-page "https://www.x.org/wiki/")
514 (synopsis "Xorg adobe-100dpi fonts")
515 (description "Xorg adobe-100dpi fonts.")
516 (license license:x11)))
519 (define-public font-adobe75dpi
521 (name "font-adobe75dpi")
523 (source (xorg-font-origin
524 "font-adobe-75dpi" version
525 "02advcv9lyxpvrjv8bjh1b797lzg6jvhipclz49z8r8y98g4l0n6"))
526 (build-system gnu-build-system)
528 (list bdftopcf font-util mkfontdir))
532 `(#:configure-flags (list
533 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
534 (home-page "https://www.x.org/wiki/")
535 (synopsis "Xorg adobe-75dpi fonts")
536 (description "Xorg adobe-75dpi fonts.")
537 (license license:x11)))
541 ;; (define-public font-adobe-utopia100dpi
542 ;; (define-public font-adobe-utopia75dpi
543 ;; (define-public font-adobe-utopia-type1
546 (define-public font-alias
550 (source (xorg-font-origin
552 "0xjjjindczv3g7m1597l0x19zz75xy70wh5garghz61fpzl1l4gk"))
553 (build-system gnu-build-system)
554 (native-inputs (list pkg-config))
556 `(#:phases (modify-phases %standard-phases
558 'install 'install-fonts-dir
559 ;; The X font server will not add directories to the font
560 ;; path unless they contain a "fonts.dir" file, so add some
562 (lambda* (#:key outputs #:allow-other-keys)
563 (let ((out (assoc-ref outputs "out")))
564 (for-each (lambda (d)
565 (call-with-output-file
566 (string-append out "/share/fonts/X11"
570 '("75dpi" "100dpi" "misc" "cyrillic"))
572 (home-page "https://www.x.org/wiki/")
573 (synopsis "Xorg font aliases")
575 "This package provides some common aliases for Xorg fonts.
576 For example: @code{6x10}, @code{9x15bold}, etc.")
577 (license license:x11)))
580 (define-public font-arabic-misc
582 (name "font-arabic-misc")
584 (source (xorg-font-origin
586 "1x246dfnxnmflzf0qzy62k8jdpkb6jkgspcjgbk8jcq9lw99npah"))
587 (build-system gnu-build-system)
589 (list mkfontdir bdftopcf))
592 (home-page "https://www.x.org/wiki/")
593 (synopsis "Xorg arabic-misc font")
594 (description "Xorg arabic-misc font.")
595 (license license:x11)))
599 ;; (define-public font-bh100dpi
600 ;; (define-public font-bh75dpi
601 ;; (define-public font-bh-lucidatypewriter100dpi
602 ;; (define-public font-bh-lucidatypewriter75dpi
603 ;; (define-public font-bh-ttf
604 ;; (define-public font-bh-type1
605 ;; (define-public font-bitstream100dpi
606 ;; (define-public font-bitstream75dpi
609 (define-public font-cronyx-cyrillic
611 (name "font-cronyx-cyrillic")
613 (source (xorg-font-origin
615 "0ai1v4n61k8j9x2a1knvfbl2xjxk3xxmqaq3p9vpqrspc69k31kf"))
616 (build-system gnu-build-system)
618 (list mkfontdir bdftopcf))
621 (home-page "https://www.x.org/wiki/")
622 (synopsis "Xorg cronyx-cyrillic font")
623 (description "Xorg cronyx-cyrillic font.")
624 (license license:x11)))
628 ;; (define-public font-cursor-misc
631 ;; (define-public font-daewoo-misc
634 (define-public font-dec-misc
636 (name "font-dec-misc")
638 (source (xorg-font-origin
640 "0yzza0l4zwyy7accr1s8ab7fjqkpwggqydbm2vc19scdby5xz7g1"))
641 (build-system gnu-build-system)
643 (list mkfontdir bdftopcf))
646 (home-page "https://www.x.org/wiki/")
647 (synopsis "Xorg dec-misc font")
648 (description "Xorg dec-misc font.")
649 (license license:x11)))
653 ;; (define-public font-ibm-type1
655 (define-public font-isas-misc
657 (name "font-isas-misc")
659 (source (xorg-font-origin
661 "0rx8q02rkx673a7skkpnvfkg28i8gmqzgf25s9yi0lar915sn92q"))
662 (build-system gnu-build-system)
664 (list mkfontdir bdftopcf))
667 (home-page "https://www.x.org/wiki/")
668 (synopsis "Xorg isas-misc font")
669 (description "Xorg isas-misc font.")
670 (license license:x11)))
674 ;; (define-public font-jis-misc
677 (define-public font-micro-misc
679 (name "font-micro-misc")
681 (source (xorg-font-origin
683 "1dldxlh54zq1yzfnrh83j5vm0k4ijprrs5yl18gm3n9j1z0q2cws"))
684 (build-system gnu-build-system)
686 (list mkfontdir bdftopcf))
689 (home-page "https://www.x.org/wiki/")
690 (synopsis "Xorg micro-misc font")
691 (description "Xorg micro-misc font.")
692 (license license:public-domain)))
695 (define-public font-misc-cyrillic
697 (name "font-misc-cyrillic")
699 (source (xorg-font-origin
701 "0q2ybxs8wvylvw95j6x9i800rismsmx4b587alwbfqiw6biy63z4"))
702 (build-system gnu-build-system)
704 (list mkfontdir bdftopcf))
707 (home-page "https://www.x.org/wiki/")
708 (synopsis "Xorg misc-cyrillic fonts")
709 (description "Xorg misc-cyrillic fonts.")
710 (license license:x11)))
713 (define-public font-misc-ethiopic
715 (name "font-misc-ethiopic")
717 (source (xorg-font-origin
719 "1q2azkdwc4x3kh53xclwpf9q654k70lhiyns1cjq594wvxnhz339"))
720 (build-system gnu-build-system)
722 (list mkfontdir mkfontscale))
725 (home-page "https://www.x.org/wiki/")
726 (synopsis "Xorg misc-ethiopic fonts")
727 (description "Xorg misc-ethiopic fonts.")
728 (license license:x11)))
732 ;; (define-public font-misc-meltho
735 (define-public font-misc-misc
737 (name "font-misc-misc")
739 (source (xorg-font-origin
741 "150pq6n8n984fah34n3k133kggn9v0c5k07igv29sxp1wi07krxq"))
742 (build-system gnu-build-system)
744 (list mkfontdir font-util bdftopcf))
748 `(#:configure-flags (list
749 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
750 (home-page "https://www.x.org/wiki/")
751 (synopsis "Xorg misc-misc fonts")
752 (description "Xorg misc-misc fixed fonts.")
753 (license license:public-domain)))
756 (define-public font-mutt-misc
758 (name "font-mutt-misc")
760 (source (xorg-font-origin
762 "13qghgr1zzpv64m0p42195k1kc77pksiv059fdvijz1n6kdplpxx"))
763 (build-system gnu-build-system)
765 (list mkfontdir bdftopcf))
768 (home-page "https://www.x.org/wiki/")
769 (synopsis "Xorg mutt-misc fonts")
770 (description "Xorg mutt-misc fonts.")
771 (license license:x11)))
774 (define-public font-schumacher-misc
776 (name "font-schumacher-misc")
778 (source (xorg-font-origin
780 "0nkym3n48b4v36y4s927bbkjnsmicajarnf6vlp7wxp0as304i74"))
781 (build-system gnu-build-system)
783 (list mkfontdir font-util bdftopcf))
787 `(#:configure-flags (list
788 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
789 (home-page "https://www.x.org/wiki/")
790 (synopsis "Xorg schumacher-misc fonts")
791 (description "Xorg schumacher-misc fonts.")
792 (license license:x11)))
795 (define-public font-screen-cyrillic
797 (name "font-screen-cyrillic")
799 (source (xorg-font-origin
801 "0yayf1qlv7irf58nngddz2f1q04qkpr5jwp4aja2j5gyvzl32hl2"))
802 (build-system gnu-build-system)
804 (list mkfontdir bdftopcf))
807 (home-page "https://www.x.org/wiki/")
808 (synopsis "Xorg screen-cyrillic fonts")
809 (description "Xorg screen-cyrillic fonts.")
810 (license license:x11)))
813 (define-public font-sony-misc
815 (name "font-sony-misc")
817 (source (xorg-font-origin
819 "1xfgcx4gsgik5mkgkca31fj3w72jw9iw76qyrajrsz1lp8ka6hr0"))
820 (build-system gnu-build-system)
822 (list mkfontdir bdftopcf))
825 (home-page "https://www.x.org/wiki/")
826 (synopsis "Xorg sony-misc fonts")
827 (description "Xorg sony-misc fonts.")
828 (license license:x11)))
831 (define-public font-sun-misc
833 (name "font-sun-misc")
835 (source (xorg-font-origin
837 "1q6jcqrffg9q5f5raivzwx9ffvf7r11g6g0b125na1bhpz5ly7s8"))
838 (build-system gnu-build-system)
840 (list mkfontdir bdftopcf))
843 (home-page "https://www.x.org/wiki/")
844 (synopsis "Xorg sun-misc fonts")
845 (description "Xorg sun-misc fonts.")
846 (license license:x11)))
849 (define-public font-util
857 "mirror://xorg/individual/font/font-util-"
861 (base32 "10i2a8b3d1h3w7klsqf31iz7zbd6l8wglil54fkhdb1385281n1s"))))
862 (build-system gnu-build-system)
863 (native-inputs (list pkg-config))
864 (home-page "https://www.x.org/wiki/")
865 (synopsis "Xorg font utilities")
867 "Xorg font package creation/installation utilities.")
868 (license license:x11)))
871 (define-public font-winitzki-cyrillic
873 (name "font-winitzki-cyrillic")
875 (source (xorg-font-origin
877 "181n1bgq8vxfxqicmy1jpm1hnr6gwn1kdhl6hr4frjigs1ikpldb"))
878 (build-system gnu-build-system)
880 (list mkfontdir bdftopcf))
883 (home-page "https://www.x.org/wiki/")
884 (synopsis "Xorg winitzki-cyrillic font")
885 (description "Xorg winitzki-cyrillic font.")
886 (license license:public-domain)))
889 (define-public font-xfree86-type1
891 (name "font-xfree86-type1")
893 (source (xorg-font-origin
895 "0jp3zc0qfdaqfkgzrb44vi9vi0a8ygb35wp082yz7rvvxhmg9sya"))
896 (build-system gnu-build-system)
898 (list mkfontdir mkfontscale))
901 (home-page "https://www.x.org/wiki/")
902 (synopsis "Xorg xfree86-type1 font")
903 (description "Xorg xfree86-type1 font.")
904 (license license:x11)))
907 (define-public fontsproto
915 "mirror://xorg/individual/proto/fontsproto-"
920 "1f2sdsd74y34nnaf4m1zlcbhyv8xb6irnisc99f84c4ivnq4d415"))))
921 (build-system gnu-build-system)
922 (native-inputs (list pkg-config))
923 (home-page "https://www.x.org/wiki/")
924 (synopsis "Xorg FontsProto protocol headers")
926 "Fonts Extension contains header files and documentation for
927 the fonts protocol.")
928 (license license:x11)
929 (properties `((superseded . ,xorgproto)))))
931 (define-public glproto
939 "mirror://xorg/individual/proto/glproto-"
944 "0h5ykmcddwid5qj6sbrszgkcypwn3mslvswxpgy2n2iixnyr9amd"))))
945 (build-system gnu-build-system)
946 (native-inputs (list pkg-config))
947 (home-page "https://www.x.org/wiki/")
948 (synopsis "Xorg GLProto protocol headers")
950 "OpenGL Extension defines a protocol for the client to send 3D
951 rendering commands to the X server.")
952 (license license:x11)
953 (properties `((superseded . ,xorgproto)))))
955 (define-public iceauth
963 "mirror://xorg/individual/app/iceauth-"
968 "1ik0mdidmyvy48hn8p2hwvf3535rf3m96hhf0mvcqrbj44x23vp6"))))
969 (build-system gnu-build-system)
974 (home-page "https://www.x.org/wiki/")
975 (synopsis "ICE authority file utility")
977 "ICEAuth program is used to edit and display the authorization
978 information used in connecting with ICE (Inter-Client Exchange). It
979 operates very much like the xauth program for X11 connection
980 authentication records.")
981 (license license:x11)))
984 (define-public inputproto
992 "mirror://xorg/individual/proto/inputproto-"
997 "07gk7v006zqn3dcfh16l06gnccy7xnqywf3vl9c209ikazsnlfl9"))))
998 (build-system gnu-build-system)
999 (native-inputs (list pkg-config))
1000 (home-page "https://www.x.org/wiki/")
1001 (synopsis "Xorg InputProto protocol headers")
1003 "Input Extension defines a protocol to provide additional input
1004 devices management such as graphic tablets.")
1005 (license license:x11)
1006 (properties `((superseded . ,xorgproto)))))
1008 (define-public kbproto
1016 "mirror://xorg/individual/proto/kbproto-"
1021 "0mxqj1pzhjpz9495vrjnpi10kv2n1s4vs7di0sh3yvipfq5j30pq"))))
1022 (build-system gnu-build-system)
1023 (native-inputs (list pkg-config))
1024 (home-page "https://www.x.org/wiki/")
1025 (synopsis "Xorg KBProto protocol headers")
1027 "X Keyboard (XKB) Extension defines a protocol to provide a number
1028 of new capabilities and controls for text keyboards.")
1029 (license license:x11)
1030 (properties `((superseded . ,xorgproto)))))
1032 ;; requires applewmproto, which compiles only on macos
1033 ;; (define-public libapplewm
1036 (define-public libdmx
1044 "mirror://xorg/individual/lib/libdmx-"
1049 "0hvjfhrcym770cr0zpqajdy3cda30aiwbjzv16iafkqkbl090gr5"))))
1050 (build-system gnu-build-system)
1052 '(#:configure-flags '("--disable-static")))
1054 (list xorgproto libxext libx11))
1057 (home-page "https://www.x.org/wiki/")
1058 (synopsis "Xorg DMX library")
1060 "DMX (Distributed Multihead X) extension library.")
1061 (license license:x11)))
1064 (define-public libxshmfence
1066 (name "libxshmfence")
1071 "mirror://xorg/individual/lib/"
1072 name "-" version ".tar.bz2"))
1075 "1ir0j92mnd1nk37mrv9bz5swnccqldicgszvfsh62jd14q6k115q"))))
1076 (build-system gnu-build-system)
1078 '(#:configure-flags '("--disable-static")))
1079 (native-inputs (list pkg-config))
1080 (inputs (list xorgproto))
1081 (home-page "https://www.x.org/")
1082 (synopsis "Xorg shared memory fences library")
1084 "This library provides an interface to shared-memory fences for
1085 synchronization between the X server and direct-rendering clients.")
1087 ;; Same license as libevdev.
1088 (license (license:x11-style "file://COPYING"))))
1091 (define-public libfontenc
1099 "mirror://xorg/individual/lib/libfontenc-"
1104 "0y90170dp8wsidr1dzza0grxr1lfh30ji3b5vkjz4j6x1n0wxz1c"))))
1105 (build-system gnu-build-system)
1107 '(#:configure-flags '("--disable-static")))
1109 (list zlib xorgproto))
1112 (home-page "https://gitlab.freedesktop.org/xorg/lib/libfontenc")
1113 (synopsis "Xorg font encoding library")
1114 (description "Xorg font encoding library.")
1115 (license license:x11)))
1118 (define-public libfs
1126 "mirror://xorg/individual/lib/libFS-"
1130 (base32 "03xxyvpfa3rhqcld4p2chkil482jn9cp80hj17jdybcv2hkkgqf8"))))
1131 (build-system gnu-build-system)
1133 (list xtrans xorgproto))
1136 (home-page "https://www.x.org/wiki/")
1137 (synopsis "Xorg Font Service client library")
1139 "Font Service client library is used by clients of X Font
1140 Servers (xfs), such as xfsinfo, fslsfonts, and the X servers
1142 (license license:x11)))
1145 (define-public libpciaccess
1147 (name "libpciaccess")
1153 "mirror://xorg/individual/lib/libpciaccess-"
1158 "12glp4w1kgvmqn89lk19cgr6jccd3awxra4dxisp7pagi06rsk11"))))
1159 (build-system gnu-build-system)
1161 '(;; Make sure libpciaccess can read compressed 'pci.ids' files as
1162 ;; provided by pciutils.
1165 (string-append "--with-pciids-path="
1166 (assoc-ref %build-inputs "pciutils")
1170 (modify-phases %standard-phases
1171 (add-after 'install 'add-L-zlib
1172 (lambda* (#:key inputs outputs #:allow-other-keys)
1173 ;; Provide '-LZLIB/lib' next to '-lz' in the .la file.
1174 (let ((zlib (assoc-ref inputs "zlib"))
1175 (out (assoc-ref outputs "out")))
1176 (substitute* (string-append out "/lib/libpciaccess.la")
1178 (string-append "-L" zlib "/lib -lz")))
1181 (list zlib pciutils)) ;for 'pci.ids.gz'
1184 (home-page "https://www.x.org/wiki/")
1185 (synopsis "Xorg PCI access library")
1186 (description "Xorg Generic PCI access library.")
1187 (license license:x11)))
1190 (define-public libpthread-stubs
1192 (name "libpthread-stubs")
1198 "mirror://xorg/individual/xcb/libpthread-stubs-"
1203 "0cz7s9w8lqgzinicd4g36rjg08zhsbyngh0w68c3np8nlc8mkl74"))))
1204 (build-system gnu-build-system)
1205 (native-inputs (list pkg-config))
1206 (home-page "https://www.x.org/wiki/")
1207 (synopsis "Library with pthread stubs")
1209 "This library provides weak aliases for pthread functions not
1210 provided in libc or otherwise available by default. Libraries like
1211 libxcb rely on pthread stubs to use pthreads optionally, becoming
1212 thread-safe when linked to libpthread, while avoiding any performance
1213 hit when running single-threaded.")
1214 (license license:x11)))
1217 (define-public libsm
1225 "mirror://xorg/individual/lib/libSM-"
1230 "1fwwfq9v3sqmpzpscymswxn76xhxnysa24pfim1mcpxhvjcl89id"))))
1231 (build-system gnu-build-system)
1233 '(#:configure-flags '("--disable-static")))
1235 (list libice)) ; SMlib.h includes ICElib.h
1237 `(("xtrans" ,xtrans)
1238 ("libuuid" ,util-linux "lib")))
1241 (home-page "https://www.x.org/wiki/")
1242 (synopsis "Xorg Session Management library")
1243 (description "Xorg Session Management library.")
1244 (license license:x11)))
1247 (define-public libwindowswm
1249 (name "libwindowswm")
1255 "mirror://xorg/individual/lib/libWindowsWM-"
1260 "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15"))))
1261 (build-system gnu-build-system)
1263 (list xorgproto libxext libx11))
1266 (home-page "https://www.x.org/wiki/")
1267 (synopsis "Xorg WindowsWM library")
1269 "Cygwin/X rootless window management extension.
1270 WindowsWM is a simple library designed to interface with the Windows-WM
1271 extension. This extension allows X window managers to better interact
1272 with the Cygwin XWin server when running X11 in a rootless mode.")
1273 (license license:x11)))
1276 (define-public libxcomposite
1278 (name "libxcomposite")
1284 "mirror://xorg/individual/lib/libXcomposite-"
1289 "13sfcglvz87vl58hd9rszwr73z0z4nwga3c12rfh7f5s2ln8l8dk"))))
1290 (build-system gnu-build-system)
1292 '(#:configure-flags '("--disable-static")))
1294 ;; xcomposite.pc refers to all these.
1295 (list xorgproto libxfixes libx11))
1298 (home-page "https://www.x.org/wiki/")
1299 (synopsis "Xorg Composite library")
1301 "Client library for the Composite extension to the X11 protocol.")
1302 (license license:x11)))
1305 (define-public libxdmcp
1313 "mirror://xorg/individual/lib/libXdmcp-"
1318 "0ab53h0rkq721ihk5hi469x500f3pgbkm1wy01yf24x5m923nli0"))))
1319 (build-system gnu-build-system)
1321 '(#:configure-flags '("--disable-static")))
1323 (list libbsd xorgproto))
1326 (home-page "https://www.x.org/wiki/")
1327 (synopsis "Xorg Display Manager Control Protocol library")
1328 (description "Xorg Display Manager Control Protocol library.")
1329 (license license:x11)))
1332 (define-public libxft
1340 "mirror://xorg/individual/lib/libXft-"
1345 "05lja9s54090xwh31r0bqms4v3pimng5xr09g2rdnafx2vk6hp12"))))
1346 (build-system gnu-build-system)
1348 '(#:configure-flags '("--disable-static")))
1350 ;; xft.pc refers to all these.
1351 `(("libxrender" ,libxrender)
1352 ("freetype" ,freetype)
1353 ("fontconfig" ,fontconfig)))
1355 (list libx11 xorgproto))
1358 (home-page "https://www.x.org/wiki/")
1359 (synopsis "Xorg FreeType library")
1361 "Xorg FreeType library connects X applications with the FreeType font
1362 rasterization library. Xft uses fontconfig to locate fonts so it has no
1363 configuration files.")
1364 (license license:x11)))
1367 (define-public libxkbfile
1375 "mirror://xorg/individual/lib/libxkbfile-"
1380 "1irq9crvscd3yb8sr802dhvvfr35jdy1n2yz094xplmd42mbv3bm"))))
1381 (build-system gnu-build-system)
1383 '(#:configure-flags '("--disable-static")))
1385 ;; Required in xkbfile.pc.
1386 (list libx11 kbproto))
1389 (home-page "https://www.x.org/wiki/")
1390 (synopsis "Xorg XKB file handling library")
1391 (description "Xorg XKB file handling library.")
1392 (license license:x11)))
1395 (define-public libxmu
1403 "mirror://xorg/individual/lib/libXmu-"
1408 "0cdpqnx6258i4l6qhphvkdiyspysg0i5caqjy820kp63wwjk4d4w"))))
1409 (build-system gnu-build-system)
1411 '(#:configure-flags '("--disable-static")))
1413 (list libxt xorgproto libxext))
1416 (home-page "https://www.x.org/wiki/")
1417 (synopsis "Xorg Xmu library")
1419 "Xmu library contains miscellaneous utilities and is not part of the
1420 Xlib standard. It is intended to support clients in the Xorg distribution;
1421 vendors may choose not to distribute this library if they wish. Therefore,
1422 applications developers who depend on this library should be prepared to
1423 treat it as part of their software base when porting.")
1424 (license license:x11)))
1427 (define-public libxpm
1435 "mirror://xorg/individual/lib/libXpm-"
1440 "09dc6nwlb2122h02vl64k9x56mxnyqz2gwpga0abfv4bb1bxmlcw"))))
1441 (build-system gnu-build-system)
1443 '(#:configure-flags '("--disable-static")))
1445 (list libxt xorgproto libxext))
1447 `(("gettext" ,gettext-minimal)
1448 ("pkg-config" ,pkg-config)))
1449 (home-page "https://www.x.org/wiki/")
1450 (synopsis "Xorg XPM library")
1451 (description "XPM (X Pixmap) image file format library.")
1452 (license license:x11)))
1455 (define-public libxres
1463 "mirror://xorg/individual/lib/libXres-"
1468 "049b7dk6hx47161hg47ryjrm6pwsp27r5pby05b0wqb1pcggprmn"))))
1469 (build-system gnu-build-system)
1471 '(#:configure-flags '("--disable-static")))
1473 (list xorgproto libxext libx11))
1476 (home-page "https://www.x.org/wiki/")
1477 (synopsis "Xorg Resource extension library")
1478 (description "X Resource extension library.")
1479 (license license:x11)))
1482 (define-public libxscrnsaver
1484 (name "libxscrnsaver")
1490 "mirror://xorg/individual/lib/libXScrnSaver-"
1495 "1y4vx1vabg7j9hamp0vrfrax5b0lmgm3h0lbgbb3hnkv3dd0f5zr"))))
1496 (build-system gnu-build-system)
1498 '(#:configure-flags '("--disable-static")))
1500 (list libx11 libxext xorgproto))
1503 (home-page "https://www.x.org/wiki/")
1504 (synopsis "Xorg Screen Saver library")
1505 (description "X11 Screen Saver extension client library.")
1506 (license license:x11)))
1509 (define-public libxxf86dga
1511 (name "libxxf86dga")
1516 (uri (string-append "mirror://xorg/individual/lib/"
1517 "libXxf86dga-" version ".tar.bz2"))
1519 (base32 "00vjvcdlc1sga251jkxn6gkxmx9h5n290ffxxpa40qbca1gvr61b"))))
1520 (build-system gnu-build-system)
1522 '(#:configure-flags '("--disable-static")))
1526 (list libx11 libxext))
1529 (home-page "https://www.x.org/wiki/")
1530 (synopsis "Xorg XFree86-DGA library")
1531 (description "Client library for the XFree86-DGA extension.")
1532 (license license:x11)))
1543 "mirror://xorg/individual/app/luit-"
1548 "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h"))
1549 ;; See https://bugs.freedesktop.org/show_bug.cgi?id=47792;
1550 ;; should become obsolete with the next release.
1551 (patches (search-patches "luit-posix.patch"))))
1552 (build-system gnu-build-system)
1557 (home-page "https://www.x.org/wiki/")
1558 (synopsis "Convert terminal I/O from legacy encodings to UTF-8")
1560 "Luit is a filter that can be run between an arbitrary application and
1561 a UTF-8 terminal emulator such as xterm. It will convert application
1562 output from the locale's encoding into UTF-8, and convert terminal
1563 input from UTF-8 into the locale's encoding.")
1564 (license license:x11)))
1567 (define-public makedepend
1575 "mirror://xorg/individual/util/makedepend-"
1580 "072h9nzh8s5vqfz35dli4fba36fnr219asjrb7p89n8ph0paan6m"))))
1581 (build-system gnu-build-system)
1584 (native-inputs (list pkg-config))
1585 (home-page "https://www.x.org/wiki/")
1586 (synopsis "Xorg makedepend utility")
1588 "Makedepend is an utility for creating dependencies in makefiles.")
1589 (license license:x11)))
1592 (define-public mkfontscale
1594 (name "mkfontscale")
1600 "mirror://xorg/individual/app/mkfontscale-"
1604 (base32 "1ixsnsm2mn0zy9ksdid0lj6irnhvasfik9mz8bbrs5sajzmra16a"))))
1605 (build-system gnu-build-system)
1607 (list zlib xorgproto freetype libfontenc))
1610 (home-page "https://www.x.org/wiki/")
1611 (synopsis "Create an index of scalable font files for X server")
1613 "MkFontScale creates the @code{fonts.scale} and @code{fonts.dir} index
1614 files used by the legacy X11 font system.")
1615 (license license:x11)))
1618 (define-public presentproto
1620 (name "presentproto")
1626 "mirror://xorg/individual/proto/presentproto-"
1631 "1f96dlgfwhsd0834z8ydjzjnb0cwha5r6lxgia4say4zhsl276zn"))))
1632 (build-system gnu-build-system)
1633 (home-page "https://www.x.org/wiki/")
1634 (synopsis "Xorg PresentProto protocol headers")
1636 "Present Extension provides a way for applications to update their
1637 window contents from a pixmap in a well defined fashion, synchronizing
1638 with the display refresh and potentially using a more efficient
1639 mechanism than copying the contents of the source pixmap.")
1640 (license (license:x11-style "file://presentproto.h"
1641 "See 'presentproto.h' in the distribution."))
1642 (properties `((superseded . ,xorgproto)))))
1644 (define-public printproto
1652 "mirror://xorg/individual/proto/printproto-"
1657 "06liap8n4s25sgp27d371cc7yg9a08dxcr3pmdjp761vyin3360j"))))
1658 (build-system gnu-build-system)
1659 (native-inputs (list pkg-config))
1660 (home-page "https://www.x.org/wiki/")
1661 (synopsis "Xorg PrintProto protocol headers")
1663 "Print Extension defines a protocol for a portable,
1664 network-transparent printing system.")
1665 (license license:x11)))
1668 (define-public randrproto
1676 "mirror://xorg/individual/proto/randrproto-"
1681 "0s4496z61y5q45q20gldwpf788b9nsa8hb13gnck1mwwwwrmarsc"))))
1682 (build-system gnu-build-system)
1683 (native-inputs (list pkg-config))
1684 (home-page "https://www.x.org/wiki/")
1685 (synopsis "Xorg RandRProto protocol headers")
1687 "Resize and Rotate Extension defines a protocol for clients to
1688 dynamically change X screens, so as to resize, rotate and reflect the root
1689 window of a screen.")
1690 (license license:x11)
1691 (properties `((superseded . ,xorgproto)))))
1694 (define-public recordproto
1696 (name "recordproto")
1702 "mirror://xorg/individual/proto/recordproto-"
1707 "0w3kgr1zabwf79bpc28dcnj0fpni6r53rpi82ngjbalj5s6m8xx7"))))
1708 (build-system gnu-build-system)
1709 (native-inputs (list pkg-config))
1710 (home-page "https://www.x.org/wiki/")
1711 (synopsis "Xorg RecordProto protocol headers")
1713 "Record Extension defines a protocol for the recording and playback
1714 of user actions in the X Window System.")
1715 (license license:x11)
1716 (properties `((superseded . ,xorgproto)))))
1718 (define-public renderproto
1720 (name "renderproto")
1726 "mirror://xorg/individual/proto/renderproto-"
1731 "0dr5xw6s0qmqg0q5pdkb4jkdhaja0vbfqla79qh5j1xjj9dmlwq6"))))
1732 (build-system gnu-build-system)
1733 (native-inputs (list pkg-config))
1734 (home-page "https://www.x.org/wiki/")
1735 (synopsis "Xorg RenderProto protocol headers")
1737 "Rendering Extension defines a protocol for a digital image composition
1738 as the foundation of a new rendering model within the X Window System.")
1739 (license license:x11)
1740 (properties `((superseded . ,xorgproto)))))
1742 (define-public resourceproto
1744 (name "resourceproto")
1750 "mirror://xorg/individual/proto/resourceproto-"
1755 "0638iyfiiyjw1hg3139pai0j6m65gkskrvd9684zgc6ydcx00riw"))))
1756 (build-system gnu-build-system)
1757 (native-inputs (list pkg-config))
1758 (home-page "https://www.x.org/wiki/")
1759 (synopsis "Xorg ResourceProto protocol headers")
1761 "Resource Extension defines a protocol that allows a client to
1762 query the X server about its usage of various resources.")
1763 (license license:x11)
1764 (properties `((superseded . ,xorgproto)))))
1766 (define-public scrnsaverproto
1768 (name "scrnsaverproto")
1774 "mirror://xorg/individual/proto/scrnsaverproto-"
1779 "0rfdbfwd35d761xkfifcscx56q0n56043ixlmv70r4v4l66hmdwb"))))
1780 (build-system gnu-build-system)
1781 (native-inputs (list pkg-config))
1782 (home-page "https://www.x.org/wiki/")
1783 (synopsis "Xorg ScrnSaverProto protocol headers")
1785 "Screen Saver Extension defines a protocol to control screensaver
1786 features and to query screensaver info on specific windows.")
1787 (license license:x11)
1788 (properties `((superseded . ,xorgproto)))))
1790 (define-public sessreg
1798 "mirror://xorg/individual/app/sessreg-" version ".tar.bz2"))
1800 (base32 "0crczl25zynkrslmm8sjaxszhrh4i33m7h5fg4wfdb3k8aarxjyz"))))
1801 (build-system gnu-build-system)
1806 (home-page "https://www.x.org/wiki/")
1807 (synopsis "Register X sessions in system utmp/utmpx databases")
1809 "SessReg is a simple program for managing utmp/wtmp entries for X
1810 sessions. It was originally written for use with xdm, but may also be
1811 used with other display managers such as gdm or kdm.")
1812 (license license:x11)))
1815 (define-public setxkbmap
1823 "mirror://xorg/individual/app/setxkbmap-"
1828 "1xdrxs65v7d0rw1yaz0vsz55w4hxym99216p085ya9978j379wlg"))))
1829 (build-system gnu-build-system)
1831 (list libxkbfile xkeyboard-config libx11))
1836 (list (string-append "--with-xkb-config-root="
1837 (assoc-ref %build-inputs "xkeyboard-config")
1838 "/share/X11/xkb"))))
1839 (home-page "https://www.x.org/wiki/")
1840 (synopsis "Set the keyboard using the X Keyboard Extension")
1842 "Setxkbmap is an X11 client to change the keymaps in the X server
1843 for a specified keyboard to use the layout determined by the options
1844 listed on the command line.")
1845 (license license:x11)))
1848 (define-public smproxy
1856 "mirror://xorg/individual/app/smproxy-"
1861 "0rkjyzmsdqmlrkx8gy2j4q6iksk58hcc92xzdprkf8kml9ar3wbc"))))
1862 (build-system gnu-build-system)
1864 (list libxt libxmu))
1867 (home-page "https://www.x.org/wiki/")
1868 (synopsis "Session Manager Proxy")
1870 "SMProxy allows X applications that do not support X11R6 session
1871 management to participate in an X11R6 session.")
1872 (license license:x11)))
1875 (define-public util-macros
1877 (name "util-macros")
1883 "mirror://xorg/individual/util/util-macros-"
1888 "0w8ryfqylprz37zj9grl4jzdsqq67ibfwq5raj7vm1i7kmp2x08g"))))
1889 (build-system gnu-build-system)
1890 (native-inputs (list pkg-config))
1893 (modify-phases %standard-phases
1894 (add-after 'unpack 'fix-makefile-in
1896 (substitute* "Makefile.in"
1897 ;; Install xorg-macros.pc in PREFIX/lib/pkgconfig,
1898 ;; not PREFIX/share/pkgconfig.
1899 (("\\$\\(datadir\\)/pkgconfig") "$(libdir)/pkgconfig"))
1901 (add-after 'install 'post-install-cleanup
1902 (lambda* (#:key outputs #:allow-other-keys)
1903 (let ((out (assoc-ref outputs "out")))
1904 (with-directory-excursion out
1905 (delete-file "share/util-macros/INSTALL")
1906 (rmdir "share/util-macros"))
1908 (home-page "https://www.x.org/wiki/")
1909 (synopsis "Xorg autoconf macros")
1911 "This package provides a set of autoconf macros used by the
1912 configure.ac scripts in other Xorg modular packages, and is needed to
1913 generate new versions of their configure scripts with autoconf.")
1914 (license license:x11)))
1917 (define-public videoproto
1925 "mirror://xorg/individual/proto/videoproto-"
1930 "00m7rh3pwmsld4d5fpii3xfk5ciqn17kkk38gfpzrrh8zn4ki067"))))
1931 (build-system gnu-build-system)
1932 (native-inputs (list pkg-config))
1933 (home-page "https://www.x.org/wiki/")
1934 (synopsis "Xorg VideoProto protocol headers")
1936 "Video Extension provides a protocol for a video output mechanism,
1937 mainly to rescale video playback in the video controller hardware.")
1938 (license license:x11)
1939 (properties `((superseded . ,xorgproto)))))
1941 (define-public windowswmproto
1943 (name "windowswmproto")
1949 "mirror://xorg/individual/proto/windowswmproto-"
1954 "0syjxgy4m8l94qrm03nvn5k6bkxc8knnlld1gbllym97nvnv0ny0"))))
1955 (build-system gnu-build-system)
1956 (native-inputs (list pkg-config))
1957 (home-page "https://www.x.org/wiki/")
1958 (synopsis "Xorg WindowsWMProto protocol headers")
1960 "WindowsWM Extension defines a protocol, used for coordination between
1961 an X11 server and the Microsoft Windows native window manager. WindowsWM
1962 is only intended to be used on Cygwin when running a rootless XWin
1964 (license license:x11)
1965 (properties `((superseded . ,xorgproto)))))
1967 (define-public x11perf
1975 "mirror://xorg/individual/app/x11perf-"
1980 "0d3wh6z6znwhfdiv0zaggfj0xgish98xa10yy76b9517zj7hnzhw"))))
1981 (build-system gnu-build-system)
1983 (list libx11 libxft libxmu libxrender))
1986 (home-page "https://www.x.org/wiki/")
1987 (synopsis "X server performance benchmarker")
1989 "X11Perf is a simple performance benchmarker for the Xorg X server.")
1990 (license license:x11)))
1993 (define-public xauth
2000 (uri (string-append "mirror://xorg/individual/app/xauth-" version
2003 (base32 "032klzzw8r09z36x1272ssd79bcisz8j5p8gbdy111fiknvx27bd"))))
2004 (build-system gnu-build-system)
2006 (list libxmu libxext libxau libx11))
2008 (list cmdtest pkg-config))
2009 (home-page "https://www.x.org/wiki/")
2010 (synopsis "X authority file utility")
2012 "XAuth program is used to edit and display the authorization
2013 information used in connecting to the X server.")
2014 (license license:x11)))
2017 (define-public xbacklight
2025 "mirror://xorg/individual/app/xbacklight-"
2030 "1plssg0s3pbslg6rfzxp9sx8ryvn8l32zyvc8zp9zsbsfwjg69rs"))))
2031 (build-system gnu-build-system)
2033 (list libxcb xcb-util))
2036 (home-page "https://www.x.org/wiki/")
2037 (synopsis "Control display backlight")
2039 "Xbacklight is used to adjust the backlight brightness where
2040 supported. It uses the RandR extension to find all outputs on the X
2041 server supporting backlight brightness control and changes them all in
2043 (license license:x11)))
2046 (define-public xbitmaps
2054 "mirror://xorg/individual/data/xbitmaps-"
2059 "1vh73sc13s7w5r6gnc6irca56s7998bja7wgdivkfn8jccawgw5r"))))
2060 (build-system gnu-build-system)
2061 (native-inputs (list pkg-config))
2062 (home-page "https://www.x.org/wiki/")
2063 (synopsis "X bitmaps")
2065 "xbitmaps provides basic bitmaps (little pictures) used by some
2067 (license license:x11)))
2069 (define-public xcalc
2076 (uri (string-append "mirror://xorg/individual/app/"
2077 "xcalc-" version ".tar.gz"))
2079 (base32 "0c768lh0nh28ram9ldldhaf51024fngc589v4pjmf3lxmzcihr58"))))
2080 (build-system gnu-build-system)
2082 `(#:phases (modify-phases %standard-phases
2084 'configure 'mutate-makefile
2086 (substitute* "Makefile"
2087 (("^appdefaultdir = .*$")
2088 (string-append "appdefaultdir = " %output
2089 ,%app-defaults-dir "\n")))
2095 (home-page "https://www.x.org/wiki/")
2096 (synopsis "Hand calculator for the X Window system")
2097 (description "Xcalc is a scientific calculator desktop accessory that can
2098 emulate a TI-30 or an HP-10C.")
2099 (license license:x11)))
2102 (define-public xcb-proto
2110 "https://xcb.freedesktop.org/dist/xcb-proto-"
2114 "01d62r286yfc3rpz714nqdgkl0wk9j0wqkd4ylas1d7r4vmkqshq"))
2115 (modules '((guix build utils)))
2118 ;; fractions.gcd has been deprecated since python-3.5.
2119 (substitute* "xcbgen/align.py"
2120 (("from fractions import gcd") "from math import gcd"))
2122 (build-system gnu-build-system)
2124 `(("pkg-config" ,pkg-config) ("python" ,python-minimal-wrapper)))
2125 (home-page "https://xcb.freedesktop.org/")
2126 (synopsis "XML-XCB protocol descriptions")
2128 "XCB-Proto provides the XML-XCB protocol descriptions that libxcb
2129 uses to generate the majority of its code and API. XCB-Proto is
2130 separated from libxcb to allow reuse by other projects, such as
2131 additional language bindings, protocol dissectors, or documentation
2134 XCB-Proto also contains language-independent Python libraries that are
2135 used to parse an XML description and create objects used by Python code
2136 generators in individual language bindings.")
2137 (license license:x11)))
2140 (define-public xcmiscproto
2142 (name "xcmiscproto")
2148 "mirror://xorg/individual/proto/xcmiscproto-"
2153 "1pyjv45wivnwap2wvsbrzdvjc5ql8bakkbkrvcv6q9bjjf33ccmi"))))
2154 (build-system gnu-build-system)
2155 (native-inputs (list pkg-config))
2156 (home-page "https://www.x.org/wiki/")
2157 (synopsis "Xorg XCMiscProto protocol headers")
2159 "XC-MISC Extension defines a protocol that provides Xlib two ways
2160 to query the server for available resource IDs.")
2161 (license license:x11)
2162 (properties `((superseded . ,xorgproto)))))
2164 (define-public xcmsdb
2172 "mirror://xorg/individual/app/xcmsdb-"
2177 "1ik7gzlp2igz183x70883000ygp99r20x3aah6xhaslbpdhm6n75"))))
2178 (build-system gnu-build-system)
2183 (home-page "https://www.x.org/wiki/")
2184 (synopsis "Device Color Characterization utility")
2186 "XCMSDB is used to load, query, or remove Device Color
2187 Characterization data stored in properties on the root window of the
2188 screen as specified in section 7, Device Color Characterization, of the
2189 X11 Inter-Client Communication Conventions Manual (ICCCM).")
2190 (license license:x11)))
2193 (define-public xcursor-themes
2195 (name "xcursor-themes")
2201 "mirror://xorg/individual/data/xcursor-themes-"
2206 "16a96li0s0ggg60v7f6ywxmsrmxdfizcw55ccv7sp4qjfisca7pf"))))
2207 (build-system gnu-build-system)
2209 (list libxcursor xcursorgen))
2214 (list (string-append "--with-cursordir="
2215 (assoc-ref %outputs "out")
2217 (home-page "https://www.x.org/wiki/")
2218 (synopsis "Default Xorg cursors")
2220 "This package provides a default set of cursor themes for the Xorg
2221 X server: @code{handhelds}, @code{redglass} and @code{whiteglass}.")
2222 (license license:x11)))
2224 (define-public hackneyed-x11-cursors
2226 (name "hackneyed-x11-cursors")
2232 (url "https://gitlab.com/Enthymeme/hackneyed-x11-cursors.git")
2234 (file-name (git-file-name name version))
2237 "1mjwbny4rid9dzz6xfb8l5rkwki41sfhdp970cf3w2pi9kyg1njs"))))
2238 (build-system gnu-build-system)
2240 `(#:tests? #f ;no test suite
2241 #:make-flags (list (string-append "PREFIX=" %output))
2243 (modify-phases %standard-phases
2245 (add-before 'build 'set-inkscape-environment-variable
2246 (lambda* (#:key inputs #:allow-other-keys)
2247 (let ((inkscape (search-input-file inputs "/bin/inkscape")))
2248 (setenv "INKSCAPE" inkscape))))
2249 (add-before 'build 'placate-inkscape-warnings
2251 (setenv "HOME" (getcwd))))
2252 (add-after 'build 'generate-black-cursors
2253 (lambda* (#:key make-flags parallel-build #:allow-other-keys)
2254 (let ((build (assoc-ref %standard-phases 'build))
2255 (make-flags/extended
2257 "THEME_NAME=Hackneyed-Dark"
2258 "COMMON_SOURCE=theme/common-dark.svg"
2259 "RSVG_SOURCE=theme/right-handed-dark.svg"
2260 "LSVG_SOURCE=theme/left-handed-dark.svg")))
2261 (build #:make-flags make-flags/extended
2262 #:parallel-build parallel-build))))
2263 (add-after 'install 'install-black-cursors
2264 (lambda* (#:key make-flags #:allow-other-keys)
2265 (apply invoke `("make" "install" ,@make-flags
2266 "THEME_NAME=Hackneyed-Dark")))))))
2267 (native-inputs (list imagemagick inkscape xcursorgen))
2268 (home-page "https://gitlab.com/Enthymeme/hackneyed-x11-cursors")
2269 (synopsis "Classic cursor theme for X11")
2270 (description "Hackneyed is a scalable cursor theme mildly resembling old
2271 Windows 3.x cursors. The cursors are available in white and black colors. A
2272 left-handed version of the cursors is also included.")
2273 (license license:x11)))
2275 (define-public xcursorgen
2283 "mirror://xorg/individual/app/xcursorgen-"
2288 "0ggbv084cavp52hjgcz3vdj0g018axs0m23c03lpc5sgn92gidim"))))
2289 (build-system gnu-build-system)
2291 (list libxcursor libpng))
2294 (home-page "https://www.x.org/wiki/")
2295 (synopsis "Create an X cursor file from PNG images")
2297 "XCursorGen prepares X11 cursor sets for use with libXcursor.")
2298 (license license:x11)))
2301 (define-public xdpyinfo
2309 "mirror://xorg/individual/app/xdpyinfo-"
2314 "0ldgrj4w2fa8jng4b3f3biaj0wyn8zvya88pnk70d7k12pcqw8rh"))))
2315 (build-system gnu-build-system)
2329 (home-page "https://www.x.org/wiki/")
2330 (synopsis "Xorg display information utility")
2332 "Xdpyinfo is used to display information about an X server: the
2333 capabilities of a server, the predefined values for various parameters
2334 used in communicating between clients and the server, and the different
2335 types of screens, visuals, and X11 protocol extensions that are
2337 (license license:x11)))
2340 (define-public xdriinfo
2348 "mirror://xorg/individual/app/xdriinfo-"
2353 "0lcx8h3zd11m4w8wf7dyp89826d437iz78cyrix436bqx31x5k6r"))))
2354 (build-system gnu-build-system)
2359 (home-page "https://www.x.org/wiki/")
2360 (synopsis "Query DRI configuration information")
2362 "XDRIInfo is used to query configuration information of X11
2363 DRI (Direct Rendering Infrastructure) drivers.")
2364 (license license:x11)))
2375 "mirror://xorg/individual/app/xev-"
2380 "1ql592pdhddhkipkrsxn929y9l2nn02a5fh2z3dx47kmzs5y006p"))))
2381 (build-system gnu-build-system)
2382 (arguments `(#:configure-flags ',(malloc0-flags)))
2384 (list libxrender libxrandr xorgproto libx11))
2387 (home-page "https://gitlab.freedesktop.org/xorg/app/xev")
2388 (synopsis "Print contents of X events")
2390 "XEv creates a window and then asks the X server to send it X11
2391 events whenever anything happens to the window (such as it being moved,
2392 resized, typed in, clicked in, etc.). You can also attach it to an
2393 existing window. It is useful for seeing what causes events to occur
2394 and to display the information that they contain; it is essentially a
2395 debugging and development tool, and should not be needed in normal
2397 (license license:x11)))
2400 (define-public xextproto
2408 "mirror://xorg/individual/proto/xextproto-"
2413 "1c2vma9gqgc2v06rfxdiqgwhxmzk2cbmknwf1ng3m76vr0xb5x7k"))))
2414 (build-system gnu-build-system)
2415 (native-inputs (list pkg-config))
2416 (home-page "https://www.x.org/wiki/")
2417 (synopsis "Xorg XExtProto protocol headers")
2419 "XExtProto provides the following extensions: DOUBLE-BUFFER, DPMS,
2420 Extended-Visual-Information, Generic Event Extension, LBX, MIT-SHM,
2421 MIT-SUNDRY-NONSTANDARD, Multi-Buffering, SECURITY, SHAPE, SYNC, TOG-CUP,
2422 XC-APPGROUP, XTEST.")
2423 (license license:x11)
2424 (properties `((superseded . ,xorgproto)))))
2426 (define-public libevdev
2433 (uri (string-append "https://www.freedesktop.org/software/" name "/"
2434 name "-" version ".tar.xz"))
2437 "1l628xblk36vh7aqia1fw6hh62af7va0pd70h28112l5i4afmx33"))))
2438 (build-system gnu-build-system)
2440 `(#:configure-flags '("--disable-static")))
2441 (native-inputs (list python))
2442 (home-page "https://www.freedesktop.org/wiki/Software/libevdev/")
2443 (synopsis "Wrapper library for evdev devices")
2445 "libevdev is a wrapper library for evdev devices. it moves the common
2446 tasks when dealing with evdev devices into a library and provides a library
2447 interface to the callers, thus avoiding erroneous ioctls, etc.
2449 The eventual goal is that libevdev wraps all ioctls available to evdev
2450 devices, thus making direct access unnecessary.")
2451 (license (license:x11-style "file://COPYING"))))
2454 (define-public xf86-input-evdev
2456 (name "xf86-input-evdev")
2462 "mirror://xorg/individual/driver/xf86-input-evdev-"
2467 "1h1y0fwnawlp4yc5llr1l7hwfcxxpln2fxhy6arcf6w6h4z0f9l7"))))
2468 (build-system gnu-build-system)
2471 ("libevdev" ,libevdev)
2473 ("xorg-server" ,xorg-server)))
2474 (native-inputs (list pkg-config))
2477 (list (string-append "--with-sdkdir="
2478 (assoc-ref %outputs "out")
2480 (home-page "https://www.x.org/wiki/")
2481 (synopsis "Generic input driver for X server")
2483 "xf86-input-evdev is a generic input driver for the Xorg X server.
2484 This driver supports all input devices that the kernel knows about,
2485 including most mice, keyboards, tablets and touchscreens.")
2486 (license license:x11)))
2488 (define-public xf86-input-libinput
2490 (name "xf86-input-libinput")
2495 "mirror://xorg/individual/driver/"
2496 name "-" version ".tar.bz2"))
2499 "05ldqr10f2rrnshyk3lc773rz0gp3ccdzwa8n7lsc94i850jl7g1"))))
2500 (build-system gnu-build-system)
2503 (list (string-append "--with-sdkdir="
2504 %output "/include/xorg"))))
2508 `(("libinput" ,libinput-minimal)
2509 ("xorg-server" ,xorg-server)))
2510 (home-page "https://www.x.org/wiki/")
2511 (synopsis "Input driver for X server based on libinput")
2513 "xf86-input-libinput is an input driver for the Xorg X server based
2514 on libinput. It is a thin wrapper around libinput, so while it does
2515 provide all features that libinput supports it does little beyond.")
2516 (license (list license:x11 ; only install-sh
2517 license:expat)))) ; everything else
2519 (define-public xf86-input-joystick
2521 (name "xf86-input-joystick")
2527 "mirror://xorg/individual/driver/xf86-input-joystick-"
2532 "1awfq496d082brgjbr60lhm6jvr9537rflwxqdfqwfzjy3n6jxly"))))
2533 (build-system gnu-build-system)
2534 (inputs (list xorg-server))
2535 (native-inputs (list pkg-config))
2538 (list (string-append "--with-sdkdir="
2539 (assoc-ref %outputs "out")
2541 (home-page "https://www.x.org/wiki/")
2542 (synopsis "Joystick input driver for X server")
2544 "xf86-input-joystick is a joystick input driver for the Xorg X server.
2545 It is used to control the pointer with a joystick device.")
2546 (license license:x11)))
2549 (define-public xf86-input-keyboard
2551 (name "xf86-input-keyboard")
2557 "mirror://xorg/individual/driver/xf86-input-keyboard-"
2562 "12032yg412kyvnmc5fha1in7mpi651d8sa1bk4138s2j2zr01jgp"))))
2563 (build-system gnu-build-system)
2564 (inputs (list xorg-server))
2565 (native-inputs (list pkg-config))
2566 (home-page "https://www.x.org/wiki/")
2567 (synopsis "Keyboard input driver for X server")
2569 "xf86-input-keyboard is a keyboard input driver for the Xorg X server.")
2570 (license license:x11)))
2573 (define-public xf86-input-mouse
2575 (name "xf86-input-mouse")
2581 "mirror://xorg/individual/driver/xf86-input-mouse-"
2586 "1iawr1wyl2qch1mqszcs0s84i92mh4xxprflnycbw1adc18b7v4k"))))
2587 (build-system gnu-build-system)
2588 (inputs (list xorg-server))
2589 (native-inputs (list pkg-config))
2592 (list (string-append "--with-sdkdir="
2593 (assoc-ref %outputs "out")
2595 (home-page "https://www.x.org/wiki/")
2596 (synopsis "Mouse input driver for X server")
2598 "xf86-input-mouse is a mouse input driver for the Xorg X server.
2599 This driver supports four classes of mice: serial, bus and PS/2 mice,
2600 and additional mouse types supported by specific operating systems, such
2602 (license license:x11)))
2605 (define-public xf86-input-synaptics
2607 (name "xf86-input-synaptics")
2613 "mirror://xorg/individual/driver/xf86-input-synaptics-"
2618 "0xhm03qywwfgkpfl904d08lx00y28m1b6lqmks5nxizixwk3by3s"))))
2619 (build-system gnu-build-system)
2620 (inputs (list libx11 libxi libevdev mtdev xorg-server))
2621 (native-inputs (list pkg-config))
2624 (list (string-append "--with-sdkdir="
2625 (assoc-ref %outputs "out")
2627 (string-append "--with-xorg-conf-dir="
2628 (assoc-ref %outputs "out")
2629 "/share/X11/xorg.conf.d"))))
2630 (home-page "https://www.x.org/wiki/")
2631 (synopsis "Touchpad input driver for X server")
2633 "xf86-input-synaptics is a touchpad driver for the Xorg X server.")
2634 (license license:x11)))
2637 (define-public xf86-input-void
2639 (name "xf86-input-void")
2645 "mirror://xorg/individual/driver/xf86-input-void-"
2650 "171k8b8s42s3w73l7ln9jqwk88w4l7r1km2blx1vy898c854yvpr"))))
2651 (build-system gnu-build-system)
2652 (inputs (list xorg-server))
2653 (native-inputs (list pkg-config))
2654 (home-page "https://www.x.org/wiki/")
2655 (synopsis "Void (null) input driver for X server")
2657 "xf86-input-void is a null input driver for the Xorg X server.")
2658 (license license:x11)))
2660 (define-public xf86-video-amdgpu
2662 (name "xf86-video-amdgpu")
2667 (uri (string-append "mirror://xorg/individual/driver/"
2668 "xf86-video-amdgpu-" version ".tar.bz2"))
2670 (base32 "125dq85n46yqmnmr2hknxwcqicwlvz2b2phf0m963fpg9l1j6y30"))))
2671 (build-system gnu-build-system)
2672 (inputs (list xorg-server))
2673 (native-inputs (list pkg-config))
2674 (home-page "https://www.x.org/wiki/")
2675 (synopsis "AMD Radeon video driver for X server")
2677 "xf86-video-amdgpu is an AMD Radeon video driver for the Xorg
2679 (license license:x11)))
2681 (define-public xf86-video-ark
2683 (name "xf86-video-ark")
2689 "mirror://xorg/individual/driver/xf86-video-ark-"
2694 "07p5vdsj2ckxb6wh02s61akcv4qfg6s1d5ld3jn3lfaayd3f1466"))
2695 (patches (search-patches "xf86-video-ark-remove-mibstore.patch"))))
2696 (build-system gnu-build-system)
2697 (inputs (list xorg-server))
2698 (native-inputs (list pkg-config))
2699 (home-page "https://www.x.org/wiki/")
2700 (synopsis "Ark Logic video driver for X server")
2702 "xf86-video-ark is an Ark Logic video driver for the Xorg X server.")
2703 (license license:x11)))
2705 (define-public xf86-video-ast
2707 (name "xf86-video-ast")
2709 (home-page "https://cgit.freedesktop.org/xorg/driver/xf86-video-ast/")
2713 "mirror://xorg/individual/driver/xf86-video-ast-"
2714 version ".tar.bz2"))
2717 "1pm2cy81ma7ldsw0yfk28b33h9z2hcj5rccrxhfxfgvxsiavrnqy"))))
2718 (build-system gnu-build-system)
2719 (inputs (list xorg-server))
2720 (native-inputs (list pkg-config))
2721 (synopsis "ASpeed Technologies video driver for X server")
2723 "xf86-video-ast is an ASpeed Technologies video driver for the Xorg
2725 (license license:x11)))
2727 (define-public xf86-video-ati
2728 ;; The current release is too old to build with our inputs.
2729 (let ((commit "5eba006e4129e8015b822f9e1d2f1e613e252cda")
2732 (name "xf86-video-ati")
2733 (version (git-version "19.1.0" revision commit))
2738 (url "https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati.git")
2740 (file-name (git-file-name name version))
2742 (base32 "1n49wx0v13jh8vv17sxgrmmpi1mk3n2wph07jfmxmzqahpcn4lkn"))))
2743 (build-system gnu-build-system)
2744 (inputs (list mesa xorgproto xorg-server))
2746 (list pkg-config autoconf automake libtool))
2747 (home-page "https://www.x.org/wiki/")
2748 (synopsis "ATI Radeon video driver for X server")
2750 "xf86-video-ati is an ATI Radeon video driver for the Xorg
2752 (license license:x11))))
2755 (define-public xf86-video-cirrus
2757 (name "xf86-video-cirrus")
2763 "mirror://xorg/individual/driver/xf86-video-cirrus-"
2768 "1asifc6ld2g9kap15vfhvsvyl69lj7pw3d9ra9mi4najllh7pj7d"))))
2769 (build-system gnu-build-system)
2770 (inputs (list xorg-server))
2771 (native-inputs (list pkg-config))
2772 (home-page "https://www.x.org/wiki/")
2773 (synopsis "Cirrus Logic video driver for X server")
2775 "xf86-video-cirrus is a Cirrus Logic video driver for the Xorg
2777 (license license:x11)))
2779 (define-public xf86-video-dummy
2781 (name "xf86-video-dummy")
2786 (uri (string-append "mirror://xorg/individual/driver/"
2787 "xf86-video-dummy-" version ".tar.bz2"))
2789 (base32 "1fcm9vwgv8wnffbvkzddk4yxrh3kc0np6w65wj8k88q7jf3bn4ip"))))
2790 (build-system gnu-build-system)
2791 (inputs (list xorg-server))
2792 (native-inputs (list pkg-config))
2793 (home-page "https://www.x.org/wiki/")
2794 (synopsis "Dummy video driver for X server")
2796 "Virtual/offscreen frame buffer driver for the Xorg X server.")
2797 ;; per https://lists.freedesktop.org/archives/xorg/2020-June/060316.html
2798 (license license:x11)))
2800 (define-public xf86-video-fbdev
2802 (name "xf86-video-fbdev")
2808 "mirror://xorg/individual/driver/xf86-video-fbdev-"
2813 "16a66zr0l1lmssa07i3rzy07djxnb45c17ks8c71h8l06xgxihyw"))))
2814 (build-system gnu-build-system)
2815 (inputs (list xorg-server))
2816 (native-inputs (list pkg-config))
2817 (home-page "https://www.x.org/wiki/")
2818 (synopsis "Framebuffer device video driver for X server")
2820 "xf86-video-fbdev is a video driver for the Xorg X server for
2821 framebuffer device.")
2822 (license license:x11)))
2825 (define-public xf86-video-freedreno
2826 (let ((commit "ccba8f89995de7d5e1b216e580b789c4cda05035"))
2828 (name "xf86-video-freedreno")
2829 (version (string-append "1.4.0-1-" (string-take commit 7)))
2832 ;; there's no current tarball
2835 (url (string-append "https://anongit.freedesktop.org/git/xorg/"
2836 "driver/xf86-video-freedreno.git"))
2840 "0bl9m1agi793lcddv94j8afzw1xc9w810q91mbq0n3dscbbcr9nh"))
2841 (file-name (string-append name "-" version))))
2842 (build-system gnu-build-system)
2844 `(("libdrm" ,libdrm)
2847 ("xorg-server" ,xorg-server)
2850 (list pkg-config autoconf automake libtool))
2851 ;; This driver is only supported on ARM systems.
2852 (supported-systems '("armhf-linux" "aarch64-linux"))
2855 (list (string-append "--with-xorg-conf-dir="
2856 (assoc-ref %outputs "out")
2857 "/share/X11/xorg.conf.d"))
2859 (modify-phases %standard-phases
2862 ;; autogen.sh calls configure unconditionally.
2863 (invoke "autoreconf" "-vfi"))))))
2864 (home-page "https://www.x.org/wiki/")
2865 (synopsis "Adreno video driver for X server")
2867 "xf86-video-freedreno is a 2D graphics driver for the Xorg X server.
2868 It supports a variety of Adreno graphics chipsets.")
2869 (license license:x11))))
2872 (define-public xf86-video-geode
2874 (name "xf86-video-geode")
2879 (uri (string-append "mirror://xorg/individual/driver/xf86-video-geode-"
2880 version ".tar.bz2"))
2882 (base32 "0r2dz0agg0k5wrqdbicji6mh6svzyl0xgqk76hpcfdlzn2zx15zl"))))
2883 (build-system gnu-build-system)
2884 (inputs (list xorg-server))
2885 (native-inputs (list pkg-config))
2887 ;; This driver is only supported on i686 systems.
2888 (filter (lambda (system) (string-prefix? "i686-" system))
2889 %supported-systems))
2890 (home-page "https://www.x.org/wiki/")
2891 (synopsis "AMD Geode GX/LX video driver for X server")
2893 "xf86-video-geode is an Xorg X server video driver for the AMD
2894 Geode GX and LX processors. The GX component supports both XAA and EXA
2895 for graphics acceleration. The LX component supports EXA, including
2896 compositing. Both support Xv overlay and dynamic rotation with XRandR.")
2897 (license license:x11)))
2900 ;; Driver for obsolete graphics cards, depends on libglide:
2901 ;; http://sourceforge.net/projects/glide/ ,
2902 ;; last updated in 2003, and which does not compile out of the box any more.
2903 ;; (define-public xf86-video-glide
2905 ;; (name "xf86-video-glide")
2906 ;; (version "1.2.0")
2909 ;; (method url-fetch)
2910 ;; (uri (string-append
2911 ;; "mirror://xorg/X11R7.7/src/everything/xf86-video-glide-"
2916 ;; "0byapm9mnpqk3wijfnnan3d22ii5cw6dmg4xn1625iiz89j5vs1l"))))
2917 ;; (build-system gnu-build-system)
2918 ;; (inputs `(("pkg-config" ,pkg-config)
2919 ;; ("xorg-server" ,xorg-server)))
2920 ;; (home-page "https://www.x.org/wiki/")
2921 ;; (synopsis "Glide video driver for X server")
2923 ;; "xf86-video-glide is a Glide video driver for the Xorg X server.")
2924 ;; (license license:x11)))
2927 (define-public xf86-video-glint
2929 (name "xf86-video-glint")
2935 "mirror://xorg/individual/driver/xf86-video-glint-"
2940 "1lkpspvrvrp9s539bhfdjfh4andaqyk63l6zjn8m3km95smk6a45"))))
2941 (build-system gnu-build-system)
2942 (inputs (list xorgproto xorg-server))
2943 (native-inputs (list pkg-config))
2944 (home-page "https://www.x.org/wiki/")
2945 (synopsis "GLINT/Permedia video driver for X server")
2947 "xf86-video-glint is a GLINT/Permedia video driver for the Xorg
2949 (license license:x11)))
2952 (define-public xf86-video-i128
2954 (name "xf86-video-i128")
2960 "mirror://xorg/individual/driver/xf86-video-i128-"
2965 "1snhpv1igrhifcls3r498kjd14ml6x2xvih7zk9xlsd1ymmhlb4g"))))
2966 (build-system gnu-build-system)
2967 (inputs (list xorg-server))
2968 (native-inputs (list pkg-config))
2969 (home-page "https://www.x.org/wiki/")
2970 (synopsis "I128 video driver for X server")
2972 "xf86-video-i128 is an I128 (Imagine 128) video driver for the Xorg
2974 (license license:x11)))
2977 (define-public xf86-video-intel
2978 (let ((commit "31486f40f8e8f8923ca0799aea84b58799754564")
2981 (name "xf86-video-intel")
2982 (version (git-version "2.99.917" revision commit))
2985 ;; there's no current tarball
2988 (url "https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.git")
2992 "0lv6vlx9gvp34pidmx4gxgb0qjf0km0gabbaxw141nnvj1azv94y"))
2993 (file-name (git-file-name name version))))
2994 (build-system gnu-build-system)
2995 (inputs `(("mesa" ,mesa)
2998 ("libxfont" ,libxfont2)
2999 ("xorg-server" ,xorg-server)))
3001 (list pkg-config autoconf automake libtool))
3003 ;; This driver is only supported on Intel systems.
3004 (filter (lambda (system) (or (string-prefix? "i686-" system)
3005 (string-prefix? "x86_64-" system)))
3006 %supported-systems))
3008 '(#:configure-flags '("--with-default-accel=uxa")))
3009 (home-page "https://www.x.org/wiki/")
3010 (synopsis "Intel video driver for X server")
3012 "xf86-video-intel is a 2D graphics driver for the Xorg X server.
3013 It supports a variety of Intel graphics chipsets.")
3014 (license license:x11))))
3017 (define-public xf86-video-mach64
3019 (name "xf86-video-mach64")
3025 "mirror://xorg/individual/driver/xf86-video-mach64-"
3030 "171wg8r6py1l138s58rlapin3rlpwsg9spmvhc7l68mm3g3hf1vs"))
3031 (patches (search-patches "xf86-video-mach64-glibc-2.20.patch"
3032 "xf86-video-mach64-bool-to-boolean.patch"))))
3033 (build-system gnu-build-system)
3034 (inputs (list mesa xorgproto xorg-server))
3037 (home-page "https://www.x.org/wiki/")
3038 (synopsis "Mach64 video driver for X server")
3040 "xf86-video-mach64 is a video driver for the Xorg X server.
3041 This driver is intended for all ATI video adapters based on the Mach64
3042 series or older chipsets, providing maximum video function within
3043 hardware limitations. The driver is also intended to optionally provide
3044 the same level of support for generic VGA or 8514/A adapters.")
3045 (license license:x11)))
3048 (define-public xf86-video-mga
3050 (name "xf86-video-mga")
3056 "mirror://xorg/individual/driver/xf86-video-mga-"
3061 "0yaxpgyyj9398nzzr5vnsfxcis76z46p9814yzj8179yl7hld296"))))
3062 (build-system gnu-build-system)
3063 (inputs (list mesa xorgproto xorg-server))
3064 (native-inputs (list pkg-config))
3065 (home-page "https://www.x.org/wiki/")
3066 (synopsis "Matrox video driver for X server")
3068 "xf86-video-mga is a Matrox video driver for the Xorg X server.")
3069 (license license:x11)))
3071 (define-public xf86-video-neomagic
3073 (name "xf86-video-neomagic")
3079 "mirror://xorg/individual/driver/xf86-video-neomagic-"
3084 "0r4h673kw8fl7afc30anwbjlbhp82mg15fvaxf470xg7z983k0wk"))))
3085 (build-system gnu-build-system)
3086 (inputs (list xorgproto xorg-server))
3087 (native-inputs (list pkg-config))
3088 (home-page "https://www.x.org/wiki/")
3089 (synopsis "NeoMagic video driver for X server")
3091 "xf86-video-neomagic is a NeoMagic video driver for the Xorg X server.")
3092 (license license:x11)))
3095 ;; This driver depends on XAA which has been removed from xorg-server.
3097 ;; (define-public xf86-video-newport
3099 ;; (name "xf86-video-newport")
3100 ;; (version "0.2.4")
3103 ;; (method url-fetch)
3104 ;; (uri (string-append
3105 ;; "mirror://xorg/individual/driver/xf86-video-newport-"
3110 ;; "1yafmp23jrfdmc094i6a4dsizapsc9v0pl65cpc8w1kvn7343k4i"))))
3111 ;; (build-system gnu-build-system)
3112 ;; (inputs `(("xorg-server" ,xorg-server)))
3113 ;; (native-inputs `(("pkg-config" ,pkg-config)))
3114 ;; (home-page "https://www.x.org/wiki/")
3115 ;; (synopsis "Newport video driver for X server")
3117 ;; "xf86-video-newport is an Xorg X server video driver for the SGI
3119 ;; (license license:x11)))
3122 (define-public xf86-video-nv
3124 (name "xf86-video-nv")
3130 "mirror://xorg/individual/driver/xf86-video-nv-"
3135 "0bdk3pc5y0n7p53q4gc2ff7bw16hy5hwdjjxkm5j3s7hdyg6960z"))))
3136 (build-system gnu-build-system)
3137 (inputs (list xorg-server))
3138 (native-inputs (list pkg-config))
3139 (home-page "https://www.x.org/wiki/")
3140 (synopsis "NVIDIA video driver for X server")
3142 "This package contains Xorg support for the NVIDIA GeForce 8 series of
3143 graphics processors.
3145 There are a few caveats of which to be aware: the XVideo extension is not
3146 supported, and the RENDER extension is not accelerated by this driver.")
3147 (license license:x11)))
3149 (define-public xf86-video-nouveau
3151 (name "xf86-video-nouveau")
3156 (uri (string-append "mirror://xorg/individual/driver/xf86-video-nouveau-"
3157 version ".tar.bz2"))
3159 (base32 "0sqm1jwjg15sp8v7039y2hsbhph8gpjd2bdzcqqiij2mgbi254s9"))
3160 (patches (search-patches "xf86-video-nouveau-fixup-ABI.patch"))))
3161 (build-system gnu-build-system)
3162 (inputs (list xorg-server))
3163 (native-inputs (list pkg-config))
3164 (home-page "https://nouveau.freedesktop.org")
3165 (synopsis "NVIDIA video driver for X server")
3167 "This package provides modern, high-quality Xorg drivers for NVIDIA
3169 (license license:x11)))
3171 (define-public xf86-video-openchrome
3173 (name "xf86-video-openchrome")
3179 "mirror://xorg/individual/driver/xf86-video-openchrome-"
3184 "0x9gq3hw6k661k82ikd1y2kkk4dmgv310xr5q59dwn4k6z37aafs"))))
3185 (build-system gnu-build-system)
3186 (inputs (list libx11
3194 (home-page "https://www.x.org/wiki/")
3195 (synopsis "Openchrome video driver for X server")
3197 "xf86-video-openchrome is a video driver for the Xorg X server.
3198 This driver is intended for VIA chipsets featuring the VIA UniChrome,
3199 UniChrome Pro and Chrome9 integrated graphics processors.")
3200 (license license:x11)))
3203 (define-public xf86-video-qxl
3205 (name "xf86-video-qxl")
3210 "mirror://xorg/individual/driver/"
3211 "xf86-video-qxl-" version ".tar.bz2"))
3214 "14jc24znnahhmz4kqalafmllsg8awlz0y6gpgdpk5ih38ph851mi"))
3215 (patches (search-patches
3216 "xf86-video-qxl-fix-build.patch"))))
3217 (build-system gnu-build-system)
3219 (list libxfont2 spice-protocol xorg-server xorgproto))
3222 (synopsis "Qxl video driver for X server")
3223 (description "xf86-video-qxl is a video driver for the Xorg X server.
3224 This driver is intended for the spice qxl virtio device.")
3225 (home-page "http://www.spice-space.org")
3226 (license license:x11)))
3228 (define-public xf86-video-r128
3230 (name "xf86-video-r128")
3234 (uri (string-append "mirror://xorg/individual/driver/"
3235 name "-" version ".tar.bz2"))
3238 "0mz0v5mqmmbncr2drd5zvia1fb7frz2xqwflhhqbnaxx5j48c740"))))
3239 (build-system gnu-build-system)
3240 (inputs (list mesa xorgproto xorg-server))
3243 (home-page "https://www.x.org/wiki/")
3244 (synopsis "ATI Rage 128 video driver for X server")
3246 "xf86-video-r128 is a video driver for the Xorg X server.
3247 This driver is intended for ATI Rage 128 based cards.")
3248 (license license:x11)))
3250 (define-public xf86-video-savage
3252 (name "xf86-video-savage")
3258 "mirror://xorg/individual/driver/xf86-video-savage-"
3261 (patches (search-patches "xf86-video-savage-xorg-compat.patch"))
3264 "11pcrsdpdrwk0mrgv83s5nsx8a9i4lhmivnal3fjbrvi3zdw94rc"))))
3265 (build-system gnu-build-system)
3266 (inputs (list mesa xorgproto xorg-server))
3267 (native-inputs (list pkg-config))
3268 (home-page "https://www.x.org/wiki/")
3269 (synopsis "Savage video driver for X server")
3271 "xf86-video-savage is an S3 Savage video driver for the Xorg X server.")
3272 (license license:x11)))
3275 (define-public xf86-video-siliconmotion
3277 (name "xf86-video-siliconmotion")
3283 "mirror://xorg/individual/driver/xf86-video-siliconmotion-"
3288 "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh"))
3289 (patches (search-patches "xf86-video-siliconmotion-fix-ftbfs.patch"))))
3290 (build-system gnu-build-system)
3291 (inputs (list xorg-server))
3292 (native-inputs (list pkg-config))
3293 (home-page "https://www.x.org/wiki/")
3294 (synopsis "Silicon Motion video driver for X server")
3296 "xf86-video-siliconmotion is a Silicon Motion video driver for the
3298 (license license:x11)))
3301 (define-public xf86-video-sis
3303 (name "xf86-video-sis")
3309 "mirror://xorg/individual/driver/xf86-video-sis-"
3314 "0nrs6cjldlhakx5987fiiggjrlzilsbdc7l9pz22x1iwslbkz78i"))))
3315 (build-system gnu-build-system)
3316 (inputs (list mesa xorgproto xorg-server))
3319 (home-page "https://www.x.org/wiki/")
3320 (synopsis "Sis video driver for X server")
3322 "xf86-video-SiS is a SiS video driver for the Xorg X server.
3323 This driver supports SiS chipsets of 300/315/330/340 series.")
3324 (license license:bsd-3)))
3327 (define-public xf86-video-suncg6
3329 (name "xf86-video-suncg6")
3335 "mirror://xorg/individual/driver/xf86-video-suncg6-"
3340 "04fgwgk02m4nimlv67rrg1wnyahgymrn6rb2cjj1l8bmzkii4glr"))))
3341 (build-system gnu-build-system)
3342 (inputs (list xorg-server))
3343 (native-inputs (list pkg-config))
3344 (home-page "https://www.x.org/wiki/")
3345 (synopsis "GX/TurboGX video driver for X server")
3347 "xf86-video-suncg6 is a GX/TurboGX video driver for the Xorg X server.")
3348 (license license:x11)))
3351 (define-public xf86-video-sunffb
3353 (name "xf86-video-sunffb")
3359 "mirror://xorg/individual/driver/xf86-video-sunffb-"
3364 "07z3ngifwg2d4jgq8pms47n5lr2yn0ai72g86xxjnb3k20n5ym7s"))))
3365 (build-system gnu-build-system)
3366 (inputs (list xorg-server))
3367 (native-inputs (list pkg-config))
3368 (home-page "https://www.x.org/wiki/")
3369 (synopsis "SUNFFB video driver for X server")
3371 "xf86-video-sunffb is a SUNFFB video driver for the Xorg X server.")
3372 (license license:x11)))
3375 (define-public xf86-video-tdfx
3377 (name "xf86-video-tdfx")
3383 "mirror://xorg/individual/driver/xf86-video-tdfx-"
3388 "0qc5wzwf1n65si9rc37bh224pzahh7gp67vfimbxs0b9yvhq0i9g"))))
3389 (build-system gnu-build-system)
3390 (inputs (list mesa xorgproto xorg-server))
3391 (native-inputs (list pkg-config))
3392 (home-page "https://www.x.org/wiki/")
3393 (synopsis "3Dfx video driver for X server")
3395 "xf86-video-tdfx is a 3Dfx video driver for the Xorg X server.")
3396 (license license:x11)))
3399 (define-public xf86-video-tga
3401 (name "xf86-video-tga")
3407 "mirror://xorg/individual/driver/xf86-video-tga-"
3412 "0cb161lvdgi6qnf1sfz722qn38q7kgakcvj7b45ba3i0020828r0"))
3413 (patches (search-patches "xf86-video-tga-remove-mibstore.patch"))))
3414 (build-system gnu-build-system)
3415 (inputs (list xorgproto xorg-server))
3416 (native-inputs (list pkg-config))
3417 (home-page "https://www.x.org/wiki/")
3418 (synopsis "TGA video driver for X server")
3420 "xf86-video-tga is a TGA (DEC 21030) video driver for the Xorg
3422 (license license:x11)))
3425 (define-public xf86-video-trident
3427 (name "xf86-video-trident")
3433 "mirror://xorg/individual/driver/xf86-video-trident-"
3438 "0gxcar434kx813fxdpb93126lhmkl3ikabaljhcj5qn3fkcijlcy"))))
3439 (build-system gnu-build-system)
3440 (inputs (list xorgproto xorg-server))
3441 (native-inputs (list pkg-config))
3442 (home-page "https://www.x.org/wiki/")
3443 (synopsis "Trident video driver for X server")
3445 "xf86-video-trident is a Trident video driver for the Xorg X server.")
3446 (license license:x11)))
3450 ;; (define-public xf86-video-v4l
3453 (define-public xf86-video-vesa
3455 (name "xf86-video-vesa")
3461 "mirror://xorg/individual/driver/xf86-video-vesa-"
3466 "0nf6ai74c60xk96kgr8q9mx6lrxm5id3765ws4d801irqzrj85hz"))))
3467 (build-system gnu-build-system)
3468 (inputs (list xorg-server))
3469 (native-inputs (list pkg-config))
3470 (home-page "https://www.x.org/wiki/")
3471 (synopsis "VESA video driver for X server")
3473 "xf86-video-vesa is a generic VESA video driver for the Xorg
3475 (license license:x11)))
3485 (url "https://github.com/mjanusz/v86d")
3486 (commit (string-append name "-" version))))
3487 (file-name (git-file-name name version))
3489 (base32 "1c4iiggb5r9i2hxhk8c6q1m2vpfva39l1w33fsfkrz6fav6x34pp"))
3490 (modules '((guix build utils)))
3493 ;; remove bundled x86emu
3494 (for-each delete-file
3495 (filter (lambda (name) ;keep customized Makefile
3496 (not (string-suffix? "Makefile" name)))
3497 (find-files "libs/x86emu")))
3498 ;; remove non-working vbetest utility program (it is unnecessary)
3499 (delete-file "libs/lrmi-0.10/vbe.h")
3500 (delete-file "libs/lrmi-0.10/vbetest.c")
3503 ;; We keep the bundled copy of the Linux Real Mode Interface lrmi-0.10,
3504 ;; because it includes fixes missing from upstream lrmi. We do not use
3505 ;; libx86, because we already use x86emu with the more current lrmi.
3507 (inputs `(("xorg-server-sources" ,(package-source xorg-server)) ;for x86emu
3508 ("xorgproto" ,xorgproto))) ;upstream x86emu uses X11/Xfuncproto.h
3509 (outputs '("out" ;main v86d helper
3510 "testvbe")) ;test program for listing video modes
3511 (supported-systems '("i686-linux" "x86_64-linux"))
3512 (build-system gnu-build-system)
3514 `(#:tests? #f ;there are no tests
3515 #:modules ((guix build utils)
3516 (guix build gnu-build-system)
3519 (modify-phases %standard-phases
3520 ;; Replace the bundled x86emu with its upstream copy from Xorg-server:
3521 (add-after 'unpack 'unpack-x86emu-sources
3522 (lambda* (#:key inputs #:allow-other-keys)
3524 (format #t "decompressing x86emu source code~%")
3525 (with-directory-excursion "libs"
3526 (let ((srcs (assoc-ref inputs "xorg-server-sources"))
3527 (tar-binary (search-input-file inputs "/bin/tar")))
3528 (invoke tar-binary "xvf" srcs "--strip-components=3"
3529 "--wildcards" "*/hw/xfree86/x86emu/")
3531 (with-directory-excursion "x86emu"
3532 (invoke tar-binary "xvf" srcs "--strip-components=1"
3533 "--wildcards" "*/COPYING"))
3536 (lambda* (#:key outputs #:allow-other-keys)
3537 (let ((out (assoc-ref outputs "out")))
3538 (setenv "CC" (which "gcc"))
3539 (setenv "DESTDIR" out)
3540 (invoke "./configure" "--with-x86emu"))))
3541 (add-after 'build 'build-testvbe
3543 (invoke "make" "testvbe")))
3544 (add-after 'install 'install-testvbe
3545 (lambda* (#:key outputs #:allow-other-keys)
3546 (let ((testvbe (assoc-ref outputs "testvbe"))
3547 (olddest (getenv "DESTDIR")))
3548 (setenv "DESTDIR" testvbe)
3549 (invoke "make" "install_testvbe")
3550 (setenv "DESTDIR" olddest)
3552 (add-after 'install 'install-docs
3553 (lambda* (#:key outputs #:allow-other-keys)
3554 (let* ((out (assoc-ref outputs "out"))
3555 (doc-dir (string-append out "/share/doc/v86d")))
3558 (string-append doc-dir "/README"))
3559 (copy-file "libs/lrmi-0.10/README"
3560 (string-append doc-dir "/README.lrmi"))
3561 (copy-file "libs/x86emu/COPYING"
3562 (string-append doc-dir "/COPYING.xorg-server.x86emu"))
3564 (home-page "https://github.com/mjanusz/v86d")
3565 (synopsis "Userspace helper for uvesafb")
3567 "v86d provides a backend for kernel drivers that need to execute x86 BIOS
3568 code. The code is executed in a controlled environment and the results are
3569 passed back to the kernel via the netlink interface. v86d is required by the
3570 uvesafb Linux kernel module that provides an fbdev framebuffer when Kernel
3571 Mode Setting is unavailable. It can be a last resort when no other Xorg X
3572 server driver works.")
3573 (license (list license:gpl2
3574 license:x11)))) ;for bundled lrmi and x86emu
3576 (define-public xf86-video-vmware
3578 (name "xf86-video-vmware")
3584 "mirror://xorg/individual/driver/xf86-video-vmware-"
3589 "0v06qhm059klq40m2yx4wypzb7h53aaassbjfmm6clcyclj1k5s7"))))
3590 (build-system gnu-build-system)
3595 mesa ; for xatracker
3598 (list eudev pkg-config))
3599 (home-page "https://www.x.org/wiki/")
3600 (synopsis "VMware SVGA video driver for X server")
3602 "xf86-video-vmware is a VMware SVGA video driver for the Xorg X server.")
3603 (license license:x11)))
3606 (define-public xf86-video-voodoo
3608 (name "xf86-video-voodoo")
3614 "mirror://xorg/individual/driver/xf86-video-voodoo-"
3619 "1s6p7yxmi12q4y05va53rljwyzd6ry492r1pgi7wwq6cznivhgly"))
3621 (search-patches "xf86-video-voodoo-pcitag.patch"))))
3622 (build-system gnu-build-system)
3623 (inputs (list xorgproto xorg-server))
3624 (native-inputs (list pkg-config))
3625 (home-page "https://www.x.org/wiki/")
3626 (synopsis "Voodoo/Voodoo2 video driver for X server")
3628 "xf86-video-voodoo is a Voodoo video driver for the Xorg X server.")
3629 (license license:x11)))
3632 ;; Only relevant for the frame buffer on BSD systems.
3633 ;; (define-public xf86-video-wsfb
3636 (define-public xf86bigfontproto
3638 (name "xf86bigfontproto")
3644 "mirror://xorg/individual/proto/xf86bigfontproto-"
3649 "0j0n7sj5xfjpmmgx6n5x556rw21hdd18fwmavp95wps7qki214ms"))))
3650 (build-system gnu-build-system)
3651 (home-page "https://www.x.org/wiki/")
3652 (synopsis "Xorg XF86BigFontProto protocol headers")
3654 "XFree86 Bigfont Extension contains header files and documentation
3655 for the XF86BigFontProto protocol.")
3656 (license license:x11)
3657 (properties `((superseded . ,xorgproto)))))
3659 (define-public xf86dgaproto
3661 (name "xf86dgaproto")
3667 "mirror://xorg/individual/proto/xf86dgaproto-"
3672 "0l4hx48207mx0hp09026r6gy9nl3asbq0c75hri19wp1118zcpmc"))))
3673 (build-system gnu-build-system)
3674 (home-page "https://www.x.org/wiki/")
3675 (synopsis "Xorg XF86DGAProto protocol headers")
3677 "XFree86 Direct Graphic Access Extension defines a protocol for
3678 direct linear framebuffer access.")
3679 (license license:x11)
3680 (properties `((superseded . ,xorgproto)))))
3682 (define-public xf86driproto
3684 (name "xf86driproto")
3690 "mirror://xorg/individual/proto/xf86driproto-"
3695 "07v69m0g2dfzb653jni4x656jlr7l84c1k39j8qc8vfb45r8sjww"))))
3696 (build-system gnu-build-system)
3697 (home-page "https://www.x.org/wiki/")
3698 (synopsis "Xorg XF86DRIProto protocol headers")
3700 "XFree86 Direct Rendering Infrastructure Extension defines a
3701 protocol to allow user applications to access the video hardware without
3702 requiring data to be passed through the X server.")
3703 (license license:x11)
3704 (properties `((superseded . ,xorgproto)))))
3706 (define-public xf86vidmodeproto
3708 (name "xf86vidmodeproto")
3714 "mirror://xorg/individual/proto/xf86vidmodeproto-"
3719 "0w47d7gfa8zizh2bshdr2rffvbr4jqjv019mdgyh6cmplyd4kna5"))))
3720 (build-system gnu-build-system)
3721 (home-page "https://www.x.org/wiki/")
3722 (synopsis "Xorg XF86VidModeProto protocol headers")
3724 "XFree86 Video Mode Extension defines a protocol for dynamically
3725 configuring modelines and gamma.")
3726 (license license:x11)
3727 (properties `((superseded . ,xorgproto)))))
3729 (define-public xgamma
3737 "mirror://xorg/individual/app/xgamma-"
3742 "1lr2nb1fhg5fk2fchqxdxyl739602ggwhmgl2wiv5c8qbidw7w8f"))))
3743 (build-system gnu-build-system)
3745 (list libxxf86vm libx11))
3748 (home-page "https://www.x.org/wiki/")
3749 (synopsis "Alter a monitor's gamma correction")
3751 "XGamma is used to query and alter the gamma correction of a
3752 monitor via the X video mode extension.")
3753 (license license:x11)))
3756 (define-public xhost
3764 "mirror://xorg/individual/app/xhost-"
3769 "15n3mnd4i5kh4z32qv11580qjgvnng0wry2y753ljrqkkrbkrp52"))))
3770 (build-system gnu-build-system)
3772 (list libxmu libxau libx11))
3775 (home-page "https://gitlab.freedesktop.org/xorg/app/xhost")
3776 (synopsis "Xorg server access control utility")
3778 "XHost is used to manage the list of host names or user names
3779 allowed to make connections to the X server.")
3780 (license license:x11)))
3783 (define-public xineramaproto
3785 (name "xineramaproto")
3791 "mirror://xorg/individual/proto/xineramaproto-"
3796 "0ns8abd27x7gbp4r44z3wc5k9zqxxj8zjnazqpcyr4n17nxp8xcp"))))
3797 (build-system gnu-build-system)
3798 (native-inputs (list pkg-config))
3799 (home-page "https://www.x.org/wiki/")
3800 (synopsis "Xorg XineramaProto protocol headers")
3802 "Xinerama Extension allows clients to query information about multiple
3803 physical screens controlled by a single X server that appear as a single
3804 screen to core X11 protocol operations.
3806 This extension provides a common network protocol for querying information
3807 which may be provided by different underlying screen combination
3808 technologies in the X server, such as the original Xinerama multiplexer, or
3809 alternative implementations like XRandR or TwinView.")
3810 (license license:x11)
3811 (properties `((superseded . ,xorgproto)))))
3813 (define-public xinput
3821 "mirror://xorg/individual/app/xinput-"
3826 "1vb6xdd1xmk5f7pwc5zcbxfray5sf1vbnscqwf2yl8lv7gfq38im"))))
3827 (build-system gnu-build-system)
3838 (home-page "https://www.x.org/wiki/")
3839 (synopsis "Configure input devices for X server")
3841 "XInput is used to configure and test XInput devices.")
3842 (license license:x11)))
3845 (define-public xkbcomp-intermediate ;used as input for xkeyboard-config
3847 (name "xkbcomp-intermediate")
3852 (uri (string-append "mirror://xorg/individual/app/xkbcomp-"
3853 version ".tar.bz2"))
3856 "0pmhshqinwqh5rip670l3szjpywky67hv232ql6gvdj489n0hlb8"))))
3857 (build-system gnu-build-system)
3859 (list xorgproto libxkbfile libx11))
3862 (home-page "https://www.x.org/wiki/")
3863 (synopsis "Compile XKB keyboard description")
3865 "xkbcomp keymap compiler converts a description of an XKB keymap
3866 into one of several output formats. The most common use for xkbcomp is
3867 to create a compiled keymap file (.xkm extension) which can be read
3868 directly by XKB- capable X servers or utilities.
3870 X Keyboard (XKB) Extension essentially replaces the core protocol
3871 definition of keyboard. The extension makes possible to clearly and
3872 explicitly specify most aspects of keyboard behaviour on per-key basis
3873 and to more closely track the logical and physical state of the
3874 keyboard. It also includes a number of keyboard controls designed to
3875 make keyboards more accessible to people with physical impairments.")
3876 (license license:x11)
3878 ;; The only reason this package is public is to make sure it's built and
3879 ;; published by the continuous integration tool.
3880 (properties '((hidden? . #t)))))
3882 (define-public xkbcomp ; using xkeyboard-config as input
3883 (package (inherit xkbcomp-intermediate)
3887 `(,@(package-inputs xkbcomp-intermediate)
3888 ("xkeyboard-config" ,xkeyboard-config)))
3891 (list (string-append "--with-xkb-config-root="
3892 (assoc-ref %build-inputs "xkeyboard-config")
3893 "/share/X11/xkb"))))))
3896 (define-public xkbevd
3904 "mirror://xorg/individual/app/xkbevd-"
3909 "0sprjx8i86ljk0l7ldzbz2xlk8916z5zh78cafjv8k1a63js4c14"))))
3910 (build-system gnu-build-system)
3912 (list libxkbfile libx11))
3915 (home-page "https://www.x.org/wiki/")
3916 (synopsis "XKB event daemon demo")
3918 "XKB event daemon listens for the specified XKB events and executes
3919 requested commands if they occur.")
3920 (license license:x11)))
3922 (define-public xkbprint
3929 (uri (string-append "mirror://xorg/individual/app/"
3930 "xkbprint-" version ".tar.bz2"))
3932 (base32 "1yi3232g25hhp241irncd8znv3090k2gm0yjcdnz08h89y1zwn2v"))))
3933 (build-system gnu-build-system)
3935 (list libx11 libxkbfile xorgproto))
3938 (home-page "https://www.x.org/wiki/")
3939 (synopsis "Visualise an XKB keyboard layout description")
3941 "The @command{xkbprint} utility visualises (``prints'') an XKB keyboard
3942 description as printable or encapsulated PostScript. It accepts any compiled
3943 keymap (@file{.xkm}) file that includes a geometry description, or can obtain
3944 one from a running X server.")
3945 (license license:x11)))
3947 (define-public xkbutils
3955 "mirror://xorg/individual/app/xkbutils-"
3960 "0c412isxl65wplhl7nsk12vxlri29lk48g3p52hbrs3m0awqm8fj"))))
3961 (build-system gnu-build-system)
3963 (list libxt libxaw xorgproto))
3966 (home-page "https://www.x.org/wiki/")
3967 (synopsis "XKB utilities")
3969 "XKBUtils is a collection of small utilities for X Keyboard (XKB)
3970 extension to the X11 protocol. It includes:
3972 - xkbbell: generate XKB bell events;
3974 - xkbvleds: display the state of LEDs on an XKB keyboard in a window;
3976 - xkbwatch: reports changes in the XKB keyboard state.")
3977 (license license:x11)))
3980 (define-public xkeyboard-config
3982 (name "xkeyboard-config")
3988 "ftp://ftp.freedesktop.org/pub/xorg//individual/data/xkeyboard-config/xkeyboard-config-"
3993 "1kmq2ykwmh10sd6155gml4jhdxmvsll6xdg7zw86czpfhrvd48dk"))))
3994 (build-system gnu-build-system)
3996 (list libx11 xkbcomp-intermediate))
3998 `(("gettext" ,gettext-minimal)
4000 ("pkg-config" ,pkg-config)
4001 ("python" ,python)))
4002 (home-page "https://www.x.org/wiki/")
4003 (synopsis "Xorg XKB configuration files")
4005 "xkeyboard-config provides a database for X Keyboard (XKB) Extension.
4006 There are five components that define a complete keyboard mapping:
4007 symbols, geometry, keycodes, compat, and types; these five components
4008 can be combined together using the @code{rules} component of this database.")
4009 (license license:x11)))
4012 (define-public xkill
4020 "mirror://xorg/individual/app/xkill-"
4025 "0szzd9nzn0ybkhnfyizb876irwnjsnb78rcaxx6prb71jmmbpw65"))))
4026 (build-system gnu-build-system)
4028 (list libxmu libx11))
4031 (home-page "https://www.x.org/wiki/")
4032 (synopsis "Kill a client by its X resource")
4034 "XKill is used to force the X server to close connections to
4035 clients. This program is very dangerous, but is useful for aborting
4036 programs that have displayed undesired windows on a user's screen.")
4037 (license license:x11)))
4040 (define-public xlsatoms
4048 "mirror://xorg/individual/app/xlsatoms-"
4053 "10m3a046jvaw5ywx4y65kl84lsxqan70gww1g1r7cf96ijaqz1jp"))))
4054 (build-system gnu-build-system)
4059 (home-page "https://gitlab.freedesktop.org/xorg/app/xlsatoms")
4060 (synopsis "List interned X server atoms")
4062 "XLsAtoms is used to list the interned atoms defined on X server.")
4063 (license license:x11)))
4066 (define-public xlsclients
4074 "mirror://xorg/individual/app/xlsclients-"
4079 "1h8931sn34mcip6vpi4v7hdmr1r58gkbw4s2p97w98kykks2lgvp"))))
4080 (build-system gnu-build-system)
4085 (home-page "https://www.x.org/wiki/")
4086 (synopsis "List client applications running on a display")
4088 "XLsClients is used to list information about the client programs
4089 running on X server.")
4090 (license license:x11)))
4093 (define-public xlsfonts
4101 "mirror://xorg/individual/app/xlsfonts-"
4106 "0s6kxgv78chkwsqmhw929f4pf91gq63f4yvixxnan1h00cx0pf49"))))
4107 (build-system gnu-build-system)
4109 (list xorgproto libx11))
4112 (home-page "https://www.x.org/wiki/")
4113 (synopsis "List fonts available from an X server")
4115 "xlsfonts lists fonts available from an X server via the X11 core
4117 (license license:x11)))
4119 (define-public xfontsel
4126 "mirror://xorg/individual/app/xfontsel-"
4127 version ".tar.bz2"))
4130 "0700lf6hx7dg88wq1yll7zjvf9gbwh06xff20yffkxb289y0pai5"))))
4131 (build-system gnu-build-system)
4134 (list (string-append "--with-appdefaultdir="
4135 %output ,%app-defaults-dir))))
4137 (list libx11 libxaw libxmu libxt))
4140 (home-page "https://www.x.org/wiki/")
4141 (synopsis "Browse and select X font names")
4143 "XFontSel provides a simple way to display the X11 core protocol fonts
4144 known to your X server, examine samples of each, and retrieve the X Logical
4145 Font Description (XLFD) full name for a font.")
4146 (license license:x11)))
4155 "mirror://xorg/individual/app/xfd-"
4156 version ".tar.bz2"))
4159 "0n6r1v8sm0z0ycqch035xpm46nv5v4mav3kxh36883l3ln5r6bqr"))))
4160 (build-system gnu-build-system)
4163 (list (string-append "--with-appdefaultdir="
4164 %output ,%app-defaults-dir))))
4166 `(("fontconfig" ,fontconfig)
4171 ("libxrender" ,libxrender)
4172 ("libxkbfile" ,libxkbfile)))
4174 `(("gettext" ,gettext-minimal)
4175 ("pkg-config" ,pkg-config)))
4176 (home-page "https://www.x.org/wiki/")
4177 (synopsis "Display all the characters in an X font")
4179 "XFD (X Font Display) package provides an utility that displays a
4180 window containing the name of the font being displayed, a row of command
4181 buttons, several lines of text for displaying character metrics, and a grid
4182 containing one glyph per cell.")
4183 (license license:x11)))
4185 (define-public xmodmap
4193 "mirror://xorg/individual/app/xmodmap-"
4198 "0z28331i2pm16x671fa9qwsfqdmr6a43bzwmp0dm17a3sx0hjgs7"))))
4199 (build-system gnu-build-system)
4201 (list xorgproto libx11))
4204 (home-page "https://gitlab.freedesktop.org/xorg/app/xmodmap")
4205 (synopsis "Modify keymaps and button mappings on X server")
4207 "Xmodmap is used to display and edit the keyboard modifier map and
4208 keymap table that are used by client programs running on X server to
4209 convert event keycodes into keysyms. It is usually run from the user's
4210 session startup script to configure the keyboard according to personal
4212 (license license:x11)))
4216 ;; (define-public xorg-docs
4219 (define-public xorg-sgml-doctools
4221 (name "xorg-sgml-doctools")
4227 "mirror://xorg/individual/doc/xorg-sgml-doctools-"
4232 "0k5pffyi5bx8dmfn033cyhgd3gf6viqj3x769fqixifwhbgy2777"))))
4233 (build-system gnu-build-system)
4234 (native-inputs (list pkg-config))
4235 (home-page "https://www.x.org/wiki/")
4236 (synopsis "Xorg SGML documentation tools")
4238 "This package provides a common set of SGML entities and XML/CSS style
4239 sheets used in building/formatting the documentation provided in other
4240 Xorg packages. It's typically only needed by people building from
4241 source who want to produce formatted documentation from their builds, or
4242 those who have installed the HTML version of the documentation, which
4243 refers to the included common xorg.css stylesheet.")
4244 (license license:x11)))
4255 "mirror://xorg/individual/app/xpr-"
4260 "07qy9lwjvxighcmg6qvjkgagad3wwvidrfx0jz85lgynz3qy0dmr"))))
4261 (build-system gnu-build-system)
4263 (list xorgproto libxmu libx11))
4266 (home-page "https://www.x.org/wiki/")
4267 (synopsis "Print an X window dump from xwd")
4269 "XPr takes as input a window dump file produced by xwd and formats
4270 it for output on various types of printers.")
4271 (license license:x11)))
4274 (define-public xprop
4281 (uri (string-append "mirror://xorg/individual/app/xprop-"
4282 version ".tar.bz2"))
4285 "18ckr8g1z50zkc01hprkpm1npwbq32yqib4b3l98c95z2q1yv4lv"))))
4286 (build-system gnu-build-system)
4288 (list libx11 xorgproto))
4291 (home-page "https://www.x.org/wiki/")
4292 (synopsis "Display X server properties")
4294 "xprop is used to display and/or set window and font properties of
4296 (license license:x11)))
4299 (define-public xrandr
4307 "mirror://xorg/individual/app/xrandr-"
4311 "0ql75s1n3dm2m3g1ilb9l6hqh15r0v709bgghpwazy3jknpnvivv"))))
4312 (build-system gnu-build-system)
4314 (list libxrender libxrandr xorgproto libx11))
4317 (home-page "https://www.x.org/wiki/")
4318 (synopsis "Command line interface to X RandR extension")
4320 "xrandr - primitive command line interface to X11 Resize, Rotate,
4321 and Reflect (RandR) extension.")
4322 (license license:x11)))
4332 (uri (string-append "mirror://xorg/individual/app/xrdb-"
4333 version ".tar.bz2"))
4335 (base32 "1d78prd8sfszq2rwwlb32ksph4fymf988lp75aj8iysg44f06pag"))))
4336 (build-system gnu-build-system)
4338 (list libxmu libx11))
4341 (home-page "https://gitlab.freedesktop.org/xorg/app/xrdb")
4342 (synopsis "X server resource database utility")
4344 "XRDB is used to get or set the contents of the RESOURCE_MANAGER
4345 property on the root window of screen 0, or the SCREEN_RESOURCES
4346 property on the root window of any or all screens, or everything
4347 combined. You would normally run this program from your X startup
4349 (license license:x11)))
4352 (define-public xrefresh
4360 "mirror://xorg/individual/app/xrefresh-"
4365 "0lv3rlshh7s0z3aqx5ahnnf8cl082m934bk7gv881mz8nydznz98"))))
4366 (build-system gnu-build-system)
4371 (home-page "https://www.x.org/wiki/")
4372 (synopsis "Refresh all or part of an X screen")
4374 "Xrefresh is a simple X program that causes all or part of your
4375 screen to be repainted. This is useful when system messages have messed
4377 (license license:x11)))
4388 "mirror://xorg/individual/app/xset-"
4393 "0my987wjvra7l92ry6q44ky383yg3phzxhdbn3lqhapm1ll9bzg4"))))
4394 (build-system gnu-build-system)
4396 (list xorgproto libxmu libxext libx11))
4399 (home-page "https://www.x.org/wiki/")
4400 (synopsis "User preference utility for X server")
4402 "XSet is used to set various user preference options of the display.")
4403 (license license:x11)))
4406 (define-public xsetroot
4414 "mirror://xorg/individual/app/xsetroot-"
4419 "0z21mqvmdl6rl63q77479wgkfygnll57liza1i3va7sr4fx45i0h"))))
4420 (build-system gnu-build-system)
4422 (list libxmu libxcursor xbitmaps))
4425 (home-page "https://www.x.org/wiki/")
4426 (synopsis "Root window parameter setting utility for X server")
4428 "XSetRoot allows you to tailor the appearance of the root window on
4429 a display running X server.")
4430 (license license:x11)))
4433 (define-public xtrans
4441 "mirror://xorg/individual/lib/xtrans-"
4446 "0wyp0yc6gi72hwc3kjmvm3vkj9p6s407cb6dxx37jh9wb68l8z1p"))))
4447 (build-system gnu-build-system)
4448 (native-inputs (list pkg-config))
4449 (home-page "https://www.x.org/wiki/")
4450 (synopsis "Xorg Network Transport layer library")
4452 "Xtrans is a library of code that is shared among various X packages to
4453 handle network protocol transport in a modular fashion, allowing a single
4454 place to add new transport types. It is used by the X server, libX11,
4455 libICE, the X font server, and related components.")
4456 (license license:x11)))
4459 (define-public xvinfo
4467 "mirror://xorg/individual/app/xvinfo-"
4472 "0gz7fvxavqlrqynpfbrm2nc9yx8h0ksnbnv34fj7n1q6cq6j4lq3"))))
4473 (build-system gnu-build-system)
4475 (list libxext libxv libx11))
4478 (home-page "https://gitlab.freedesktop.org/xorg/app/xvinfo")
4479 (synopsis "Print out X-Video extension adaptor information")
4481 "XVInfo is used to print out the capabilities of any video adaptors
4482 associated with the display that are accessible through the X-Video
4484 (license license:x11)))
4494 (uri (string-append "mirror://xorg/individual/app/xwd-"
4495 version ".tar.bz2"))
4497 (base32 "06q36fh55r62ms0igfxsanrn6gv8lh794q1bw9xzw51p2qs2papv"))))
4498 (build-system gnu-build-system)
4500 (list libxt libxkbfile xorgproto))
4503 (home-page "https://www.x.org/wiki/")
4504 (synopsis "Dump current contents of X window or screen to file")
4506 "Xwd is used to store window images in a specially formatted dump
4507 file. This file can then be read by various other X utilities for
4508 redisplay, printing, editing, formatting, archiving, image processing,
4509 etc. The target window is selected by clicking the pointer in the
4510 desired window. The keyboard bell is rung once at the beginning of the
4511 dump and twice when the dump is completed.")
4512 (license license:x11)))
4515 (define-public xwininfo
4523 "mirror://xorg/individual/app/xwininfo-"
4528 "03h8clirhw5ki1xxp18xbf5vynm7r0dwspsgfin6cxn4vx0m8h3s"))))
4529 (build-system gnu-build-system)
4531 (list libx11 xorgproto))
4534 (home-page "https://www.x.org/wiki/")
4535 (synopsis "Window information utility for X server")
4537 "XWinInfo is used to print out information about windows on an X server.
4538 Various information is displayed depending on which options are selected.")
4539 (license license:x11)))
4550 "mirror://xorg/individual/app/xwud-"
4555 "1a8hdgy40smvblnh3s9f0vkqckl68nmivx7d48zk34m8z18p16cr"))))
4556 (build-system gnu-build-system)
4558 (list xorgproto libx11))
4561 (home-page "https://www.x.org/wiki/")
4562 (synopsis "Display an X window dump from xwd")
4564 "Xwud is used to display in a window an image saved in a specially
4565 formatted dump file, such as produced by xwd.")
4566 (license license:x11)))
4568 (define-public xorg-rgb
4576 "mirror://xorg/individual/app/rgb-"
4581 "1c76zcjs39ljil6f6jpx1x17c8fnvwazz7zvl3vbjfcrlmm7rjmv"))))
4582 (build-system gnu-build-system)
4587 (home-page "https://www.x.org/wiki/")
4588 (synopsis "X color name database")
4590 "This package provides the X color name database.")
4591 (license license:x11)))
4593 ;; packages of height 1 in the propagated-inputs tree
4595 (define-public fixesproto
4603 "mirror://xorg/individual/proto/fixesproto-"
4608 "1ki4wiq2iivx5g4w5ckzbjbap759kfqd72yg18m3zpbb4hqkybxs"))))
4609 (build-system gnu-build-system)
4614 (home-page "https://www.x.org/wiki/")
4615 (synopsis "Xorg FixesProto protocol headers")
4617 "Fixes Extension makes changes to many areas of the protocol to resolve
4618 issues raised by application interaction with core protocol mechanisms that
4619 cannot be adequately worked around on the client side of the wire.")
4620 (license license:x11)
4621 (properties `((superseded . ,xorgproto)))))
4623 (define-public libxdamage
4631 "mirror://xorg/individual/lib/libXdamage-"
4636 "0igaw2akjf712y3rv7lx473jigxmcv9rs9y8sbrvbhya8f30cd5p"))))
4637 (build-system gnu-build-system)
4639 ;; These are all in the Requires or Requires.private field of xdamage.pc
4640 (list libxfixes xorgproto libx11))
4643 (home-page "https://www.x.org/wiki/")
4644 (synopsis "Xorg Damage Extension library")
4645 (description "Xorg library for the XDamage extension.")
4646 (license license:x11)))
4649 (define-public libxext
4657 "mirror://xorg/individual/lib/libXext-"
4662 "0azqxllcsfxc3ilhz6kwc6x7m8wc477p59ir9p0yrsldx766zbar"))))
4663 (build-system gnu-build-system)
4664 (outputs '("out" "doc")) ;man pages represent 40% of the total
4667 (list "--disable-static"
4668 (string-append "--mandir="
4669 (assoc-ref %outputs "doc")
4671 ,@(malloc0-flags))))
4675 (list libxau libx11))
4678 (home-page "https://www.x.org/wiki/")
4679 (synopsis "Xorg Common extensions library")
4681 "Library for common extensions to the X11 protocol.")
4682 (license license:x11)))
4685 (define-public libxinerama
4687 (name "libxinerama")
4693 "mirror://xorg/individual/lib/libXinerama-"
4698 "086p0axqj57nvkaqa6r00dnr9kyrn1m8blgf0zjy25zpxkbxn200"))))
4699 (build-system gnu-build-system)
4701 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
4705 (list libxext libx11))
4708 (home-page "https://www.x.org/wiki/")
4709 (synopsis "Xorg Xinerama protocol library")
4710 (description "API for Xinerama extension to X11 protocol.")
4711 (license license:x11)))
4714 (define-public libxp
4722 "mirror://xorg/individual/lib/libXp-"
4727 "0mwc2jwmq03b1m9ihax5c6gw2ln8rc70zz4fsj3kb7440nchqdkz"))))
4728 (build-system gnu-build-system)
4732 (list libx11 libxext))
4735 (home-page "https://www.x.org/wiki/")
4736 (synopsis "Xorg Print Client library")
4737 (description "Xorg Print Client library.")
4738 (license license:x11)))
4741 (define-public libxrender
4749 "mirror://xorg/individual/lib/libXrender-"
4754 "0j89cnb06g8x79wmmnwzykgkkfdhin9j7hjpvsxwlr3fz1wmjvf0"))))
4755 (build-system gnu-build-system)
4758 (list "--disable-static" ,@(malloc0-flags))
4759 ,@(if (and (%current-target-system)
4762 (modify-phases %standard-phases
4763 (add-after 'unpack 'update-config
4764 (lambda* (#:key native-inputs #:allow-other-keys)
4766 (search-input-file native-inputs "/bin/config.sub") ".")
4768 (search-input-file native-inputs "/bin/config.guess") ".")))))
4776 (if (and (%current-target-system)
4781 (home-page "https://www.x.org/wiki/")
4782 (synopsis "Xorg Render Extension library")
4783 (description "Library for the Render Extension to the X11 protocol.")
4784 (license license:x11)))
4786 (define-public libxtst
4794 "mirror://xorg/individual/lib/libXtst-"
4799 "012jpyj7xfm653a9jcfqbzxyywdmwb2b5wr1dwylx14f3f54jma6"))))
4800 (build-system gnu-build-system)
4802 '(#:configure-flags '("--disable-static")))
4804 (list libxi xorgproto))
4809 (home-page "https://www.x.org/wiki/")
4810 (synopsis "Xorg library for Xtest and Record extensions")
4812 "libXtst provides the Xlib-based client API for the XTEST & RECORD
4815 The XTEST extension is a minimal set of client and server extensions
4816 required to completely test the X11 server with no user intervention. This
4817 extension is not intended to support general journaling and playback of user
4820 The RECORD extension supports the recording and reporting of all core X
4821 protocol and arbitrary X extension protocol.")
4822 (license license:x11)))
4824 (define-public libxv
4832 "mirror://xorg/individual/lib/libXv-"
4837 "125hn06bd3d8y97hm2pbf5j55gg4r2hpd3ifad651i4sr7m16v6j"))))
4838 (build-system gnu-build-system)
4840 `(#:configure-flags '(,@(malloc0-flags) "--disable-static")))
4844 (list libxext libx11))
4847 (home-page "https://www.x.org/wiki/")
4848 (synopsis "Xorg XVideo Extension library")
4849 (description "Library for the X Video Extension to the X11 protocol.")
4850 (license license:x11)))
4852 (define-public mkfontdir
4860 "mirror://xorg/individual/app/mkfontdir-"
4865 "0c3563kw9fg15dpgx4dwvl12qz6sdqdns1pxa574hc7i5m42mman"))))
4866 (build-system gnu-build-system)
4869 (modify-phases %standard-phases
4870 (add-after 'unpack 'fix-configure
4871 (lambda* (#:key inputs native-inputs #:allow-other-keys)
4872 ;; Replace outdated config.sub and config.guess:
4873 (for-each (lambda (file)
4874 (install-file (string-append
4876 (or native-inputs inputs) "automake")
4878 ,(version-major+minor
4879 (package-version automake))
4881 '("config.sub" "config.guess"))
4883 (add-after 'install 'wrap-mkfontdir
4884 (lambda* (#:key inputs outputs #:allow-other-keys)
4885 (wrap-program (string-append (assoc-ref outputs "out")
4889 (search-input-file inputs "/bin/mkfontscale"))))))))))
4893 (list pkg-config automake)) ;For up to date 'config.guess' and 'config.sub'.
4894 (home-page "https://www.x.org/wiki/")
4895 (synopsis "Create an index of X font files in a directory")
4897 "MkFontDir creates the @code{fonts.dir} files needed by the legacy X
4898 server core font system. The current implementation is a simple wrapper
4899 script around the mkfontscale program.")
4900 (license license:x11)))
4902 (define-public xproto
4910 "mirror://xorg/individual/proto/xproto-"
4915 "0ivpxz0rx2a7nahkpkhfgymz7j0pwzaqvyqpdgw9afmxl1yp9yf6"))))
4916 (build-system gnu-build-system)
4918 (list util-macros)) ; to get util-macros in (almost?) all package inputs
4921 (home-page "https://www.x.org/wiki/")
4922 (synopsis "Xorg X11Proto protocol headers")
4924 "XProto provides the headers and specification documents defining
4925 the X Window System Core Protocol, Version 11.
4927 It also includes a number of headers that aren't purely protocol related,
4928 but are depended upon by many other X Window System packages to provide
4929 common definitions and porting layer.")
4930 (license license:x11)
4931 (properties `((superseded . ,xorgproto)))))
4933 ;; packages of height 2 in the propagated-inputs tree
4935 (define-public libice
4943 "mirror://xorg/individual/lib/libICE-"
4948 "0j638yvmyna2k4mz465jywgdybgdchdqppfx6xfazg7l5khxr1kg"))))
4949 (build-system gnu-build-system)
4951 '(#:configure-flags '("--disable-static")))
4955 (list libbsd xtrans))
4958 (home-page "https://www.x.org/wiki/")
4959 (synopsis "Xorg Inter-Client Exchange library")
4960 (description "Xorg Inter-Client Exchange library.")
4961 (license license:x11)))
4964 (define-public libxau
4972 "mirror://xorg/individual/lib/libXau-"
4977 "1v3krc6x0zliaa66qq1bf9j60x5nqfy68v8axaiglxpnvgqcpy6c"))))
4978 (build-system gnu-build-system)
4980 '(#:configure-flags '("--disable-static")))
4985 (home-page "https://www.x.org/wiki/")
4986 (synopsis "Xorg Authorization library")
4988 "libXau provides an authorization library for individual access to
4989 an X Window System display.")
4990 (license license:x11)))
4992 (define-public libxfixes
5000 "mirror://xorg/individual/lib/libXfixes-"
5005 "0k2v4i4r24y3kdr5ici1qqhp69djnja919xfqp54c2rylm6s5hd7"))))
5006 (build-system gnu-build-system)
5008 '(#:configure-flags '("--disable-static")))
5015 (home-page "https://www.x.org/wiki/")
5016 (synopsis "Xorg Fixes Extension library")
5017 (description "Library for the XFixes Extension to the X11 protocol.")
5018 (license license:x11)))
5020 (define-public libxfont
5028 "mirror://xorg/individual/lib/libXfont-"
5033 "0hiji1bvpl78aj3a3141hkk353aich71wv8l5l2z51scfy878zqs"))))
5034 (build-system gnu-build-system)
5036 '(#:configure-flags '("--disable-static")))
5038 (list freetype libfontenc xorgproto))
5043 (home-page "https://www.x.org/wiki/")
5044 (synopsis "Xorg Font handling library")
5046 "libXfont provides the core of the legacy X11 font system, handling the
5047 index files (fonts.dir, fonts.alias, fonts.scale), the various font file
5048 formats, and rasterizing them. It is used by the X servers, the X Font
5049 Server (xfs), and some font utilities (bdftopcf for instance), but should
5050 not be used by normal X11 clients. X11 clients access fonts via either the
5051 new API's in libXft, or the legacy API's in libX11.")
5052 (license license:x11)))
5054 (define-public libxfont2
5060 (uri (string-append "mirror://xorg/individual/lib/libXfont2-"
5061 version ".tar.bz2"))
5064 "1rk9pjxcm01lbr1dxhnvk4f2qrn6zp068qjbvvz5w0z5d0rin5bd"))))))
5066 (define-public libxi
5074 "mirror://xorg/individual/lib/libXi-"
5079 "0q8hz3slga3w3ch8wp0k7ay9ilhz315qnab0w1y2x9w3cf7hv8rn"))))
5080 (build-system gnu-build-system)
5081 (outputs '("out" "doc")) ;man pages represent 28% of the total
5083 `(#:configure-flags (list "--disable-static"
5084 (string-append "--mandir="
5085 (assoc-ref %outputs "doc")
5087 ,@(malloc0-flags))))
5089 (list xorgproto libx11 libxext libxfixes))
5092 (home-page "https://www.x.org/wiki/")
5093 (synopsis "Xorg Input Extension library")
5094 (description "Library for the XInput Extension to the X11 protocol.")
5095 (license license:x11)))
5097 (define-public libxrandr
5105 "mirror://xorg/individual/lib/libXrandr-"
5110 "08z0mqywrm7ij8bxlfrx0d2wy6kladdmkva1nw5k6qix82z0xsla"))))
5111 (build-system gnu-build-system)
5113 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
5115 ;; In accordance with xrandr.pc.
5116 (list libx11 libxext libxrender xorgproto))
5119 (home-page "https://www.x.org/wiki/")
5120 (synopsis "Xorg Resize and Rotate Extension library")
5122 "Library for the Resize and Rotate Extension to the X11 protocol.")
5123 (license license:x11)))
5125 (define-public libxvmc
5133 "mirror://xorg/individual/lib/libXvMC-"
5138 "1kbdjsvkm5l7axv7g477qj18sab2wnqhliy6197syzizgfbsfgbb"))))
5139 (build-system gnu-build-system)
5141 `(#:configure-flags '(,@(malloc0-flags) "--disable-static")))
5145 (list xorgproto libxext libx11))
5148 (home-page "https://www.x.org/wiki/")
5149 (synopsis "Xorg XvMC library")
5150 (description "Xorg XvMC library.")
5151 (license license:x11)))
5153 (define-public libxxf86vm
5161 "mirror://xorg/individual/lib/libXxf86vm-"
5166 "0mydhlyn72i7brjwypsqrpkls3nm6vxw0li8b2nw0caz7kwjgvmg"))))
5167 (build-system gnu-build-system)
5169 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
5171 (list libxext xorgproto))
5176 (home-page "https://www.x.org/wiki/")
5177 (synopsis "Xorg XF86 Video Mode Extension library")
5179 "Library for the XFree86 Video Mode Extension Extension to the X11
5181 (license license:x11)))
5184 ;; packages of height 3 in the propagated-inputs tree
5186 (define-public libxcb
5193 (uri (string-append "https://xcb.freedesktop.org/dist/"
5194 "libxcb-" version ".tar.xz"))
5197 "0d2chjgyn5lr9sfhacfvqgnj9l9faz11vn322a06jd6lk3dxcpm5"))))
5198 (build-system gnu-build-system)
5199 (outputs '("out" "doc")) ;5.5 MiB of man pages
5201 (list libpthread-stubs libxau libxdmcp))
5203 (list xcb-proto libxslt))
5205 `(("pkg-config" ,pkg-config)
5206 ("python" ,python-minimal-wrapper)))
5208 `(#:configure-flags (list "--enable-xkb"
5210 (string-append "--mandir="
5211 (assoc-ref %outputs "doc")
5213 (home-page "https://xcb.freedesktop.org/")
5214 (synopsis "The X C Binding (XCB) library")
5216 "libxcb provides an interface to the X Window System protocol,
5217 which replaces the current Xlib interface. It has several advantages
5218 over Xlib, including:
5220 - size: small, simple library, and lower memory footprint;
5222 - latency hiding: batch several requests and wait for the replies later;
5224 - direct protocol access: interface and protocol correspond exactly;
5226 - proven thread support: transparently access XCB from multiple threads;
5228 - easy extension implementation: interfaces auto-generated from XML-XCB.")
5229 (license license:x11)))
5231 (define-public libxcvt
5237 (uri (string-append "https://www.x.org/releases/individual"
5238 "/lib/libxcvt-" version ".tar.xz"))
5241 "0acc7vrj5kfb19zvyl7f29rnsvx383dvwc19k70r8prm1lccxsr7"))))
5242 (build-system meson-build-system)
5243 (home-page "https://gitlab.freedesktop.org/xorg/lib/libxcvt")
5244 (synopsis "VESA Coordinated Video Timings (CVT) library")
5245 (description "@code{libxcvt} is a library providing a standalone version
5246 of the X server implementation of the VESA Coordinated Video Timings (CVT)
5247 standard timing modelines generator. @code{libxcvt} also provides a
5248 standalone version of the command line tool @command{cvt} copied from the Xorg
5249 implementation and is meant to be a direct replacement to the version provided
5250 by the Xorg server.")
5251 (license license:x11)))
5253 (define-public xorg-server
5255 (name "xorg-server")
5260 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5261 "/xserver/xorg-server-" version ".tar.xz"))
5264 "1c4dgvpv3kib8rhw37b00vc056nlb1z66c2lwzs4prz8kxmg82y2"))
5268 ;; https://lists.fedoraproject.org/archives/list/devel@lists.
5269 ;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
5273 "http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git"
5274 "/plain/06_use-intel-only-on-pre-gen4.diff"))
5277 "0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
5278 (file-name "xorg-server-use-intel-only-on-pre-gen4.diff"))))))
5279 (build-system gnu-build-system)
5281 ;; The following libraries are required by xorg-server.pc.
5282 (list libpciaccess libxcvt mesa pixman xorgproto))
5287 ("libepoxy" ,libepoxy)
5288 ("libgcrypt" ,libgcrypt)
5291 ("libxdmcp" ,libxdmcp)
5292 ("libxfixes" ,libxfixes)
5293 ("libxfont2" ,libxfont2)
5294 ("libxkbfile" ,libxkbfile)
5295 ("libxrender" ,libxrender)
5296 ("libxres" ,libxres)
5297 ("libxshmfence" ,libxshmfence)
5300 ("xkbcomp" ,xkbcomp)
5301 ("xkeyboard-config" ,xkeyboard-config)
5304 ;; Inputs for Xephyr
5305 ("xcb-util" ,xcb-util)
5306 ("xcb-util-image" ,xcb-util-image)
5307 ("xcb-util-keysyms" ,xcb-util-keysyms)
5308 ("xcb-util-renderutil" ,xcb-util-renderutil)
5309 ("xcb-util-wm" ,xcb-util-wm)))
5311 `(("python" ,python-wrapper)
5312 ("pkg-config" ,pkg-config)))
5315 (list (string-append "--with-xkb-path="
5316 (assoc-ref %build-inputs "xkeyboard-config")
5318 (string-append "--with-xkb-output="
5319 "/tmp") ; FIXME: This is a bit doubtful; where should
5320 ; the compiled keyboard maps go?
5321 (string-append "--with-xkb-bin-directory="
5322 (assoc-ref %build-inputs "xkbcomp")
5324 ;; By default, it ends up with invalid '${prefix}/...', causes:
5325 ;; _FontTransOpen: Unable to Parse address ${prefix}/share/...
5326 ;; It's not used anyway, so set it to empty.
5327 "--with-default-font-path="
5329 ;; Enable the X security extensions (ssh -X).
5330 "--enable-xcsecurity"
5332 ;; The default is to use "uname -srm", which captures the kernel
5333 ;; version and makes builds non-reproducible.
5334 "--with-os-name=GNU"
5335 "--with-os-vendor=Guix" ; not strictly needed, but looks nice
5337 ;; For the log file, etc.
5338 "--localstatedir=/var"
5343 (modify-phases %standard-phases
5344 (add-before 'configure 'pre-configure
5346 (substitute* (find-files "." "\\.c$")
5347 (("/bin/sh") (which "sh")))
5349 ;; Don't try to 'mkdir /var'.
5350 (substitute* "hw/xfree86/Makefile.in"
5351 (("\\$\\(MKDIR_P\\).*logdir.*")
5354 ;; Strip timestamps that would otherwise end up in the 'Xorg'
5356 (substitute* "configure"
5357 (("^BUILD_DATE=.*$")
5358 "BUILD_DATE=19700101\n")
5359 (("^BUILD_TIME=.*$")
5360 "BUILD_TIME=000001\n")))))))
5361 (home-page "https://www.x.org/wiki/")
5362 (synopsis "Xorg implementation of the X Window System")
5364 "This package provides the Xorg X server itself.
5365 The X server accepts requests from client programs to create windows, which
5366 are (normally rectangular) 'virtual screens' that the client program can
5369 Windows are then composed on the actual screen by the X server (or by a
5370 separate composite manager) as directed by the window manager, which usually
5371 communicates with the user via graphical controls such as buttons and
5372 draggable titlebars and borders.")
5373 (license license:x11)))
5375 ;; This package is intended to be used when building GTK+.
5376 ;; Note: It's currently marked as "hidden" to avoid having two non-eq?
5377 ;; packages with the same name and version.
5378 (define-public xorg-server-for-tests
5381 (inherit xorg-server)
5386 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5387 "/xserver/xorg-server-" version ".tar.xz"))
5390 "0md7dqsc5qb30gym06c4zc2cjsdc5ps8nywk1bkcpix05kppybkq"))
5394 ;; https://lists.fedoraproject.org/archives/list/devel@lists.
5395 ;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
5399 "http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git"
5400 "/plain/06_use-intel-only-on-pre-gen4.diff"))
5403 "0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
5404 (file-name "xorg-server-use-intel-only-on-pre-gen4.diff")))))))))
5406 (define-public eglexternalplatform
5408 (name "eglexternalplatform")
5415 (url "https://github.com/NVIDIA/eglexternalplatform")
5418 (git-file-name name version))
5420 (base32 "0lr5s2xa1zn220ghmbsiwgmx77l156wk54c7hybia0xpr9yr2nhb"))))
5421 (build-system copy-build-system)
5424 (modify-phases %standard-phases
5425 (add-after 'unpack 'patch-pkgconfig
5426 (lambda* (#:key outputs #:allow-other-keys)
5427 (substitute* "eglexternalplatform.pc"
5429 (assoc-ref outputs "out")))))
5430 (add-after 'install 'revise
5431 (lambda* (#:key outputs #:allow-other-keys)
5432 (let* ((out (assoc-ref outputs "out")))
5433 (mkdir-p (string-append out "/include/EGL"))
5435 (string-append out "/interface")
5436 (string-append out "/include/EGL"))
5437 (mkdir-p (string-append out "/share/pkgconfig"))
5439 (string-append out "/eglexternalplatform.pc")
5440 (string-append out "/share/pkgconfig/eglexternalplatform.pc"))
5441 (for-each delete-file-recursively
5443 (string-append out "/samples")
5444 (string-append out "/COPYING")
5445 (string-append out "/README.md")))))))))
5446 (synopsis "EGL External Platform interface")
5447 (description "EGLExternalPlatform is an specification of the EGL External
5448 Platform interface for writing EGL platforms and their interactions with modern
5449 window systems on top of existing low-level EGL platform implementations. This
5450 keeps window system implementation specifics out of EGL drivers by using
5451 application-facing EGL functions.")
5452 (home-page "https://github.com/NVIDIA/eglexternalplatform")
5453 (license license:expat)))
5455 (define-public egl-wayland
5457 (name "egl-wayland")
5463 (url "https://github.com/NVIDIA/egl-wayland")
5465 (file-name (git-file-name name version))
5467 (base32 "1iz86cpc4v7izckrcslllnw0vvvgsxg1sr65yb8s9d0f8xa8djdd"))))
5468 (build-system meson-build-system)
5470 (list libglvnd ;needed for headers
5471 mesa-headers pkg-config))
5473 (list mesa wayland wayland-protocols))
5475 (list eglexternalplatform))
5476 (synopsis "EGLStream-based Wayland external platform")
5477 (description "EGL-Wayland is an implementation of a EGL External Platform
5478 library to add client-side Wayland support to EGL on top of EGLDevice and
5479 EGLStream families of extensions.")
5480 (home-page "https://github.com/NVIDIA/egl-wayland")
5481 (license license:expat)))
5483 (define-public xorg-server-xwayland
5485 (name "xorg-server-xwayland")
5490 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5491 "/xserver/xwayland-" version ".tar.xz"))
5494 "18pqvg76grbsyxa3mm3j06i1l8cwb28nbn2gcnqpsk7x75zpbhpb"))))
5495 (inputs (list font-dejavu
5513 (native-inputs (list pkg-config))
5514 (build-system meson-build-system)
5517 (list "-Dxwayland_eglstream=true"
5518 (string-append "-Dxkb_dir="
5519 (assoc-ref %build-inputs "xkeyboard-config")
5521 (string-append "-Dxkb_bin_dir="
5522 (assoc-ref %build-inputs "xkbcomp") "/bin")
5523 ;; The build system insist on providing a default font path; give
5524 ;; that of dejavu, the same used for our fontconfig package.
5525 (string-append "-Ddefault_font_path="
5526 (assoc-ref %build-inputs "font-dejavu")
5528 "-Dxkb_output_dir=/tmp"
5529 (format #f "-Dbuilder_string=\"Build ID: ~a ~a\"" ,name ,version)
5533 ;; For the log file, etc.
5534 "--localstatedir=/var")
5535 #:phases (modify-phases %standard-phases
5536 (add-after 'unpack 'patch-/bin/sh
5538 (substitute* (find-files "." "\\.c$")
5539 (("/bin/sh") (which "sh"))))))))
5540 (synopsis "Xorg server with Wayland backend")
5541 (description "Xwayland is an X server for running X clients under
5543 (home-page "https://www.x.org/wiki/")
5544 (license license:x11)))
5547 ;; packages of height 4 in the propagated-inputs tree
5549 (define-public libx11
5556 (uri (string-append "https://xorg.freedesktop.org/archive/"
5557 "/individual/lib/libX11-" version ".tar.xz"))
5560 "1289nvs52q9fnp7zl30bdpbvqggnjjb39vy0zll511zvcrr43z9g"))))
5561 (build-system gnu-build-system)
5563 "doc")) ;8 MiB of man pages + XML
5566 (list (string-append "--mandir="
5567 (assoc-ref %outputs "doc")
5570 ,@(malloc0-flags))))
5572 (list xorgproto libxcb))
5576 (list pkg-config xorgproto))
5577 (home-page "https://www.x.org/wiki/")
5578 (synopsis "Xorg Core X11 protocol client library")
5579 (description "Xorg Core X11 protocol client library.")
5580 (license license:x11)))
5582 ;; packages of height 5 in the propagated-inputs tree
5584 (define-public libxcursor
5592 "mirror://xorg/individual/lib/libXcursor-"
5597 "10l7c9fm0jmpkm9ab9dz8r6m1pr87vvgqjnbx1psz50h4pwfklrs"))))
5598 (build-system gnu-build-system)
5600 '(#:configure-flags '("--disable-static")))
5602 (list libx11 libxrender libxfixes xorgproto))
5605 ;; FIXME: The search path below won't be very effective until the bugs
5606 ;; <http://bugs.gnu.org/20255> and <http://bugs.gnu.org/22138> are solved.
5607 (native-search-paths
5608 (list (search-path-specification
5609 (variable "XCURSOR_PATH")
5610 (files '("share/icons")))))
5611 (home-page "https://www.x.org/wiki/")
5612 (synopsis "Xorg Cursor management library")
5613 (description "Xorg Cursor management library.")
5614 (license license:x11)))
5616 (define-public libxt
5624 "mirror://xorg/individual/lib/libXt-"
5629 "0q1x7842r8rcn2m0q4q9f69h4qa097fyizs8brzx5ns62s7w1737"))
5630 (patches (search-patches "libxt-guix-search-paths.patch"))))
5631 (build-system gnu-build-system)
5633 "doc")) ;2 MiB of man pages + XML
5636 (list (string-append "--mandir="
5637 (assoc-ref %outputs "doc")
5640 ,@(malloc0-flags))))
5642 (list libx11 libice libsm))
5647 (home-page "https://www.x.org/wiki/")
5648 (synopsis "Xorg XToolkit Intrinsics library")
5649 (description "Xorg XToolkit Intrinsics library.")
5650 (license license:x11)))
5653 (define-public libxaw
5661 "mirror://xorg/individual/lib/libXaw-"
5666 "13kg59r3086383g1dyhnwxanhp2frssh9062mrgn34nzlf7gkbkn"))))
5667 (build-system gnu-build-system)
5669 '(#:configure-flags '("--disable-static")))
5671 (list libxext libxmu libxpm libxt))
5676 (home-page "https://www.x.org/wiki/")
5677 (synopsis "Xorg Xaw library")
5679 "Xaw is the X Athena Widget Set based on the X Toolkit
5680 Intrinsics (Xt) Library.")
5681 (license license:x11)))
5690 (uri (string-append "mirror://xorg/individual/app/twm-"
5694 "1iv8kdb18n9vk3is5fyh6l40ipq9mkgx8ppj86byf464vr1ais7l"))))
5695 (build-system gnu-build-system)
5697 (list libxt libxmu libxext xorgproto))
5699 (list bison pkg-config))
5700 (home-page "https://www.x.org/wiki/")
5701 (synopsis "Tab Window Manager for the X Window System")
5702 (description "Twm is a window manager for the X Window System.
5703 It provides titlebars, shaped windows, several forms of icon management,
5704 user-defined macro functions, click-to-type and pointer-driven
5705 keyboard focus, and user-specified key and pointer button bindings.")
5706 (license license:x11)))
5708 (define-public xcb-util
5714 (uri (string-append "mirror://xorg/individual/xcb/"
5715 name "-" version ".tar.bz2"))
5718 "1sahmrgbpyki4bb72hxym0zvxwnycmswsxiisgqlln9vrdlr9r26"))))
5719 (build-system gnu-build-system)
5721 '(#:configure-flags '("--disable-static")))
5726 (home-page "https://cgit.freedesktop.org/xcb/util/")
5727 (synopsis "Core XCB utility functions")
5729 "The XCB util module provides a number of libraries which sit on
5730 top of libxcb, the core X protocol library, and some of the extension
5731 libraries. These experimental libraries provide convenience functions
5732 and interfaces which make the raw X protocol more usable. Some of the
5733 libraries also provide client-side code which is not strictly part of
5734 the X protocol but which has traditionally been provided by Xlib.
5736 The XCB util module provides the following libraries:
5738 - aux: Convenient access to connection setup and some core requests.
5740 - atom: Standard core X atom constants and atom caching.
5742 - event: Some utilities that have little to do with events any more.")
5743 (license license:x11)))
5746 (define-public xcb-util-cursor
5748 (name "xcb-util-cursor")
5752 (uri (string-append "https://xcb.freedesktop.org/dist/"
5753 "xcb-util-cursor-" version ".tar.bz2"))
5756 "0krr4rcw6r42cncinzvzzdqnmxk3nrgpnadyg2h8k9x10q3hm885"))))
5757 (build-system gnu-build-system)
5759 '(#:configure-flags '("--disable-static")))
5761 (list m4 pkg-config))
5765 (list xcb-util-renderutil xcb-util-image))
5766 (home-page "https://cgit.freedesktop.org/xcb/util-cursor/")
5767 (synopsis "Port of libxcursor")
5768 (description "XCB-util-cursor is a port of libxcursor.")
5770 ; expat license with added clause regarding advertising
5771 (license:non-copyleft
5773 "See COPYING in the distribution."))))
5775 (define-public xcb-util-errors
5776 (let ((commit "5d660ebe872cadcdc85de9d6f9afe05de629c030")
5779 (name "xcb-util-errors")
5780 (version (git-version "1.0" revision commit))
5784 (url "https://anongit.freedesktop.org/git/xcb/util-errors.git")
5787 (file-name (git-file-name name version))
5790 "12bah0iz5k6b9hwlc5zffyfg2gnrajll3gn5s8zmazgynvw72ahg"))))
5791 (build-system gnu-build-system)
5794 (list util-macros xcb-proto))
5798 `(("autoconf" ,autoconf)
5799 ("automake" ,automake)
5800 ("libtool" ,libtool)
5801 ("python" ,python-wrapper)
5802 ("pkg-config" ,pkg-config)))
5805 (modify-phases %standard-phases
5808 ;; The default 'bootstrap' phase would run 'autogen.sh', which
5809 ;; would try to run ./configure and fail due to unpatched
5811 (invoke "autoreconf" "-v" "--install"))))))
5812 (home-page "https://cgit.freedesktop.org/xcb/util-errors/")
5813 (synopsis "XCB helper library for printing information about X11 errors")
5815 "The XCB util module provides a number of libraries which sit on
5816 top of libxcb, the core X protocol library, and some of the extension
5817 libraries. These experimental libraries provide convenience functions
5818 and interfaces which make the raw X protocol more usable. Some of the
5819 libraries also provide client-side code which is not strictly part of
5820 the X protocol but which has traditionally been provided by Xlib.
5822 The XCB util-errors module provides a utility library that gives human
5823 readable names to error codes, event codes, and also to major and minor
5825 (license license:x11))))
5827 (define-public xcb-util-image
5829 (name "xcb-util-image")
5833 (uri (string-append "mirror://xorg/individual/xcb/"
5834 name "-" version ".tar.bz2"))
5837 "1z1gxacg7q4cw6jrd26gvi5y04npsyavblcdad1xccc8swvnmf9d"))))
5838 (build-system gnu-build-system)
5840 '(#:configure-flags '("--disable-static")))
5847 (home-page "https://cgit.freedesktop.org/xcb/util-image/")
5848 (synopsis "XCB port of Xlib's XImage and XShmImage")
5850 "The XCB util module provides a number of libraries which sit on
5851 top of libxcb, the core X protocol library, and some of the extension
5852 libraries. These experimental libraries provide convenience functions
5853 and interfaces which make the raw X protocol more usable. Some of the
5854 libraries also provide client-side code which is not strictly part of
5855 the X protocol but which has traditionally been provided by Xlib.
5857 The XCB util-image module provides the following library:
5859 - image: Port of Xlib's XImage and XShmImage functions.")
5860 (license license:x11)))
5863 (define-public xcb-util-keysyms
5865 (name "xcb-util-keysyms")
5869 (uri (string-append "mirror://xorg/individual/xcb/"
5870 name "-" version ".tar.bz2"))
5873 "1nbd45pzc1wm6v5drr5338j4nicbgxa5hcakvsvm5pnyy47lky0f"))))
5874 (build-system gnu-build-system)
5876 '(#:configure-flags '("--disable-static")))
5881 (home-page "https://cgit.freedesktop.org/xcb/util-keysyms/")
5882 (synopsis "Standard X constants and conversion to/from keycodes")
5884 "The XCB util module provides a number of libraries which sit on
5885 top of libxcb, the core X protocol library, and some of the extension
5886 libraries. These experimental libraries provide convenience functions
5887 and interfaces which make the raw X protocol more usable. Some of the
5888 libraries also provide client-side code which is not strictly part of
5889 the X protocol but which has traditionally been provided by Xlib.
5891 The XCB util-keysyms module provides the following library:
5893 - keysyms: Standard X key constants and conversion to/from keycodes.")
5894 (license license:x11)))
5897 (define-public xcb-util-renderutil
5899 (name "xcb-util-renderutil")
5903 (uri (string-append "mirror://xorg/individual/xcb/"
5904 name "-" version ".tar.bz2"))
5907 "0nza1csdvvxbmk8vgv8vpmq7q8h05xrw3cfx9lwxd1hjzd47xsf6"))))
5908 (build-system gnu-build-system)
5910 '(#:configure-flags '("--disable-static")))
5915 (home-page "https://cgit.freedesktop.org/xcb/util-renderutil/")
5916 (synopsis "Convenience functions for the Render extension")
5918 "The XCB util module provides a number of libraries which sit on
5919 top of libxcb, the core X protocol library, and some of the extension
5920 libraries. These experimental libraries provide convenience functions
5921 and interfaces which make the raw X protocol more usable. Some of the
5922 libraries also provide client-side code which is not strictly part of
5923 the X protocol but which has traditionally been provided by Xlib.
5925 The XCB util-renderutil module provides the following library:
5927 - renderutil: Convenience functions for the Render extension.")
5928 (license license:x11)))
5931 (define-public xcb-util-wm
5933 (name "xcb-util-wm")
5937 (uri (string-append "mirror://xorg/individual/xcb/"
5938 name "-" version ".tar.bz2"))
5941 "0gra7hfyxajic4mjd63cpqvd20si53j1q3rbdlkqkahfciwq3gr8"))))
5942 (build-system gnu-build-system)
5944 '(#:configure-flags '("--disable-static")))
5948 (list m4 pkg-config))
5949 (home-page "https://cgit.freedesktop.org/xcb/util-wm/")
5950 (synopsis "Client and window-manager helpers for ICCCM and EWMH")
5952 "The XCB util modules provides a number of libraries which sit on
5953 top of libxcb, the core X protocol library, and some of the extension
5954 libraries. These experimental libraries provide convenience functions
5955 and interfaces which make the raw X protocol more usable. Some of the
5956 libraries also provide client-side code which is not strictly part of
5957 the X protocol but which has traditionally been provided by Xlib.
5959 The XCB util-wm module provides the following libraries:
5961 - ewmh: Both client and window-manager helpers for EWMH.
5963 - icccm: Both client and window-manager helpers for ICCCM.")
5964 (license license:x11)))
5966 (define-public xinit
5972 (uri (string-append "mirror://xorg/individual/app/xinit-"
5973 version ".tar.bz2"))
5976 "1fdbakx59vyh474skjydj1bbglpby3y03nl7mxn0z9v8gdhqz6yy"))))
5977 (build-system gnu-build-system)
5979 (list xorgproto libx11))
5984 (home-page "https://www.x.org/")
5985 (synopsis "Commands to start the X Window server")
5987 "The xinit program is used to start the X Window System server and a
5988 first client program on systems that are not using a display manager such as
5989 xdm. This package also provides the @code{startx} command, which provides a
5990 user-friendly mechanism to start the X server.")
5991 (license license:x11)))
5993 ;; package outside the x.org system proper of height 5
5995 (define-public libxaw3d
6003 "mirror://xorg/individual/lib/libXaw3d-"
6008 "0i653s8g25cc0mimkwid9366bqkbyhdyjhckx7bw77j20hzrkfid"))))
6009 (build-system gnu-build-system)
6011 (list libxext libxmu libxt))
6016 (home-page "https://www.x.org/wiki/")
6017 (synopsis "Xorg Xaw3d library")
6019 "Xaw is the X 3D Athena Widget Set based on the X Toolkit
6020 Intrinsics (Xt) Library.")
6021 (license license:x11)))
6023 (define-public libxpresent
6025 (name "libxpresent")
6029 (uri "mirror://xorg/individual/lib/libXpresent-1.0.0.tar.bz2")
6032 "12kvvar3ihf6sw49h6ywfdiwmb8i1gh8wasg1zhzp6hs2hay06n1"))))
6034 (list libx11 xorgproto libxext libxfixes libxrandr))
6037 (build-system gnu-build-system)
6038 (home-page "https://gitlab.freedesktop.org/xorg/lib/libxpresent")
6039 (synopsis "Xlib-compatible API for the Present extension")
6040 (description "This package provides a Xlib-based library for the X Present
6042 (license license:x11)))
6044 (define-public xclock
6051 (uri (string-append "https://www.x.org/releases/individual/app/"
6052 "xclock-" version ".tar.bz2"))
6054 (base32 "1fr3q4rszgx7x2zxy2ip592a3fgx20hfwac49p2l5b7jqsr1ying"))))
6055 (build-system gnu-build-system)
6058 (list (string-append "--with-appdefaultdir="
6059 %output ,%app-defaults-dir))))
6069 (home-page "https://gitlab.freedesktop.org/xorg/app/xclock")
6070 (synopsis "Analog / digital clock for X")
6071 (description "The xclock program displays the time in analog or digital
6073 (license (license:x11-style "file://COPYING" "See COPYING for details."))))
6083 "mirror://xorg/individual/app/" name "-"
6088 "19bsg5ykal458d52v0rvdx49v54vwxwqg8q36fdcsv9p2j8yri87"))))
6089 (build-system gnu-build-system)
6092 (list (string-append "--with-appdefaultdir="
6093 %output ,%app-defaults-dir))))
6098 (home-page "https://www.x.org/wiki/")
6099 (synopsis "Display or capture a magnified part of a X11 screen")
6100 (description "Xmag displays and captures a magnified snapshot of a portion
6102 (license license:x11)))
6104 (define-public xmessage
6112 "mirror://xorg/individual/app/" name "-"
6117 "0sw0b0cbrjl44brw7qi1jkm61xd7a1lpj04418c6iqk6mf83llwr"))))
6118 (build-system gnu-build-system)
6121 (list (string-append "--with-appdefaultdir="
6122 %output ,%app-defaults-dir))))
6127 (home-page "https://www.x.org/wiki/")
6128 (synopsis "Displays a message or query in a window")
6130 "Xmessage displays a message or query in a window. The user can click
6131 on a button to dismiss it or can select one of several buttons
6132 to answer a question. Xmessage can also exit after a specified time.")
6133 (license license:x11)))
6135 (define-public xterm
6143 (string-append "https://invisible-mirror.net/archives/xterm/"
6144 "xterm-" version ".tgz")
6145 (string-append "ftp://ftp.invisible-island.net/xterm/"
6146 "xterm-" version ".tgz")))
6148 (base32 "10lc72spa69n9d7zg9nwhgwz70qzidp5i17jgw3lq3qg1a25sg4n"))
6150 (search-patches "xterm-370-explicit-xcursor.patch"))))
6151 (build-system gnu-build-system)
6153 '(#:configure-flags '("--enable-wide-chars" "--enable-load-vt-fonts"
6154 "--enable-i18n" "--enable-doublechars"
6155 "--enable-luit" "--enable-mini-luit"
6156 "X_EXTRA_LIBS=-lXcursor")
6157 #:tests? #f ; no test suite
6159 (modify-phases %standard-phases
6160 (add-after 'build 'patch-file-names
6161 (lambda* (#:key outputs #:allow-other-keys)
6162 (let ((out (assoc-ref outputs "out")))
6163 (substitute* "uxterm"
6164 (("([ `\\|])(sh|sed|awk|xmessage) " _ prefix command)
6165 (string-append prefix (which command) " "))
6166 (("(`|\"|LANG=C )(locale) " _ prefix command)
6167 (string-append prefix (which command) " "))
6169 (string-append "=" out "/bin/xterm")))))))))
6175 ("fontconfig" ,fontconfig)
6176 ("freetype" ,freetype)
6177 ("ncurses" ,ncurses)
6181 ("libXcursor" ,libxcursor)
6182 ("libXext" ,libxext)
6184 ("xorgproto" ,xorgproto)
6185 ("libXaw" ,libxaw)))
6186 (home-page "https://invisible-island.net/xterm/")
6187 (synopsis "Terminal emulator for the X Window System")
6189 "The xterm program is a terminal emulator for the X Window System. It
6190 provides DEC VT102/VT220 (VTxxx) and Tektronix 4014 compatible terminals for
6191 programs that cannot use the window system directly.")
6192 (license license:x11)))
6194 (define-public perl-x11-xcb
6196 (name "perl-x11-xcb")
6201 "mirror://cpan/authors/id/M/MS/MSTPLBG/"
6202 "X11-XCB-" version ".tar.gz"))
6205 "1rn8g0yy82v5zp12rhxic332dvqs63l7mykg028ngvccs7rllipp"))))
6206 (build-system perl-build-system)
6208 '(;; Disable parallel build to prevent a race condition.
6209 #:parallel-build? #f
6211 (modify-phases %standard-phases
6212 (add-before 'configure 'set-perl-search-path
6215 (string-append (getcwd) ":"
6216 (getenv "PERL5LIB")))))
6217 (add-before 'build 'patch-Makefile
6218 (lambda* (#:key inputs #:allow-other-keys)
6219 (substitute* "Makefile"
6220 ;; XXX: Without this hack, attempts at using XCB.so fails with
6221 ;; an error such as "XCB.so: undefined symbol: xcb_xinerama_id"
6223 (string-append "LDDLFLAGS = "
6224 "-lxcb -lxcb-util -lxcb-xinerama -lxcb-icccm "))))))
6225 ;; Tests require a running X11 server.
6228 (list perl-extutils-depends perl-extutils-pkgconfig
6229 perl-module-install perl-test-deep perl-test-exception))
6231 (list perl-data-dump
6233 perl-mousex-nativetraits
6237 perl-xs-object-magic))
6239 (list libxcb xcb-proto xcb-util xcb-util-wm))
6240 (home-page "https://metacpan.org/release/X11-XCB")
6241 (synopsis "Perl bindings for libxcb")
6243 "These bindings wrap @code{libxcb} (a C library to speak with X11,
6244 in many cases better than @code{Xlib}), and provides an object oriented
6245 interface to its methods (using @code{Mouse}).")
6246 (license license:perl-license)))
6248 (define-public perl-x11-protocol
6250 (name "perl-x11-protocol")
6255 "mirror://cpan/authors/id/S/SM/SMCCAM/X11-Protocol-"
6259 "1dq89bh6fqv7l5mbffqcismcljpq5f869bx7g8lg698zgindv5ny"))))
6260 (build-system perl-build-system)
6261 (arguments '(#:tests? #f)) ;tests require a running x server
6262 (synopsis "Raw interface to X Window System servers")
6264 "X11::Protocol is a client-side interface to the X11 Protocol, allowing
6265 perl programs to display windows and graphics on X11 servers.")
6266 (home-page "https://metacpan.org/release/X11-Protocol")
6267 ;; From the package README: "you can redistribute and/or modify it under
6268 ;; the same terms as Perl itself. (As an exception, the file
6269 ;; Keysyms.pm,which is derived from a file in the standard X11
6270 ;; distribution, has another, less restrictive copying policy, as do some
6271 ;; of the extension modules in the directory Protocol/Ext: see those files
6273 (license license:perl-license)))
6275 (define-public perl-x11-protocol-other
6277 (name "perl-x11-protocol-other")
6283 "mirror://cpan/authors/id/K/KR/KRYDE/X11-Protocol-Other-"
6286 (base32 "1x3kvic52jgp2mvd5wzrqrprqi82cdk8l4075v8b33ksvj9mjqiw"))))
6287 (build-system perl-build-system)
6289 (list perl-encode-hanextra perl-module-util))
6291 (list perl-x11-protocol))
6292 (home-page "https://metacpan.org/release/X11-Protocol-Other")
6293 (synopsis "Miscellaneous helpers for @code{X11::Protocol} connections")
6295 "@code{X11::Protocol::Other} contains window manager related functions for
6296 use by client programs, as per the @dfn{ICCCM} (Inter-Client Communication
6297 Conventions Manual) and some of the @dfn{EWMH}
6298 (Extended Window Manager Hints).")
6299 (license license:gpl3+)))
6301 (define-public xcompmgr
6307 ;; There's no current tarball.
6310 (url "https://anongit.freedesktop.org/git/xorg/app/xcompmgr.git")
6311 (commit (string-append "xcompmgr-" version))))
6313 (base32 "11i7vyk3pynw8q8aczpy56qncm84y0cmhlvyja3sj8dgy60g03q2"))
6314 (file-name (git-file-name name version))))
6315 (build-system gnu-build-system)
6317 (list pkg-config autoconf automake))
6325 (synopsis "X Compositing manager using RENDER")
6326 (description "xcompmgr is a sample compositing manager for X servers
6327 supporting the XFIXES, DAMAGE, RENDER, and COMPOSITE extensions. It enables
6328 basic eye-candy effects.")
6329 (home-page "https://cgit.freedesktop.org/xorg/app/xcompmgr/")
6330 (license (license:x11-style
6331 "https://cgit.freedesktop.org/xorg/app/xcompmgr/tree/COPYING"))))
6340 (uri (string-append "https://www.xpra.org/src/xpra-"
6343 (base32 "1adp790v9lq3v9pnkyf4skv69n2pd7fjqikzw145swhq9aginh5z"))
6344 (patches (search-patches "xpra-4.2-systemd-run.patch"
6345 "xpra-4.2-install_libs.patch"))))
6346 (build-system python-build-system)
6347 ;; see also http://xpra.org/trac/wiki/Dependencies
6348 (inputs `(("bash-minimal" ,bash-minimal) ; for wrap-program
6349 ;; Essential dependencies.
6350 ("libjpeg" ,libjpeg-turbo)
6351 ("libwebp" ,libwebp)
6354 ("libxrandr" ,libxrandr)
6355 ("libxtst" ,libxtst)
6356 ("libxfixes" ,libxfixes)
6357 ("libxkbfile" ,libxkbfile)
6358 ("libxcomposite" ,libxcomposite)
6359 ("libxdamage" ,libxdamage)
6360 ("libxext" ,libxext)
6361 ("libxres" ,libxres)
6363 ("python-pycairo" ,python-pycairo)
6364 ("python-pygobject" ,python-pygobject)
6366 ("xorg-server" ,xorg-server)
6367 ("xf86-video-dummy" ,xf86-video-dummy)
6368 ("xf86-input-mouse" ,xf86-input-mouse)
6369 ("xf86-input-keyboard" ,xf86-input-keyboard)
6370 ("python-pillow" ,python-pillow)
6371 ;; Optional dependencies.
6372 ("libx264" ,libx264)
6375 ("python-rencode" ,python-rencode) ; For speed.
6376 ("python-numpy" ,python-numpy)
6377 ("python-pyopengl" ,python-pyopengl) ; Drawing acceleration.
6378 ("python-pyopengl-accelerate" ,python-pyopengl-accelerate) ; Same.
6379 ("python-paramiko" ,python-paramiko) ; Tunneling over SSH.
6380 ("python-dbus" ,python-dbus) ; For desktop notifications.
6381 ("dbus" ,dbus) ; For dbus-launch command.
6382 ("python-lz4" ,python-lz4) ; Faster compression than zlib.
6383 ("python-netifaces" ,python-netifaces)))
6384 (native-inputs (list pkg-config pandoc python-cython))
6386 `(#:configure-flags '("--without-Xdummy"
6387 "--without-Xdummy_wrapper"
6390 "--without-strict") ; Ignore compiler warnings.
6391 #:modules ((guix build python-build-system)
6393 #:tests? #f ; Do not run test-cases. This would rebuild all modules and
6394 ; they seem to require python2.
6396 (modify-phases %standard-phases
6397 ;; Must pass the same flags as 'install, otherwise enabled modules may
6400 (lambda* (#:key configure-flags #:allow-other-keys)
6401 (apply invoke (append (list "python" "setup.py" "build")
6403 (add-before 'install 'fix-paths
6404 (lambda* (#:key inputs outputs #:allow-other-keys)
6405 ;; Fix binary paths.
6406 (substitute* '("xpra/scripts/config.py" "xpra/x11/vfb_util.py")
6408 (string-append "\"" (assoc-ref inputs "xorg-server") "/bin/Xvfb\""))
6410 (string-append "\"" (assoc-ref inputs "xorg-server") "/bin/Xorg\""))
6412 (string-append "\"" (assoc-ref inputs "xauth") "/bin/xauth\"")))
6413 ;; Fix directory of config files.
6414 (substitute* '("xpra/scripts/config.py" "xpra/platform/xposix/paths.py")
6415 (("\"/etc/xpra/?\"")
6416 (string-append "\"" (assoc-ref outputs "out") "/etc/xpra/\"")))
6417 ;; XXX: Stolen from (gnu packages linux)
6418 (define (append-to-file name body)
6419 (let ((file (open-file name "a")))
6422 ;; Add Xorg module paths.
6424 "fs/etc/xpra/xorg.conf"
6425 (string-append "\nSection \"Files\"\nModulePath \""
6426 (assoc-ref inputs "xf86-video-dummy") "/lib/xorg/modules,"
6427 (assoc-ref inputs "xf86-input-mouse") "/lib/xorg/modules,"
6428 (assoc-ref inputs "xf86-input-keyboard") "/lib/xorg/modules,"
6429 (assoc-ref inputs "xorg-server") "/lib/xorg/modules\"\n"
6431 (substitute* '("xpra/scripts/config.py"
6432 "fs/etc/xpra/conf.d/60_server.conf.in"
6433 "tests/unittests/unit/server/mixins/notification_test.py")
6434 ;; The trailing -- is intentional, so we only replace it inside
6437 (string-append (search-input-file inputs "/bin/dbus-launch")
6439 ;; /run/user does not exist on guix system
6440 (substitute* "./xpra/scripts/config.py"
6441 (("socket-dir.*: \"\",")
6442 "socket-dir\" : \"~/.xpra\","))
6444 ;; GTK3 will not be found, if GI can’t find its typelibs.
6446 'install 'wrap-program
6447 (lambda* (#:key outputs #:allow-other-keys)
6448 (let ((prog (string-append (assoc-ref outputs "out")
6450 ;; XXX: only export typelibs in inputs
6452 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
6454 (home-page "https://www.xpra.org/")
6455 (synopsis "Remote access to individual applications or full desktops")
6456 (description "Xpra is a persistent remote display server and client for
6457 forwarding applications and desktop screens. It gives you remote access to
6458 individual applications or full desktops. On X11, it is also known as
6459 ``@command{screen} for X11'': it allows you to run programs, usually on a
6460 remote host, direct their display to your local machine, and then to
6461 disconnect from these programs and reconnect from the same or another machine,
6462 without losing any state. It can also be used to forward full desktops from
6463 X11 servers, Windows, or macOS.")
6464 (license license:gpl2+)))
6473 (uri (string-append "https://github.com/uim/uim/releases/download/"
6474 version "/uim-" version ".tar.bz2"))
6477 "1p7sl0js47ja4glmax93ci59h02ipqw3wxkh4f1qgaz5qjy9nn9l"))))
6478 (build-system gnu-build-system)
6480 (list anthy libedit libxft m17n-lib ncurses))
6482 `(("emacs" ,emacs-minimal)
6483 ("intltool" ,intltool)
6484 ("pkg-config" ,pkg-config)))
6486 `(#:modules ((guix build gnu-build-system)
6488 (guix build emacs-utils))
6489 #:imported-modules (,@%gnu-build-system-modules
6490 (guix build emacs-utils))
6492 (list "--with-anthy-utf8"
6493 (string-append "--with-lispdir=" %output "/share/emacs")
6494 ;; Set proper runpath
6495 (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")
6496 "CFLAGS=-O2 -g -fcommon")
6498 (modify-phases %standard-phases
6499 ;; Set path of uim-el-agent and uim-el-helper-agent executables
6500 (add-after 'configure 'configure-uim-el
6501 (lambda* (#:key outputs #:allow-other-keys)
6502 (let ((out (assoc-ref outputs "out")))
6503 (emacs-substitute-variables "emacs/uim-var.el"
6504 ("uim-el-agent" (string-append out "/bin/uim-el-agent"))
6505 ("uim-el-helper-agent" (string-append out "/bin/uim-el-helper-agent"))))
6507 ;; Fix installation path by renaming share/emacs/uim-el to
6508 ;; share/emacs/site-lisp
6509 (add-after 'install 'fix-install-path
6510 (lambda* (#:key outputs #:allow-other-keys)
6511 (let ((share-emacs (string-append (assoc-ref outputs "out")
6513 (rename-file (string-append share-emacs "/uim-el")
6514 (string-append share-emacs "/site-lisp")))
6516 ;; Generate emacs autoloads for uim.el
6517 (add-after 'fix-install-path 'make-autoloads
6518 (lambda* (#:key outputs #:allow-other-keys)
6519 (emacs-generate-autoloads
6520 ,name (string-append (assoc-ref outputs "out")
6521 "/share/emacs/site-lisp"))
6523 (home-page "https://github.com/uim/uim")
6524 (synopsis "Multilingual input method framework")
6525 (description "Uim is a multilingual input method library and environment.
6526 It provides a simple, easily extensible and high code-quality input method
6527 development platform, and useful input method environment for users of desktop
6528 and embedded platforms.")
6529 (license (list license:lgpl2.1+ ; scm/py.scm, pixmaps/*.{svg,png} (see pixmaps/README)
6530 license:gpl2+ ; scm/pinyin-big5.scm
6531 license:gpl3+ ; scm/elatin-rules.cm
6532 license:public-domain ; scm/input-parse.scm, scm/match.scm
6533 ;; gtk2/toolbar/eggtrayicon.{ch},
6534 ;; qt3/chardict/kseparator.{cpp,h},
6535 ;; qt3/pref/kseparator.{cpp,h}
6537 ;; pixmaps/*.{svg,png} (see pixmaps/README),
6541 (define-public uim-gtk
6542 (package/inherit uim
6547 ,@(package-inputs uim)))
6549 (substitute-keyword-arguments (package-arguments uim)
6550 ((#:configure-flags configure-flags)
6551 (append configure-flags (list "CFLAGS=-O2 -g -fcommon")))))
6552 (synopsis "Multilingual input method framework (GTK+ support)")))
6554 (define-public uim-qt
6555 (package/inherit uim
6559 ("qtx11extras" ,qtx11extras)
6560 ,@(package-inputs uim)))
6562 (substitute-keyword-arguments (package-arguments uim)
6563 ((#:configure-flags configure-flags)
6564 (append configure-flags (list "--with-qt5-immodule"
6566 "CPPFLAGS=-fcommon")))))
6567 (synopsis "Multilingual input method framework (Qt support)")))
6569 (define-public keynav
6572 (version "0.20110708.0")
6577 "http://http.debian.net/debian/pool/main/k/keynav/keynav_"
6578 version ".orig.tar.gz"))
6579 (file-name (string-append name "-" version ".tar.gz"))
6582 "1gizjhji3yspxxxvb90js3z1bv18rbf5phxg8rciixpj3cccff8z"))))
6583 (build-system gnu-build-system)
6595 `(#:tests? #f ;No tests.
6597 (modify-phases %standard-phases
6598 (add-after 'unpack 'setenv
6600 (setenv "CC" (which "gcc"))
6602 (add-after 'unpack 'patch-keynav
6604 (substitute* "keynav.c"
6605 (("xdo_symbol_map") "xdo_get_symbol_map")
6606 (("xdo_window_setclass") "xdo_set_window_class")
6607 (("xdo_window_get_active") "xdo_get_window_at_mouse")
6608 (("xdo_click") "xdo_click_window")
6609 (("xdo_mouseup") "xdo_mouse_up")
6610 (("xdo_mousedown") "xdo_mouse_down")
6611 (("xdo_mousemove") "xdo_move_mouse")
6612 (("xdo_mousemove_relative") "xdo_move_mouse_relative")
6613 (("xdo_mouselocation") "xdo_get_mouse_location")
6614 (("xdo_mouse_wait_for_move_to") "xdo_wait_for_mouse_move_to")
6615 (("xdo_keysequence_up") "xdo_send_keysequence_window_up")
6616 (("xdo_keysequence_down") "xdo_send_keysequence_window_down"))
6620 (lambda* (#:key outputs #:allow-other-keys)
6621 (let ((out (assoc-ref outputs "out")))
6622 (install-file "keynav" (string-append out "/bin"))
6623 (install-file "keynavrc" (string-append out "/etc")))
6625 (home-page "https://www.semicomplete.com/projects/keynav/")
6626 (synopsis "Keyboard-driven mouse cursor mover")
6628 "Keynav makes your keyboard a fast mouse cursor mover. You can move the
6629 cursor to any point on the screen with a few key strokes. It also simulates
6630 mouse click. You can do everything mouse can do with a keyboard.")
6631 (license license:bsd-3)))
6633 (define-public transset
6639 (uri (string-append "https://www.x.org/releases/individual/app/"
6640 name "-" version ".tar.gz"))
6643 "0rya202y87dwl35jnmq8hs3arzdrv5z4vf1xmi0py4rnmhdpszaw"))))
6644 (build-system gnu-build-system)
6647 (inputs (list libxcomposite libxdamage libxrender))
6648 (synopsis "Set the transparency of X11 windows")
6649 (description "@command{transset} is a simple program for X servers
6650 supporting the XFIXES, DAMAGE, and COMPOSITE extensions. It lets the
6651 user set the transparency on a window.")
6652 (home-page "https://gitlab.freedesktop.org/xorg/app/transset")
6653 (license license:x11)))
6655 (define-public bdfresize
6660 ;; Former upstream at
6661 ;; <http://openlab.ring.gr.jp/efont/dist/tools/bdfresize/>
6662 ;; vanished so use Debian, which in practice is the new
6666 (url "https://salsa.debian.org/debian/bdfresize.git")
6667 (commit (string-append "debian/" version))))
6670 "0n3i29wicak8n10vkkippym8yw4ir8f7a263a8rwb8q16wqrxx85"))
6671 (modules '((guix build utils)))
6674 (for-each make-file-writable (find-files "."))
6676 ;; Remove broken declaration.
6677 (substitute* "charresize.c"
6678 (("char\t\\*malloc\\(\\);")
6681 ;; Remove old configury that doesn't support modern
6682 ;; command-line options, new architectures, etc.
6683 (for-each delete-file
6684 '("configure" "install-sh"
6685 "missing" "mkinstalldirs"))
6687 (file-name (git-file-name name version))))
6688 (build-system gnu-build-system)
6690 (list pkg-config autoconf automake))
6691 (synopsis "Resize fonts in the BDF format")
6693 "This package provides @command{bdfresize}, a command to magnify or
6694 reduce fonts in the Glyph Bitmap Distribution Format (BDF). It produces BDF
6696 (home-page "https://tracker.debian.org/pkg/bdfresize")
6697 (license license:gpl2+)) )
6699 (define-public console-setup
6701 (name "console-setup")
6707 (url "https://salsa.debian.org/installer-team/console-setup.git")
6710 (base32 "0fj93apsknx3lzbi2025pzr19q1gwnim8g4007aqqkhidc1msgx5"))
6711 (file-name (git-file-name name version))))
6712 (build-system gnu-build-system)
6715 (let ((bash (assoc-ref %build-inputs "bash"))
6716 (out (assoc-ref %outputs "out")))
6717 (list (string-append "SHELL=" bash "/bin/bash")))
6718 #:tests? #f ; no tests
6720 (modify-phases %standard-phases
6722 (add-after 'unpack 'patch-file-names
6724 ;; 'ckbcomp' calls out to 'cat' (!). Give it the right file
6726 (substitute* '("Keyboard/ckbcomp")
6728 (string-append "\"" (which "cat")
6730 (add-before 'build 'make-doubled-bdfs
6731 (lambda* (#:key native-inputs inputs #:allow-other-keys)
6732 (invoke "make" "-C" "Fonts"
6734 (string-append "SHELL="
6735 (assoc-ref (or native-inputs inputs)
6739 (lambda* (#:key native-inputs inputs outputs #:allow-other-keys)
6740 (let ((out (assoc-ref %outputs "out")))
6741 (invoke "make" "install-linux"
6742 (string-append "prefix=" out)
6743 (string-append "SHELL="
6744 (assoc-ref (or native-inputs inputs)
6751 sharutils ; for 'uuencode'
6754 (list perl)) ; used by 'ckbcomp'
6755 (synopsis "Set up the Linux console font and keyboard")
6757 "console-setup provides the console with the same keyboard
6758 configuration scheme that the X Window System has. In particular, the
6759 @command{ckbcomp} program compiles an XKB keyboard description to a keymap
6760 suitable for @command{loadkeys} or @command{kbdcontrol}. As a result, there
6761 is no need to duplicate or change the console keyboard files just to make
6762 simple customizations.
6764 Besides the keyboard, the package also configures the font on the console. It
6765 includes a rich collection of fonts and supports several languages that would
6766 otherwise be unsupported on the console (such as Armenian, Georgian, Lao, and
6768 (home-page "https://salsa.debian.org/installer-team/console-setup/")
6770 ;; Most of the code is GPLv2+; the Expat license applies to 'setupcon' and
6771 ;; 'ckbcomp-mini'. The installed precompiled keyboard files are covered
6772 ;; by simple permissive licenses. See the 'COPYRIGHT' file.
6773 (license (list license:gpl2+
6776 (define-public xcur2png
6784 (url "https://github.com/eworm-de/xcur2png")
6786 (file-name (git-file-name name version))
6788 (base32 "0858wn2p14bxpv9lvaz2bz1rk6zk0g8zgxf8iy595m8fqv4q2fya"))))
6789 (build-system gnu-build-system)
6793 (list libpng libxcursor))
6794 (synopsis "Decode X cursors")
6796 "xcur2png is a program decomposes an X cursor into a set of PNG images and
6797 a configuration file reusable by xcursorgen.")
6798 (home-page "https://github.com/eworm-de/xcur2png")
6799 (license license:gpl3+)))
6801 (define-public gccmakedep
6808 (uri (string-append "mirror://xorg/individual/util/gccmakedep-"
6809 version ".tar.bz2"))
6811 (base32 "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj"))))
6812 (build-system gnu-build-system)
6813 (synopsis "Create dependencies in makefiles using 'gcc -M'")
6815 "@command{gccmakedep} is a deprecated program which calls @code{gcc -M}
6816 to output Makefile rules describing the dependencies of each source file, so
6817 that Make knows which object files must be recompiled when a dependency has
6819 (home-page "https://gitlab.freedesktop.org/xorg/util/gccmakedep")
6820 (license license:x11)))
6822 (define-public xdialog
6828 (uri (string-append "http://xdialog.free.fr/Xdialog-"
6829 version ".tar.bz2"))
6832 "16jqparb33lfq4cvd9l3jgd7fq86fk9gv2ixc8vgqibid6cnhi0x"))))
6837 ("gettext" ,gettext-minimal)
6840 `(#:configure-flags '("--with-gtk2")))
6841 (build-system gnu-build-system)
6842 (home-page "http://xdialog.free.fr/")
6843 (synopsis "Convert a terminal program into a program with an X interface")
6844 (description "X11 replacement for the text util dialog Xdialog is designed
6845 to be a drop-in replacement for the dialog and cdialog programs. It converts
6846 any terminal-based program into a program with an X interface. The dialogs
6847 are easier to see and use, and Xdialog adds more functionality such as a help
6848 button and box, a treeview, an editbox, file and directory selectors, a range
6849 box, and a calendar. It uses GTK+, and will match your desktop theme.")
6850 (license license:gpl2+)))
6852 (define-public xvfb-run
6855 (version "1.20.10-3")
6859 (uri (string-append "mirror://debian/pool/main/x/xorg-server/"
6860 "xorg-server_" version ".diff.gz"))
6862 (base32 "08gs9ni8ss8rw4n9cql1s8q05mj517vk1vm1varj1dsx75k4j25v"))))
6863 (build-system gnu-build-system)
6866 (modify-phases %standard-phases
6868 ;; Apply the source patch to an empty directory.
6869 (lambda* (#:key inputs #:allow-other-keys)
6870 (let* ((source (assoc-ref inputs "source"))
6871 (diff.gz (basename source))
6872 (diff (substring diff.gz 0 (string-rindex diff.gz #\.))))
6875 (copy-file source diff.gz)
6876 (invoke "gunzip" diff.gz)
6877 (invoke "patch" "-Np1" "-i" diff)
6878 (chdir "debian/local"))))
6879 (delete 'configure) ; nothing to configure
6882 (chmod "xvfb-run" #o755)
6883 (substitute* "xvfb-run"
6884 (("(\\(| )(fmt|stty|awk|cat|kill|getopt|mktemp|touch|rm|mcookie)"
6886 (string-append prefix (which command)))
6887 ;; These also feature in UI messages, so be more strict.
6888 (("(AUTHFILE |command -v |exec )(Xvfb|xauth)"
6890 (string-append prefix (which command))))))
6892 ;; There are no tests included. Here we test whether we can run
6893 ;; a simple client and whether xvfb-run --help succeeds
6894 ;; without xvfb-run itself relying on $PATH.
6895 (lambda* (#:key tests? #:allow-other-keys)
6897 (let ((old-PATH (getenv "PATH"))
6898 (xterm (which "xterm")))
6900 (invoke "./xvfb-run" xterm "-e" "true")
6901 (invoke "./xvfb-run" "--help")
6902 (setenv "PATH" old-PATH)))))
6904 (lambda* (#:key outputs #:allow-other-keys)
6905 (let* ((out (assoc-ref outputs "out"))
6906 (bin (string-append out "/bin"))
6907 (man (string-append out "/share/man/man1")))
6908 (install-file "xvfb-run" bin)
6909 (install-file "xvfb-run.1" man)))))))
6911 (list util-linux ; for getopt
6914 (list xterm)) ; for the test
6915 ;; This script is not part of the upstream xorg-server. It is provided only
6916 ;; as a patch added to Debian's package.
6917 (home-page "https://packages.debian.org/sid/xorg-server-source")
6918 (synopsis "Run X11 client or command in a virtual X server environment")
6920 "The @command{xvfb-run} wrapper simplifies running commands and scripts
6921 within a virtual X server environment. It sets up an X authority file or uses
6922 an existing user-specified one, writes a cookie to it, and then starts the
6923 @command{Xvfb} X server as a background process. It also takes care of killing
6924 the server and cleaning up before returning the exit status of the command.")
6925 (license (list license:x11 ; the script
6926 license:gpl2+)))) ; the man page
6928 (define-public setroot
6936 (url "https://github.com/ttzhou/setroot")
6937 (commit (string-append "v" version))))
6938 (file-name (git-file-name name version))
6940 (base32 "0w95828v0splk7bj5kfacp4pq6wxpyamvyjmahyvn5hc3ycq21mq"))))
6941 (build-system gnu-build-system)
6944 (list (string-append "CC=" ,(cc-for-target))
6945 (string-append "DESTDIR=" (assoc-ref %outputs "out"))
6948 #:tests? #f ; no tests
6950 (modify-phases %standard-phases
6951 (delete 'configure))))
6953 (list imlib2 libx11 libxinerama))
6954 (home-page "https://github.com/ttzhou/setroot")
6955 (synopsis "Simple X background setter inspired by imlibsetroot and feh")
6956 (description "Setroot is a lightweight X background setter with feh's
6957 syntax without its image viewing capabilities. It supports multiple monitors
6958 and can restore previously set wallpapers and options.")
6959 (license license:gpl3+)))