aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/xdisorg.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/xdisorg.scm')
-rw-r--r--gnu/packages/xdisorg.scm341
1 files changed, 341 insertions, 0 deletions
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
new file mode 100644
index 0000000000..6820d018e3
--- /dev/null
+++ b/gnu/packages/xdisorg.scm
@@ -0,0 +1,341 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages xdisorg)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (guix download)
+ #:use-module (guix build-system gnu)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages compression)
+ #:use-module (gnu packages image)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages xorg))
+
+;; packages outside the x.org system proper
+
+(define-public xclip
+ (package
+ (name "xclip")
+ (version "0.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://sourceforge/" name "/" name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ibcf46rldnv0r424qcnai1fa5iq3lm5q5rdd7snsi5sb78gmixp"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f)) ; There is no test suite
+ (inputs `(("libxmu" ,libxmu)
+ ("libxt" ,libxt)))
+ (home-page "http://xclip.sourceforge.net/")
+ (synopsis "Command line interface to X11 clipboard")
+ (description "Xclip is a command line interface to the X11 clipboard. It
+can also be used for copying files, as an alternative to sftp/scp, thus
+avoiding password prompts when X11 forwarding has already been setup.")
+ (license license:gpl2+)))
+
+(define-public xeyes
+ (package
+ (name "xeyes")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://xeyes.sourcearchive.com/downloads/1.0.1/xeyes_"
+ version
+ ".orig.tar.gz"))
+ (sha256
+ (base32
+ "04c3md570j67g55h3bix1qbngcslnq91skli51k3g1avki88zkm9"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libxext" ,libxext)
+ ("libxmu" ,libxmu)
+ ("libxt" ,libxt)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://xeyes.sourcearchive.com/")
+ (synopsis "Follow-the-mouse X demo")
+ (description "Xeyes is a demo program for x.org. It shows eyes
+following the mouse.")
+ (license license:x11)))
+
+
+(define-public pixman
+ (package
+ (name "pixman")
+ (version "0.32.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://cairographics.org/releases/pixman-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "113ycngcssbrps217dyajq96hm9xghsfch82h14yffla1r1fviw0"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libpng" ,libpng)
+ ("zlib" ,zlib)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://www.pixman.org/")
+ (synopsis "Low-level pixel manipulation library")
+ (description "Pixman is a low-level software library for pixel
+manipulation, providing features such as image compositing and trapezoid
+rasterisation.")
+ (license license:x11)))
+
+
+(define-public libdrm
+ (package
+ (name "libdrm")
+ (version "2.4.46")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://dri.freedesktop.org/libdrm/libdrm-"
+ version
+ ".tar.bz2"))
+ (sha256
+ (base32
+ "1wah4qmrrcv0gnx65lhrlxb6gprxch92wy8lhxv6102fml6k5krk"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libpciaccess" ,libpciaccess)
+ ("libpthread-stubs" ,libpthread-stubs)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://dri.freedesktop.org/wiki/")
+ (synopsis "Direct rendering userspace library")
+ (description "The Direct Rendering Infrastructure, also known as the DRI,
+is a framework for allowing direct access to graphics hardware under the
+X Window System in a safe and efficient manner. It includes changes to the
+X server, to several client libraries, and to the kernel (DRM, Direct
+Rendering Manager). The most important use for the DRI is to create fast
+OpenGL implementations providing hardware acceleration for Mesa.
+Several 3D accelerated drivers have been written to the DRI specification,
+including drivers for chipsets produced by 3DFX, AMD (formerly ATI), Intel
+and Matrox.")
+ (license license:x11)))
+
+
+;; old version, required by old mesa, see
+;; http://www.mail-archive.com/nouveau@lists.freedesktop.org/msg10098.html
+(define-public libdrm-2.4.33
+ (package (inherit libdrm)
+ (version "2.4.33")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://dri.freedesktop.org/libdrm/libdrm-"
+ version
+ ".tar.bz2"))
+ (sha256
+ (base32
+ "1slgi61n4dlsfli47ql354fd1ppj7n40jd94wvnsdqx0mna9syrd"))))
+ (arguments
+ `(#:configure-flags
+ ;; create libdrm_nouveau.so, needed by mesa, see
+ ;; http://comments.gmane.org/gmane.linux.lfs.beyond.support/43261
+ `("--enable-nouveau-experimental-api")))))
+
+
+(define-public mtdev
+ (package
+ (name "mtdev")
+ (version "1.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://bitmath.org/code/mtdev/mtdev-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "159ndzwfpw0xr8mw4lhl47w9c2krshlfrscs7k6n186vknv2hk3d"))))
+ (build-system gnu-build-system)
+ (home-page "http://bitmath.org/code/mtdev/")
+ (synopsis "Multitouch protocol translation library")
+ (description "Mtdev is a stand-alone library which transforms all
+variants of kernel MT events to the slotted type B protocol. The events
+put into mtdev may be from any MT device, specifically type A without
+contact tracking, type A with contact tracking, or type B with contact
+tracking.")
+ (license license:x11)))
+
+(define-public startup-notification
+ (package
+ (name "startup-notification")
+ (version "0.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://www.freedesktop.org/software/" name
+ "/releases/" name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jmyryrpqb35y9hd5sgxqy2z0r1snw7d3ljw0jak0n0cjdz1yf9w"))))
+ (build-system gnu-build-system)
+ (native-inputs `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libx11" ,libx11)
+ ("xcb-util" ,xcb-util)))
+ (home-page "http://www.freedesktop.org/wiki/Software/startup-notification/")
+ (synopsis "Application startup notification and feedback library")
+ (description
+ "Startup-notification contains a reference implementation of the startup
+notification protocol. The reference implementation is mostly under an X Window
+System style license, and has no special dependencies.")
+ ;; Most of the code is provided under x11 license.
+ (license license:lgpl2.0+)))
+
+(define-public wmctrl
+ (package
+ (name "wmctrl")
+ (version "1.07")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://tomas.styblo.name/wmctrl/dist/wmctrl-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1afclc57b9017a73mfs9w7lbdvdipmf9q0xdk116f61gnvyix2np"))
+ (patches (list (search-patch "wmctrl-64-fix.patch")))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags
+ (list (string-append "--mandir="
+ (assoc-ref %outputs "out")
+ "/share/man"))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libx11" ,libx11)
+ ("libxmu" ,libxmu)
+ ("glib" ,glib)))
+ (home-page "http://tomas.styblo.name/wmctrl/")
+ (synopsis "Command-line tool to control X window managers")
+ (description
+ "Wmctrl allows to interact with an X window manager that is compatible
+with the EWMH/NetWM specification. It can query the window manager for
+information, and request for certain window management actions (resize and
+move windows, switch between desktops, etc.)")
+ (license license:gpl2+)))
+
+(define-public scrot
+ (package
+ (name "scrot")
+ (version "0.8")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://linuxbrit.co.uk/downloads/scrot-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1wll744rhb49lvr2zs6m93rdmiq59zm344jzqvijrdn24ksiqgb1"))))
+ (build-system gnu-build-system)
+ (arguments
+ ;; By default, man and doc are put in PREFIX/{man,doc} instead of
+ ;; PREFIX/share/{man,doc}.
+ '(#:configure-flags
+ (list (string-append "--mandir="
+ (assoc-ref %outputs "out")
+ "/share/man"))
+ #:phases (alist-replace
+ 'install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (string-append out "/share/doc/scrot")))
+ (mkdir-p doc)
+ (zero?
+ (system* "make" "install"
+ (string-append "docsdir=" doc)))))
+ %standard-phases)))
+ (inputs
+ `(("libx11" ,libx11)
+ ("giblib" ,giblib)))
+ (home-page "http://linuxbrit.co.uk/software/")
+ (synopsis "Command-line screen capture utility for X Window System")
+ (description
+ "Scrot allows to save a screenshot of a full screen, a window or a part
+of the screen selected by mouse.")
+ ;; This license removes a clause about X Consortium from the original
+ ;; X11 license.
+ (license (license:x11-style "file://COPYING"
+ "See 'COPYING' in the distribution."))))
+
+(define-public unclutter
+ (package
+ (name "unclutter")
+ (version "8")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://ftp.x.org/contrib/utilities/unclutter-"
+ version ".tar.Z"))
+ (sha256
+ (base32
+ "0ahrr5z6wxqqfyihm112hnq0859zlxisrb3y5232zav58j6sfmdq"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f ; no check target
+ #:phases (alist-delete
+ 'configure
+ (alist-replace
+ 'install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (man1 (string-append out "/share/man/man1")))
+ (mkdir-p bin)
+ (mkdir-p man1)
+ (zero?
+ (system* "make" "install" "install.man"
+ (string-append "BINDIR=" bin)
+ (string-append "MANDIR=" man1)))))
+ %standard-phases))))
+ (inputs `(("libx11" ,libx11)))
+ (home-page "http://ftp.x.org/contrib/utilities/")
+ (synopsis "Hide idle mouse cursor")
+ (description
+ "Unclutter is a program which runs permanently in the background of an
+X11 session. It checks on the X11 pointer (cursor) position every few
+seconds, and when it finds it has not moved (and no buttons are pressed
+on the mouse, and the cursor is not in the root window) it creates a
+small sub-window as a child of the window the cursor is in. The new
+window installs a cursor of size 1x1 but a mask of all 0, i.e. an
+invisible cursor. This allows you to see all the text in an xterm or
+xedit, for example. The human factors crowd would agree it should make
+things less distracting.")
+ (license license:public-domain)))