summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/cdrom.scm44
-rw-r--r--gnu/packages/gtk.scm4
-rw-r--r--gnu/packages/linux-initrd.scm6
-rw-r--r--gnu/packages/linux.scm80
-rw-r--r--gnu/packages/system.scm56
-rw-r--r--gnu/packages/xorg.scm20
6 files changed, 197 insertions, 13 deletions
diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index f881e7ab3a..b5b14c718e 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -20,15 +20,18 @@
(define-module (gnu packages cdrom)
#:use-module (guix download)
#:use-module (guix packages)
- #:use-module ((guix licenses) #:select (lgpl2.1+ gpl2 gpl3+))
+ #:use-module ((guix licenses) #:select (lgpl2.1+ gpl2 gpl2+ gpl3+))
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages acl)
#:use-module (gnu packages compression)
+ #:use-module ((gnu packages gettext) #:renamer (symbol-prefix-proc 'gnu:))
+ #:use-module (gnu packages gtk)
#:use-module (gnu packages readline)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages help2man)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages which))
(define-public libcddb
(package
@@ -142,3 +145,40 @@ target drive is CDDA capable. In addition to simple reading, cdparanoia adds
extra-robust data verification, synchronization, error handling and scratch
reconstruction capability.")
(license gpl2))) ; libraries under lgpl2.1
+
+(define-public dvdisaster
+ (package
+ (name "dvdisaster")
+ (version "0.72.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://dvdisaster.net/downloads/dvdisaster-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "0pm039a78h7m9vvjmmjfkl05ii6qdmfhvbypxjbc7j5w82y66is4"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("gettext" ,gnu:gettext)
+ ("gtk+" ,gtk+)
+ ("pkg-config" ,pkg-config)
+ ("which" ,which)))
+ (arguments
+ `(#:tests? #f)) ; no check target
+ (home-page "http://dvdisaster.net/en/index.html")
+ (synopsis "error correcting codes for optical media images")
+ (description "Optical media (CD,DVD,BD) keep their data only for a
+finite time (typically for many years). After that time, data loss develops
+slowly with read errors growing from the outer media region towards the
+inside.
+
+Dvdisaster stores data on CD/DVD/BD (supported media) in a way that it is
+fully recoverable even after some read errors have developed. This enables
+you to rescue the complete data to a new medium.
+
+Data loss is prevented by using error correcting codes. Error correction
+data is either added to the medium or kept in separate error correction
+files. Dvdisaster works at the image level so that the recovery does not
+depend on the file system of the medium. The maximum error correction
+capacity is user-selectable.")
+ (license gpl2+)))
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index e72f7c5acc..013d29379b 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -110,14 +110,14 @@ affine transformation (scale, rotation, shear, etc.)")
(define-public harfbuzz
(package
(name "harfbuzz")
- (version "0.9.20")
+ (version "0.9.21")
(source (origin
(method url-fetch)
(uri (string-append "http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-"
version ".tar.bz2"))
(sha256
(base32
- "0rxwvd8j4vcadlhx4a7la33clzggxziblx1k43ccbw5w7yh4yf43"))))
+ "1s6sffgf6ndy12fyln2bdnkn3cb1qfkch0rakdgkgwlq7n46zlx0"))))
(build-system gnu-build-system)
(inputs
`(("cairo" ,cairo)
diff --git a/gnu/packages/linux-initrd.scm b/gnu/packages/linux-initrd.scm
index b62843aadd..ed30fa56b1 100644
--- a/gnu/packages/linux-initrd.scm
+++ b/gnu/packages/linux-initrd.scm
@@ -363,8 +363,7 @@ the Linux kernel.")
(make-essential-device-nodes)
;; Prepare the real root file system under /root.
- (unless (file-exists? "/root")
- (mkdir "/root"))
+ (mkdir-p "/root")
(if root
;; Assume ROOT has a usable /dev tree.
(mount root "/root" "ext3")
@@ -374,6 +373,9 @@ the Linux kernel.")
(mount-essential-file-systems #:root "/root")
+ (mkdir-p "/root/tmp")
+ (mount "none" "/root/tmp" "tmpfs")
+
;; XXX: We don't copy our fellow Guile modules to /root (see
;; 'qemu-initrd'), so if TO-LOAD tries to load a module (which can
;; happen if it throws, to display the exception!), then we're
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 38bff72933..06b0b6da99 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -30,6 +30,8 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages algebra)
+ #:use-module ((gnu packages gettext)
+ #:renamer (symbol-prefix-proc 'g:))
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu))
@@ -566,3 +568,81 @@ controls IPv4 and IPv6 configuration and tc stands for traffic control. Both
tools print detailed usage messages and are accompanied by a set of
manpages.")
(license gpl2+)))
+
+(define-public net-tools
+ ;; XXX: This package is basically unmaintained, but it provides a few
+ ;; commands not yet provided by Inetutils, such as 'route', so we have to
+ ;; live with it.
+ (package
+ (name "net-tools")
+ (version "1.60")
+ (home-page "http://www.tazenda.demon.co.uk/phil/net-tools/")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append home-page "/" name "-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "0yvxrzk0mzmspr7sa34hm1anw6sif39gyn85w4c5ywfn8inxvr3s"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:phases (alist-replace
+ 'patch
+ (lambda* (#:key inputs #:allow-other-keys)
+ (define (apply-patch file)
+ (zero? (system* "patch" "-p1" "--batch"
+ "--input" file)))
+
+ (let ((patch.gz (assoc-ref inputs "patch")))
+ (format #t "applying Debian patch set '~a'...~%"
+ patch.gz)
+ (system (string-append "gunzip < " patch.gz " > the-patch"))
+ (pk 'here)
+ (and (apply-patch "the-patch")
+ (for-each apply-patch
+ (find-files "debian/patches"
+ "\\.patch")))))
+ (alist-replace
+ 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p (string-append out "/bin"))
+ (mkdir-p (string-append out "/sbin"))
+
+ ;; Pretend we have everything...
+ (system "yes | make config")
+
+ ;; ... except we don't have libdnet, so remove that
+ ;; definition.
+ (substitute* '("config.make" "config.h")
+ (("^.*HAVE_AFDECnet.*$") ""))))
+ %standard-phases))
+
+ ;; Binaries that depend on libnet-tools.a don't declare that
+ ;; dependency, making it parallel-unsafe.
+ #:parallel-build? #f
+
+ #:tests? #f ; no test suite
+ #:make-flags (list "CC=gcc"
+ (string-append "BASEDIR="
+ (assoc-ref %outputs "out")))))
+
+ ;; Use the big Debian patch set (the thing does not even compile out of
+ ;; the box.)
+ (inputs `(("patch" ,(origin
+ (method url-fetch)
+ (uri
+ "http://ftp.de.debian.org/debian/pool/main/n/net-tools/net-tools_1.60-24.2.diff.gz")
+ (sha256
+ (base32
+ "0p93lsqx23v5fv4hpbrydmfvw1ha2rgqpn2zqbs2jhxkzhjc030p"))))))
+ (native-inputs `(("gettext" ,g:gettext)))
+
+ (synopsis "Tools for controlling the network subsystem in Linux")
+ (description
+ "This package includes the important tools for controlling the network
+subsystem of the Linux kernel. This includes arp, hostname, ifconfig,
+netstat, rarp and route. Additionally, this package contains utilities
+relating to particular network hardware types (plipconfig, slattach) and
+advanced aspects of IP configuration (iptunnel, ipmaddr).")
+ (license gpl2+)))
diff --git a/gnu/packages/system.scm b/gnu/packages/system.scm
index 9af0365812..3524544746 100644
--- a/gnu/packages/system.scm
+++ b/gnu/packages/system.scm
@@ -23,10 +23,15 @@
#:use-module (guix download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages linux)
#:use-module (gnu packages guile)
+ #:use-module ((gnu packages base)
+ #:select (tar))
+ #:use-module ((gnu packages compression)
+ #:select (gzip))
#:use-module (gnu packages pkg-config))
(define-public dmd
@@ -35,11 +40,8 @@
(version "-0.4")
(source (origin
(method url-fetch)
-
- ;; XXX: Temporary location until dmd gets back home.
- (uri (string-append
- "http://www.fdn.fr/~lcourtes/software/guix/dmd-"
- version ".tar.gz"))
+ (uri (string-append "ftp://alpha.gnu.org/gnu/dmd/dmd-"
+ version ".tar.gz"))
(sha256
(base32
"094ja3xvk9ljghhxmy39if67cfjd1hy6m4svnp399n0wpxvaryvy"))))
@@ -268,3 +270,47 @@ login, passwd, su, groupadd, and useradd.")
asks for a login name and then transfers over to 'login'. It is extended to
allow automatic login and starting any app.")
(license gpl2+)))
+
+(define-public net-base
+ (package
+ (name "net-base")
+ (version "5.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://ftp.de.debian.org/debian/pool/main/n/netbase/netbase_"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "17l8xk2x632id5f9x9v5fs9wqc650hldd2lf3dh90r1zisj1ya8d"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder (begin
+ (use-modules (guix build utils)
+ (srfi srfi-26))
+
+ (let* ((source (assoc-ref %build-inputs "source"))
+ (tar (assoc-ref %build-inputs "tar"))
+ (gzip (assoc-ref %build-inputs "gzip"))
+ (output (assoc-ref %outputs "out"))
+ (etc (string-append output "/etc")))
+ (setenv "PATH" (string-append gzip "/bin"))
+ (system* (string-append tar "/bin/tar") "xvf"
+ source)
+ (chdir ,(string-append "netbase-" version))
+ (mkdir-p etc)
+ (for-each copy-file
+ '("etc-services" "etc-protocols" "etc-rpc")
+ (map (cut string-append etc "/" <>)
+ '("services" "protocols" "rpc")))
+ #t))))
+ (native-inputs `(("tar" ,tar)
+ ("gzip" ,gzip)))
+ (synopsis "IANA protocol, port, and RPC number assignments")
+ (description
+ "This package provides the /etc/services, /etc/protocols, and /etc/rpc
+files, which contain information about the IANA-assigned port, protocol, and
+ONC RPC numbers")
+ (home-page "http://packages.debian.org/sid/netbase")
+ (license gpl2)))
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 613e2c5f0e..df535c1ced 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -2096,7 +2096,6 @@ tracking.")
(license license:x11)))
-;; FIXME: Tries to install file joystick-properties.h into ...--xorg-server-1.12.2/include/xorg
(define-public xf86-input-joystick
(package
(name "xf86-input-joystick")
@@ -2114,6 +2113,11 @@ tracking.")
(build-system gnu-build-system)
(inputs `(("pkg-config" ,pkg-config)
("xorg-server" ,xorg-server)))
+ (arguments
+ `(#:configure-flags
+ (list (string-append "--with-sdkdir="
+ (assoc-ref %outputs "out")
+ "/include/xorg"))))
(home-page "http://www.x.org/wiki/")
(synopsis "xorg implementation of the X Window System")
(description "X.org provides an implementation of the X Window System")
@@ -2186,13 +2190,20 @@ tracking.")
("mtdev" ,mtdev)
("pkg-config" ,pkg-config)
("xorg-server" ,xorg-server)))
+ (arguments
+ `(#:configure-flags
+ (list (string-append "--with-sdkdir="
+ (assoc-ref %outputs "out")
+ "/include/xorg")
+ (string-append "--with-xorg-conf-dir="
+ (assoc-ref %outputs "out")
+ "/share/X11/xorg.conf.d"))))
(home-page "http://www.x.org/wiki/")
(synopsis "xorg implementation of the X Window System")
(description "X.org provides an implementation of the X Window System")
(license license:x11)))
-;; FIXME: Installation tries to create ...-xorg-server-1.12.2/share/X11/xorg.conf.d
(define-public xf86-input-vmmouse
(package
(name "xf86-input-vmmouse")
@@ -2210,6 +2221,11 @@ tracking.")
(build-system gnu-build-system)
(inputs `(("pkg-config" ,pkg-config)
("xorg-server" ,xorg-server)))
+ (arguments
+ `(#:configure-flags
+ (list(string-append "--with-xorg-conf-dir="
+ (assoc-ref %outputs "out")
+ "/share/X11/xorg.conf.d"))))
(home-page "http://www.x.org/wiki/")
(synopsis "xorg implementation of the X Window System")
(description "X.org provides an implementation of the X Window System")