123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- (use-modules (gnu packages)
- (guix packages)
- (guix profiles)
- ((gnu ci) #:select (%cross-targets))
- ((gnu services xorg) #:select (%default-xorg-modules))
- (guix utils)
- (srfi srfi-1)
- (srfi srfi-26))
- (define* (package->manifest-entry* package system
- #:key target)
- "Return a manifest entry for PACKAGE on SYSTEM, optionally cross-compiled to
- TARGET."
- (manifest-entry
- (inherit (package->manifest-entry package))
- (name (string-append (package-name package) "." system
- (if target
- (string-append "." target)
- "'")))
- (item (with-parameters ((%current-system system)
- (%current-target-system target))
- package))))
- (define %base-packages
-
- (map specification->package
- '("bootstrap-tarballs" "gcc-toolchain" "nss-certs"
- "openssh" "emacs" "vim" "python" "guile" "guix")))
- (define %base-packages/hurd
-
- (map specification->package
- '("coreutils" "grep" "findutils" "gawk" "make"
- "gcc-toolchain" "tar" "xz")))
- (define %system-packages
-
- (append (map specification->package
- '("xorg-server" "xfce" "gnome" "mate" "enlightenment"
- "openbox" "awesome" "i3-wm" "ratpoison"
- "emacs" "emacs-exwm" "emacs-desktop-environment"
- "xlockmore" "slock" "libreoffice"
- "connman" "network-manager" "network-manager-applet"
- "openssh" "ntp" "tor"
- "linux-libre" "grub-hybrid"
-
-
- ))
- %default-xorg-modules))
- (define %packages-to-cross-build
-
-
-
- (append (list (@ (gnu packages guile) guile-3.0/fixed))
- (map specification->package
- '("coreutils" "grep" "sed" "findutils" "diffutils" "patch"
- "gawk" "gettext" "gzip" "xz"
- "hello" "zlib"))))
- (define %packages-to-cross-build-for-mingw
-
- (map specification->package '("hello")))
- (define %cross-bootstrap-targets
-
-
- '("i586-pc-gnu"
- "arm-linux-gnueabihf"
- "aarch64-linux-gnu"))
- (define %base-manifest
- (manifest
- (append-map (lambda (system)
- (map (cut package->manifest-entry* <> system)
- (if (string=? system "i586-gnu")
- %base-packages/hurd
- %base-packages)))
- %hydra-supported-systems)))
- (define %system-manifest
- (manifest
- (append-map (lambda (system)
- (map (cut package->manifest-entry* <> system)
- %system-packages))
- '("x86_64-linux" "i686-linux"))))
- (define %cross-manifest
- (manifest
- (append-map (lambda (target)
- (map (cut package->manifest-entry* <> "x86_64-linux"
- #:target target)
- (if (target-mingw? target)
- %packages-to-cross-build-for-mingw
- %packages-to-cross-build)))
-
-
- (delete "riscv64-linux-gnu" %cross-targets))))
- (define %cross-bootstrap-manifest
- (manifest
- (map (lambda (target)
- (package->manifest-entry*
- (specification->package "bootstrap-tarballs")
- "x86_64-linux" #:target target))
- %cross-bootstrap-targets)))
- (concatenate-manifests (list %base-manifest
- %system-manifest
- %cross-manifest
- %cross-bootstrap-manifest))
|