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 Nicolò Balzarotti <nicolo@nixo.xyz>
30 ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
31 ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
32 ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
33 ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
34 ;;; Copyright © 2021 qblade <qblade@protonmail.com>
35 ;;; Copyright © 2021 Lu Hui <luhux76@gmail.com>
37 ;;; This file is part of GNU Guix.
39 ;;; GNU Guix is free software; you can redistribute it and/or modify it
40 ;;; under the terms of the GNU General Public License as published by
41 ;;; the Free Software Foundation; either version 3 of the License, or (at
42 ;;; your option) any later version.
44 ;;; GNU Guix is distributed in the hope that it will be useful, but
45 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
46 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
47 ;;; GNU General Public License for more details.
49 ;;; You should have received a copy of the GNU General Public License
50 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
52 (define-module (gnu packages xorg)
53 #:use-module (guix gexp)
54 #:use-module ((guix licenses) #:prefix license:)
55 #:use-module (guix packages)
56 #:use-module (guix download)
57 #:use-module (guix git-download)
58 #:use-module (guix build-system copy)
59 #:use-module (guix build-system gnu)
60 #:use-module (guix build-system meson)
61 #:use-module (guix build-system perl)
62 #:use-module (guix build-system python)
63 #:use-module (guix utils)
64 #:use-module (gnu packages)
65 #:use-module (gnu packages aidc)
66 #:use-module (gnu packages anthy)
67 #:use-module (gnu packages autotools)
68 #:use-module (gnu packages bash)
69 #:use-module (gnu packages bison)
70 #:use-module (gnu packages check)
71 #:use-module (gnu packages compression)
72 #:use-module (gnu packages emacs)
73 #:use-module (gnu packages flex)
74 #:use-module (gnu packages fonts)
75 #:use-module (gnu packages fontutils)
76 #:use-module (gnu packages freedesktop)
77 #:use-module (gnu packages gettext)
78 #:use-module (gnu packages gl)
79 #:use-module (gnu packages glib)
80 #:use-module (gnu packages gnupg)
81 #:use-module (gnu packages gperf)
82 #:use-module (gnu packages gtk)
83 #:use-module (gnu packages haskell-xyz)
84 #:use-module (gnu packages inkscape)
85 #:use-module (gnu packages image)
86 #:use-module (gnu packages imagemagick)
87 #:use-module (gnu packages libbsd)
88 #:use-module (gnu packages libedit)
89 #:use-module (gnu packages linux)
90 #:use-module (gnu packages llvm)
91 #:use-module (gnu packages m4)
92 #:use-module (gnu packages ncurses)
93 #:use-module (gnu packages onc-rpc)
94 #:use-module (gnu packages pciutils)
95 #:use-module (gnu packages perl)
96 #:use-module (gnu packages perl-check)
97 #:use-module (gnu packages pkg-config)
98 #:use-module (gnu packages python)
99 #:use-module (gnu packages python-compression)
100 #:use-module (gnu packages python-crypto)
101 #:use-module (gnu packages python-xyz)
102 #:use-module (gnu packages qt)
103 #:use-module (gnu packages spice)
104 #:use-module (gnu packages video)
105 #:use-module (gnu packages xiph)
106 #:use-module (gnu packages xml)
107 #:use-module (gnu packages xdisorg))
111 ;; When cross-compiling certain packages, "--disable-malloc0returnsnull"
112 ;; needs to be passed. Otherwise, the configure script will try to run a
113 ;; binary for the host on the build machine.
114 (define (malloc0-flags)
115 (if (%current-target-system)
116 ;; At least on glibc-based systems, malloc(0) evaluates to a non-NULL
117 ;; pointer (except in out-of-memory situations). On other systems,
118 ;; --enable-malloc0returnsnull might be required instead.
119 '("--disable-malloc0returnsnull")
122 ;; packages without propagated input
123 ;; (rationale for this separation: The packages in PROPAGATED_INPUTS need to
124 ;; be defined first, the split makes book-keeping easier.)
127 ;; compiles only on macos
128 ;; (define-public applewmproto
131 (define xorg-cf-files
132 ;; The xorg-cf-files package contains the data files for the imake utility,
133 ;; defining the known settings for a wide variety of platforms (many of which
134 ;; have not been verified or tested in over a decade), and for many of the
135 ;; libraries formerly delivered in the X.Org monolithic releases.
137 ;; License: x11, see COPYING
140 (uri "mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2")
142 (base32 "0kckng0zs1viz0nr84rdl6dswgip7ndn4pnh5nfwnviwpsfmmksd"))))
151 (uri (string-append "mirror://xorg/individual/util/imake-"
154 (base32 "00m7l90ws72k1qm101sd2rx92ckd50cszyng5d4dd77jncbf9lmq"))))
155 (build-system gnu-build-system)
159 (list xorg-cf-files xorgproto))
162 #~(modify-phases %standard-phases
163 (add-after 'install 'install-data
164 (lambda* (#:key inputs outputs #:allow-other-keys)
165 (let ((out (assoc-ref outputs "out"))
166 (unpack (assoc-ref %standard-phases 'unpack))
167 (patch-source-shebangs
168 (assoc-ref %standard-phases 'patch-source-shebangs)))
169 (mkdir "xorg-cf-files")
170 (with-directory-excursion "xorg-cf-files"
171 (unpack #:source #$xorg-cf-files)
172 (patch-source-shebangs #:source #$xorg-cf-files)
173 (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf"
174 "linux.cf" "Amoeba.cf" "cygwin.cf")
175 (("/bin/sh") (which "bash")))
176 (invoke "./configure"
177 (string-append "SHELL=" (which "bash"))
178 (string-append "--prefix=" out))
179 (invoke "make" "install"))))))))
180 (home-page "https://www.x.org/")
181 (synopsis "Source code configuration and build system")
183 "Imake is a deprecated source code configuration and build system which
184 has traditionally been supplied by and used to build the X Window System in
185 X11R6 and previous releases. As of the X Window System X11R7 release, the X
186 Window system has switched to using GNU autotools as the primary build system,
187 and the Imake system is now deprecated, and should not be used by new software
188 projects. Software developers are encouraged to migrate software to the GNU
190 (license license:x11)))
199 "mirror://xorg/individual/util/"
200 "lndir-" version ".tar.bz2"))
203 "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"))))
204 (build-system gnu-build-system)
209 (home-page "https://www.x.org/")
210 (synopsis "Symlink directory into tree")
211 (description "Create a shadow directory of symbolic links to another
213 (license license:x11)))
215 (define-public bdftopcf
223 "mirror://xorg/individual/app/bdftopcf-"
228 "18hiscgljrz10zjcws25bis32nyrg3hzgmiq6scrh7izqmgz0kab"))))
229 (build-system gnu-build-system)
234 (home-page "https://www.x.org/wiki/")
235 (synopsis "Convert X font from BDF to PCF")
237 "BDFtoPCF is a font compiler for the X server and font server. It
238 converts X font from Bitmap Distribution Format to Portable Compiled Format
239 which can be read by any architecture.")
240 (license license:x11)))
242 (define-public xorgproto
248 (uri (string-append "ftp://ftp.freedesktop.org/pub/xorg//individual/proto/"
249 "xorgproto-" version ".tar.bz2"))
252 "05d0kib351qmnlfimaznaw0220fr0ym7fx2gn9h2jqxxilxncbxa"))))
253 (build-system gnu-build-system)
255 ;; To get util-macros in (almost?) all package inputs.
257 (home-page "https://cgit.freedesktop.org/xorg/proto/xorgproto")
258 (synopsis "Xorg protocol headers")
260 "This package provides the headers and specification documents defining
261 the core protocol and (many) extensions for the X Window System.")
262 (license license:x11)))
264 (define-public bigreqsproto
266 (name "bigreqsproto")
272 "mirror://xorg/individual/proto/bigreqsproto-"
277 "07hvfm84scz8zjw14riiln2v4w03jlhp756ypwhq27g48jmic8a6"))))
278 (build-system gnu-build-system)
279 (native-inputs (list pkg-config))
280 (home-page "https://www.x.org/wiki/")
281 (synopsis "Xorg BigReqsProto protocol headers")
283 "Big Requests Extension defines a protocol to enable the use of
284 requests that exceed 262140 bytes in length.")
285 (license license:x11)
286 (properties `((superseded . ,xorgproto)))))
288 (define-public compositeproto
290 (name "compositeproto")
296 "mirror://xorg/individual/proto/compositeproto-"
301 "1z0crmf669hirw4s7972mmp8xig80kfndja9h559haqbpvq5k4q4"))))
302 (build-system gnu-build-system)
307 (home-page "https://www.x.org/wiki/")
308 (synopsis "Xorg CompositeProto protocol headers")
310 "Composite Extension contains header files and documentation for
311 the damage protocol.")
312 (license license:x11)
313 (properties `((superseded . ,xorgproto)))))
315 (define-public damageproto
323 "mirror://xorg/individual/proto/damageproto-"
328 "0nzwr5pv9hg7c21n995pdiv0zqhs91yz3r8rn3aska4ykcp12z2w"))))
329 (build-system gnu-build-system)
330 (native-inputs (list pkg-config))
331 (home-page "https://www.x.org/wiki/")
332 (synopsis "Xorg DamageProto protocol headers")
334 "Damage Extension contains header files and documentation for
335 the damage protocol.")
336 (license license:x11)
337 (properties `((superseded . ,xorgproto)))))
339 (define-public dmxproto
347 "mirror://xorg/individual/proto/dmxproto-"
352 "02b5x9dkgajizm8dqyx2w6hmqx3v25l67mgf35nj6sz0lgk52877"))))
353 (build-system gnu-build-system)
354 (native-inputs (list pkg-config))
355 (home-page "https://www.x.org/wiki/")
356 (synopsis "Xorg DMXProto protocol headers")
358 "DMX (Distributed Multihead X) Extension defines a protocol for clients
359 to access a front-end proxy X server that controls multiple back-end X
360 servers making up a large display.")
361 (license license:x11)
362 (properties `((superseded . ,xorgproto)))))
364 (define-public dri2proto
372 "mirror://xorg/individual/proto/dri2proto-"
377 "015az1vfdqmil1yay5nlsmpf6cf7vcbpslxjb72cfkzlvrv59dgr"))))
378 (build-system gnu-build-system)
379 (home-page "https://www.x.org/wiki/")
380 (synopsis "Xorg DRI2Proto protocol headers")
382 "Direct Rendering Infrastructure 2 Extension defines a protocol to
383 securely allow user applications to access the video hardware without
384 requiring data to be passed through the X server.")
385 (license license:x11)
386 (properties `((superseded . ,xorgproto)))))
388 (define-public dri3proto
396 "mirror://xorg/individual/proto/dri3proto-"
401 "0x609xvnl8jky5m8jdklw4nymx3irkv32w99dfd8nl800bblkgh1"))))
402 (build-system gnu-build-system)
403 (home-page "https://www.x.org/wiki/")
404 (synopsis "Xorg DRI3Proto protocol headers")
406 "Direct Rendering Infrastructure 3 Extension provides mechanisms to
407 translate between direct rendered buffers and X pixmaps. When combined with
408 the Present extension, a complete direct rendering solution for OpenGL is
410 (license (license:x11-style "file://dri3proto.h"
411 "See 'dri3proto.h' in the distribution."))
412 (properties `((superseded . ,xorgproto)))))
414 (define-public %app-defaults-dir "/lib/X11/app-defaults")
416 (define-public editres
424 "mirror://xorg/individual/app/" name "-"
429 "04awfwmy3f9f0bchidc4ssbgrbicn5gzasg3jydpfnp5513d76h8"))))
430 (build-system gnu-build-system)
433 (list (string-append "--with-appdefaultdir="
434 %output ,%app-defaults-dir))))
436 (list libxaw libxmu libxt))
439 (home-page "https://www.x.org/wiki/")
440 (synopsis "Tool to browse and edit X Toolkit resource specifications")
442 "Editres is a tool that allows users and application developers to view
443 the full widget hierarchy of any X Toolkit application that speaks the Editres
444 protocol. In addition, editres will help the user construct resource
445 specifications, allow the user to apply the resource to the application and
446 view the results dynamically. Once the user is happy with a resource
447 specification editres will append the resource string to the user's X
449 (license license:x11)))
452 (define-public encodings
460 "mirror://xorg/individual/font/encodings-"
464 (base32 "0caafx0yqqnqyvbalxhh3mb0r9v36xmcy5zjhygb2i508dhy35mx"))))
465 (build-system gnu-build-system)
470 (home-page "https://www.x.org/wiki/")
471 (synopsis "Xorg font encoding files")
472 (description "Xorg font encoding files.")
473 (license license:public-domain)))
475 (define (%xorg-font-origin font version hash)
478 (uri (string-append "mirror://xorg/individual/font/" font "-"
481 (modules '((guix build utils)))
483 ;; Do not include timestamps in '.pcf.gz' files.
485 (substitute* "Makefile.in"
486 (("^COMPRESS = (.*)$" _ rest)
487 (string-append "COMPRESS = " (string-trim-right rest)
491 (define-syntax-rule (xorg-font-origin font version hash)
492 "Expand to the 'origin' form for the given Xorg font package."
493 (%xorg-font-origin font version (base32 hash)))
495 (define-public font-adobe100dpi
497 (name "font-adobe100dpi")
499 (source (xorg-font-origin
500 "font-adobe-100dpi" version
501 "0m60f5bd0caambrk8ksknb5dks7wzsg7g7xaf0j21jxmx8rq9h5j"))
502 (build-system gnu-build-system)
504 (list bdftopcf font-util mkfontdir))
508 `(#:configure-flags (list
509 ;; install fonts into subdirectory of package output instead of
510 ;; font-util-?.?.?/share/fonts/X11
511 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
512 (home-page "https://www.x.org/wiki/")
513 (synopsis "Xorg adobe-100dpi fonts")
514 (description "Xorg adobe-100dpi fonts.")
515 (license license:x11)))
518 (define-public font-adobe75dpi
520 (name "font-adobe75dpi")
522 (source (xorg-font-origin
523 "font-adobe-75dpi" version
524 "02advcv9lyxpvrjv8bjh1b797lzg6jvhipclz49z8r8y98g4l0n6"))
525 (build-system gnu-build-system)
527 (list bdftopcf font-util mkfontdir))
531 `(#:configure-flags (list
532 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
533 (home-page "https://www.x.org/wiki/")
534 (synopsis "Xorg adobe-75dpi fonts")
535 (description "Xorg adobe-75dpi fonts.")
536 (license license:x11)))
540 ;; (define-public font-adobe-utopia100dpi
541 ;; (define-public font-adobe-utopia75dpi
542 ;; (define-public font-adobe-utopia-type1
545 (define-public font-alias
549 (source (xorg-font-origin
551 "0xjjjindczv3g7m1597l0x19zz75xy70wh5garghz61fpzl1l4gk"))
552 (build-system gnu-build-system)
553 (native-inputs (list pkg-config))
555 `(#:phases (modify-phases %standard-phases
557 'install 'install-fonts-dir
558 ;; The X font server will not add directories to the font
559 ;; path unless they contain a "fonts.dir" file, so add some
561 (lambda* (#:key outputs #:allow-other-keys)
562 (let ((out (assoc-ref outputs "out")))
563 (for-each (lambda (d)
564 (call-with-output-file
565 (string-append out "/share/fonts/X11"
569 '("75dpi" "100dpi" "misc" "cyrillic"))
571 (home-page "https://www.x.org/wiki/")
572 (synopsis "Xorg font aliases")
574 "This package provides some common aliases for Xorg fonts.
575 For example: @code{6x10}, @code{9x15bold}, etc.")
576 (license license:x11)))
579 (define-public font-arabic-misc
581 (name "font-arabic-misc")
583 (source (xorg-font-origin
585 "1x246dfnxnmflzf0qzy62k8jdpkb6jkgspcjgbk8jcq9lw99npah"))
586 (build-system gnu-build-system)
588 (list mkfontdir bdftopcf))
591 (home-page "https://www.x.org/wiki/")
592 (synopsis "Xorg arabic-misc font")
593 (description "Xorg arabic-misc font.")
594 (license license:x11)))
598 ;; (define-public font-bh100dpi
599 ;; (define-public font-bh75dpi
600 ;; (define-public font-bh-lucidatypewriter100dpi
601 ;; (define-public font-bh-lucidatypewriter75dpi
602 ;; (define-public font-bh-ttf
603 ;; (define-public font-bh-type1
604 ;; (define-public font-bitstream100dpi
605 ;; (define-public font-bitstream75dpi
608 (define-public font-cronyx-cyrillic
610 (name "font-cronyx-cyrillic")
612 (source (xorg-font-origin
614 "0ai1v4n61k8j9x2a1knvfbl2xjxk3xxmqaq3p9vpqrspc69k31kf"))
615 (build-system gnu-build-system)
617 (list mkfontdir bdftopcf))
620 (home-page "https://www.x.org/wiki/")
621 (synopsis "Xorg cronyx-cyrillic font")
622 (description "Xorg cronyx-cyrillic font.")
623 (license license:x11)))
627 ;; (define-public font-cursor-misc
630 ;; (define-public font-daewoo-misc
633 (define-public font-dec-misc
635 (name "font-dec-misc")
637 (source (xorg-font-origin
639 "0yzza0l4zwyy7accr1s8ab7fjqkpwggqydbm2vc19scdby5xz7g1"))
640 (build-system gnu-build-system)
642 (list mkfontdir bdftopcf))
645 (home-page "https://www.x.org/wiki/")
646 (synopsis "Xorg dec-misc font")
647 (description "Xorg dec-misc font.")
648 (license license:x11)))
652 ;; (define-public font-ibm-type1
654 (define-public font-isas-misc
656 (name "font-isas-misc")
658 (source (xorg-font-origin
660 "0rx8q02rkx673a7skkpnvfkg28i8gmqzgf25s9yi0lar915sn92q"))
661 (build-system gnu-build-system)
663 (list mkfontdir bdftopcf))
666 (home-page "https://www.x.org/wiki/")
667 (synopsis "Xorg isas-misc font")
668 (description "Xorg isas-misc font.")
669 (license license:x11)))
673 ;; (define-public font-jis-misc
676 (define-public font-micro-misc
678 (name "font-micro-misc")
680 (source (xorg-font-origin
682 "1dldxlh54zq1yzfnrh83j5vm0k4ijprrs5yl18gm3n9j1z0q2cws"))
683 (build-system gnu-build-system)
685 (list mkfontdir bdftopcf))
688 (home-page "https://www.x.org/wiki/")
689 (synopsis "Xorg micro-misc font")
690 (description "Xorg micro-misc font.")
691 (license license:public-domain)))
694 (define-public font-misc-cyrillic
696 (name "font-misc-cyrillic")
698 (source (xorg-font-origin
700 "0q2ybxs8wvylvw95j6x9i800rismsmx4b587alwbfqiw6biy63z4"))
701 (build-system gnu-build-system)
703 (list mkfontdir bdftopcf))
706 (home-page "https://www.x.org/wiki/")
707 (synopsis "Xorg misc-cyrillic fonts")
708 (description "Xorg misc-cyrillic fonts.")
709 (license license:x11)))
712 (define-public font-misc-ethiopic
714 (name "font-misc-ethiopic")
716 (source (xorg-font-origin
718 "1q2azkdwc4x3kh53xclwpf9q654k70lhiyns1cjq594wvxnhz339"))
719 (build-system gnu-build-system)
721 (list mkfontdir mkfontscale))
724 (home-page "https://www.x.org/wiki/")
725 (synopsis "Xorg misc-ethiopic fonts")
726 (description "Xorg misc-ethiopic fonts.")
727 (license license:x11)))
731 ;; (define-public font-misc-meltho
734 (define-public font-misc-misc
736 (name "font-misc-misc")
738 (source (xorg-font-origin
740 "150pq6n8n984fah34n3k133kggn9v0c5k07igv29sxp1wi07krxq"))
741 (build-system gnu-build-system)
743 (list mkfontdir font-util bdftopcf))
747 `(#:configure-flags (list
748 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
749 (home-page "https://www.x.org/wiki/")
750 (synopsis "Xorg misc-misc fonts")
751 (description "Xorg misc-misc fixed fonts.")
752 (license license:public-domain)))
755 (define-public font-mutt-misc
757 (name "font-mutt-misc")
759 (source (xorg-font-origin
761 "13qghgr1zzpv64m0p42195k1kc77pksiv059fdvijz1n6kdplpxx"))
762 (build-system gnu-build-system)
764 (list mkfontdir bdftopcf))
767 (home-page "https://www.x.org/wiki/")
768 (synopsis "Xorg mutt-misc fonts")
769 (description "Xorg mutt-misc fonts.")
770 (license license:x11)))
773 (define-public font-schumacher-misc
775 (name "font-schumacher-misc")
777 (source (xorg-font-origin
779 "0nkym3n48b4v36y4s927bbkjnsmicajarnf6vlp7wxp0as304i74"))
780 (build-system gnu-build-system)
782 (list mkfontdir font-util bdftopcf))
786 `(#:configure-flags (list
787 (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
788 (home-page "https://www.x.org/wiki/")
789 (synopsis "Xorg schumacher-misc fonts")
790 (description "Xorg schumacher-misc fonts.")
791 (license license:x11)))
794 (define-public font-screen-cyrillic
796 (name "font-screen-cyrillic")
798 (source (xorg-font-origin
800 "0yayf1qlv7irf58nngddz2f1q04qkpr5jwp4aja2j5gyvzl32hl2"))
801 (build-system gnu-build-system)
803 (list mkfontdir bdftopcf))
806 (home-page "https://www.x.org/wiki/")
807 (synopsis "Xorg screen-cyrillic fonts")
808 (description "Xorg screen-cyrillic fonts.")
809 (license license:x11)))
812 (define-public font-sony-misc
814 (name "font-sony-misc")
816 (source (xorg-font-origin
818 "1xfgcx4gsgik5mkgkca31fj3w72jw9iw76qyrajrsz1lp8ka6hr0"))
819 (build-system gnu-build-system)
821 (list mkfontdir bdftopcf))
824 (home-page "https://www.x.org/wiki/")
825 (synopsis "Xorg sony-misc fonts")
826 (description "Xorg sony-misc fonts.")
827 (license license:x11)))
830 (define-public font-sun-misc
832 (name "font-sun-misc")
834 (source (xorg-font-origin
836 "1q6jcqrffg9q5f5raivzwx9ffvf7r11g6g0b125na1bhpz5ly7s8"))
837 (build-system gnu-build-system)
839 (list mkfontdir bdftopcf))
842 (home-page "https://www.x.org/wiki/")
843 (synopsis "Xorg sun-misc fonts")
844 (description "Xorg sun-misc fonts.")
845 (license license:x11)))
848 (define-public font-util
856 "mirror://xorg/individual/font/font-util-"
860 (base32 "10i2a8b3d1h3w7klsqf31iz7zbd6l8wglil54fkhdb1385281n1s"))))
861 (build-system gnu-build-system)
862 (native-inputs (list pkg-config))
863 (home-page "https://www.x.org/wiki/")
864 (synopsis "Xorg font utilities")
866 "Xorg font package creation/installation utilities.")
867 (license license:x11)))
870 (define-public font-winitzki-cyrillic
872 (name "font-winitzki-cyrillic")
874 (source (xorg-font-origin
876 "181n1bgq8vxfxqicmy1jpm1hnr6gwn1kdhl6hr4frjigs1ikpldb"))
877 (build-system gnu-build-system)
879 (list mkfontdir bdftopcf))
882 (home-page "https://www.x.org/wiki/")
883 (synopsis "Xorg winitzki-cyrillic font")
884 (description "Xorg winitzki-cyrillic font.")
885 (license license:public-domain)))
888 (define-public font-xfree86-type1
890 (name "font-xfree86-type1")
892 (source (xorg-font-origin
894 "0jp3zc0qfdaqfkgzrb44vi9vi0a8ygb35wp082yz7rvvxhmg9sya"))
895 (build-system gnu-build-system)
897 (list mkfontdir mkfontscale))
900 (home-page "https://www.x.org/wiki/")
901 (synopsis "Xorg xfree86-type1 font")
902 (description "Xorg xfree86-type1 font.")
903 (license license:x11)))
906 (define-public fontsproto
914 "mirror://xorg/individual/proto/fontsproto-"
919 "1f2sdsd74y34nnaf4m1zlcbhyv8xb6irnisc99f84c4ivnq4d415"))))
920 (build-system gnu-build-system)
921 (native-inputs (list pkg-config))
922 (home-page "https://www.x.org/wiki/")
923 (synopsis "Xorg FontsProto protocol headers")
925 "Fonts Extension contains header files and documentation for
926 the fonts protocol.")
927 (license license:x11)
928 (properties `((superseded . ,xorgproto)))))
930 (define-public glproto
938 "mirror://xorg/individual/proto/glproto-"
943 "0h5ykmcddwid5qj6sbrszgkcypwn3mslvswxpgy2n2iixnyr9amd"))))
944 (build-system gnu-build-system)
945 (native-inputs (list pkg-config))
946 (home-page "https://www.x.org/wiki/")
947 (synopsis "Xorg GLProto protocol headers")
949 "OpenGL Extension defines a protocol for the client to send 3D
950 rendering commands to the X server.")
951 (license license:x11)
952 (properties `((superseded . ,xorgproto)))))
954 (define-public iceauth
962 "mirror://xorg/individual/app/iceauth-"
967 "1ik0mdidmyvy48hn8p2hwvf3535rf3m96hhf0mvcqrbj44x23vp6"))))
968 (build-system gnu-build-system)
973 (home-page "https://www.x.org/wiki/")
974 (synopsis "ICE authority file utility")
976 "ICEAuth program is used to edit and display the authorization
977 information used in connecting with ICE (Inter-Client Exchange). It
978 operates very much like the xauth program for X11 connection
979 authentication records.")
980 (license license:x11)))
983 (define-public inputproto
991 "mirror://xorg/individual/proto/inputproto-"
996 "07gk7v006zqn3dcfh16l06gnccy7xnqywf3vl9c209ikazsnlfl9"))))
997 (build-system gnu-build-system)
998 (native-inputs (list pkg-config))
999 (home-page "https://www.x.org/wiki/")
1000 (synopsis "Xorg InputProto protocol headers")
1002 "Input Extension defines a protocol to provide additional input
1003 devices management such as graphic tablets.")
1004 (license license:x11)
1005 (properties `((superseded . ,xorgproto)))))
1007 (define-public kbproto
1015 "mirror://xorg/individual/proto/kbproto-"
1020 "0mxqj1pzhjpz9495vrjnpi10kv2n1s4vs7di0sh3yvipfq5j30pq"))))
1021 (build-system gnu-build-system)
1022 (native-inputs (list pkg-config))
1023 (home-page "https://www.x.org/wiki/")
1024 (synopsis "Xorg KBProto protocol headers")
1026 "X Keyboard (XKB) Extension defines a protocol to provide a number
1027 of new capabilities and controls for text keyboards.")
1028 (license license:x11)
1029 (properties `((superseded . ,xorgproto)))))
1031 ;; requires applewmproto, which compiles only on macos
1032 ;; (define-public libapplewm
1035 (define-public libdmx
1043 "mirror://xorg/individual/lib/libdmx-"
1048 "0hvjfhrcym770cr0zpqajdy3cda30aiwbjzv16iafkqkbl090gr5"))))
1049 (build-system gnu-build-system)
1051 '(#:configure-flags '("--disable-static")))
1053 (list xorgproto libxext libx11))
1056 (home-page "https://www.x.org/wiki/")
1057 (synopsis "Xorg DMX library")
1059 "DMX (Distributed Multihead X) extension library.")
1060 (license license:x11)))
1063 (define-public libxshmfence
1065 (name "libxshmfence")
1070 "mirror://xorg/individual/lib/"
1071 name "-" version ".tar.bz2"))
1074 "1ir0j92mnd1nk37mrv9bz5swnccqldicgszvfsh62jd14q6k115q"))))
1075 (build-system gnu-build-system)
1077 '(#:configure-flags '("--disable-static")))
1078 (native-inputs (list pkg-config))
1079 (inputs (list xorgproto))
1080 (home-page "https://www.x.org/")
1081 (synopsis "Xorg shared memory fences library")
1083 "This library provides an interface to shared-memory fences for
1084 synchronization between the X server and direct-rendering clients.")
1086 ;; Same license as libevdev.
1087 (license (license:x11-style "file://COPYING"))))
1090 (define-public libfontenc
1098 "mirror://xorg/individual/lib/libfontenc-"
1103 "0y90170dp8wsidr1dzza0grxr1lfh30ji3b5vkjz4j6x1n0wxz1c"))))
1104 (build-system gnu-build-system)
1106 '(#:configure-flags '("--disable-static")))
1108 (list zlib xorgproto))
1111 (home-page "https://gitlab.freedesktop.org/xorg/lib/libfontenc")
1112 (synopsis "Xorg font encoding library")
1113 (description "Xorg font encoding library.")
1114 (license license:x11)))
1117 (define-public libfs
1125 "mirror://xorg/individual/lib/libFS-"
1129 (base32 "03xxyvpfa3rhqcld4p2chkil482jn9cp80hj17jdybcv2hkkgqf8"))))
1130 (build-system gnu-build-system)
1132 (list xtrans xorgproto))
1135 (home-page "https://www.x.org/wiki/")
1136 (synopsis "Xorg Font Service client library")
1138 "Font Service client library is used by clients of X Font
1139 Servers (xfs), such as xfsinfo, fslsfonts, and the X servers
1141 (license license:x11)))
1144 (define-public libpciaccess
1146 (name "libpciaccess")
1152 "mirror://xorg/individual/lib/libpciaccess-"
1157 "12glp4w1kgvmqn89lk19cgr6jccd3awxra4dxisp7pagi06rsk11"))))
1158 (build-system gnu-build-system)
1160 '(;; Make sure libpciaccess can read compressed 'pci.ids' files as
1161 ;; provided by pciutils.
1164 (string-append "--with-pciids-path="
1165 (assoc-ref %build-inputs "pciutils")
1169 (modify-phases %standard-phases
1170 (add-after 'install 'add-L-zlib
1171 (lambda* (#:key inputs outputs #:allow-other-keys)
1172 ;; Provide '-LZLIB/lib' next to '-lz' in the .la file.
1173 (let ((zlib (assoc-ref inputs "zlib"))
1174 (out (assoc-ref outputs "out")))
1175 (substitute* (string-append out "/lib/libpciaccess.la")
1177 (string-append "-L" zlib "/lib -lz")))
1180 (list zlib pciutils)) ;for 'pci.ids.gz'
1183 (home-page "https://www.x.org/wiki/")
1184 (synopsis "Xorg PCI access library")
1185 (description "Xorg Generic PCI access library.")
1186 (license license:x11)))
1189 (define-public libpthread-stubs
1191 (name "libpthread-stubs")
1197 "mirror://xorg/individual/xcb/libpthread-stubs-"
1202 "0cz7s9w8lqgzinicd4g36rjg08zhsbyngh0w68c3np8nlc8mkl74"))))
1203 (build-system gnu-build-system)
1204 (native-inputs (list pkg-config))
1205 (home-page "https://www.x.org/wiki/")
1206 (synopsis "Library with pthread stubs")
1208 "This library provides weak aliases for pthread functions not
1209 provided in libc or otherwise available by default. Libraries like
1210 libxcb rely on pthread stubs to use pthreads optionally, becoming
1211 thread-safe when linked to libpthread, while avoiding any performance
1212 hit when running single-threaded.")
1213 (license license:x11)))
1216 (define-public libsm
1224 "mirror://xorg/individual/lib/libSM-"
1229 "1fwwfq9v3sqmpzpscymswxn76xhxnysa24pfim1mcpxhvjcl89id"))))
1230 (build-system gnu-build-system)
1232 '(#:configure-flags '("--disable-static")))
1234 (list libice)) ; SMlib.h includes ICElib.h
1236 `(("xtrans" ,xtrans)
1237 ("libuuid" ,util-linux "lib")))
1240 (home-page "https://www.x.org/wiki/")
1241 (synopsis "Xorg Session Management library")
1242 (description "Xorg Session Management library.")
1243 (license license:x11)))
1246 (define-public libwindowswm
1248 (name "libwindowswm")
1254 "mirror://xorg/individual/lib/libWindowsWM-"
1259 "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15"))))
1260 (build-system gnu-build-system)
1262 (list xorgproto libxext libx11))
1265 (home-page "https://www.x.org/wiki/")
1266 (synopsis "Xorg WindowsWM library")
1268 "Cygwin/X rootless window management extension.
1269 WindowsWM is a simple library designed to interface with the Windows-WM
1270 extension. This extension allows X window managers to better interact
1271 with the Cygwin XWin server when running X11 in a rootless mode.")
1272 (license license:x11)))
1275 (define-public libxcomposite
1277 (name "libxcomposite")
1283 "mirror://xorg/individual/lib/libXcomposite-"
1288 "13sfcglvz87vl58hd9rszwr73z0z4nwga3c12rfh7f5s2ln8l8dk"))))
1289 (build-system gnu-build-system)
1291 '(#:configure-flags '("--disable-static")))
1293 ;; xcomposite.pc refers to all these.
1294 (list xorgproto libxfixes libx11))
1297 (home-page "https://www.x.org/wiki/")
1298 (synopsis "Xorg Composite library")
1300 "Client library for the Composite extension to the X11 protocol.")
1301 (license license:x11)))
1304 (define-public libxdmcp
1312 "mirror://xorg/individual/lib/libXdmcp-"
1317 "0ab53h0rkq721ihk5hi469x500f3pgbkm1wy01yf24x5m923nli0"))))
1318 (build-system gnu-build-system)
1320 '(#:configure-flags '("--disable-static")))
1322 (list libbsd xorgproto))
1325 (home-page "https://www.x.org/wiki/")
1326 (synopsis "Xorg Display Manager Control Protocol library")
1327 (description "Xorg Display Manager Control Protocol library.")
1328 (license license:x11)))
1331 (define-public libxft
1339 "mirror://xorg/individual/lib/libXft-"
1344 "05lja9s54090xwh31r0bqms4v3pimng5xr09g2rdnafx2vk6hp12"))))
1345 (build-system gnu-build-system)
1347 '(#:configure-flags '("--disable-static")))
1349 ;; xft.pc refers to all these.
1350 `(("libxrender" ,libxrender)
1351 ("freetype" ,freetype)
1352 ("fontconfig" ,fontconfig)))
1354 (list libx11 xorgproto))
1357 (home-page "https://www.x.org/wiki/")
1358 (synopsis "Xorg FreeType library")
1360 "Xorg FreeType library connects X applications with the FreeType font
1361 rasterization library. Xft uses fontconfig to locate fonts so it has no
1362 configuration files.")
1363 (license license:x11)))
1366 (define-public libxkbfile
1374 "mirror://xorg/individual/lib/libxkbfile-"
1379 "1irq9crvscd3yb8sr802dhvvfr35jdy1n2yz094xplmd42mbv3bm"))))
1380 (build-system gnu-build-system)
1382 '(#:configure-flags '("--disable-static")))
1384 ;; Required in xkbfile.pc.
1385 (list libx11 kbproto))
1388 (home-page "https://www.x.org/wiki/")
1389 (synopsis "Xorg XKB file handling library")
1390 (description "Xorg XKB file handling library.")
1391 (license license:x11)))
1394 (define-public libxmu
1402 "mirror://xorg/individual/lib/libXmu-"
1407 "0cdpqnx6258i4l6qhphvkdiyspysg0i5caqjy820kp63wwjk4d4w"))))
1408 (build-system gnu-build-system)
1410 '(#:configure-flags '("--disable-static")))
1412 (list libxt xorgproto libxext))
1415 (home-page "https://www.x.org/wiki/")
1416 (synopsis "Xorg Xmu library")
1418 "Xmu library contains miscellaneous utilities and is not part of the
1419 Xlib standard. It is intended to support clients in the Xorg distribution;
1420 vendors may choose not to distribute this library if they wish. Therefore,
1421 applications developers who depend on this library should be prepared to
1422 treat it as part of their software base when porting.")
1423 (license license:x11)))
1426 (define-public libxpm
1434 "mirror://xorg/individual/lib/libXpm-"
1439 "09dc6nwlb2122h02vl64k9x56mxnyqz2gwpga0abfv4bb1bxmlcw"))))
1440 (build-system gnu-build-system)
1442 '(#:configure-flags '("--disable-static")))
1444 (list libxt xorgproto libxext))
1446 `(("gettext" ,gettext-minimal)
1447 ("pkg-config" ,pkg-config)))
1448 (home-page "https://www.x.org/wiki/")
1449 (synopsis "Xorg XPM library")
1450 (description "XPM (X Pixmap) image file format library.")
1451 (license license:x11)))
1454 (define-public libxres
1462 "mirror://xorg/individual/lib/libXres-"
1467 "049b7dk6hx47161hg47ryjrm6pwsp27r5pby05b0wqb1pcggprmn"))))
1468 (build-system gnu-build-system)
1470 '(#:configure-flags '("--disable-static")))
1472 (list xorgproto libxext libx11))
1475 (home-page "https://www.x.org/wiki/")
1476 (synopsis "Xorg Resource extension library")
1477 (description "X Resource extension library.")
1478 (license license:x11)))
1481 (define-public libxscrnsaver
1483 (name "libxscrnsaver")
1489 "mirror://xorg/individual/lib/libXScrnSaver-"
1494 "1y4vx1vabg7j9hamp0vrfrax5b0lmgm3h0lbgbb3hnkv3dd0f5zr"))))
1495 (build-system gnu-build-system)
1497 '(#:configure-flags '("--disable-static")))
1499 (list libx11 libxext xorgproto))
1502 (home-page "https://www.x.org/wiki/")
1503 (synopsis "Xorg Screen Saver library")
1504 (description "X11 Screen Saver extension client library.")
1505 (license license:x11)))
1508 (define-public libxxf86dga
1510 (name "libxxf86dga")
1515 (uri (string-append "mirror://xorg/individual/lib/"
1516 "libXxf86dga-" version ".tar.bz2"))
1518 (base32 "00vjvcdlc1sga251jkxn6gkxmx9h5n290ffxxpa40qbca1gvr61b"))))
1519 (build-system gnu-build-system)
1521 '(#:configure-flags '("--disable-static")))
1525 (list libx11 libxext))
1528 (home-page "https://www.x.org/wiki/")
1529 (synopsis "Xorg XFree86-DGA library")
1530 (description "Client library for the XFree86-DGA extension.")
1531 (license license:x11)))
1542 "mirror://xorg/individual/app/luit-"
1547 "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h"))
1548 ;; See https://bugs.freedesktop.org/show_bug.cgi?id=47792;
1549 ;; should become obsolete with the next release.
1550 (patches (search-patches "luit-posix.patch"))))
1551 (build-system gnu-build-system)
1556 (home-page "https://www.x.org/wiki/")
1557 (synopsis "Convert terminal I/O from legacy encodings to UTF-8")
1559 "Luit is a filter that can be run between an arbitrary application and
1560 a UTF-8 terminal emulator such as xterm. It will convert application
1561 output from the locale's encoding into UTF-8, and convert terminal
1562 input from UTF-8 into the locale's encoding.")
1563 (license license:x11)))
1566 (define-public makedepend
1574 "mirror://xorg/individual/util/makedepend-"
1579 "072h9nzh8s5vqfz35dli4fba36fnr219asjrb7p89n8ph0paan6m"))))
1580 (build-system gnu-build-system)
1583 (native-inputs (list pkg-config))
1584 (home-page "https://www.x.org/wiki/")
1585 (synopsis "Xorg makedepend utility")
1587 "Makedepend is an utility for creating dependencies in makefiles.")
1588 (license license:x11)))
1591 (define-public mkfontscale
1593 (name "mkfontscale")
1599 "mirror://xorg/individual/app/mkfontscale-"
1603 (base32 "1ixsnsm2mn0zy9ksdid0lj6irnhvasfik9mz8bbrs5sajzmra16a"))))
1604 (build-system gnu-build-system)
1606 (list zlib xorgproto freetype libfontenc))
1609 (home-page "https://www.x.org/wiki/")
1610 (synopsis "Create an index of scalable font files for X server")
1612 "MkFontScale creates the @code{fonts.scale} and @code{fonts.dir} index
1613 files used by the legacy X11 font system.")
1614 (license license:x11)))
1617 (define-public presentproto
1619 (name "presentproto")
1625 "mirror://xorg/individual/proto/presentproto-"
1630 "1f96dlgfwhsd0834z8ydjzjnb0cwha5r6lxgia4say4zhsl276zn"))))
1631 (build-system gnu-build-system)
1632 (home-page "https://www.x.org/wiki/")
1633 (synopsis "Xorg PresentProto protocol headers")
1635 "Present Extension provides a way for applications to update their
1636 window contents from a pixmap in a well defined fashion, synchronizing
1637 with the display refresh and potentially using a more efficient
1638 mechanism than copying the contents of the source pixmap.")
1639 (license (license:x11-style "file://presentproto.h"
1640 "See 'presentproto.h' in the distribution."))
1641 (properties `((superseded . ,xorgproto)))))
1643 (define-public printproto
1651 "mirror://xorg/individual/proto/printproto-"
1656 "06liap8n4s25sgp27d371cc7yg9a08dxcr3pmdjp761vyin3360j"))))
1657 (build-system gnu-build-system)
1658 (native-inputs (list pkg-config))
1659 (home-page "https://www.x.org/wiki/")
1660 (synopsis "Xorg PrintProto protocol headers")
1662 "Print Extension defines a protocol for a portable,
1663 network-transparent printing system.")
1664 (license license:x11)))
1667 (define-public randrproto
1675 "mirror://xorg/individual/proto/randrproto-"
1680 "0s4496z61y5q45q20gldwpf788b9nsa8hb13gnck1mwwwwrmarsc"))))
1681 (build-system gnu-build-system)
1682 (native-inputs (list pkg-config))
1683 (home-page "https://www.x.org/wiki/")
1684 (synopsis "Xorg RandRProto protocol headers")
1686 "Resize and Rotate Extension defines a protocol for clients to
1687 dynamically change X screens, so as to resize, rotate and reflect the root
1688 window of a screen.")
1689 (license license:x11)
1690 (properties `((superseded . ,xorgproto)))))
1693 (define-public recordproto
1695 (name "recordproto")
1701 "mirror://xorg/individual/proto/recordproto-"
1706 "0w3kgr1zabwf79bpc28dcnj0fpni6r53rpi82ngjbalj5s6m8xx7"))))
1707 (build-system gnu-build-system)
1708 (native-inputs (list pkg-config))
1709 (home-page "https://www.x.org/wiki/")
1710 (synopsis "Xorg RecordProto protocol headers")
1712 "Record Extension defines a protocol for the recording and playback
1713 of user actions in the X Window System.")
1714 (license license:x11)
1715 (properties `((superseded . ,xorgproto)))))
1717 (define-public renderproto
1719 (name "renderproto")
1725 "mirror://xorg/individual/proto/renderproto-"
1730 "0dr5xw6s0qmqg0q5pdkb4jkdhaja0vbfqla79qh5j1xjj9dmlwq6"))))
1731 (build-system gnu-build-system)
1732 (native-inputs (list pkg-config))
1733 (home-page "https://www.x.org/wiki/")
1734 (synopsis "Xorg RenderProto protocol headers")
1736 "Rendering Extension defines a protocol for a digital image composition
1737 as the foundation of a new rendering model within the X Window System.")
1738 (license license:x11)
1739 (properties `((superseded . ,xorgproto)))))
1741 (define-public resourceproto
1743 (name "resourceproto")
1749 "mirror://xorg/individual/proto/resourceproto-"
1754 "0638iyfiiyjw1hg3139pai0j6m65gkskrvd9684zgc6ydcx00riw"))))
1755 (build-system gnu-build-system)
1756 (native-inputs (list pkg-config))
1757 (home-page "https://www.x.org/wiki/")
1758 (synopsis "Xorg ResourceProto protocol headers")
1760 "Resource Extension defines a protocol that allows a client to
1761 query the X server about its usage of various resources.")
1762 (license license:x11)
1763 (properties `((superseded . ,xorgproto)))))
1765 (define-public scrnsaverproto
1767 (name "scrnsaverproto")
1773 "mirror://xorg/individual/proto/scrnsaverproto-"
1778 "0rfdbfwd35d761xkfifcscx56q0n56043ixlmv70r4v4l66hmdwb"))))
1779 (build-system gnu-build-system)
1780 (native-inputs (list pkg-config))
1781 (home-page "https://www.x.org/wiki/")
1782 (synopsis "Xorg ScrnSaverProto protocol headers")
1784 "Screen Saver Extension defines a protocol to control screensaver
1785 features and to query screensaver info on specific windows.")
1786 (license license:x11)
1787 (properties `((superseded . ,xorgproto)))))
1789 (define-public sessreg
1797 "mirror://xorg/individual/app/sessreg-" version ".tar.bz2"))
1799 (base32 "0crczl25zynkrslmm8sjaxszhrh4i33m7h5fg4wfdb3k8aarxjyz"))))
1800 (build-system gnu-build-system)
1805 (home-page "https://www.x.org/wiki/")
1806 (synopsis "Register X sessions in system utmp/utmpx databases")
1808 "SessReg is a simple program for managing utmp/wtmp entries for X
1809 sessions. It was originally written for use with xdm, but may also be
1810 used with other display managers such as gdm or kdm.")
1811 (license license:x11)))
1814 (define-public setxkbmap
1822 "mirror://xorg/individual/app/setxkbmap-"
1827 "1xdrxs65v7d0rw1yaz0vsz55w4hxym99216p085ya9978j379wlg"))))
1828 (build-system gnu-build-system)
1830 (list libxkbfile xkeyboard-config libx11))
1835 (list (string-append "--with-xkb-config-root="
1836 (assoc-ref %build-inputs "xkeyboard-config")
1837 "/share/X11/xkb"))))
1838 (home-page "https://www.x.org/wiki/")
1839 (synopsis "Set the keyboard using the X Keyboard Extension")
1841 "Setxkbmap is an X11 client to change the keymaps in the X server
1842 for a specified keyboard to use the layout determined by the options
1843 listed on the command line.")
1844 (license license:x11)))
1847 (define-public smproxy
1855 "mirror://xorg/individual/app/smproxy-"
1860 "0rkjyzmsdqmlrkx8gy2j4q6iksk58hcc92xzdprkf8kml9ar3wbc"))))
1861 (build-system gnu-build-system)
1863 (list libxt libxmu))
1866 (home-page "https://www.x.org/wiki/")
1867 (synopsis "Session Manager Proxy")
1869 "SMProxy allows X applications that do not support X11R6 session
1870 management to participate in an X11R6 session.")
1871 (license license:x11)))
1874 (define-public util-macros
1876 (name "util-macros")
1882 "mirror://xorg/individual/util/util-macros-"
1887 "0w8ryfqylprz37zj9grl4jzdsqq67ibfwq5raj7vm1i7kmp2x08g"))))
1888 (build-system gnu-build-system)
1889 (native-inputs (list pkg-config))
1892 (modify-phases %standard-phases
1893 (add-after 'unpack 'fix-makefile-in
1895 (substitute* "Makefile.in"
1896 ;; Install xorg-macros.pc in PREFIX/lib/pkgconfig,
1897 ;; not PREFIX/share/pkgconfig.
1898 (("\\$\\(datadir\\)/pkgconfig") "$(libdir)/pkgconfig"))
1900 (add-after 'install 'post-install-cleanup
1901 (lambda* (#:key outputs #:allow-other-keys)
1902 (let ((out (assoc-ref outputs "out")))
1903 (with-directory-excursion out
1904 (delete-file "share/util-macros/INSTALL")
1905 (rmdir "share/util-macros"))
1907 (home-page "https://www.x.org/wiki/")
1908 (synopsis "Xorg autoconf macros")
1910 "This package provides a set of autoconf macros used by the
1911 configure.ac scripts in other Xorg modular packages, and is needed to
1912 generate new versions of their configure scripts with autoconf.")
1913 (license license:x11)))
1916 (define-public videoproto
1924 "mirror://xorg/individual/proto/videoproto-"
1929 "00m7rh3pwmsld4d5fpii3xfk5ciqn17kkk38gfpzrrh8zn4ki067"))))
1930 (build-system gnu-build-system)
1931 (native-inputs (list pkg-config))
1932 (home-page "https://www.x.org/wiki/")
1933 (synopsis "Xorg VideoProto protocol headers")
1935 "Video Extension provides a protocol for a video output mechanism,
1936 mainly to rescale video playback in the video controller hardware.")
1937 (license license:x11)
1938 (properties `((superseded . ,xorgproto)))))
1940 (define-public windowswmproto
1942 (name "windowswmproto")
1948 "mirror://xorg/individual/proto/windowswmproto-"
1953 "0syjxgy4m8l94qrm03nvn5k6bkxc8knnlld1gbllym97nvnv0ny0"))))
1954 (build-system gnu-build-system)
1955 (native-inputs (list pkg-config))
1956 (home-page "https://www.x.org/wiki/")
1957 (synopsis "Xorg WindowsWMProto protocol headers")
1959 "WindowsWM Extension defines a protocol, used for coordination between
1960 an X11 server and the Microsoft Windows native window manager. WindowsWM
1961 is only intended to be used on Cygwin when running a rootless XWin
1963 (license license:x11)
1964 (properties `((superseded . ,xorgproto)))))
1966 (define-public x11perf
1974 "mirror://xorg/individual/app/x11perf-"
1979 "0d3wh6z6znwhfdiv0zaggfj0xgish98xa10yy76b9517zj7hnzhw"))))
1980 (build-system gnu-build-system)
1982 (list libx11 libxft libxmu libxrender))
1985 (home-page "https://www.x.org/wiki/")
1986 (synopsis "X server performance benchmarker")
1988 "X11Perf is a simple performance benchmarker for the Xorg X server.")
1989 (license license:x11)))
1992 (define-public xauth
1999 (uri (string-append "mirror://xorg/individual/app/xauth-" version
2002 (base32 "032klzzw8r09z36x1272ssd79bcisz8j5p8gbdy111fiknvx27bd"))))
2003 (build-system gnu-build-system)
2005 (list libxmu libxext libxau libx11))
2007 (list cmdtest pkg-config))
2008 (home-page "https://www.x.org/wiki/")
2009 (synopsis "X authority file utility")
2011 "XAuth program is used to edit and display the authorization
2012 information used in connecting to the X server.")
2013 (license license:x11)))
2016 (define-public xbacklight
2024 "mirror://xorg/individual/app/xbacklight-"
2029 "1plssg0s3pbslg6rfzxp9sx8ryvn8l32zyvc8zp9zsbsfwjg69rs"))))
2030 (build-system gnu-build-system)
2032 (list libxcb xcb-util))
2035 (home-page "https://www.x.org/wiki/")
2036 (synopsis "Control display backlight")
2038 "Xbacklight is used to adjust the backlight brightness where
2039 supported. It uses the RandR extension to find all outputs on the X
2040 server supporting backlight brightness control and changes them all in
2042 (license license:x11)))
2045 (define-public xbitmaps
2053 "mirror://xorg/individual/data/xbitmaps-"
2058 "1vh73sc13s7w5r6gnc6irca56s7998bja7wgdivkfn8jccawgw5r"))))
2059 (build-system gnu-build-system)
2060 (native-inputs (list pkg-config))
2061 (home-page "https://www.x.org/wiki/")
2062 (synopsis "X bitmaps")
2064 "xbitmaps provides basic bitmaps (little pictures) used by some
2066 (license license:x11)))
2068 (define-public xcalc
2075 (uri (string-append "mirror://xorg/individual/app/"
2076 "xcalc-" version ".tar.gz"))
2078 (base32 "0c768lh0nh28ram9ldldhaf51024fngc589v4pjmf3lxmzcihr58"))))
2079 (build-system gnu-build-system)
2081 `(#:phases (modify-phases %standard-phases
2083 'configure 'mutate-makefile
2085 (substitute* "Makefile"
2086 (("^appdefaultdir = .*$")
2087 (string-append "appdefaultdir = " %output
2088 ,%app-defaults-dir "\n")))
2094 (home-page "https://www.x.org/wiki/")
2095 (synopsis "Hand calculator for the X Window system")
2096 (description "Xcalc is a scientific calculator desktop accessory that can
2097 emulate a TI-30 or an HP-10C.")
2098 (license license:x11)))
2101 (define-public xcb-proto
2109 "https://xcb.freedesktop.org/dist/xcb-proto-"
2113 "01d62r286yfc3rpz714nqdgkl0wk9j0wqkd4ylas1d7r4vmkqshq"))
2114 (modules '((guix build utils)))
2117 ;; fractions.gcd has been deprecated since python-3.5.
2118 (substitute* "xcbgen/align.py"
2119 (("from fractions import gcd") "from math import gcd"))
2121 (build-system gnu-build-system)
2123 `(("pkg-config" ,pkg-config) ("python" ,python-minimal-wrapper)))
2124 (home-page "https://xcb.freedesktop.org/")
2125 (synopsis "XML-XCB protocol descriptions")
2127 "XCB-Proto provides the XML-XCB protocol descriptions that libxcb
2128 uses to generate the majority of its code and API. XCB-Proto is
2129 separated from libxcb to allow reuse by other projects, such as
2130 additional language bindings, protocol dissectors, or documentation
2133 XCB-Proto also contains language-independent Python libraries that are
2134 used to parse an XML description and create objects used by Python code
2135 generators in individual language bindings.")
2136 (license license:x11)))
2139 (define-public xcmiscproto
2141 (name "xcmiscproto")
2147 "mirror://xorg/individual/proto/xcmiscproto-"
2152 "1pyjv45wivnwap2wvsbrzdvjc5ql8bakkbkrvcv6q9bjjf33ccmi"))))
2153 (build-system gnu-build-system)
2154 (native-inputs (list pkg-config))
2155 (home-page "https://www.x.org/wiki/")
2156 (synopsis "Xorg XCMiscProto protocol headers")
2158 "XC-MISC Extension defines a protocol that provides Xlib two ways
2159 to query the server for available resource IDs.")
2160 (license license:x11)
2161 (properties `((superseded . ,xorgproto)))))
2163 (define-public xcmsdb
2171 "mirror://xorg/individual/app/xcmsdb-"
2176 "1ik7gzlp2igz183x70883000ygp99r20x3aah6xhaslbpdhm6n75"))))
2177 (build-system gnu-build-system)
2182 (home-page "https://www.x.org/wiki/")
2183 (synopsis "Device Color Characterization utility")
2185 "XCMSDB is used to load, query, or remove Device Color
2186 Characterization data stored in properties on the root window of the
2187 screen as specified in section 7, Device Color Characterization, of the
2188 X11 Inter-Client Communication Conventions Manual (ICCCM).")
2189 (license license:x11)))
2192 (define-public xcursor-themes
2194 (name "xcursor-themes")
2200 "mirror://xorg/individual/data/xcursor-themes-"
2205 "16a96li0s0ggg60v7f6ywxmsrmxdfizcw55ccv7sp4qjfisca7pf"))))
2206 (build-system gnu-build-system)
2208 (list libxcursor xcursorgen))
2213 (list (string-append "--with-cursordir="
2214 (assoc-ref %outputs "out")
2216 (home-page "https://www.x.org/wiki/")
2217 (synopsis "Default Xorg cursors")
2219 "This package provides a default set of cursor themes for the Xorg
2220 X server: @code{handhelds}, @code{redglass} and @code{whiteglass}.")
2221 (license license:x11)))
2223 (define-public hackneyed-x11-cursors
2225 (name "hackneyed-x11-cursors")
2231 (url "https://gitlab.com/Enthymeme/hackneyed-x11-cursors.git")
2233 (file-name (git-file-name name version))
2236 "1mjwbny4rid9dzz6xfb8l5rkwki41sfhdp970cf3w2pi9kyg1njs"))))
2237 (build-system gnu-build-system)
2239 `(#:tests? #f ;no test suite
2240 #:make-flags (list (string-append "PREFIX=" %output))
2242 (modify-phases %standard-phases
2244 (add-before 'build 'set-inkscape-environment-variable
2245 (lambda* (#:key inputs #:allow-other-keys)
2246 (let ((inkscape (search-input-file inputs "/bin/inkscape")))
2247 (setenv "INKSCAPE" inkscape))))
2248 (add-before 'build 'placate-inkscape-warnings
2250 (setenv "HOME" (getcwd))))
2251 (add-after 'build 'generate-black-cursors
2252 (lambda* (#:key make-flags parallel-build #:allow-other-keys)
2253 (let ((build (assoc-ref %standard-phases 'build))
2254 (make-flags/extended
2256 "THEME_NAME=Hackneyed-Dark"
2257 "COMMON_SOURCE=theme/common-dark.svg"
2258 "RSVG_SOURCE=theme/right-handed-dark.svg"
2259 "LSVG_SOURCE=theme/left-handed-dark.svg")))
2260 (build #:make-flags make-flags/extended
2261 #:parallel-build parallel-build))))
2262 (add-after 'install 'install-black-cursors
2263 (lambda* (#:key make-flags #:allow-other-keys)
2264 (apply invoke `("make" "install" ,@make-flags
2265 "THEME_NAME=Hackneyed-Dark")))))))
2266 (native-inputs (list imagemagick inkscape xcursorgen))
2267 (home-page "https://gitlab.com/Enthymeme/hackneyed-x11-cursors")
2268 (synopsis "Classic cursor theme for X11")
2269 (description "Hackneyed is a scalable cursor theme mildly resembling old
2270 Windows 3.x cursors. The cursors are available in white and black colors. A
2271 left-handed version of the cursors is also included.")
2272 (license license:x11)))
2274 (define-public xcursorgen
2282 "mirror://xorg/individual/app/xcursorgen-"
2287 "0ggbv084cavp52hjgcz3vdj0g018axs0m23c03lpc5sgn92gidim"))))
2288 (build-system gnu-build-system)
2290 (list libxcursor libpng))
2293 (home-page "https://www.x.org/wiki/")
2294 (synopsis "Create an X cursor file from PNG images")
2296 "XCursorGen prepares X11 cursor sets for use with libXcursor.")
2297 (license license:x11)))
2300 (define-public xdpyinfo
2308 "mirror://xorg/individual/app/xdpyinfo-"
2313 "0ldgrj4w2fa8jng4b3f3biaj0wyn8zvya88pnk70d7k12pcqw8rh"))))
2314 (build-system gnu-build-system)
2328 (home-page "https://www.x.org/wiki/")
2329 (synopsis "Xorg display information utility")
2331 "Xdpyinfo is used to display information about an X server: the
2332 capabilities of a server, the predefined values for various parameters
2333 used in communicating between clients and the server, and the different
2334 types of screens, visuals, and X11 protocol extensions that are
2336 (license license:x11)))
2339 (define-public xdriinfo
2347 "mirror://xorg/individual/app/xdriinfo-"
2352 "0lcx8h3zd11m4w8wf7dyp89826d437iz78cyrix436bqx31x5k6r"))))
2353 (build-system gnu-build-system)
2358 (home-page "https://www.x.org/wiki/")
2359 (synopsis "Query DRI configuration information")
2361 "XDRIInfo is used to query configuration information of X11
2362 DRI (Direct Rendering Infrastructure) drivers.")
2363 (license license:x11)))
2374 "mirror://xorg/individual/app/xev-"
2379 "1ql592pdhddhkipkrsxn929y9l2nn02a5fh2z3dx47kmzs5y006p"))))
2380 (build-system gnu-build-system)
2381 (arguments `(#:configure-flags ',(malloc0-flags)))
2383 (list libxrender libxrandr xorgproto libx11))
2386 (home-page "https://gitlab.freedesktop.org/xorg/app/xev")
2387 (synopsis "Print contents of X events")
2389 "XEv creates a window and then asks the X server to send it X11
2390 events whenever anything happens to the window (such as it being moved,
2391 resized, typed in, clicked in, etc.). You can also attach it to an
2392 existing window. It is useful for seeing what causes events to occur
2393 and to display the information that they contain; it is essentially a
2394 debugging and development tool, and should not be needed in normal
2396 (license license:x11)))
2399 (define-public xextproto
2407 "mirror://xorg/individual/proto/xextproto-"
2412 "1c2vma9gqgc2v06rfxdiqgwhxmzk2cbmknwf1ng3m76vr0xb5x7k"))))
2413 (build-system gnu-build-system)
2414 (native-inputs (list pkg-config))
2415 (home-page "https://www.x.org/wiki/")
2416 (synopsis "Xorg XExtProto protocol headers")
2418 "XExtProto provides the following extensions: DOUBLE-BUFFER, DPMS,
2419 Extended-Visual-Information, Generic Event Extension, LBX, MIT-SHM,
2420 MIT-SUNDRY-NONSTANDARD, Multi-Buffering, SECURITY, SHAPE, SYNC, TOG-CUP,
2421 XC-APPGROUP, XTEST.")
2422 (license license:x11)
2423 (properties `((superseded . ,xorgproto)))))
2425 (define-public libevdev
2432 (uri (string-append "https://www.freedesktop.org/software/" name "/"
2433 name "-" version ".tar.xz"))
2436 "1l628xblk36vh7aqia1fw6hh62af7va0pd70h28112l5i4afmx33"))))
2437 (build-system gnu-build-system)
2439 `(#:configure-flags '("--disable-static")))
2440 (native-inputs (list python))
2441 (home-page "https://www.freedesktop.org/wiki/Software/libevdev/")
2442 (synopsis "Wrapper library for evdev devices")
2444 "libevdev is a wrapper library for evdev devices. it moves the common
2445 tasks when dealing with evdev devices into a library and provides a library
2446 interface to the callers, thus avoiding erroneous ioctls, etc.
2448 The eventual goal is that libevdev wraps all ioctls available to evdev
2449 devices, thus making direct access unnecessary.")
2450 (license (license:x11-style "file://COPYING"))))
2453 (define-public xf86-input-evdev
2455 (name "xf86-input-evdev")
2461 "mirror://xorg/individual/driver/xf86-input-evdev-"
2466 "1h1y0fwnawlp4yc5llr1l7hwfcxxpln2fxhy6arcf6w6h4z0f9l7"))))
2467 (build-system gnu-build-system)
2470 ("libevdev" ,libevdev)
2472 ("xorg-server" ,xorg-server)))
2473 (native-inputs (list pkg-config))
2476 (list (string-append "--with-sdkdir="
2477 (assoc-ref %outputs "out")
2479 (home-page "https://www.x.org/wiki/")
2480 (synopsis "Generic input driver for X server")
2482 "xf86-input-evdev is a generic input driver for the Xorg X server.
2483 This driver supports all input devices that the kernel knows about,
2484 including most mice, keyboards, tablets and touchscreens.")
2485 (license license:x11)))
2487 (define-public xf86-input-libinput
2489 (name "xf86-input-libinput")
2494 "mirror://xorg/individual/driver/"
2495 name "-" version ".tar.bz2"))
2498 "05ldqr10f2rrnshyk3lc773rz0gp3ccdzwa8n7lsc94i850jl7g1"))))
2499 (build-system gnu-build-system)
2502 (list (string-append "--with-sdkdir="
2503 %output "/include/xorg"))))
2507 `(("libinput" ,libinput-minimal)
2508 ("xorg-server" ,xorg-server)))
2509 (home-page "https://www.x.org/wiki/")
2510 (synopsis "Input driver for X server based on libinput")
2512 "xf86-input-libinput is an input driver for the Xorg X server based
2513 on libinput. It is a thin wrapper around libinput, so while it does
2514 provide all features that libinput supports it does little beyond.")
2515 (license (list license:x11 ; only install-sh
2516 license:expat)))) ; everything else
2518 (define-public xf86-input-joystick
2520 (name "xf86-input-joystick")
2526 "mirror://xorg/individual/driver/xf86-input-joystick-"
2531 "1awfq496d082brgjbr60lhm6jvr9537rflwxqdfqwfzjy3n6jxly"))))
2532 (build-system gnu-build-system)
2533 (inputs (list xorg-server))
2534 (native-inputs (list pkg-config))
2537 (list (string-append "--with-sdkdir="
2538 (assoc-ref %outputs "out")
2540 (home-page "https://www.x.org/wiki/")
2541 (synopsis "Joystick input driver for X server")
2543 "xf86-input-joystick is a joystick input driver for the Xorg X server.
2544 It is used to control the pointer with a joystick device.")
2545 (license license:x11)))
2548 (define-public xf86-input-keyboard
2550 (name "xf86-input-keyboard")
2556 "mirror://xorg/individual/driver/xf86-input-keyboard-"
2561 "12032yg412kyvnmc5fha1in7mpi651d8sa1bk4138s2j2zr01jgp"))))
2562 (build-system gnu-build-system)
2563 (inputs (list xorg-server))
2564 (native-inputs (list pkg-config))
2565 (home-page "https://www.x.org/wiki/")
2566 (synopsis "Keyboard input driver for X server")
2568 "xf86-input-keyboard is a keyboard input driver for the Xorg X server.")
2569 (license license:x11)))
2572 (define-public xf86-input-mouse
2574 (name "xf86-input-mouse")
2580 "mirror://xorg/individual/driver/xf86-input-mouse-"
2585 "1iawr1wyl2qch1mqszcs0s84i92mh4xxprflnycbw1adc18b7v4k"))))
2586 (build-system gnu-build-system)
2587 (inputs (list xorg-server))
2588 (native-inputs (list pkg-config))
2591 (list (string-append "--with-sdkdir="
2592 (assoc-ref %outputs "out")
2594 (home-page "https://www.x.org/wiki/")
2595 (synopsis "Mouse input driver for X server")
2597 "xf86-input-mouse is a mouse input driver for the Xorg X server.
2598 This driver supports four classes of mice: serial, bus and PS/2 mice,
2599 and additional mouse types supported by specific operating systems, such
2601 (license license:x11)))
2604 (define-public xf86-input-synaptics
2606 (name "xf86-input-synaptics")
2612 "mirror://xorg/individual/driver/xf86-input-synaptics-"
2617 "0xhm03qywwfgkpfl904d08lx00y28m1b6lqmks5nxizixwk3by3s"))))
2618 (build-system gnu-build-system)
2619 (inputs (list libx11 libxi libevdev mtdev xorg-server))
2620 (native-inputs (list pkg-config))
2623 (list (string-append "--with-sdkdir="
2624 (assoc-ref %outputs "out")
2626 (string-append "--with-xorg-conf-dir="
2627 (assoc-ref %outputs "out")
2628 "/share/X11/xorg.conf.d"))))
2629 (home-page "https://www.x.org/wiki/")
2630 (synopsis "Touchpad input driver for X server")
2632 "xf86-input-synaptics is a touchpad driver for the Xorg X server.")
2633 (license license:x11)))
2636 (define-public xf86-input-void
2638 (name "xf86-input-void")
2644 "mirror://xorg/individual/driver/xf86-input-void-"
2649 "171k8b8s42s3w73l7ln9jqwk88w4l7r1km2blx1vy898c854yvpr"))))
2650 (build-system gnu-build-system)
2651 (inputs (list xorg-server))
2652 (native-inputs (list pkg-config))
2653 (home-page "https://www.x.org/wiki/")
2654 (synopsis "Void (null) input driver for X server")
2656 "xf86-input-void is a null input driver for the Xorg X server.")
2657 (license license:x11)))
2659 (define-public xf86-video-amdgpu
2661 (name "xf86-video-amdgpu")
2666 (uri (string-append "mirror://xorg/individual/driver/"
2667 "xf86-video-amdgpu-" version ".tar.bz2"))
2669 (base32 "125dq85n46yqmnmr2hknxwcqicwlvz2b2phf0m963fpg9l1j6y30"))))
2670 (build-system gnu-build-system)
2671 (inputs (list xorg-server))
2672 (native-inputs (list pkg-config))
2673 (home-page "https://www.x.org/wiki/")
2674 (synopsis "AMD Radeon video driver for X server")
2676 "xf86-video-amdgpu is an AMD Radeon video driver for the Xorg
2678 (license license:x11)))
2680 (define-public xf86-video-ark
2682 (name "xf86-video-ark")
2688 "mirror://xorg/individual/driver/xf86-video-ark-"
2693 "07p5vdsj2ckxb6wh02s61akcv4qfg6s1d5ld3jn3lfaayd3f1466"))
2694 (patches (search-patches "xf86-video-ark-remove-mibstore.patch"))))
2695 (build-system gnu-build-system)
2696 (inputs (list xorg-server))
2697 (native-inputs (list pkg-config))
2698 (home-page "https://www.x.org/wiki/")
2699 (synopsis "Ark Logic video driver for X server")
2701 "xf86-video-ark is an Ark Logic video driver for the Xorg X server.")
2702 (license license:x11)))
2704 (define-public xf86-video-ast
2706 (name "xf86-video-ast")
2708 (home-page "https://cgit.freedesktop.org/xorg/driver/xf86-video-ast/")
2712 "mirror://xorg/individual/driver/xf86-video-ast-"
2713 version ".tar.bz2"))
2716 "1pm2cy81ma7ldsw0yfk28b33h9z2hcj5rccrxhfxfgvxsiavrnqy"))))
2717 (build-system gnu-build-system)
2718 (inputs (list xorg-server))
2719 (native-inputs (list pkg-config))
2720 (synopsis "ASpeed Technologies video driver for X server")
2722 "xf86-video-ast is an ASpeed Technologies video driver for the Xorg
2724 (license license:x11)))
2726 (define-public xf86-video-ati
2727 ;; The current release is too old to build with our inputs.
2728 (let ((commit "5eba006e4129e8015b822f9e1d2f1e613e252cda")
2731 (name "xf86-video-ati")
2732 (version (git-version "19.1.0" revision commit))
2737 (url "https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati.git")
2739 (file-name (git-file-name name version))
2741 (base32 "1n49wx0v13jh8vv17sxgrmmpi1mk3n2wph07jfmxmzqahpcn4lkn"))))
2742 (build-system gnu-build-system)
2743 (inputs (list mesa xorgproto xorg-server))
2745 (list pkg-config autoconf automake libtool))
2746 (home-page "https://www.x.org/wiki/")
2747 (synopsis "ATI Radeon video driver for X server")
2749 "xf86-video-ati is an ATI Radeon video driver for the Xorg
2751 (license license:x11))))
2754 (define-public xf86-video-cirrus
2756 (name "xf86-video-cirrus")
2762 "mirror://xorg/individual/driver/xf86-video-cirrus-"
2767 "1asifc6ld2g9kap15vfhvsvyl69lj7pw3d9ra9mi4najllh7pj7d"))))
2768 (build-system gnu-build-system)
2769 (inputs (list xorg-server))
2770 (native-inputs (list pkg-config))
2771 (home-page "https://www.x.org/wiki/")
2772 (synopsis "Cirrus Logic video driver for X server")
2774 "xf86-video-cirrus is a Cirrus Logic video driver for the Xorg
2776 (license license:x11)))
2778 (define-public xf86-video-dummy
2780 (name "xf86-video-dummy")
2785 (uri (string-append "mirror://xorg/individual/driver/"
2786 "xf86-video-dummy-" version ".tar.bz2"))
2788 (base32 "1fcm9vwgv8wnffbvkzddk4yxrh3kc0np6w65wj8k88q7jf3bn4ip"))))
2789 (build-system gnu-build-system)
2790 (inputs (list xorg-server))
2791 (native-inputs (list pkg-config))
2792 (home-page "https://www.x.org/wiki/")
2793 (synopsis "Dummy video driver for X server")
2795 "Virtual/offscreen frame buffer driver for the Xorg X server.")
2796 ;; per https://lists.freedesktop.org/archives/xorg/2020-June/060316.html
2797 (license license:x11)))
2799 (define-public xf86-video-fbdev
2801 (name "xf86-video-fbdev")
2807 "mirror://xorg/individual/driver/xf86-video-fbdev-"
2812 "16a66zr0l1lmssa07i3rzy07djxnb45c17ks8c71h8l06xgxihyw"))))
2813 (build-system gnu-build-system)
2814 (inputs (list xorg-server))
2815 (native-inputs (list pkg-config))
2816 (home-page "https://www.x.org/wiki/")
2817 (synopsis "Framebuffer device video driver for X server")
2819 "xf86-video-fbdev is a video driver for the Xorg X server for
2820 framebuffer device.")
2821 (license license:x11)))
2824 (define-public xf86-video-freedreno
2825 (let ((commit "ccba8f89995de7d5e1b216e580b789c4cda05035"))
2827 (name "xf86-video-freedreno")
2828 (version (string-append "1.4.0-1-" (string-take commit 7)))
2831 ;; there's no current tarball
2834 (url (string-append "https://anongit.freedesktop.org/git/xorg/"
2835 "driver/xf86-video-freedreno.git"))
2839 "0bl9m1agi793lcddv94j8afzw1xc9w810q91mbq0n3dscbbcr9nh"))
2840 (file-name (string-append name "-" version))))
2841 (build-system gnu-build-system)
2843 `(("libdrm" ,libdrm)
2846 ("xorg-server" ,xorg-server)
2849 (list pkg-config autoconf automake libtool))
2850 ;; This driver is only supported on ARM systems.
2851 (supported-systems '("armhf-linux" "aarch64-linux"))
2854 (list (string-append "--with-xorg-conf-dir="
2855 (assoc-ref %outputs "out")
2856 "/share/X11/xorg.conf.d"))
2858 (modify-phases %standard-phases
2861 ;; autogen.sh calls configure unconditionally.
2862 (invoke "autoreconf" "-vfi"))))))
2863 (home-page "https://www.x.org/wiki/")
2864 (synopsis "Adreno video driver for X server")
2866 "xf86-video-freedreno is a 2D graphics driver for the Xorg X server.
2867 It supports a variety of Adreno graphics chipsets.")
2868 (license license:x11))))
2871 (define-public xf86-video-geode
2873 (name "xf86-video-geode")
2878 (uri (string-append "mirror://xorg/individual/driver/xf86-video-geode-"
2879 version ".tar.bz2"))
2881 (base32 "0r2dz0agg0k5wrqdbicji6mh6svzyl0xgqk76hpcfdlzn2zx15zl"))))
2882 (build-system gnu-build-system)
2883 (inputs (list xorg-server))
2884 (native-inputs (list pkg-config))
2886 ;; This driver is only supported on i686 systems.
2887 (filter (lambda (system) (string-prefix? "i686-" system))
2888 %supported-systems))
2889 (home-page "https://www.x.org/wiki/")
2890 (synopsis "AMD Geode GX/LX video driver for X server")
2892 "xf86-video-geode is an Xorg X server video driver for the AMD
2893 Geode GX and LX processors. The GX component supports both XAA and EXA
2894 for graphics acceleration. The LX component supports EXA, including
2895 compositing. Both support Xv overlay and dynamic rotation with XRandR.")
2896 (license license:x11)))
2899 ;; Driver for obsolete graphics cards, depends on libglide:
2900 ;; http://sourceforge.net/projects/glide/ ,
2901 ;; last updated in 2003, and which does not compile out of the box any more.
2902 ;; (define-public xf86-video-glide
2904 ;; (name "xf86-video-glide")
2905 ;; (version "1.2.0")
2908 ;; (method url-fetch)
2909 ;; (uri (string-append
2910 ;; "mirror://xorg/X11R7.7/src/everything/xf86-video-glide-"
2915 ;; "0byapm9mnpqk3wijfnnan3d22ii5cw6dmg4xn1625iiz89j5vs1l"))))
2916 ;; (build-system gnu-build-system)
2917 ;; (inputs `(("pkg-config" ,pkg-config)
2918 ;; ("xorg-server" ,xorg-server)))
2919 ;; (home-page "https://www.x.org/wiki/")
2920 ;; (synopsis "Glide video driver for X server")
2922 ;; "xf86-video-glide is a Glide video driver for the Xorg X server.")
2923 ;; (license license:x11)))
2926 (define-public xf86-video-glint
2928 (name "xf86-video-glint")
2934 "mirror://xorg/individual/driver/xf86-video-glint-"
2939 "1lkpspvrvrp9s539bhfdjfh4andaqyk63l6zjn8m3km95smk6a45"))))
2940 (build-system gnu-build-system)
2941 (inputs (list xorgproto xorg-server))
2942 (native-inputs (list pkg-config))
2943 (home-page "https://www.x.org/wiki/")
2944 (synopsis "GLINT/Permedia video driver for X server")
2946 "xf86-video-glint is a GLINT/Permedia video driver for the Xorg
2948 (license license:x11)))
2951 (define-public xf86-video-i128
2953 (name "xf86-video-i128")
2959 "mirror://xorg/individual/driver/xf86-video-i128-"
2964 "1snhpv1igrhifcls3r498kjd14ml6x2xvih7zk9xlsd1ymmhlb4g"))))
2965 (build-system gnu-build-system)
2966 (inputs (list xorg-server))
2967 (native-inputs (list pkg-config))
2968 (home-page "https://www.x.org/wiki/")
2969 (synopsis "I128 video driver for X server")
2971 "xf86-video-i128 is an I128 (Imagine 128) video driver for the Xorg
2973 (license license:x11)))
2976 (define-public xf86-video-intel
2977 (let ((commit "31486f40f8e8f8923ca0799aea84b58799754564")
2980 (name "xf86-video-intel")
2981 (version (git-version "2.99.917" revision commit))
2984 ;; there's no current tarball
2987 (url "https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.git")
2991 "0lv6vlx9gvp34pidmx4gxgb0qjf0km0gabbaxw141nnvj1azv94y"))
2992 (file-name (git-file-name name version))))
2993 (build-system gnu-build-system)
2994 (inputs `(("mesa" ,mesa)
2997 ("libxfont" ,libxfont2)
2998 ("xorg-server" ,xorg-server)))
3000 (list pkg-config autoconf automake libtool))
3002 ;; This driver is only supported on Intel systems.
3003 (filter (lambda (system) (or (string-prefix? "i686-" system)
3004 (string-prefix? "x86_64-" system)))
3005 %supported-systems))
3007 '(#:configure-flags '("--with-default-accel=uxa")))
3008 (home-page "https://www.x.org/wiki/")
3009 (synopsis "Intel video driver for X server")
3011 "xf86-video-intel is a 2D graphics driver for the Xorg X server.
3012 It supports a variety of Intel graphics chipsets.")
3013 (license license:x11))))
3016 (define-public xf86-video-mach64
3018 (name "xf86-video-mach64")
3024 "mirror://xorg/individual/driver/xf86-video-mach64-"
3029 "171wg8r6py1l138s58rlapin3rlpwsg9spmvhc7l68mm3g3hf1vs"))
3030 (patches (search-patches "xf86-video-mach64-glibc-2.20.patch"
3031 "xf86-video-mach64-bool-to-boolean.patch"))))
3032 (build-system gnu-build-system)
3033 (inputs (list mesa xorgproto xorg-server))
3036 (home-page "https://www.x.org/wiki/")
3037 (synopsis "Mach64 video driver for X server")
3039 "xf86-video-mach64 is a video driver for the Xorg X server.
3040 This driver is intended for all ATI video adapters based on the Mach64
3041 series or older chipsets, providing maximum video function within
3042 hardware limitations. The driver is also intended to optionally provide
3043 the same level of support for generic VGA or 8514/A adapters.")
3044 (license license:x11)))
3047 (define-public xf86-video-mga
3049 (name "xf86-video-mga")
3055 "mirror://xorg/individual/driver/xf86-video-mga-"
3060 "0yaxpgyyj9398nzzr5vnsfxcis76z46p9814yzj8179yl7hld296"))))
3061 (build-system gnu-build-system)
3062 (inputs (list mesa xorgproto xorg-server))
3063 (native-inputs (list pkg-config))
3064 (home-page "https://www.x.org/wiki/")
3065 (synopsis "Matrox video driver for X server")
3067 "xf86-video-mga is a Matrox video driver for the Xorg X server.")
3068 (license license:x11)))
3070 (define-public xf86-video-neomagic
3072 (name "xf86-video-neomagic")
3078 "mirror://xorg/individual/driver/xf86-video-neomagic-"
3083 "0r4h673kw8fl7afc30anwbjlbhp82mg15fvaxf470xg7z983k0wk"))))
3084 (build-system gnu-build-system)
3085 (inputs (list xorgproto xorg-server))
3086 (native-inputs (list pkg-config))
3087 (home-page "https://www.x.org/wiki/")
3088 (synopsis "NeoMagic video driver for X server")
3090 "xf86-video-neomagic is a NeoMagic video driver for the Xorg X server.")
3091 (license license:x11)))
3094 ;; This driver depends on XAA which has been removed from xorg-server.
3096 ;; (define-public xf86-video-newport
3098 ;; (name "xf86-video-newport")
3099 ;; (version "0.2.4")
3102 ;; (method url-fetch)
3103 ;; (uri (string-append
3104 ;; "mirror://xorg/individual/driver/xf86-video-newport-"
3109 ;; "1yafmp23jrfdmc094i6a4dsizapsc9v0pl65cpc8w1kvn7343k4i"))))
3110 ;; (build-system gnu-build-system)
3111 ;; (inputs `(("xorg-server" ,xorg-server)))
3112 ;; (native-inputs `(("pkg-config" ,pkg-config)))
3113 ;; (home-page "https://www.x.org/wiki/")
3114 ;; (synopsis "Newport video driver for X server")
3116 ;; "xf86-video-newport is an Xorg X server video driver for the SGI
3118 ;; (license license:x11)))
3121 (define-public xf86-video-nv
3123 (name "xf86-video-nv")
3129 "mirror://xorg/individual/driver/xf86-video-nv-"
3134 "0bdk3pc5y0n7p53q4gc2ff7bw16hy5hwdjjxkm5j3s7hdyg6960z"))))
3135 (build-system gnu-build-system)
3136 (inputs (list xorg-server))
3137 (native-inputs (list pkg-config))
3138 (home-page "https://www.x.org/wiki/")
3139 (synopsis "NVIDIA video driver for X server")
3141 "This package contains Xorg support for the NVIDIA GeForce 8 series of
3142 graphics processors.
3144 There are a few caveats of which to be aware: the XVideo extension is not
3145 supported, and the RENDER extension is not accelerated by this driver.")
3146 (license license:x11)))
3148 (define-public xf86-video-nouveau
3150 (name "xf86-video-nouveau")
3155 (uri (string-append "mirror://xorg/individual/driver/xf86-video-nouveau-"
3156 version ".tar.bz2"))
3158 (base32 "0sqm1jwjg15sp8v7039y2hsbhph8gpjd2bdzcqqiij2mgbi254s9"))
3159 (patches (search-patches "xf86-video-nouveau-fixup-ABI.patch"))))
3160 (build-system gnu-build-system)
3161 (inputs (list xorg-server))
3162 (native-inputs (list pkg-config))
3163 (home-page "https://nouveau.freedesktop.org")
3164 (synopsis "NVIDIA video driver for X server")
3166 "This package provides modern, high-quality Xorg drivers for NVIDIA
3168 (license license:x11)))
3170 (define-public xf86-video-openchrome
3172 (name "xf86-video-openchrome")
3178 "mirror://xorg/individual/driver/xf86-video-openchrome-"
3183 "0x9gq3hw6k661k82ikd1y2kkk4dmgv310xr5q59dwn4k6z37aafs"))))
3184 (build-system gnu-build-system)
3185 (inputs (list libx11
3193 (home-page "https://www.x.org/wiki/")
3194 (synopsis "Openchrome video driver for X server")
3196 "xf86-video-openchrome is a video driver for the Xorg X server.
3197 This driver is intended for VIA chipsets featuring the VIA UniChrome,
3198 UniChrome Pro and Chrome9 integrated graphics processors.")
3199 (license license:x11)))
3202 (define-public xf86-video-qxl
3204 (name "xf86-video-qxl")
3209 "mirror://xorg/individual/driver/"
3210 "xf86-video-qxl-" version ".tar.bz2"))
3213 "14jc24znnahhmz4kqalafmllsg8awlz0y6gpgdpk5ih38ph851mi"))
3214 (patches (search-patches
3215 "xf86-video-qxl-fix-build.patch"))))
3216 (build-system gnu-build-system)
3218 (list libxfont2 spice-protocol xorg-server xorgproto))
3221 (synopsis "Qxl video driver for X server")
3222 (description "xf86-video-qxl is a video driver for the Xorg X server.
3223 This driver is intended for the spice qxl virtio device.")
3224 (home-page "http://www.spice-space.org")
3225 (license license:x11)))
3227 (define-public xf86-video-r128
3229 (name "xf86-video-r128")
3233 (uri (string-append "mirror://xorg/individual/driver/"
3234 name "-" version ".tar.bz2"))
3237 "0mz0v5mqmmbncr2drd5zvia1fb7frz2xqwflhhqbnaxx5j48c740"))))
3238 (build-system gnu-build-system)
3239 (inputs (list mesa xorgproto xorg-server))
3242 (home-page "https://www.x.org/wiki/")
3243 (synopsis "ATI Rage 128 video driver for X server")
3245 "xf86-video-r128 is a video driver for the Xorg X server.
3246 This driver is intended for ATI Rage 128 based cards.")
3247 (license license:x11)))
3249 (define-public xf86-video-savage
3251 (name "xf86-video-savage")
3257 "mirror://xorg/individual/driver/xf86-video-savage-"
3260 (patches (search-patches "xf86-video-savage-xorg-compat.patch"))
3263 "11pcrsdpdrwk0mrgv83s5nsx8a9i4lhmivnal3fjbrvi3zdw94rc"))))
3264 (build-system gnu-build-system)
3265 (inputs (list mesa xorgproto xorg-server))
3266 (native-inputs (list pkg-config))
3267 (home-page "https://www.x.org/wiki/")
3268 (synopsis "Savage video driver for X server")
3270 "xf86-video-savage is an S3 Savage video driver for the Xorg X server.")
3271 (license license:x11)))
3274 (define-public xf86-video-siliconmotion
3276 (name "xf86-video-siliconmotion")
3282 "mirror://xorg/individual/driver/xf86-video-siliconmotion-"
3287 "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh"))
3288 (patches (search-patches "xf86-video-siliconmotion-fix-ftbfs.patch"))))
3289 (build-system gnu-build-system)
3290 (inputs (list xorg-server))
3291 (native-inputs (list pkg-config))
3292 (home-page "https://www.x.org/wiki/")
3293 (synopsis "Silicon Motion video driver for X server")
3295 "xf86-video-siliconmotion is a Silicon Motion video driver for the
3297 (license license:x11)))
3300 (define-public xf86-video-sis
3302 (name "xf86-video-sis")
3308 "mirror://xorg/individual/driver/xf86-video-sis-"
3313 "0nrs6cjldlhakx5987fiiggjrlzilsbdc7l9pz22x1iwslbkz78i"))))
3314 (build-system gnu-build-system)
3315 (inputs (list mesa xorgproto xorg-server))
3318 (home-page "https://www.x.org/wiki/")
3319 (synopsis "Sis video driver for X server")
3321 "xf86-video-SiS is a SiS video driver for the Xorg X server.
3322 This driver supports SiS chipsets of 300/315/330/340 series.")
3323 (license license:bsd-3)))
3326 (define-public xf86-video-suncg6
3328 (name "xf86-video-suncg6")
3334 "mirror://xorg/individual/driver/xf86-video-suncg6-"
3339 "04fgwgk02m4nimlv67rrg1wnyahgymrn6rb2cjj1l8bmzkii4glr"))))
3340 (build-system gnu-build-system)
3341 (inputs (list xorg-server))
3342 (native-inputs (list pkg-config))
3343 (home-page "https://www.x.org/wiki/")
3344 (synopsis "GX/TurboGX video driver for X server")
3346 "xf86-video-suncg6 is a GX/TurboGX video driver for the Xorg X server.")
3347 (license license:x11)))
3350 (define-public xf86-video-sunffb
3352 (name "xf86-video-sunffb")
3358 "mirror://xorg/individual/driver/xf86-video-sunffb-"
3363 "07z3ngifwg2d4jgq8pms47n5lr2yn0ai72g86xxjnb3k20n5ym7s"))))
3364 (build-system gnu-build-system)
3365 (inputs (list xorg-server))
3366 (native-inputs (list pkg-config))
3367 (home-page "https://www.x.org/wiki/")
3368 (synopsis "SUNFFB video driver for X server")
3370 "xf86-video-sunffb is a SUNFFB video driver for the Xorg X server.")
3371 (license license:x11)))
3374 (define-public xf86-video-tdfx
3376 (name "xf86-video-tdfx")
3382 "mirror://xorg/individual/driver/xf86-video-tdfx-"
3387 "0qc5wzwf1n65si9rc37bh224pzahh7gp67vfimbxs0b9yvhq0i9g"))))
3388 (build-system gnu-build-system)
3389 (inputs (list mesa xorgproto xorg-server))
3390 (native-inputs (list pkg-config))
3391 (home-page "https://www.x.org/wiki/")
3392 (synopsis "3Dfx video driver for X server")
3394 "xf86-video-tdfx is a 3Dfx video driver for the Xorg X server.")
3395 (license license:x11)))
3398 (define-public xf86-video-tga
3400 (name "xf86-video-tga")
3406 "mirror://xorg/individual/driver/xf86-video-tga-"
3411 "0cb161lvdgi6qnf1sfz722qn38q7kgakcvj7b45ba3i0020828r0"))
3412 (patches (search-patches "xf86-video-tga-remove-mibstore.patch"))))
3413 (build-system gnu-build-system)
3414 (inputs (list xorgproto xorg-server))
3415 (native-inputs (list pkg-config))
3416 (home-page "https://www.x.org/wiki/")
3417 (synopsis "TGA video driver for X server")
3419 "xf86-video-tga is a TGA (DEC 21030) video driver for the Xorg
3421 (license license:x11)))
3424 (define-public xf86-video-trident
3426 (name "xf86-video-trident")
3432 "mirror://xorg/individual/driver/xf86-video-trident-"
3437 "0gxcar434kx813fxdpb93126lhmkl3ikabaljhcj5qn3fkcijlcy"))))
3438 (build-system gnu-build-system)
3439 (inputs (list xorgproto xorg-server))
3440 (native-inputs (list pkg-config))
3441 (home-page "https://www.x.org/wiki/")
3442 (synopsis "Trident video driver for X server")
3444 "xf86-video-trident is a Trident video driver for the Xorg X server.")
3445 (license license:x11)))
3449 ;; (define-public xf86-video-v4l
3452 (define-public xf86-video-vesa
3454 (name "xf86-video-vesa")
3460 "mirror://xorg/individual/driver/xf86-video-vesa-"
3465 "0nf6ai74c60xk96kgr8q9mx6lrxm5id3765ws4d801irqzrj85hz"))))
3466 (build-system gnu-build-system)
3467 (inputs (list xorg-server))
3468 (native-inputs (list pkg-config))
3469 (home-page "https://www.x.org/wiki/")
3470 (synopsis "VESA video driver for X server")
3472 "xf86-video-vesa is a generic VESA video driver for the Xorg
3474 (license license:x11)))
3484 (url "https://github.com/mjanusz/v86d")
3485 (commit (string-append name "-" version))))
3486 (file-name (git-file-name name version))
3488 (base32 "1c4iiggb5r9i2hxhk8c6q1m2vpfva39l1w33fsfkrz6fav6x34pp"))
3489 (modules '((guix build utils)))
3492 ;; remove bundled x86emu
3493 (for-each delete-file
3494 (filter (lambda (name) ;keep customized Makefile
3495 (not (string-suffix? "Makefile" name)))
3496 (find-files "libs/x86emu")))
3497 ;; remove non-working vbetest utility program (it is unnecessary)
3498 (delete-file "libs/lrmi-0.10/vbe.h")
3499 (delete-file "libs/lrmi-0.10/vbetest.c")
3502 ;; We keep the bundled copy of the Linux Real Mode Interface lrmi-0.10,
3503 ;; because it includes fixes missing from upstream lrmi. We do not use
3504 ;; libx86, because we already use x86emu with the more current lrmi.
3506 (inputs `(("xorg-server-sources" ,(package-source xorg-server)) ;for x86emu
3507 ("xorgproto" ,xorgproto))) ;upstream x86emu uses X11/Xfuncproto.h
3508 (outputs '("out" ;main v86d helper
3509 "testvbe")) ;test program for listing video modes
3510 (supported-systems '("i686-linux" "x86_64-linux"))
3511 (build-system gnu-build-system)
3513 `(#:tests? #f ;there are no tests
3514 #:modules ((guix build utils)
3515 (guix build gnu-build-system)
3518 (modify-phases %standard-phases
3519 ;; Replace the bundled x86emu with its upstream copy from Xorg-server:
3520 (add-after 'unpack 'unpack-x86emu-sources
3521 (lambda* (#:key inputs #:allow-other-keys)
3523 (format #t "decompressing x86emu source code~%")
3524 (with-directory-excursion "libs"
3525 (let ((srcs (assoc-ref inputs "xorg-server-sources"))
3526 (tar-binary (search-input-file inputs "/bin/tar")))
3527 (invoke tar-binary "xvf" srcs "--strip-components=3"
3528 "--wildcards" "*/hw/xfree86/x86emu/")
3530 (with-directory-excursion "x86emu"
3531 (invoke tar-binary "xvf" srcs "--strip-components=1"
3532 "--wildcards" "*/COPYING"))
3535 (lambda* (#:key outputs #:allow-other-keys)
3536 (let ((out (assoc-ref outputs "out")))
3537 (setenv "CC" (which "gcc"))
3538 (setenv "DESTDIR" out)
3539 (invoke "./configure" "--with-x86emu"))))
3540 (add-after 'build 'build-testvbe
3542 (invoke "make" "testvbe")))
3543 (add-after 'install 'install-testvbe
3544 (lambda* (#:key outputs #:allow-other-keys)
3545 (let ((testvbe (assoc-ref outputs "testvbe"))
3546 (olddest (getenv "DESTDIR")))
3547 (setenv "DESTDIR" testvbe)
3548 (invoke "make" "install_testvbe")
3549 (setenv "DESTDIR" olddest)
3551 (add-after 'install 'install-docs
3552 (lambda* (#:key outputs #:allow-other-keys)
3553 (let* ((out (assoc-ref outputs "out"))
3554 (doc-dir (string-append out "/share/doc/v86d")))
3557 (string-append doc-dir "/README"))
3558 (copy-file "libs/lrmi-0.10/README"
3559 (string-append doc-dir "/README.lrmi"))
3560 (copy-file "libs/x86emu/COPYING"
3561 (string-append doc-dir "/COPYING.xorg-server.x86emu"))
3563 (home-page "https://github.com/mjanusz/v86d")
3564 (synopsis "Userspace helper for uvesafb")
3566 "v86d provides a backend for kernel drivers that need to execute x86 BIOS
3567 code. The code is executed in a controlled environment and the results are
3568 passed back to the kernel via the netlink interface. v86d is required by the
3569 uvesafb Linux kernel module that provides an fbdev framebuffer when Kernel
3570 Mode Setting is unavailable. It can be a last resort when no other Xorg X
3571 server driver works.")
3572 (license (list license:gpl2
3573 license:x11)))) ;for bundled lrmi and x86emu
3575 (define-public xf86-video-vmware
3577 (name "xf86-video-vmware")
3583 "mirror://xorg/individual/driver/xf86-video-vmware-"
3588 "0v06qhm059klq40m2yx4wypzb7h53aaassbjfmm6clcyclj1k5s7"))))
3589 (build-system gnu-build-system)
3594 mesa ; for xatracker
3597 (list eudev pkg-config))
3598 (home-page "https://www.x.org/wiki/")
3599 (synopsis "VMware SVGA video driver for X server")
3601 "xf86-video-vmware is a VMware SVGA video driver for the Xorg X server.")
3602 (license license:x11)))
3605 (define-public xf86-video-voodoo
3607 (name "xf86-video-voodoo")
3613 "mirror://xorg/individual/driver/xf86-video-voodoo-"
3618 "1s6p7yxmi12q4y05va53rljwyzd6ry492r1pgi7wwq6cznivhgly"))
3620 (search-patches "xf86-video-voodoo-pcitag.patch"))))
3621 (build-system gnu-build-system)
3622 (inputs (list xorgproto xorg-server))
3623 (native-inputs (list pkg-config))
3624 (home-page "https://www.x.org/wiki/")
3625 (synopsis "Voodoo/Voodoo2 video driver for X server")
3627 "xf86-video-voodoo is a Voodoo video driver for the Xorg X server.")
3628 (license license:x11)))
3631 ;; Only relevant for the frame buffer on BSD systems.
3632 ;; (define-public xf86-video-wsfb
3635 (define-public xf86bigfontproto
3637 (name "xf86bigfontproto")
3643 "mirror://xorg/individual/proto/xf86bigfontproto-"
3648 "0j0n7sj5xfjpmmgx6n5x556rw21hdd18fwmavp95wps7qki214ms"))))
3649 (build-system gnu-build-system)
3650 (home-page "https://www.x.org/wiki/")
3651 (synopsis "Xorg XF86BigFontProto protocol headers")
3653 "XFree86 Bigfont Extension contains header files and documentation
3654 for the XF86BigFontProto protocol.")
3655 (license license:x11)
3656 (properties `((superseded . ,xorgproto)))))
3658 (define-public xf86dgaproto
3660 (name "xf86dgaproto")
3666 "mirror://xorg/individual/proto/xf86dgaproto-"
3671 "0l4hx48207mx0hp09026r6gy9nl3asbq0c75hri19wp1118zcpmc"))))
3672 (build-system gnu-build-system)
3673 (home-page "https://www.x.org/wiki/")
3674 (synopsis "Xorg XF86DGAProto protocol headers")
3676 "XFree86 Direct Graphic Access Extension defines a protocol for
3677 direct linear framebuffer access.")
3678 (license license:x11)
3679 (properties `((superseded . ,xorgproto)))))
3681 (define-public xf86driproto
3683 (name "xf86driproto")
3689 "mirror://xorg/individual/proto/xf86driproto-"
3694 "07v69m0g2dfzb653jni4x656jlr7l84c1k39j8qc8vfb45r8sjww"))))
3695 (build-system gnu-build-system)
3696 (home-page "https://www.x.org/wiki/")
3697 (synopsis "Xorg XF86DRIProto protocol headers")
3699 "XFree86 Direct Rendering Infrastructure Extension defines a
3700 protocol to allow user applications to access the video hardware without
3701 requiring data to be passed through the X server.")
3702 (license license:x11)
3703 (properties `((superseded . ,xorgproto)))))
3705 (define-public xf86vidmodeproto
3707 (name "xf86vidmodeproto")
3713 "mirror://xorg/individual/proto/xf86vidmodeproto-"
3718 "0w47d7gfa8zizh2bshdr2rffvbr4jqjv019mdgyh6cmplyd4kna5"))))
3719 (build-system gnu-build-system)
3720 (home-page "https://www.x.org/wiki/")
3721 (synopsis "Xorg XF86VidModeProto protocol headers")
3723 "XFree86 Video Mode Extension defines a protocol for dynamically
3724 configuring modelines and gamma.")
3725 (license license:x11)
3726 (properties `((superseded . ,xorgproto)))))
3728 (define-public xgamma
3736 "mirror://xorg/individual/app/xgamma-"
3741 "1lr2nb1fhg5fk2fchqxdxyl739602ggwhmgl2wiv5c8qbidw7w8f"))))
3742 (build-system gnu-build-system)
3744 (list libxxf86vm libx11))
3747 (home-page "https://www.x.org/wiki/")
3748 (synopsis "Alter a monitor's gamma correction")
3750 "XGamma is used to query and alter the gamma correction of a
3751 monitor via the X video mode extension.")
3752 (license license:x11)))
3755 (define-public xhost
3763 "mirror://xorg/individual/app/xhost-"
3768 "15n3mnd4i5kh4z32qv11580qjgvnng0wry2y753ljrqkkrbkrp52"))))
3769 (build-system gnu-build-system)
3771 (list libxmu libxau libx11))
3774 (home-page "https://gitlab.freedesktop.org/xorg/app/xhost")
3775 (synopsis "Xorg server access control utility")
3777 "XHost is used to manage the list of host names or user names
3778 allowed to make connections to the X server.")
3779 (license license:x11)))
3782 (define-public xineramaproto
3784 (name "xineramaproto")
3790 "mirror://xorg/individual/proto/xineramaproto-"
3795 "0ns8abd27x7gbp4r44z3wc5k9zqxxj8zjnazqpcyr4n17nxp8xcp"))))
3796 (build-system gnu-build-system)
3797 (native-inputs (list pkg-config))
3798 (home-page "https://www.x.org/wiki/")
3799 (synopsis "Xorg XineramaProto protocol headers")
3801 "Xinerama Extension allows clients to query information about multiple
3802 physical screens controlled by a single X server that appear as a single
3803 screen to core X11 protocol operations.
3805 This extension provides a common network protocol for querying information
3806 which may be provided by different underlying screen combination
3807 technologies in the X server, such as the original Xinerama multiplexer, or
3808 alternative implementations like XRandR or TwinView.")
3809 (license license:x11)
3810 (properties `((superseded . ,xorgproto)))))
3812 (define-public xinput
3820 "mirror://xorg/individual/app/xinput-"
3825 "1vb6xdd1xmk5f7pwc5zcbxfray5sf1vbnscqwf2yl8lv7gfq38im"))))
3826 (build-system gnu-build-system)
3837 (home-page "https://www.x.org/wiki/")
3838 (synopsis "Configure input devices for X server")
3840 "XInput is used to configure and test XInput devices.")
3841 (license license:x11)))
3844 (define-public xkbcomp-intermediate ;used as input for xkeyboard-config
3846 (name "xkbcomp-intermediate")
3851 (uri (string-append "mirror://xorg/individual/app/xkbcomp-"
3852 version ".tar.bz2"))
3855 "0pmhshqinwqh5rip670l3szjpywky67hv232ql6gvdj489n0hlb8"))))
3856 (build-system gnu-build-system)
3858 (list xorgproto libxkbfile libx11))
3861 (home-page "https://www.x.org/wiki/")
3862 (synopsis "Compile XKB keyboard description")
3864 "xkbcomp keymap compiler converts a description of an XKB keymap
3865 into one of several output formats. The most common use for xkbcomp is
3866 to create a compiled keymap file (.xkm extension) which can be read
3867 directly by XKB- capable X servers or utilities.
3869 X Keyboard (XKB) Extension essentially replaces the core protocol
3870 definition of keyboard. The extension makes possible to clearly and
3871 explicitly specify most aspects of keyboard behaviour on per-key basis
3872 and to more closely track the logical and physical state of the
3873 keyboard. It also includes a number of keyboard controls designed to
3874 make keyboards more accessible to people with physical impairments.")
3875 (license license:x11)
3877 ;; The only reason this package is public is to make sure it's built and
3878 ;; published by the continuous integration tool.
3879 (properties '((hidden? . #t)))))
3881 (define-public xkbcomp ; using xkeyboard-config as input
3882 (package (inherit xkbcomp-intermediate)
3886 `(,@(package-inputs xkbcomp-intermediate)
3887 ("xkeyboard-config" ,xkeyboard-config)))
3890 (list (string-append "--with-xkb-config-root="
3891 (assoc-ref %build-inputs "xkeyboard-config")
3892 "/share/X11/xkb"))))))
3895 (define-public xkbevd
3903 "mirror://xorg/individual/app/xkbevd-"
3908 "0sprjx8i86ljk0l7ldzbz2xlk8916z5zh78cafjv8k1a63js4c14"))))
3909 (build-system gnu-build-system)
3911 (list libxkbfile libx11))
3914 (home-page "https://www.x.org/wiki/")
3915 (synopsis "XKB event daemon demo")
3917 "XKB event daemon listens for the specified XKB events and executes
3918 requested commands if they occur.")
3919 (license license:x11)))
3921 (define-public xkbprint
3928 (uri (string-append "mirror://xorg/individual/app/"
3929 "xkbprint-" version ".tar.bz2"))
3931 (base32 "1yi3232g25hhp241irncd8znv3090k2gm0yjcdnz08h89y1zwn2v"))))
3932 (build-system gnu-build-system)
3934 (list libx11 libxkbfile xorgproto))
3937 (home-page "https://www.x.org/wiki/")
3938 (synopsis "Visualise an XKB keyboard layout description")
3940 "The @command{xkbprint} utility visualises (``prints'') an XKB keyboard
3941 description as printable or encapsulated PostScript. It accepts any compiled
3942 keymap (@file{.xkm}) file that includes a geometry description, or can obtain
3943 one from a running X server.")
3944 (license license:x11)))
3946 (define-public xkbutils
3954 "mirror://xorg/individual/app/xkbutils-"
3959 "0c412isxl65wplhl7nsk12vxlri29lk48g3p52hbrs3m0awqm8fj"))))
3960 (build-system gnu-build-system)
3962 (list libxt libxaw xorgproto))
3965 (home-page "https://www.x.org/wiki/")
3966 (synopsis "XKB utilities")
3968 "XKBUtils is a collection of small utilities for X Keyboard (XKB)
3969 extension to the X11 protocol. It includes:
3971 - xkbbell: generate XKB bell events;
3973 - xkbvleds: display the state of LEDs on an XKB keyboard in a window;
3975 - xkbwatch: reports changes in the XKB keyboard state.")
3976 (license license:x11)))
3979 (define-public xkeyboard-config
3981 (name "xkeyboard-config")
3987 "ftp://ftp.freedesktop.org/pub/xorg//individual/data/xkeyboard-config/xkeyboard-config-"
3992 "1kmq2ykwmh10sd6155gml4jhdxmvsll6xdg7zw86czpfhrvd48dk"))))
3993 (build-system gnu-build-system)
3995 (list libx11 xkbcomp-intermediate))
3997 `(("gettext" ,gettext-minimal)
3999 ("pkg-config" ,pkg-config)
4000 ("python" ,python)))
4001 (home-page "https://www.x.org/wiki/")
4002 (synopsis "Xorg XKB configuration files")
4004 "xkeyboard-config provides a database for X Keyboard (XKB) Extension.
4005 There are five components that define a complete keyboard mapping:
4006 symbols, geometry, keycodes, compat, and types; these five components
4007 can be combined together using the @code{rules} component of this database.")
4008 (license license:x11)))
4011 (define-public xkill
4019 "mirror://xorg/individual/app/xkill-"
4024 "0szzd9nzn0ybkhnfyizb876irwnjsnb78rcaxx6prb71jmmbpw65"))))
4025 (build-system gnu-build-system)
4027 (list libxmu libx11))
4030 (home-page "https://www.x.org/wiki/")
4031 (synopsis "Kill a client by its X resource")
4033 "XKill is used to force the X server to close connections to
4034 clients. This program is very dangerous, but is useful for aborting
4035 programs that have displayed undesired windows on a user's screen.")
4036 (license license:x11)))
4039 (define-public xlsatoms
4047 "mirror://xorg/individual/app/xlsatoms-"
4052 "10m3a046jvaw5ywx4y65kl84lsxqan70gww1g1r7cf96ijaqz1jp"))))
4053 (build-system gnu-build-system)
4058 (home-page "https://gitlab.freedesktop.org/xorg/app/xlsatoms")
4059 (synopsis "List interned X server atoms")
4061 "XLsAtoms is used to list the interned atoms defined on X server.")
4062 (license license:x11)))
4065 (define-public xlsclients
4073 "mirror://xorg/individual/app/xlsclients-"
4078 "1h8931sn34mcip6vpi4v7hdmr1r58gkbw4s2p97w98kykks2lgvp"))))
4079 (build-system gnu-build-system)
4084 (home-page "https://www.x.org/wiki/")
4085 (synopsis "List client applications running on a display")
4087 "XLsClients is used to list information about the client programs
4088 running on X server.")
4089 (license license:x11)))
4092 (define-public xlsfonts
4100 "mirror://xorg/individual/app/xlsfonts-"
4105 "0s6kxgv78chkwsqmhw929f4pf91gq63f4yvixxnan1h00cx0pf49"))))
4106 (build-system gnu-build-system)
4108 (list xorgproto libx11))
4111 (home-page "https://www.x.org/wiki/")
4112 (synopsis "List fonts available from an X server")
4114 "xlsfonts lists fonts available from an X server via the X11 core
4116 (license license:x11)))
4118 (define-public xfontsel
4125 "mirror://xorg/individual/app/xfontsel-"
4126 version ".tar.bz2"))
4129 "0700lf6hx7dg88wq1yll7zjvf9gbwh06xff20yffkxb289y0pai5"))))
4130 (build-system gnu-build-system)
4133 (list (string-append "--with-appdefaultdir="
4134 %output ,%app-defaults-dir))))
4136 (list libx11 libxaw libxmu libxt))
4139 (home-page "https://www.x.org/wiki/")
4140 (synopsis "Browse and select X font names")
4142 "XFontSel provides a simple way to display the X11 core protocol fonts
4143 known to your X server, examine samples of each, and retrieve the X Logical
4144 Font Description (XLFD) full name for a font.")
4145 (license license:x11)))
4154 "mirror://xorg/individual/app/xfd-"
4155 version ".tar.bz2"))
4158 "0n6r1v8sm0z0ycqch035xpm46nv5v4mav3kxh36883l3ln5r6bqr"))))
4159 (build-system gnu-build-system)
4162 (list (string-append "--with-appdefaultdir="
4163 %output ,%app-defaults-dir))))
4165 `(("fontconfig" ,fontconfig)
4170 ("libxrender" ,libxrender)
4171 ("libxkbfile" ,libxkbfile)))
4173 `(("gettext" ,gettext-minimal)
4174 ("pkg-config" ,pkg-config)))
4175 (home-page "https://www.x.org/wiki/")
4176 (synopsis "Display all the characters in an X font")
4178 "XFD (X Font Display) package provides an utility that displays a
4179 window containing the name of the font being displayed, a row of command
4180 buttons, several lines of text for displaying character metrics, and a grid
4181 containing one glyph per cell.")
4182 (license license:x11)))
4184 (define-public xmodmap
4192 "mirror://xorg/individual/app/xmodmap-"
4197 "0z28331i2pm16x671fa9qwsfqdmr6a43bzwmp0dm17a3sx0hjgs7"))))
4198 (build-system gnu-build-system)
4200 (list xorgproto libx11))
4203 (home-page "https://gitlab.freedesktop.org/xorg/app/xmodmap")
4204 (synopsis "Modify keymaps and button mappings on X server")
4206 "Xmodmap is used to display and edit the keyboard modifier map and
4207 keymap table that are used by client programs running on X server to
4208 convert event keycodes into keysyms. It is usually run from the user's
4209 session startup script to configure the keyboard according to personal
4211 (license license:x11)))
4215 ;; (define-public xorg-docs
4218 (define-public xorg-sgml-doctools
4220 (name "xorg-sgml-doctools")
4226 "mirror://xorg/individual/doc/xorg-sgml-doctools-"
4231 "0k5pffyi5bx8dmfn033cyhgd3gf6viqj3x769fqixifwhbgy2777"))))
4232 (build-system gnu-build-system)
4233 (native-inputs (list pkg-config))
4234 (home-page "https://www.x.org/wiki/")
4235 (synopsis "Xorg SGML documentation tools")
4237 "This package provides a common set of SGML entities and XML/CSS style
4238 sheets used in building/formatting the documentation provided in other
4239 Xorg packages. It's typically only needed by people building from
4240 source who want to produce formatted documentation from their builds, or
4241 those who have installed the HTML version of the documentation, which
4242 refers to the included common xorg.css stylesheet.")
4243 (license license:x11)))
4254 "mirror://xorg/individual/app/xpr-"
4259 "07qy9lwjvxighcmg6qvjkgagad3wwvidrfx0jz85lgynz3qy0dmr"))))
4260 (build-system gnu-build-system)
4262 (list xorgproto libxmu libx11))
4265 (home-page "https://www.x.org/wiki/")
4266 (synopsis "Print an X window dump from xwd")
4268 "XPr takes as input a window dump file produced by xwd and formats
4269 it for output on various types of printers.")
4270 (license license:x11)))
4273 (define-public xprop
4280 (uri (string-append "mirror://xorg/individual/app/xprop-"
4281 version ".tar.bz2"))
4284 "18ckr8g1z50zkc01hprkpm1npwbq32yqib4b3l98c95z2q1yv4lv"))))
4285 (build-system gnu-build-system)
4287 (list libx11 xorgproto))
4290 (home-page "https://www.x.org/wiki/")
4291 (synopsis "Display X server properties")
4293 "xprop is used to display and/or set window and font properties of
4295 (license license:x11)))
4298 (define-public xrandr
4306 "mirror://xorg/individual/app/xrandr-"
4310 "0ql75s1n3dm2m3g1ilb9l6hqh15r0v709bgghpwazy3jknpnvivv"))))
4311 (build-system gnu-build-system)
4313 (list libxrender libxrandr xorgproto libx11))
4316 (home-page "https://www.x.org/wiki/")
4317 (synopsis "Command line interface to X RandR extension")
4319 "xrandr - primitive command line interface to X11 Resize, Rotate,
4320 and Reflect (RandR) extension.")
4321 (license license:x11)))
4331 (uri (string-append "mirror://xorg/individual/app/xrdb-"
4332 version ".tar.bz2"))
4334 (base32 "1d78prd8sfszq2rwwlb32ksph4fymf988lp75aj8iysg44f06pag"))))
4335 (build-system gnu-build-system)
4337 (list libxmu libx11))
4340 (home-page "https://gitlab.freedesktop.org/xorg/app/xrdb")
4341 (synopsis "X server resource database utility")
4343 "XRDB is used to get or set the contents of the RESOURCE_MANAGER
4344 property on the root window of screen 0, or the SCREEN_RESOURCES
4345 property on the root window of any or all screens, or everything
4346 combined. You would normally run this program from your X startup
4348 (license license:x11)))
4351 (define-public xrefresh
4359 "mirror://xorg/individual/app/xrefresh-"
4364 "0lv3rlshh7s0z3aqx5ahnnf8cl082m934bk7gv881mz8nydznz98"))))
4365 (build-system gnu-build-system)
4370 (home-page "https://www.x.org/wiki/")
4371 (synopsis "Refresh all or part of an X screen")
4373 "Xrefresh is a simple X program that causes all or part of your
4374 screen to be repainted. This is useful when system messages have messed
4376 (license license:x11)))
4387 "mirror://xorg/individual/app/xset-"
4392 "0my987wjvra7l92ry6q44ky383yg3phzxhdbn3lqhapm1ll9bzg4"))))
4393 (build-system gnu-build-system)
4395 (list xorgproto libxmu libxext libx11))
4398 (home-page "https://www.x.org/wiki/")
4399 (synopsis "User preference utility for X server")
4401 "XSet is used to set various user preference options of the display.")
4402 (license license:x11)))
4405 (define-public xsetroot
4413 "mirror://xorg/individual/app/xsetroot-"
4418 "0z21mqvmdl6rl63q77479wgkfygnll57liza1i3va7sr4fx45i0h"))))
4419 (build-system gnu-build-system)
4421 (list libxmu libxcursor xbitmaps))
4424 (home-page "https://www.x.org/wiki/")
4425 (synopsis "Root window parameter setting utility for X server")
4427 "XSetRoot allows you to tailor the appearance of the root window on
4428 a display running X server.")
4429 (license license:x11)))
4432 (define-public xtrans
4440 "mirror://xorg/individual/lib/xtrans-"
4445 "0wyp0yc6gi72hwc3kjmvm3vkj9p6s407cb6dxx37jh9wb68l8z1p"))))
4446 (build-system gnu-build-system)
4447 (native-inputs (list pkg-config))
4448 (home-page "https://www.x.org/wiki/")
4449 (synopsis "Xorg Network Transport layer library")
4451 "Xtrans is a library of code that is shared among various X packages to
4452 handle network protocol transport in a modular fashion, allowing a single
4453 place to add new transport types. It is used by the X server, libX11,
4454 libICE, the X font server, and related components.")
4455 (license license:x11)))
4458 (define-public xvinfo
4466 "mirror://xorg/individual/app/xvinfo-"
4471 "0gz7fvxavqlrqynpfbrm2nc9yx8h0ksnbnv34fj7n1q6cq6j4lq3"))))
4472 (build-system gnu-build-system)
4474 (list libxext libxv libx11))
4477 (home-page "https://gitlab.freedesktop.org/xorg/app/xvinfo")
4478 (synopsis "Print out X-Video extension adaptor information")
4480 "XVInfo is used to print out the capabilities of any video adaptors
4481 associated with the display that are accessible through the X-Video
4483 (license license:x11)))
4493 (uri (string-append "mirror://xorg/individual/app/xwd-"
4494 version ".tar.bz2"))
4496 (base32 "06q36fh55r62ms0igfxsanrn6gv8lh794q1bw9xzw51p2qs2papv"))))
4497 (build-system gnu-build-system)
4499 (list libxt libxkbfile xorgproto))
4502 (home-page "https://www.x.org/wiki/")
4503 (synopsis "Dump current contents of X window or screen to file")
4505 "Xwd is used to store window images in a specially formatted dump
4506 file. This file can then be read by various other X utilities for
4507 redisplay, printing, editing, formatting, archiving, image processing,
4508 etc. The target window is selected by clicking the pointer in the
4509 desired window. The keyboard bell is rung once at the beginning of the
4510 dump and twice when the dump is completed.")
4511 (license license:x11)))
4514 (define-public xwininfo
4522 "mirror://xorg/individual/app/xwininfo-"
4527 "03h8clirhw5ki1xxp18xbf5vynm7r0dwspsgfin6cxn4vx0m8h3s"))))
4528 (build-system gnu-build-system)
4530 (list libx11 xorgproto))
4533 (home-page "https://www.x.org/wiki/")
4534 (synopsis "Window information utility for X server")
4536 "XWinInfo is used to print out information about windows on an X server.
4537 Various information is displayed depending on which options are selected.")
4538 (license license:x11)))
4549 "mirror://xorg/individual/app/xwud-"
4554 "1a8hdgy40smvblnh3s9f0vkqckl68nmivx7d48zk34m8z18p16cr"))))
4555 (build-system gnu-build-system)
4557 (list xorgproto libx11))
4560 (home-page "https://www.x.org/wiki/")
4561 (synopsis "Display an X window dump from xwd")
4563 "Xwud is used to display in a window an image saved in a specially
4564 formatted dump file, such as produced by xwd.")
4565 (license license:x11)))
4567 (define-public xorg-rgb
4575 "mirror://xorg/individual/app/rgb-"
4580 "1c76zcjs39ljil6f6jpx1x17c8fnvwazz7zvl3vbjfcrlmm7rjmv"))))
4581 (build-system gnu-build-system)
4586 (home-page "https://www.x.org/wiki/")
4587 (synopsis "X color name database")
4589 "This package provides the X color name database.")
4590 (license license:x11)))
4592 ;; packages of height 1 in the propagated-inputs tree
4594 (define-public fixesproto
4602 "mirror://xorg/individual/proto/fixesproto-"
4607 "1ki4wiq2iivx5g4w5ckzbjbap759kfqd72yg18m3zpbb4hqkybxs"))))
4608 (build-system gnu-build-system)
4613 (home-page "https://www.x.org/wiki/")
4614 (synopsis "Xorg FixesProto protocol headers")
4616 "Fixes Extension makes changes to many areas of the protocol to resolve
4617 issues raised by application interaction with core protocol mechanisms that
4618 cannot be adequately worked around on the client side of the wire.")
4619 (license license:x11)
4620 (properties `((superseded . ,xorgproto)))))
4622 (define-public libxdamage
4630 "mirror://xorg/individual/lib/libXdamage-"
4635 "0igaw2akjf712y3rv7lx473jigxmcv9rs9y8sbrvbhya8f30cd5p"))))
4636 (build-system gnu-build-system)
4638 ;; These are all in the Requires or Requires.private field of xdamage.pc
4639 (list libxfixes xorgproto libx11))
4642 (home-page "https://www.x.org/wiki/")
4643 (synopsis "Xorg Damage Extension library")
4644 (description "Xorg library for the XDamage extension.")
4645 (license license:x11)))
4648 (define-public libxext
4656 "mirror://xorg/individual/lib/libXext-"
4661 "0azqxllcsfxc3ilhz6kwc6x7m8wc477p59ir9p0yrsldx766zbar"))))
4662 (build-system gnu-build-system)
4663 (outputs '("out" "doc")) ;man pages represent 40% of the total
4666 (list "--disable-static"
4667 (string-append "--mandir="
4668 (assoc-ref %outputs "doc")
4670 ,@(malloc0-flags))))
4674 (list libxau libx11))
4677 (home-page "https://www.x.org/wiki/")
4678 (synopsis "Xorg Common extensions library")
4680 "Library for common extensions to the X11 protocol.")
4681 (license license:x11)))
4684 (define-public libxinerama
4686 (name "libxinerama")
4692 "mirror://xorg/individual/lib/libXinerama-"
4697 "086p0axqj57nvkaqa6r00dnr9kyrn1m8blgf0zjy25zpxkbxn200"))))
4698 (build-system gnu-build-system)
4700 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
4704 (list libxext libx11))
4707 (home-page "https://www.x.org/wiki/")
4708 (synopsis "Xorg Xinerama protocol library")
4709 (description "API for Xinerama extension to X11 protocol.")
4710 (license license:x11)))
4713 (define-public libxp
4721 "mirror://xorg/individual/lib/libXp-"
4726 "0mwc2jwmq03b1m9ihax5c6gw2ln8rc70zz4fsj3kb7440nchqdkz"))))
4727 (build-system gnu-build-system)
4731 (list libx11 libxext))
4734 (home-page "https://www.x.org/wiki/")
4735 (synopsis "Xorg Print Client library")
4736 (description "Xorg Print Client library.")
4737 (license license:x11)))
4740 (define-public libxrender
4748 "mirror://xorg/individual/lib/libXrender-"
4753 "0j89cnb06g8x79wmmnwzykgkkfdhin9j7hjpvsxwlr3fz1wmjvf0"))))
4754 (build-system gnu-build-system)
4757 (list "--disable-static" ,@(malloc0-flags))
4758 ,@(if (and (%current-target-system)
4761 (modify-phases %standard-phases
4762 (add-after 'unpack 'update-config
4763 (lambda* (#:key native-inputs #:allow-other-keys)
4765 (search-input-file native-inputs "/bin/config.sub") ".")
4767 (search-input-file native-inputs "/bin/config.guess") ".")))))
4775 (if (and (%current-target-system)
4780 (home-page "https://www.x.org/wiki/")
4781 (synopsis "Xorg Render Extension library")
4782 (description "Library for the Render Extension to the X11 protocol.")
4783 (license license:x11)))
4785 (define-public libxtst
4793 "mirror://xorg/individual/lib/libXtst-"
4798 "012jpyj7xfm653a9jcfqbzxyywdmwb2b5wr1dwylx14f3f54jma6"))))
4799 (build-system gnu-build-system)
4801 '(#:configure-flags '("--disable-static")))
4803 (list libxi xorgproto))
4808 (home-page "https://www.x.org/wiki/")
4809 (synopsis "Xorg library for Xtest and Record extensions")
4811 "libXtst provides the Xlib-based client API for the XTEST & RECORD
4814 The XTEST extension is a minimal set of client and server extensions
4815 required to completely test the X11 server with no user intervention. This
4816 extension is not intended to support general journaling and playback of user
4819 The RECORD extension supports the recording and reporting of all core X
4820 protocol and arbitrary X extension protocol.")
4821 (license license:x11)))
4823 (define-public libxv
4831 "mirror://xorg/individual/lib/libXv-"
4836 "125hn06bd3d8y97hm2pbf5j55gg4r2hpd3ifad651i4sr7m16v6j"))))
4837 (build-system gnu-build-system)
4839 `(#:configure-flags '(,@(malloc0-flags) "--disable-static")))
4843 (list libxext libx11))
4846 (home-page "https://www.x.org/wiki/")
4847 (synopsis "Xorg XVideo Extension library")
4848 (description "Library for the X Video Extension to the X11 protocol.")
4849 (license license:x11)))
4851 (define-public mkfontdir
4859 "mirror://xorg/individual/app/mkfontdir-"
4864 "0c3563kw9fg15dpgx4dwvl12qz6sdqdns1pxa574hc7i5m42mman"))))
4865 (build-system gnu-build-system)
4868 (modify-phases %standard-phases
4869 (add-after 'unpack 'fix-configure
4870 (lambda* (#:key inputs native-inputs #:allow-other-keys)
4871 ;; Replace outdated config.sub and config.guess:
4872 (for-each (lambda (file)
4873 (install-file (string-append
4875 (or native-inputs inputs) "automake")
4877 ,(version-major+minor
4878 (package-version automake))
4880 '("config.sub" "config.guess"))
4882 (add-after 'install 'wrap-mkfontdir
4883 (lambda* (#:key inputs outputs #:allow-other-keys)
4884 (wrap-program (string-append (assoc-ref outputs "out")
4888 (search-input-file inputs "/bin/mkfontscale"))))))))))
4892 (list pkg-config automake)) ;For up to date 'config.guess' and 'config.sub'.
4893 (home-page "https://www.x.org/wiki/")
4894 (synopsis "Create an index of X font files in a directory")
4896 "MkFontDir creates the @code{fonts.dir} files needed by the legacy X
4897 server core font system. The current implementation is a simple wrapper
4898 script around the mkfontscale program.")
4899 (license license:x11)))
4901 (define-public xproto
4909 "mirror://xorg/individual/proto/xproto-"
4914 "0ivpxz0rx2a7nahkpkhfgymz7j0pwzaqvyqpdgw9afmxl1yp9yf6"))))
4915 (build-system gnu-build-system)
4917 (list util-macros)) ; to get util-macros in (almost?) all package inputs
4920 (home-page "https://www.x.org/wiki/")
4921 (synopsis "Xorg X11Proto protocol headers")
4923 "XProto provides the headers and specification documents defining
4924 the X Window System Core Protocol, Version 11.
4926 It also includes a number of headers that aren't purely protocol related,
4927 but are depended upon by many other X Window System packages to provide
4928 common definitions and porting layer.")
4929 (license license:x11)
4930 (properties `((superseded . ,xorgproto)))))
4932 ;; packages of height 2 in the propagated-inputs tree
4934 (define-public libice
4942 "mirror://xorg/individual/lib/libICE-"
4947 "0j638yvmyna2k4mz465jywgdybgdchdqppfx6xfazg7l5khxr1kg"))))
4948 (build-system gnu-build-system)
4950 '(#:configure-flags '("--disable-static")))
4954 (list libbsd xtrans))
4957 (home-page "https://www.x.org/wiki/")
4958 (synopsis "Xorg Inter-Client Exchange library")
4959 (description "Xorg Inter-Client Exchange library.")
4960 (license license:x11)))
4963 (define-public libxau
4971 "mirror://xorg/individual/lib/libXau-"
4976 "1v3krc6x0zliaa66qq1bf9j60x5nqfy68v8axaiglxpnvgqcpy6c"))))
4977 (build-system gnu-build-system)
4979 '(#:configure-flags '("--disable-static")))
4984 (home-page "https://www.x.org/wiki/")
4985 (synopsis "Xorg Authorization library")
4987 "libXau provides an authorization library for individual access to
4988 an X Window System display.")
4989 (license license:x11)))
4991 (define-public libxfixes
4999 "mirror://xorg/individual/lib/libXfixes-"
5004 "0k2v4i4r24y3kdr5ici1qqhp69djnja919xfqp54c2rylm6s5hd7"))))
5005 (build-system gnu-build-system)
5007 '(#:configure-flags '("--disable-static")))
5014 (home-page "https://www.x.org/wiki/")
5015 (synopsis "Xorg Fixes Extension library")
5016 (description "Library for the XFixes Extension to the X11 protocol.")
5017 (license license:x11)))
5019 (define-public libxfont
5027 "mirror://xorg/individual/lib/libXfont-"
5032 "0hiji1bvpl78aj3a3141hkk353aich71wv8l5l2z51scfy878zqs"))))
5033 (build-system gnu-build-system)
5035 '(#:configure-flags '("--disable-static")))
5037 (list freetype libfontenc xorgproto))
5042 (home-page "https://www.x.org/wiki/")
5043 (synopsis "Xorg Font handling library")
5045 "libXfont provides the core of the legacy X11 font system, handling the
5046 index files (fonts.dir, fonts.alias, fonts.scale), the various font file
5047 formats, and rasterizing them. It is used by the X servers, the X Font
5048 Server (xfs), and some font utilities (bdftopcf for instance), but should
5049 not be used by normal X11 clients. X11 clients access fonts via either the
5050 new API's in libXft, or the legacy API's in libX11.")
5051 (license license:x11)))
5053 (define-public libxfont2
5059 (uri (string-append "mirror://xorg/individual/lib/libXfont2-"
5060 version ".tar.bz2"))
5063 "1rk9pjxcm01lbr1dxhnvk4f2qrn6zp068qjbvvz5w0z5d0rin5bd"))))))
5065 (define-public libxi
5073 "mirror://xorg/individual/lib/libXi-"
5078 "0q8hz3slga3w3ch8wp0k7ay9ilhz315qnab0w1y2x9w3cf7hv8rn"))))
5079 (build-system gnu-build-system)
5080 (outputs '("out" "doc")) ;man pages represent 28% of the total
5082 `(#:configure-flags (list "--disable-static"
5083 (string-append "--mandir="
5084 (assoc-ref %outputs "doc")
5086 ,@(malloc0-flags))))
5088 (list xorgproto libx11 libxext libxfixes))
5091 (home-page "https://www.x.org/wiki/")
5092 (synopsis "Xorg Input Extension library")
5093 (description "Library for the XInput Extension to the X11 protocol.")
5094 (license license:x11)))
5096 (define-public libxrandr
5104 "mirror://xorg/individual/lib/libXrandr-"
5109 "08z0mqywrm7ij8bxlfrx0d2wy6kladdmkva1nw5k6qix82z0xsla"))))
5110 (build-system gnu-build-system)
5112 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
5114 ;; In accordance with xrandr.pc.
5115 (list libx11 libxext libxrender xorgproto))
5118 (home-page "https://www.x.org/wiki/")
5119 (synopsis "Xorg Resize and Rotate Extension library")
5121 "Library for the Resize and Rotate Extension to the X11 protocol.")
5122 (license license:x11)))
5124 (define-public libxvmc
5132 "mirror://xorg/individual/lib/libXvMC-"
5137 "1kbdjsvkm5l7axv7g477qj18sab2wnqhliy6197syzizgfbsfgbb"))))
5138 (build-system gnu-build-system)
5140 `(#:configure-flags '(,@(malloc0-flags) "--disable-static")))
5144 (list xorgproto libxext libx11))
5147 (home-page "https://www.x.org/wiki/")
5148 (synopsis "Xorg XvMC library")
5149 (description "Xorg XvMC library.")
5150 (license license:x11)))
5152 (define-public libxxf86vm
5160 "mirror://xorg/individual/lib/libXxf86vm-"
5165 "0mydhlyn72i7brjwypsqrpkls3nm6vxw0li8b2nw0caz7kwjgvmg"))))
5166 (build-system gnu-build-system)
5168 `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
5170 (list libxext xorgproto))
5175 (home-page "https://www.x.org/wiki/")
5176 (synopsis "Xorg XF86 Video Mode Extension library")
5178 "Library for the XFree86 Video Mode Extension Extension to the X11
5180 (license license:x11)))
5183 ;; packages of height 3 in the propagated-inputs tree
5185 (define-public libxcb
5192 (uri (string-append "https://xcb.freedesktop.org/dist/"
5193 "libxcb-" version ".tar.xz"))
5196 "0d2chjgyn5lr9sfhacfvqgnj9l9faz11vn322a06jd6lk3dxcpm5"))))
5197 (build-system gnu-build-system)
5198 (outputs '("out" "doc")) ;5.5 MiB of man pages
5200 (list libpthread-stubs libxau libxdmcp))
5202 (list xcb-proto libxslt))
5204 `(("pkg-config" ,pkg-config)
5205 ("python" ,python-minimal-wrapper)))
5207 `(#:configure-flags (list "--enable-xkb"
5209 (string-append "--mandir="
5210 (assoc-ref %outputs "doc")
5212 (home-page "https://xcb.freedesktop.org/")
5213 (synopsis "The X C Binding (XCB) library")
5215 "libxcb provides an interface to the X Window System protocol,
5216 which replaces the current Xlib interface. It has several advantages
5217 over Xlib, including:
5219 - size: small, simple library, and lower memory footprint;
5221 - latency hiding: batch several requests and wait for the replies later;
5223 - direct protocol access: interface and protocol correspond exactly;
5225 - proven thread support: transparently access XCB from multiple threads;
5227 - easy extension implementation: interfaces auto-generated from XML-XCB.")
5228 (license license:x11)))
5230 (define-public libxcvt
5236 (uri (string-append "https://www.x.org/releases/individual"
5237 "/lib/libxcvt-" version ".tar.xz"))
5240 "0acc7vrj5kfb19zvyl7f29rnsvx383dvwc19k70r8prm1lccxsr7"))))
5241 (build-system meson-build-system)
5242 (home-page "https://gitlab.freedesktop.org/xorg/lib/libxcvt")
5243 (synopsis "VESA Coordinated Video Timings (CVT) library")
5244 (description "@code{libxcvt} is a library providing a standalone version
5245 of the X server implementation of the VESA Coordinated Video Timings (CVT)
5246 standard timing modelines generator. @code{libxcvt} also provides a
5247 standalone version of the command line tool @command{cvt} copied from the Xorg
5248 implementation and is meant to be a direct replacement to the version provided
5249 by the Xorg server.")
5250 (license license:x11)))
5252 (define-public xorg-server
5254 (name "xorg-server")
5259 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5260 "/xserver/xorg-server-" version ".tar.xz"))
5263 "1c4dgvpv3kib8rhw37b00vc056nlb1z66c2lwzs4prz8kxmg82y2"))
5267 ;; https://lists.fedoraproject.org/archives/list/devel@lists.
5268 ;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
5272 "http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git"
5273 "/plain/06_use-intel-only-on-pre-gen4.diff"))
5276 "0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
5277 (file-name "xorg-server-use-intel-only-on-pre-gen4.diff"))))))
5278 (build-system gnu-build-system)
5280 ;; The following libraries are required by xorg-server.pc.
5281 (list libpciaccess libxcvt mesa pixman xorgproto))
5286 ("libepoxy" ,libepoxy)
5287 ("libgcrypt" ,libgcrypt)
5290 ("libxdmcp" ,libxdmcp)
5291 ("libxfixes" ,libxfixes)
5292 ("libxfont2" ,libxfont2)
5293 ("libxkbfile" ,libxkbfile)
5294 ("libxrender" ,libxrender)
5295 ("libxres" ,libxres)
5296 ("libxshmfence" ,libxshmfence)
5299 ("xkbcomp" ,xkbcomp)
5300 ("xkeyboard-config" ,xkeyboard-config)
5303 ;; Inputs for Xephyr
5304 ("xcb-util" ,xcb-util)
5305 ("xcb-util-image" ,xcb-util-image)
5306 ("xcb-util-keysyms" ,xcb-util-keysyms)
5307 ("xcb-util-renderutil" ,xcb-util-renderutil)
5308 ("xcb-util-wm" ,xcb-util-wm)))
5310 `(("python" ,python-wrapper)
5311 ("pkg-config" ,pkg-config)))
5314 (list (string-append "--with-xkb-path="
5315 (assoc-ref %build-inputs "xkeyboard-config")
5317 (string-append "--with-xkb-output="
5318 "/tmp") ; FIXME: This is a bit doubtful; where should
5319 ; the compiled keyboard maps go?
5320 (string-append "--with-xkb-bin-directory="
5321 (assoc-ref %build-inputs "xkbcomp")
5323 ;; By default, it ends up with invalid '${prefix}/...', causes:
5324 ;; _FontTransOpen: Unable to Parse address ${prefix}/share/...
5325 ;; It's not used anyway, so set it to empty.
5326 "--with-default-font-path="
5328 ;; Enable the X security extensions (ssh -X).
5329 "--enable-xcsecurity"
5331 ;; The default is to use "uname -srm", which captures the kernel
5332 ;; version and makes builds non-reproducible.
5333 "--with-os-name=GNU"
5334 "--with-os-vendor=Guix" ; not strictly needed, but looks nice
5336 ;; For the log file, etc.
5337 "--localstatedir=/var"
5342 (modify-phases %standard-phases
5343 (add-before 'configure 'pre-configure
5345 (substitute* (find-files "." "\\.c$")
5346 (("/bin/sh") (which "sh")))
5348 ;; Don't try to 'mkdir /var'.
5349 (substitute* "hw/xfree86/Makefile.in"
5350 (("\\$\\(MKDIR_P\\).*logdir.*")
5353 ;; Strip timestamps that would otherwise end up in the 'Xorg'
5355 (substitute* "configure"
5356 (("^BUILD_DATE=.*$")
5357 "BUILD_DATE=19700101\n")
5358 (("^BUILD_TIME=.*$")
5359 "BUILD_TIME=000001\n")))))))
5360 (home-page "https://www.x.org/wiki/")
5361 (synopsis "Xorg implementation of the X Window System")
5363 "This package provides the Xorg X server itself.
5364 The X server accepts requests from client programs to create windows, which
5365 are (normally rectangular) 'virtual screens' that the client program can
5368 Windows are then composed on the actual screen by the X server (or by a
5369 separate composite manager) as directed by the window manager, which usually
5370 communicates with the user via graphical controls such as buttons and
5371 draggable titlebars and borders.")
5372 (license license:x11)))
5374 ;; This package is intended to be used when building GTK+.
5375 ;; Note: It's currently marked as "hidden" to avoid having two non-eq?
5376 ;; packages with the same name and version.
5377 (define-public xorg-server-for-tests
5380 (inherit xorg-server)
5385 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5386 "/xserver/xorg-server-" version ".tar.xz"))
5389 "0md7dqsc5qb30gym06c4zc2cjsdc5ps8nywk1bkcpix05kppybkq"))
5393 ;; https://lists.fedoraproject.org/archives/list/devel@lists.
5394 ;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
5398 "http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git"
5399 "/plain/06_use-intel-only-on-pre-gen4.diff"))
5402 "0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
5403 (file-name "xorg-server-use-intel-only-on-pre-gen4.diff")))))))))
5405 (define-public eglexternalplatform
5407 (name "eglexternalplatform")
5414 (url "https://github.com/NVIDIA/eglexternalplatform")
5417 (git-file-name name version))
5419 (base32 "0lr5s2xa1zn220ghmbsiwgmx77l156wk54c7hybia0xpr9yr2nhb"))))
5420 (build-system copy-build-system)
5423 (modify-phases %standard-phases
5424 (add-after 'unpack 'patch-pkgconfig
5425 (lambda* (#:key outputs #:allow-other-keys)
5426 (substitute* "eglexternalplatform.pc"
5428 (assoc-ref outputs "out")))))
5429 (add-after 'install 'revise
5430 (lambda* (#:key outputs #:allow-other-keys)
5431 (let* ((out (assoc-ref outputs "out")))
5432 (mkdir-p (string-append out "/include/EGL"))
5434 (string-append out "/interface")
5435 (string-append out "/include/EGL"))
5436 (mkdir-p (string-append out "/share/pkgconfig"))
5438 (string-append out "/eglexternalplatform.pc")
5439 (string-append out "/share/pkgconfig/eglexternalplatform.pc"))
5440 (for-each delete-file-recursively
5442 (string-append out "/samples")
5443 (string-append out "/COPYING")
5444 (string-append out "/README.md")))))))))
5445 (synopsis "EGL External Platform interface")
5446 (description "EGLExternalPlatform is an specification of the EGL External
5447 Platform interface for writing EGL platforms and their interactions with modern
5448 window systems on top of existing low-level EGL platform implementations. This
5449 keeps window system implementation specifics out of EGL drivers by using
5450 application-facing EGL functions.")
5451 (home-page "https://github.com/NVIDIA/eglexternalplatform")
5452 (license license:expat)))
5454 (define-public egl-wayland
5456 (name "egl-wayland")
5462 (url "https://github.com/NVIDIA/egl-wayland")
5464 (file-name (git-file-name name version))
5466 (base32 "1iz86cpc4v7izckrcslllnw0vvvgsxg1sr65yb8s9d0f8xa8djdd"))))
5467 (build-system meson-build-system)
5469 (list libglvnd ;needed for headers
5470 mesa-headers pkg-config))
5472 (list mesa wayland wayland-protocols))
5474 (list eglexternalplatform))
5475 (synopsis "EGLStream-based Wayland external platform")
5476 (description "EGL-Wayland is an implementation of a EGL External Platform
5477 library to add client-side Wayland support to EGL on top of EGLDevice and
5478 EGLStream families of extensions.")
5479 (home-page "https://github.com/NVIDIA/egl-wayland")
5480 (license license:expat)))
5482 (define-public xorg-server-xwayland
5484 (name "xorg-server-xwayland")
5489 (uri (string-append "https://xorg.freedesktop.org/archive/individual"
5490 "/xserver/xwayland-" version ".tar.xz"))
5493 "18pqvg76grbsyxa3mm3j06i1l8cwb28nbn2gcnqpsk7x75zpbhpb"))))
5494 (inputs (list font-dejavu
5512 (native-inputs (list pkg-config))
5513 (build-system meson-build-system)
5516 (list "-Dxwayland_eglstream=true"
5517 (string-append "-Dxkb_dir="
5518 (assoc-ref %build-inputs "xkeyboard-config")
5520 (string-append "-Dxkb_bin_dir="
5521 (assoc-ref %build-inputs "xkbcomp") "/bin")
5522 ;; The build system insist on providing a default font path; give
5523 ;; that of dejavu, the same used for our fontconfig package.
5524 (string-append "-Ddefault_font_path="
5525 (assoc-ref %build-inputs "font-dejavu")
5527 "-Dxkb_output_dir=/tmp"
5528 (format #f "-Dbuilder_string=\"Build ID: ~a ~a\"" ,name ,version)
5532 ;; For the log file, etc.
5533 "--localstatedir=/var")
5534 #:phases (modify-phases %standard-phases
5535 (add-after 'unpack 'patch-/bin/sh
5537 (substitute* (find-files "." "\\.c$")
5538 (("/bin/sh") (which "sh"))))))))
5539 (synopsis "Xorg server with Wayland backend")
5540 (description "Xwayland is an X server for running X clients under
5542 (home-page "https://www.x.org/wiki/")
5543 (license license:x11)))
5546 ;; packages of height 4 in the propagated-inputs tree
5548 (define-public libx11
5555 (uri (string-append "https://xorg.freedesktop.org/archive/"
5556 "/individual/lib/libX11-" version ".tar.xz"))
5559 "1289nvs52q9fnp7zl30bdpbvqggnjjb39vy0zll511zvcrr43z9g"))))
5560 (build-system gnu-build-system)
5562 "doc")) ;8 MiB of man pages + XML
5565 (list (string-append "--mandir="
5566 (assoc-ref %outputs "doc")
5569 ,@(malloc0-flags))))
5571 (list xorgproto libxcb))
5575 (list pkg-config xorgproto))
5576 (home-page "https://www.x.org/wiki/")
5577 (synopsis "Xorg Core X11 protocol client library")
5578 (description "Xorg Core X11 protocol client library.")
5579 (license license:x11)))
5581 ;; packages of height 5 in the propagated-inputs tree
5583 (define-public libxcursor
5591 "mirror://xorg/individual/lib/libXcursor-"
5596 "10l7c9fm0jmpkm9ab9dz8r6m1pr87vvgqjnbx1psz50h4pwfklrs"))))
5597 (build-system gnu-build-system)
5599 '(#:configure-flags '("--disable-static")))
5601 (list libx11 libxrender libxfixes xorgproto))
5604 ;; FIXME: The search path below won't be very effective until the bugs
5605 ;; <http://bugs.gnu.org/20255> and <http://bugs.gnu.org/22138> are solved.
5606 (native-search-paths
5607 (list (search-path-specification
5608 (variable "XCURSOR_PATH")
5609 (files '("share/icons")))))
5610 (home-page "https://www.x.org/wiki/")
5611 (synopsis "Xorg Cursor management library")
5612 (description "Xorg Cursor management library.")
5613 (license license:x11)))
5615 (define-public libxt
5623 "mirror://xorg/individual/lib/libXt-"
5628 "0q1x7842r8rcn2m0q4q9f69h4qa097fyizs8brzx5ns62s7w1737"))
5629 (patches (search-patches "libxt-guix-search-paths.patch"))))
5630 (build-system gnu-build-system)
5632 "doc")) ;2 MiB of man pages + XML
5635 (list (string-append "--mandir="
5636 (assoc-ref %outputs "doc")
5639 ,@(malloc0-flags))))
5641 (list libx11 libice libsm))
5646 (home-page "https://www.x.org/wiki/")
5647 (synopsis "Xorg XToolkit Intrinsics library")
5648 (description "Xorg XToolkit Intrinsics library.")
5649 (license license:x11)))
5652 (define-public libxaw
5660 "mirror://xorg/individual/lib/libXaw-"
5665 "13kg59r3086383g1dyhnwxanhp2frssh9062mrgn34nzlf7gkbkn"))))
5666 (build-system gnu-build-system)
5668 '(#:configure-flags '("--disable-static")))
5670 (list libxext libxmu libxpm libxt))
5675 (home-page "https://www.x.org/wiki/")
5676 (synopsis "Xorg Xaw library")
5678 "Xaw is the X Athena Widget Set based on the X Toolkit
5679 Intrinsics (Xt) Library.")
5680 (license license:x11)))
5689 (uri (string-append "mirror://xorg/individual/app/twm-"
5693 "1iv8kdb18n9vk3is5fyh6l40ipq9mkgx8ppj86byf464vr1ais7l"))))
5694 (build-system gnu-build-system)
5696 (list libxt libxmu libxext xorgproto))
5698 (list bison pkg-config))
5699 (home-page "https://www.x.org/wiki/")
5700 (synopsis "Tab Window Manager for the X Window System")
5701 (description "Twm is a window manager for the X Window System.
5702 It provides titlebars, shaped windows, several forms of icon management,
5703 user-defined macro functions, click-to-type and pointer-driven
5704 keyboard focus, and user-specified key and pointer button bindings.")
5705 (license license:x11)))
5707 (define-public xcb-util
5713 (uri (string-append "mirror://xorg/individual/xcb/"
5714 name "-" version ".tar.bz2"))
5717 "1sahmrgbpyki4bb72hxym0zvxwnycmswsxiisgqlln9vrdlr9r26"))))
5718 (build-system gnu-build-system)
5720 '(#:configure-flags '("--disable-static")))
5725 (home-page "https://cgit.freedesktop.org/xcb/util/")
5726 (synopsis "Core XCB utility functions")
5728 "The XCB util module provides a number of libraries which sit on
5729 top of libxcb, the core X protocol library, and some of the extension
5730 libraries. These experimental libraries provide convenience functions
5731 and interfaces which make the raw X protocol more usable. Some of the
5732 libraries also provide client-side code which is not strictly part of
5733 the X protocol but which has traditionally been provided by Xlib.
5735 The XCB util module provides the following libraries:
5737 - aux: Convenient access to connection setup and some core requests.
5739 - atom: Standard core X atom constants and atom caching.
5741 - event: Some utilities that have little to do with events any more.")
5742 (license license:x11)))
5745 (define-public xcb-util-cursor
5747 (name "xcb-util-cursor")
5751 (uri (string-append "https://xcb.freedesktop.org/dist/"
5752 "xcb-util-cursor-" version ".tar.bz2"))
5755 "0krr4rcw6r42cncinzvzzdqnmxk3nrgpnadyg2h8k9x10q3hm885"))))
5756 (build-system gnu-build-system)
5758 '(#:configure-flags '("--disable-static")))
5760 (list m4 pkg-config))
5764 (list xcb-util-renderutil xcb-util-image))
5765 (home-page "https://cgit.freedesktop.org/xcb/util-cursor/")
5766 (synopsis "Port of libxcursor")
5767 (description "XCB-util-cursor is a port of libxcursor.")
5769 ; expat license with added clause regarding advertising
5770 (license:non-copyleft
5772 "See COPYING in the distribution."))))
5774 (define-public xcb-util-errors
5775 (let ((commit "5d660ebe872cadcdc85de9d6f9afe05de629c030")
5778 (name "xcb-util-errors")
5779 (version (git-version "1.0" revision commit))
5783 (url "https://anongit.freedesktop.org/git/xcb/util-errors.git")
5786 (file-name (git-file-name name version))
5789 "12bah0iz5k6b9hwlc5zffyfg2gnrajll3gn5s8zmazgynvw72ahg"))))
5790 (build-system gnu-build-system)
5793 (list util-macros xcb-proto))
5797 `(("autoconf" ,autoconf)
5798 ("automake" ,automake)
5799 ("libtool" ,libtool)
5800 ("python" ,python-wrapper)
5801 ("pkg-config" ,pkg-config)))
5804 (modify-phases %standard-phases
5807 ;; The default 'bootstrap' phase would run 'autogen.sh', which
5808 ;; would try to run ./configure and fail due to unpatched
5810 (invoke "autoreconf" "-v" "--install"))))))
5811 (home-page "https://cgit.freedesktop.org/xcb/util-errors/")
5812 (synopsis "XCB helper library for printing information about X11 errors")
5814 "The XCB util module provides a number of libraries which sit on
5815 top of libxcb, the core X protocol library, and some of the extension
5816 libraries. These experimental libraries provide convenience functions
5817 and interfaces which make the raw X protocol more usable. Some of the
5818 libraries also provide client-side code which is not strictly part of
5819 the X protocol but which has traditionally been provided by Xlib.
5821 The XCB util-errors module provides a utility library that gives human
5822 readable names to error codes, event codes, and also to major and minor
5824 (license license:x11))))
5826 (define-public xcb-util-image
5828 (name "xcb-util-image")
5832 (uri (string-append "mirror://xorg/individual/xcb/"
5833 name "-" version ".tar.bz2"))
5836 "1z1gxacg7q4cw6jrd26gvi5y04npsyavblcdad1xccc8swvnmf9d"))))
5837 (build-system gnu-build-system)
5839 '(#:configure-flags '("--disable-static")))
5846 (home-page "https://cgit.freedesktop.org/xcb/util-image/")
5847 (synopsis "XCB port of Xlib's XImage and XShmImage")
5849 "The XCB util module provides a number of libraries which sit on
5850 top of libxcb, the core X protocol library, and some of the extension
5851 libraries. These experimental libraries provide convenience functions
5852 and interfaces which make the raw X protocol more usable. Some of the
5853 libraries also provide client-side code which is not strictly part of
5854 the X protocol but which has traditionally been provided by Xlib.
5856 The XCB util-image module provides the following library:
5858 - image: Port of Xlib's XImage and XShmImage functions.")
5859 (license license:x11)))
5862 (define-public xcb-util-keysyms
5864 (name "xcb-util-keysyms")
5868 (uri (string-append "mirror://xorg/individual/xcb/"
5869 name "-" version ".tar.bz2"))
5872 "1nbd45pzc1wm6v5drr5338j4nicbgxa5hcakvsvm5pnyy47lky0f"))))
5873 (build-system gnu-build-system)
5875 '(#:configure-flags '("--disable-static")))
5880 (home-page "https://cgit.freedesktop.org/xcb/util-keysyms/")
5881 (synopsis "Standard X constants and conversion to/from keycodes")
5883 "The XCB util module provides a number of libraries which sit on
5884 top of libxcb, the core X protocol library, and some of the extension
5885 libraries. These experimental libraries provide convenience functions
5886 and interfaces which make the raw X protocol more usable. Some of the
5887 libraries also provide client-side code which is not strictly part of
5888 the X protocol but which has traditionally been provided by Xlib.
5890 The XCB util-keysyms module provides the following library:
5892 - keysyms: Standard X key constants and conversion to/from keycodes.")
5893 (license license:x11)))
5896 (define-public xcb-util-renderutil
5898 (name "xcb-util-renderutil")
5902 (uri (string-append "mirror://xorg/individual/xcb/"
5903 name "-" version ".tar.bz2"))
5906 "0nza1csdvvxbmk8vgv8vpmq7q8h05xrw3cfx9lwxd1hjzd47xsf6"))))
5907 (build-system gnu-build-system)
5909 '(#:configure-flags '("--disable-static")))
5914 (home-page "https://cgit.freedesktop.org/xcb/util-renderutil/")
5915 (synopsis "Convenience functions for the Render extension")
5917 "The XCB util module provides a number of libraries which sit on
5918 top of libxcb, the core X protocol library, and some of the extension
5919 libraries. These experimental libraries provide convenience functions
5920 and interfaces which make the raw X protocol more usable. Some of the
5921 libraries also provide client-side code which is not strictly part of
5922 the X protocol but which has traditionally been provided by Xlib.
5924 The XCB util-renderutil module provides the following library:
5926 - renderutil: Convenience functions for the Render extension.")
5927 (license license:x11)))
5930 (define-public xcb-util-wm
5932 (name "xcb-util-wm")
5936 (uri (string-append "mirror://xorg/individual/xcb/"
5937 name "-" version ".tar.bz2"))
5940 "0gra7hfyxajic4mjd63cpqvd20si53j1q3rbdlkqkahfciwq3gr8"))))
5941 (build-system gnu-build-system)
5943 '(#:configure-flags '("--disable-static")))
5947 (list m4 pkg-config))
5948 (home-page "https://cgit.freedesktop.org/xcb/util-wm/")
5949 (synopsis "Client and window-manager helpers for ICCCM and EWMH")
5951 "The XCB util modules provides a number of libraries which sit on
5952 top of libxcb, the core X protocol library, and some of the extension
5953 libraries. These experimental libraries provide convenience functions
5954 and interfaces which make the raw X protocol more usable. Some of the
5955 libraries also provide client-side code which is not strictly part of
5956 the X protocol but which has traditionally been provided by Xlib.
5958 The XCB util-wm module provides the following libraries:
5960 - ewmh: Both client and window-manager helpers for EWMH.
5962 - icccm: Both client and window-manager helpers for ICCCM.")
5963 (license license:x11)))
5965 (define-public xinit
5971 (uri (string-append "mirror://xorg/individual/app/xinit-"
5972 version ".tar.bz2"))
5975 "1fdbakx59vyh474skjydj1bbglpby3y03nl7mxn0z9v8gdhqz6yy"))))
5976 (build-system gnu-build-system)
5978 (list xorgproto libx11))
5983 (home-page "https://www.x.org/")
5984 (synopsis "Commands to start the X Window server")
5986 "The xinit program is used to start the X Window System server and a
5987 first client program on systems that are not using a display manager such as
5988 xdm. This package also provides the @code{startx} command, which provides a
5989 user-friendly mechanism to start the X server.")
5990 (license license:x11)))
5992 ;; package outside the x.org system proper of height 5
5994 (define-public libxaw3d
6002 "mirror://xorg/individual/lib/libXaw3d-"
6007 "0i653s8g25cc0mimkwid9366bqkbyhdyjhckx7bw77j20hzrkfid"))))
6008 (build-system gnu-build-system)
6010 (list libxext libxmu libxt))
6015 (home-page "https://www.x.org/wiki/")
6016 (synopsis "Xorg Xaw3d library")
6018 "Xaw is the X 3D Athena Widget Set based on the X Toolkit
6019 Intrinsics (Xt) Library.")
6020 (license license:x11)))
6022 (define-public libxpresent
6024 (name "libxpresent")
6028 (uri "mirror://xorg/individual/lib/libXpresent-1.0.0.tar.bz2")
6031 "12kvvar3ihf6sw49h6ywfdiwmb8i1gh8wasg1zhzp6hs2hay06n1"))))
6033 (list libx11 xorgproto libxext libxfixes libxrandr))
6036 (build-system gnu-build-system)
6037 (home-page "https://gitlab.freedesktop.org/xorg/lib/libxpresent")
6038 (synopsis "Xlib-compatible API for the Present extension")
6039 (description "This package provides a Xlib-based library for the X Present
6041 (license license:x11)))
6043 (define-public xclock
6050 (uri (string-append "https://www.x.org/releases/individual/app/"
6051 "xclock-" version ".tar.bz2"))
6053 (base32 "1fr3q4rszgx7x2zxy2ip592a3fgx20hfwac49p2l5b7jqsr1ying"))))
6054 (build-system gnu-build-system)
6057 (list (string-append "--with-appdefaultdir="
6058 %output ,%app-defaults-dir))))
6068 (home-page "https://gitlab.freedesktop.org/xorg/app/xclock")
6069 (synopsis "Analog / digital clock for X")
6070 (description "The xclock program displays the time in analog or digital
6072 (license (license:x11-style "file://COPYING" "See COPYING for details."))))
6082 "mirror://xorg/individual/app/" name "-"
6087 "19bsg5ykal458d52v0rvdx49v54vwxwqg8q36fdcsv9p2j8yri87"))))
6088 (build-system gnu-build-system)
6091 (list (string-append "--with-appdefaultdir="
6092 %output ,%app-defaults-dir))))
6097 (home-page "https://www.x.org/wiki/")
6098 (synopsis "Display or capture a magnified part of a X11 screen")
6099 (description "Xmag displays and captures a magnified snapshot of a portion
6101 (license license:x11)))
6103 (define-public xmessage
6111 "mirror://xorg/individual/app/" name "-"
6116 "0sw0b0cbrjl44brw7qi1jkm61xd7a1lpj04418c6iqk6mf83llwr"))))
6117 (build-system gnu-build-system)
6120 (list (string-append "--with-appdefaultdir="
6121 %output ,%app-defaults-dir))))
6126 (home-page "https://www.x.org/wiki/")
6127 (synopsis "Displays a message or query in a window")
6129 "Xmessage displays a message or query in a window. The user can click
6130 on a button to dismiss it or can select one of several buttons
6131 to answer a question. Xmessage can also exit after a specified time.")
6132 (license license:x11)))
6134 (define-public xterm
6142 (string-append "https://invisible-mirror.net/archives/xterm/"
6143 "xterm-" version ".tgz")
6144 (string-append "ftp://ftp.invisible-island.net/xterm/"
6145 "xterm-" version ".tgz")))
6147 (base32 "10lc72spa69n9d7zg9nwhgwz70qzidp5i17jgw3lq3qg1a25sg4n"))
6149 (search-patches "xterm-370-explicit-xcursor.patch"))))
6150 (build-system gnu-build-system)
6152 '(#:configure-flags '("--enable-wide-chars" "--enable-load-vt-fonts"
6153 "--enable-i18n" "--enable-doublechars"
6154 "--enable-luit" "--enable-mini-luit"
6155 "X_EXTRA_LIBS=-lXcursor")
6156 #:tests? #f ; no test suite
6158 (modify-phases %standard-phases
6159 (add-after 'build 'patch-file-names
6160 (lambda* (#:key outputs #:allow-other-keys)
6161 (let ((out (assoc-ref outputs "out")))
6162 (substitute* "uxterm"
6163 (("([ `\\|])(sh|sed|awk|xmessage) " _ prefix command)
6164 (string-append prefix (which command) " "))
6165 (("(`|\"|LANG=C )(locale) " _ prefix command)
6166 (string-append prefix (which command) " "))
6168 (string-append "=" out "/bin/xterm")))))))))
6174 ("fontconfig" ,fontconfig)
6175 ("freetype" ,freetype)
6176 ("ncurses" ,ncurses)
6180 ("libXcursor" ,libxcursor)
6181 ("libXext" ,libxext)
6183 ("xorgproto" ,xorgproto)
6184 ("libXaw" ,libxaw)))
6185 (home-page "https://invisible-island.net/xterm/")
6186 (synopsis "Terminal emulator for the X Window System")
6188 "The xterm program is a terminal emulator for the X Window System. It
6189 provides DEC VT102/VT220 (VTxxx) and Tektronix 4014 compatible terminals for
6190 programs that cannot use the window system directly.")
6191 (license license:x11)))
6193 (define-public perl-x11-xcb
6195 (name "perl-x11-xcb")
6200 "mirror://cpan/authors/id/M/MS/MSTPLBG/"
6201 "X11-XCB-" version ".tar.gz"))
6204 "1rn8g0yy82v5zp12rhxic332dvqs63l7mykg028ngvccs7rllipp"))))
6205 (build-system perl-build-system)
6207 '(;; Disable parallel build to prevent a race condition.
6208 #:parallel-build? #f
6210 (modify-phases %standard-phases
6211 (add-before 'configure 'set-perl-search-path
6214 (string-append (getcwd) ":"
6215 (getenv "PERL5LIB")))))
6216 (add-before 'build 'patch-Makefile
6217 (lambda* (#:key inputs #:allow-other-keys)
6218 (substitute* "Makefile"
6219 ;; XXX: Without this hack, attempts at using XCB.so fails with
6220 ;; an error such as "XCB.so: undefined symbol: xcb_xinerama_id"
6222 (string-append "LDDLFLAGS = "
6223 "-lxcb -lxcb-util -lxcb-xinerama -lxcb-icccm "))))))
6224 ;; Tests require a running X11 server.
6227 (list perl-extutils-depends perl-extutils-pkgconfig
6228 perl-module-install perl-test-deep perl-test-exception))
6230 (list perl-data-dump
6232 perl-mousex-nativetraits
6236 perl-xs-object-magic))
6238 (list libxcb xcb-proto xcb-util xcb-util-wm))
6239 (home-page "https://metacpan.org/release/X11-XCB")
6240 (synopsis "Perl bindings for libxcb")
6242 "These bindings wrap @code{libxcb} (a C library to speak with X11,
6243 in many cases better than @code{Xlib}), and provides an object oriented
6244 interface to its methods (using @code{Mouse}).")
6245 (license license:perl-license)))
6247 (define-public perl-x11-protocol
6249 (name "perl-x11-protocol")
6254 "mirror://cpan/authors/id/S/SM/SMCCAM/X11-Protocol-"
6258 "1dq89bh6fqv7l5mbffqcismcljpq5f869bx7g8lg698zgindv5ny"))))
6259 (build-system perl-build-system)
6260 (arguments '(#:tests? #f)) ;tests require a running x server
6261 (synopsis "Raw interface to X Window System servers")
6263 "X11::Protocol is a client-side interface to the X11 Protocol, allowing
6264 perl programs to display windows and graphics on X11 servers.")
6265 (home-page "https://metacpan.org/release/X11-Protocol")
6266 ;; From the package README: "you can redistribute and/or modify it under
6267 ;; the same terms as Perl itself. (As an exception, the file
6268 ;; Keysyms.pm,which is derived from a file in the standard X11
6269 ;; distribution, has another, less restrictive copying policy, as do some
6270 ;; of the extension modules in the directory Protocol/Ext: see those files
6272 (license license:perl-license)))
6274 (define-public perl-x11-protocol-other
6276 (name "perl-x11-protocol-other")
6282 "mirror://cpan/authors/id/K/KR/KRYDE/X11-Protocol-Other-"
6285 (base32 "1x3kvic52jgp2mvd5wzrqrprqi82cdk8l4075v8b33ksvj9mjqiw"))))
6286 (build-system perl-build-system)
6288 (list perl-encode-hanextra perl-module-util))
6290 (list perl-x11-protocol))
6291 (home-page "https://metacpan.org/release/X11-Protocol-Other")
6292 (synopsis "Miscellaneous helpers for @code{X11::Protocol} connections")
6294 "@code{X11::Protocol::Other} contains window manager related functions for
6295 use by client programs, as per the @dfn{ICCCM} (Inter-Client Communication
6296 Conventions Manual) and some of the @dfn{EWMH}
6297 (Extended Window Manager Hints).")
6298 (license license:gpl3+)))
6300 (define-public xcompmgr
6306 ;; There's no current tarball.
6309 (url "https://anongit.freedesktop.org/git/xorg/app/xcompmgr.git")
6310 (commit (string-append "xcompmgr-" version))))
6312 (base32 "11i7vyk3pynw8q8aczpy56qncm84y0cmhlvyja3sj8dgy60g03q2"))
6313 (file-name (git-file-name name version))))
6314 (build-system gnu-build-system)
6316 (list pkg-config autoconf automake))
6324 (synopsis "X Compositing manager using RENDER")
6325 (description "xcompmgr is a sample compositing manager for X servers
6326 supporting the XFIXES, DAMAGE, RENDER, and COMPOSITE extensions. It enables
6327 basic eye-candy effects.")
6328 (home-page "https://cgit.freedesktop.org/xorg/app/xcompmgr/")
6329 (license (license:x11-style
6330 "https://cgit.freedesktop.org/xorg/app/xcompmgr/tree/COPYING"))))
6339 (uri (string-append "https://www.xpra.org/src/xpra-"
6342 (base32 "1adp790v9lq3v9pnkyf4skv69n2pd7fjqikzw145swhq9aginh5z"))
6343 (patches (search-patches "xpra-4.2-systemd-run.patch"
6344 "xpra-4.2-install_libs.patch"))))
6345 (build-system python-build-system)
6346 ;; see also http://xpra.org/trac/wiki/Dependencies
6347 (inputs `(("bash-minimal" ,bash-minimal) ; for wrap-program
6348 ;; Essential dependencies.
6349 ("libjpeg" ,libjpeg-turbo)
6350 ("libwebp" ,libwebp)
6353 ("libxrandr" ,libxrandr)
6354 ("libxtst" ,libxtst)
6355 ("libxfixes" ,libxfixes)
6356 ("libxkbfile" ,libxkbfile)
6357 ("libxcomposite" ,libxcomposite)
6358 ("libxdamage" ,libxdamage)
6359 ("libxext" ,libxext)
6360 ("libxres" ,libxres)
6362 ("python-pycairo" ,python-pycairo)
6363 ("python-pygobject" ,python-pygobject)
6365 ("xorg-server" ,xorg-server)
6366 ("xf86-video-dummy" ,xf86-video-dummy)
6367 ("xf86-input-mouse" ,xf86-input-mouse)
6368 ("xf86-input-keyboard" ,xf86-input-keyboard)
6369 ("python-pillow" ,python-pillow)
6370 ;; Optional dependencies.
6371 ("libx264" ,libx264)
6374 ("python-rencode" ,python-rencode) ; For speed.
6375 ("python-numpy" ,python-numpy)
6376 ("python-pyopengl" ,python-pyopengl) ; Drawing acceleration.
6377 ("python-pyopengl-accelerate" ,python-pyopengl-accelerate) ; Same.
6378 ("python-paramiko" ,python-paramiko) ; Tunneling over SSH.
6379 ("python-dbus" ,python-dbus) ; For desktop notifications.
6380 ("dbus" ,dbus) ; For dbus-launch command.
6381 ("python-lz4" ,python-lz4) ; Faster compression than zlib.
6382 ("python-netifaces" ,python-netifaces)))
6383 (native-inputs (list pkg-config pandoc python-cython))
6385 `(#:configure-flags '("--without-Xdummy"
6386 "--without-Xdummy_wrapper"
6389 "--without-strict") ; Ignore compiler warnings.
6390 #:modules ((guix build python-build-system)
6392 #:tests? #f ; Do not run test-cases. This would rebuild all modules and
6393 ; they seem to require python2.
6395 (modify-phases %standard-phases
6396 ;; Must pass the same flags as 'install, otherwise enabled modules may
6399 (lambda* (#:key configure-flags #:allow-other-keys)
6400 (apply invoke (append (list "python" "setup.py" "build")
6402 (add-before 'install 'fix-paths
6403 (lambda* (#:key inputs outputs #:allow-other-keys)
6404 ;; Fix binary paths.
6405 (substitute* '("xpra/scripts/config.py" "xpra/x11/vfb_util.py")
6407 (string-append "\"" (assoc-ref inputs "xorg-server") "/bin/Xvfb\""))
6409 (string-append "\"" (assoc-ref inputs "xorg-server") "/bin/Xorg\""))
6411 (string-append "\"" (assoc-ref inputs "xauth") "/bin/xauth\"")))
6412 ;; Fix directory of config files.
6413 (substitute* '("xpra/scripts/config.py" "xpra/platform/xposix/paths.py")
6414 (("\"/etc/xpra/?\"")
6415 (string-append "\"" (assoc-ref outputs "out") "/etc/xpra/\"")))
6416 ;; XXX: Stolen from (gnu packages linux)
6417 (define (append-to-file name body)
6418 (let ((file (open-file name "a")))
6421 ;; Add Xorg module paths.
6423 "fs/etc/xpra/xorg.conf"
6424 (string-append "\nSection \"Files\"\nModulePath \""
6425 (assoc-ref inputs "xf86-video-dummy") "/lib/xorg/modules,"
6426 (assoc-ref inputs "xf86-input-mouse") "/lib/xorg/modules,"
6427 (assoc-ref inputs "xf86-input-keyboard") "/lib/xorg/modules,"
6428 (assoc-ref inputs "xorg-server") "/lib/xorg/modules\"\n"
6430 (substitute* '("xpra/scripts/config.py"
6431 "fs/etc/xpra/conf.d/60_server.conf.in"
6432 "tests/unittests/unit/server/mixins/notification_test.py")
6433 ;; The trailing -- is intentional, so we only replace it inside
6436 (string-append (search-input-file inputs "/bin/dbus-launch")
6438 ;; /run/user does not exist on guix system
6439 (substitute* "./xpra/scripts/config.py"
6440 (("socket-dir.*: \"\",")
6441 "socket-dir\" : \"~/.xpra\","))
6443 ;; GTK3 will not be found, if GI can’t find its typelibs.
6445 'install 'wrap-program
6446 (lambda* (#:key outputs #:allow-other-keys)
6447 (let ((prog (string-append (assoc-ref outputs "out")
6449 ;; XXX: only export typelibs in inputs
6451 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
6453 (home-page "https://www.xpra.org/")
6454 (synopsis "Remote access to individual applications or full desktops")
6455 (description "Xpra is a persistent remote display server and client for
6456 forwarding applications and desktop screens. It gives you remote access to
6457 individual applications or full desktops. On X11, it is also known as
6458 ``@command{screen} for X11'': it allows you to run programs, usually on a
6459 remote host, direct their display to your local machine, and then to
6460 disconnect from these programs and reconnect from the same or another machine,
6461 without losing any state. It can also be used to forward full desktops from
6462 X11 servers, Windows, or macOS.")
6463 (license license:gpl2+)))
6472 (uri (string-append "https://github.com/uim/uim/releases/download/"
6473 version "/uim-" version ".tar.bz2"))
6476 "1p7sl0js47ja4glmax93ci59h02ipqw3wxkh4f1qgaz5qjy9nn9l"))))
6477 (build-system gnu-build-system)
6479 (list anthy libedit libxft m17n-lib ncurses))
6481 `(("emacs" ,emacs-minimal)
6482 ("intltool" ,intltool)
6483 ("pkg-config" ,pkg-config)))
6485 `(#:modules ((guix build gnu-build-system)
6487 (guix build emacs-utils))
6488 #:imported-modules (,@%gnu-build-system-modules
6489 (guix build emacs-utils))
6491 (list "--with-anthy-utf8"
6492 (string-append "--with-lispdir=" %output "/share/emacs")
6493 ;; Set proper runpath
6494 (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")
6495 "CFLAGS=-O2 -g -fcommon")
6497 (modify-phases %standard-phases
6498 ;; Set path of uim-el-agent and uim-el-helper-agent executables
6499 (add-after 'configure 'configure-uim-el
6500 (lambda* (#:key outputs #:allow-other-keys)
6501 (let ((out (assoc-ref outputs "out")))
6502 (emacs-substitute-variables "emacs/uim-var.el"
6503 ("uim-el-agent" (string-append out "/bin/uim-el-agent"))
6504 ("uim-el-helper-agent" (string-append out "/bin/uim-el-helper-agent"))))
6506 ;; Fix installation path by renaming share/emacs/uim-el to
6507 ;; share/emacs/site-lisp
6508 (add-after 'install 'fix-install-path
6509 (lambda* (#:key outputs #:allow-other-keys)
6510 (let ((share-emacs (string-append (assoc-ref outputs "out")
6512 (rename-file (string-append share-emacs "/uim-el")
6513 (string-append share-emacs "/site-lisp")))
6515 ;; Generate emacs autoloads for uim.el
6516 (add-after 'fix-install-path 'make-autoloads
6517 (lambda* (#:key outputs #:allow-other-keys)
6518 (emacs-generate-autoloads
6519 ,name (string-append (assoc-ref outputs "out")
6520 "/share/emacs/site-lisp"))
6522 (home-page "https://github.com/uim/uim")
6523 (synopsis "Multilingual input method framework")
6524 (description "Uim is a multilingual input method library and environment.
6525 It provides a simple, easily extensible and high code-quality input method
6526 development platform, and useful input method environment for users of desktop
6527 and embedded platforms.")
6528 (license (list license:lgpl2.1+ ; scm/py.scm, pixmaps/*.{svg,png} (see pixmaps/README)
6529 license:gpl2+ ; scm/pinyin-big5.scm
6530 license:gpl3+ ; scm/elatin-rules.cm
6531 license:public-domain ; scm/input-parse.scm, scm/match.scm
6532 ;; gtk2/toolbar/eggtrayicon.{ch},
6533 ;; qt3/chardict/kseparator.{cpp,h},
6534 ;; qt3/pref/kseparator.{cpp,h}
6536 ;; pixmaps/*.{svg,png} (see pixmaps/README),
6540 (define-public uim-gtk
6541 (package/inherit uim
6546 ,@(package-inputs uim)))
6548 (substitute-keyword-arguments (package-arguments uim)
6549 ((#:configure-flags configure-flags)
6550 (append configure-flags (list "CFLAGS=-O2 -g -fcommon")))))
6551 (synopsis "Multilingual input method framework (GTK+ support)")))
6553 (define-public uim-qt
6554 (package/inherit uim
6558 ("qtx11extras" ,qtx11extras)
6559 ,@(package-inputs uim)))
6561 (substitute-keyword-arguments (package-arguments uim)
6562 ((#:configure-flags configure-flags)
6563 (append configure-flags (list "--with-qt5-immodule"
6565 "CPPFLAGS=-fcommon")))))
6566 (synopsis "Multilingual input method framework (Qt support)")))
6568 (define-public keynav
6571 (version "0.20110708.0")
6576 "http://http.debian.net/debian/pool/main/k/keynav/keynav_"
6577 version ".orig.tar.gz"))
6578 (file-name (string-append name "-" version ".tar.gz"))
6581 "1gizjhji3yspxxxvb90js3z1bv18rbf5phxg8rciixpj3cccff8z"))))
6582 (build-system gnu-build-system)
6594 `(#:tests? #f ;No tests.
6596 (modify-phases %standard-phases
6597 (add-after 'unpack 'setenv
6599 (setenv "CC" (which "gcc"))
6601 (add-after 'unpack 'patch-keynav
6603 (substitute* "keynav.c"
6604 (("xdo_symbol_map") "xdo_get_symbol_map")
6605 (("xdo_window_setclass") "xdo_set_window_class")
6606 (("xdo_window_get_active") "xdo_get_window_at_mouse")
6607 (("xdo_click") "xdo_click_window")
6608 (("xdo_mouseup") "xdo_mouse_up")
6609 (("xdo_mousedown") "xdo_mouse_down")
6610 (("xdo_mousemove") "xdo_move_mouse")
6611 (("xdo_mousemove_relative") "xdo_move_mouse_relative")
6612 (("xdo_mouselocation") "xdo_get_mouse_location")
6613 (("xdo_mouse_wait_for_move_to") "xdo_wait_for_mouse_move_to")
6614 (("xdo_keysequence_up") "xdo_send_keysequence_window_up")
6615 (("xdo_keysequence_down") "xdo_send_keysequence_window_down"))
6619 (lambda* (#:key outputs #:allow-other-keys)
6620 (let ((out (assoc-ref outputs "out")))
6621 (install-file "keynav" (string-append out "/bin"))
6622 (install-file "keynavrc" (string-append out "/etc")))
6624 (home-page "https://www.semicomplete.com/projects/keynav/")
6625 (synopsis "Keyboard-driven mouse cursor mover")
6627 "Keynav makes your keyboard a fast mouse cursor mover. You can move the
6628 cursor to any point on the screen with a few key strokes. It also simulates
6629 mouse click. You can do everything mouse can do with a keyboard.")
6630 (license license:bsd-3)))
6632 (define-public transset
6638 (uri (string-append "https://www.x.org/releases/individual/app/"
6639 name "-" version ".tar.gz"))
6642 "0rya202y87dwl35jnmq8hs3arzdrv5z4vf1xmi0py4rnmhdpszaw"))))
6643 (build-system gnu-build-system)
6646 (inputs (list libxcomposite libxdamage libxrender))
6647 (synopsis "Set the transparency of X11 windows")
6648 (description "@command{transset} is a simple program for X servers
6649 supporting the XFIXES, DAMAGE, and COMPOSITE extensions. It lets the
6650 user set the transparency on a window.")
6651 (home-page "https://gitlab.freedesktop.org/xorg/app/transset")
6652 (license license:x11)))
6654 (define-public bdfresize
6659 ;; Former upstream at
6660 ;; <http://openlab.ring.gr.jp/efont/dist/tools/bdfresize/>
6661 ;; vanished so use Debian, which in practice is the new
6665 (url "https://salsa.debian.org/debian/bdfresize.git")
6666 (commit (string-append "debian/" version))))
6669 "0n3i29wicak8n10vkkippym8yw4ir8f7a263a8rwb8q16wqrxx85"))
6670 (modules '((guix build utils)))
6673 (for-each make-file-writable (find-files "."))
6675 ;; Remove broken declaration.
6676 (substitute* "charresize.c"
6677 (("char\t\\*malloc\\(\\);")
6680 ;; Remove old configury that doesn't support modern
6681 ;; command-line options, new architectures, etc.
6682 (for-each delete-file
6683 '("configure" "install-sh"
6684 "missing" "mkinstalldirs"))
6686 (file-name (git-file-name name version))))
6687 (build-system gnu-build-system)
6689 (list pkg-config autoconf automake))
6690 (synopsis "Resize fonts in the BDF format")
6692 "This package provides @command{bdfresize}, a command to magnify or
6693 reduce fonts in the Glyph Bitmap Distribution Format (BDF). It produces BDF
6695 (home-page "https://tracker.debian.org/pkg/bdfresize")
6696 (license license:gpl2+)) )
6698 (define-public console-setup
6700 (name "console-setup")
6706 (url "https://salsa.debian.org/installer-team/console-setup.git")
6709 (base32 "0fj93apsknx3lzbi2025pzr19q1gwnim8g4007aqqkhidc1msgx5"))
6710 (file-name (git-file-name name version))))
6711 (build-system gnu-build-system)
6714 (let ((bash (assoc-ref %build-inputs "bash"))
6715 (out (assoc-ref %outputs "out")))
6716 (list (string-append "SHELL=" bash "/bin/bash")))
6717 #:tests? #f ; no tests
6719 (modify-phases %standard-phases
6721 (add-after 'unpack 'patch-file-names
6723 ;; 'ckbcomp' calls out to 'cat' (!). Give it the right file
6725 (substitute* '("Keyboard/ckbcomp")
6727 (string-append "\"" (which "cat")
6729 (add-before 'build 'make-doubled-bdfs
6730 (lambda* (#:key native-inputs inputs #:allow-other-keys)
6731 (invoke "make" "-C" "Fonts"
6733 (string-append "SHELL="
6734 (assoc-ref (or native-inputs inputs)
6738 (lambda* (#:key native-inputs inputs outputs #:allow-other-keys)
6739 (let ((out (assoc-ref %outputs "out")))
6740 (invoke "make" "install-linux"
6741 (string-append "prefix=" out)
6742 (string-append "SHELL="
6743 (assoc-ref (or native-inputs inputs)
6750 sharutils ; for 'uuencode'
6753 (list perl)) ; used by 'ckbcomp'
6754 (synopsis "Set up the Linux console font and keyboard")
6756 "console-setup provides the console with the same keyboard
6757 configuration scheme that the X Window System has. In particular, the
6758 @command{ckbcomp} program compiles an XKB keyboard description to a keymap
6759 suitable for @command{loadkeys} or @command{kbdcontrol}. As a result, there
6760 is no need to duplicate or change the console keyboard files just to make
6761 simple customizations.
6763 Besides the keyboard, the package also configures the font on the console. It
6764 includes a rich collection of fonts and supports several languages that would
6765 otherwise be unsupported on the console (such as Armenian, Georgian, Lao, and
6767 (home-page "https://salsa.debian.org/installer-team/console-setup/")
6769 ;; Most of the code is GPLv2+; the Expat license applies to 'setupcon' and
6770 ;; 'ckbcomp-mini'. The installed precompiled keyboard files are covered
6771 ;; by simple permissive licenses. See the 'COPYRIGHT' file.
6772 (license (list license:gpl2+
6775 (define-public xcur2png
6783 (url "https://github.com/eworm-de/xcur2png")
6785 (file-name (git-file-name name version))
6787 (base32 "0858wn2p14bxpv9lvaz2bz1rk6zk0g8zgxf8iy595m8fqv4q2fya"))))
6788 (build-system gnu-build-system)
6792 (list libpng libxcursor))
6793 (synopsis "Decode X cursors")
6795 "xcur2png is a program decomposes an X cursor into a set of PNG images and
6796 a configuration file reusable by xcursorgen.")
6797 (home-page "https://github.com/eworm-de/xcur2png")
6798 (license license:gpl3+)))
6800 (define-public gccmakedep
6807 (uri (string-append "mirror://xorg/individual/util/gccmakedep-"
6808 version ".tar.bz2"))
6810 (base32 "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj"))))
6811 (build-system gnu-build-system)
6812 (synopsis "Create dependencies in makefiles using 'gcc -M'")
6814 "@command{gccmakedep} is a deprecated program which calls @code{gcc -M}
6815 to output Makefile rules describing the dependencies of each source file, so
6816 that Make knows which object files must be recompiled when a dependency has
6818 (home-page "https://gitlab.freedesktop.org/xorg/util/gccmakedep")
6819 (license license:x11)))
6821 (define-public xdialog
6827 (uri (string-append "http://xdialog.free.fr/Xdialog-"
6828 version ".tar.bz2"))
6831 "16jqparb33lfq4cvd9l3jgd7fq86fk9gv2ixc8vgqibid6cnhi0x"))))
6836 ("gettext" ,gettext-minimal)
6839 `(#:configure-flags '("--with-gtk2")))
6840 (build-system gnu-build-system)
6841 (home-page "http://xdialog.free.fr/")
6842 (synopsis "Convert a terminal program into a program with an X interface")
6843 (description "X11 replacement for the text util dialog Xdialog is designed
6844 to be a drop-in replacement for the dialog and cdialog programs. It converts
6845 any terminal-based program into a program with an X interface. The dialogs
6846 are easier to see and use, and Xdialog adds more functionality such as a help
6847 button and box, a treeview, an editbox, file and directory selectors, a range
6848 box, and a calendar. It uses GTK+, and will match your desktop theme.")
6849 (license license:gpl2+)))
6851 (define-public xvfb-run
6854 (version "1.20.10-3")
6858 (uri (string-append "mirror://debian/pool/main/x/xorg-server/"
6859 "xorg-server_" version ".diff.gz"))
6861 (base32 "08gs9ni8ss8rw4n9cql1s8q05mj517vk1vm1varj1dsx75k4j25v"))))
6862 (build-system gnu-build-system)
6865 (modify-phases %standard-phases
6867 ;; Apply the source patch to an empty directory.
6868 (lambda* (#:key inputs #:allow-other-keys)
6869 (let* ((source (assoc-ref inputs "source"))
6870 (diff.gz (basename source))
6871 (diff (substring diff.gz 0 (string-rindex diff.gz #\.))))
6874 (copy-file source diff.gz)
6875 (invoke "gunzip" diff.gz)
6876 (invoke "patch" "-Np1" "-i" diff)
6877 (chdir "debian/local"))))
6878 (delete 'configure) ; nothing to configure
6881 (chmod "xvfb-run" #o755)
6882 (substitute* "xvfb-run"
6883 (("(\\(| )(fmt|stty|awk|cat|kill|getopt|mktemp|touch|rm|mcookie)"
6885 (string-append prefix (which command)))
6886 ;; These also feature in UI messages, so be more strict.
6887 (("(AUTHFILE |command -v |exec )(Xvfb|xauth)"
6889 (string-append prefix (which command))))))
6891 ;; There are no tests included. Here we test whether we can run
6892 ;; a simple client and whether xvfb-run --help succeeds
6893 ;; without xvfb-run itself relying on $PATH.
6894 (lambda* (#:key tests? #:allow-other-keys)
6896 (let ((old-PATH (getenv "PATH"))
6897 (xterm (which "xterm")))
6899 (invoke "./xvfb-run" xterm "-e" "true")
6900 (invoke "./xvfb-run" "--help")
6901 (setenv "PATH" old-PATH)))))
6903 (lambda* (#:key outputs #:allow-other-keys)
6904 (let* ((out (assoc-ref outputs "out"))
6905 (bin (string-append out "/bin"))
6906 (man (string-append out "/share/man/man1")))
6907 (install-file "xvfb-run" bin)
6908 (install-file "xvfb-run.1" man)))))))
6910 (list util-linux ; for getopt
6913 (list xterm)) ; for the test
6914 ;; This script is not part of the upstream xorg-server. It is provided only
6915 ;; as a patch added to Debian's package.
6916 (home-page "https://packages.debian.org/sid/xorg-server-source")
6917 (synopsis "Run X11 client or command in a virtual X server environment")
6919 "The @command{xvfb-run} wrapper simplifies running commands and scripts
6920 within a virtual X server environment. It sets up an X authority file or uses
6921 an existing user-specified one, writes a cookie to it, and then starts the
6922 @command{Xvfb} X server as a background process. It also takes care of killing
6923 the server and cleaning up before returning the exit status of the command.")
6924 (license (list license:x11 ; the script
6925 license:gpl2+)))) ; the man page
6927 (define-public setroot
6935 (url "https://github.com/ttzhou/setroot")
6936 (commit (string-append "v" version))))
6937 (file-name (git-file-name name version))
6939 (base32 "0w95828v0splk7bj5kfacp4pq6wxpyamvyjmahyvn5hc3ycq21mq"))))
6940 (build-system gnu-build-system)
6943 (list (string-append "CC=" ,(cc-for-target))
6944 (string-append "DESTDIR=" (assoc-ref %outputs "out"))
6947 #:tests? #f ; no tests
6949 (modify-phases %standard-phases
6950 (delete 'configure))))
6952 (list imlib2 libx11 libxinerama))
6953 (home-page "https://github.com/ttzhou/setroot")
6954 (synopsis "Simple X background setter inspired by imlibsetroot and feh")
6955 (description "Setroot is a lightweight X background setter with feh's
6956 syntax without its image viewing capabilities. It supports multiple monitors
6957 and can restore previously set wallpapers and options.")
6958 (license license:gpl3+)))