diff options
author | Ludovic Courtès <ludo@gnu.org> | 2014-06-06 17:23:14 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2014-06-06 17:23:14 +0200 |
commit | 872c69d00e861f86fa4caaadbaa136f46c9db358 (patch) | |
tree | d50176869e67baf821b151d6bcc879ef0bd554fe /build-aux | |
parent | a4d48cc24d0f6bc3c45adf92925d7d901f0763d3 (diff) | |
parent | b15d79dfe65353f4101b0ad653c97e3ef0d4a8b7 (diff) | |
download | guix-872c69d00e861f86fa4caaadbaa136f46c9db358.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'build-aux')
-rw-r--r-- | build-aux/hydra/demo-os.scm | 33 | ||||
-rw-r--r-- | build-aux/hydra/gnu-system.scm | 47 | ||||
-rwxr-xr-x | build-aux/list-packages.scm | 5 |
3 files changed, 58 insertions, 27 deletions
diff --git a/build-aux/hydra/demo-os.scm b/build-aux/hydra/demo-os.scm index 863371291e..bb8cd05fc2 100644 --- a/build-aux/hydra/demo-os.scm +++ b/build-aux/hydra/demo-os.scm @@ -24,23 +24,19 @@ (use-modules (gnu) - (gnu packages zile) (gnu packages xorg) - (gnu packages admin) - (gnu packages guile) - (gnu packages bash) - (gnu packages linux) - (gnu packages less) - (gnu packages tor) - (gnu packages package-management) + (gnu packages avahi) (gnu services networking) + (gnu services avahi) + (gnu services dbus) (gnu services xorg)) (operating-system (host-name "gnu") (timezone "Europe/Paris") (locale "en_US.UTF-8") + (bootloader (grub-configuration (device "/dev/sda"))) (file-systems @@ -52,6 +48,7 @@ (type "dummy")) ;; %fuse-control-file-system ; needs fuse.ko %binary-format-file-system)) + (users (list (user-account (name "guest") (group "wheel") @@ -67,6 +64,17 @@ (name "users") (id 100) (members '("guest"))))) + + (issue " +This is an alpha preview of the GNU system. Welcome. + +This image features the GNU Guix package manager, which was used to +build it (http://www.gnu.org/software/guix/). The init system is +GNU dmd (http://www.gnu.org/software/dmd/). + +You can log in as 'guest' or 'root' with no password. +") + (services (cons* (slim-service #:auto-login? #t #:default-user "guest") @@ -75,11 +83,12 @@ #:name-servers '("10.0.2.3") #:gateway "10.0.2.2") + (avahi-service) + (dbus-service (list avahi)) + %base-services)) (pam-services ;; Explicitly allow for empty passwords. (base-pam-services #:allow-empty-passwords? #t)) - (packages (list bash coreutils findutils grep sed - procps psmisc less - guile-2.0 dmd guix util-linux inetutils - xterm zile))) + + (packages (cons* xterm avahi %base-packages))) diff --git a/build-aux/hydra/gnu-system.scm b/build-aux/hydra/gnu-system.scm index 28fad6a8e2..f02f1f48e6 100644 --- a/build-aux/hydra/gnu-system.scm +++ b/build-aux/hydra/gnu-system.scm @@ -55,6 +55,7 @@ (gnu packages make-bootstrap) (gnu system) (gnu system vm) + (gnu system install) (srfi srfi-1) (srfi srfi-26) (ice-9 match)) @@ -114,6 +115,12 @@ SYSTEM." '("mips64el-linux-gnu" "mips64el-linux-gnuabi64")) +(define (demo-os) + "Return the \"demo\" 'operating-system' structure." + (let* ((dir (dirname (assoc-ref (current-source-location) 'filename))) + (file (string-append dir "/demo-os.scm"))) + (read-operating-system file))) + (define (qemu-jobs store system) "Return a list of jobs that build QEMU images for SYSTEM." (define (->alist drv) @@ -130,24 +137,28 @@ system.") (string->symbol system)))) `(,name . ,(cut ->alist drv)))) - (if (string=? system "x86_64-linux") - (let* ((dir (dirname (assoc-ref (current-source-location) 'filename))) - (file (string-append dir "/demo-os.scm")) - (os (read-operating-system file)) - (size (* 1400 (expt 2 20)))) ; 1.4GiB - (if (operating-system? os) - (list (->job 'qemu-image - (run-with-store store - (system-qemu-image os - #:disk-image-size size)))) - '())) + (define MiB + (expt 2 20)) + + (if (member system '("x86_64-linux" "i686-linux")) + (list (->job 'qemu-image + (run-with-store store + (system-qemu-image (demo-os) + #:disk-image-size + (* 1400 MiB)))) ; 1.4 GiB + (->job 'usb-image + (run-with-store store + (system-disk-image installation-os + #:disk-image-size + (* 630 MiB))))) '())) (define (hydra-jobs store arguments) "Return Hydra jobs." (define systems ;; Systems we want to build for. - '("x86_64-linux" "i686-linux")) + '("x86_64-linux" "i686-linux" + "mips64el-linux")) (define subset (match (assoc-ref arguments 'subset) @@ -165,12 +176,22 @@ system.") (and (string-prefix? "i686-" system) (string-suffix? "64" target))) + (define (same? target) + ;; Return true if SYSTEM and TARGET are the same thing. This is so we + ;; don't try to cross-compile to 'mips64el-linux-gnu' from + ;; 'mips64el-linux'. + (string-contains target system)) + + (define (either proc1 proc2) + (lambda (x) + (or (proc1 x) (proc2 x)))) + (append-map (lambda (target) (map (lambda (package) (package-cross-job store (job-name package) package target system)) %packages-to-cross-build)) - (remove from-32-to-64? %cross-targets))) + (remove (either from-32-to-64? same?) %cross-targets))) ;; Return one job for each package, except bootstrap packages. (let ((base-packages (delete-duplicates diff --git a/build-aux/list-packages.scm b/build-aux/list-packages.scm index d832374a9c..96fe707233 100755 --- a/build-aux/list-packages.scm +++ b/build-aux/list-packages.scm @@ -4,7 +4,7 @@ exec guile -l "$0" \ (cdr (command-line)))' !# ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013 Alex Sassmannshausen <alex.sassmannshausen@gmail.com> ;;; ;;; This file is part of GNU Guix. @@ -148,7 +148,8 @@ decreasing, is 1." `(div "status: " ,(url "x86_64-linux") " " - ,(url "i686-linux"))) + ,(url "i686-linux") " " + ,(url "mips64el-linux"))) (define (package-logo name) (and=> (lookup-gnu-package name) |