aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; 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/>.

;;; Commentary:
;;;
;;; This file defines a manifest with a selection of packages for Cuirass to
;;; build for GNU/Hurd.
;;;
;;; Code:

(use-modules (gnu)
             (gnu system hurd)
             (guix packages)
             (guix utils)
             (ice-9 match)
             (srfi srfi-1))

(use-package-modules
 autotools base bootloaders commencement compression file gawk gdb gettext gtk
 guile guile-xyz hurd less m4 package-management python ssh
 texinfo tls version-control)

(define (input->package input)
  "Return the INPUT as package, or #f."
  (match input
    ((label (and (? package?) package))
     package)
    ((label (and (? package?) package . output))
     (cons package output))
    (_ #f)))

(define guix-dependencies
  (filter-map input->package
              (fold alist-delete (package-direct-inputs guix)
                    '("glibc-utf8-locales" "graphviz" "po4a"))))

(define (package-without-tests p)
  (package/inherit p
    (arguments
     (substitute-keyword-arguments (package-arguments p)
       ((#:tests? _ #f) #f)))))

(packages->manifest
 (cons*
  ;; where it all starts
  hello

  ;; development utililities
  diffutils file findutils gawk grep gzip less m4 openssh-sans-x tar xz

  ;; development packages
  autoconf automake libtool texinfo
  gcc-toolchain gdb-minimal git-minimal gnu-make
  gettext-minimal python-minimal
  guile-3.0 guile-2.2 guile-2.0
  guile-readline guile-colorized
  guile-gnutls guile-fibers guile-json-4

  ;; ourselves!
  (package-without-tests guix)

  ;; system
  grub-minimal grub

  ;; system reconfigure
  gdk-pixbuf

  (append
   guix-dependencies
   %base-packages/hurd)))
021-09-12linux-boot: Remove mummified comment....Tobias Geerinckx-Rice 2021-06-16gnu: Respect ‘rootdelay’ kernel command-line argument....Tobias Geerinckx-Rice 2021-05-23gnu: Respect the root file-system's CHECK? field....Tobias Geerinckx-Rice 2020-12-17linux-boot: Fix noresume argument parsing....Tobias Geerinckx-Rice 2020-11-07linux-boot: Resume from hibernation....Tobias Geerinckx-Rice 2020-09-07linux-boot: Handle nfs-root device strings....Stefan 2020-06-08hurd-boot: Further cleanup of "rc"....Jan (janneke) Nieuwenhuizen 2020-06-08linux-boot: Update 'make-hurd-device-nodes'....Jan (janneke) Nieuwenhuizen 2020-05-20linux-boot: Refactor boot-system....Maxim Cournoyer 2020-05-02Merge branch 'master' into core-updatesMarius Bakke 2020-05-02linux-boot: Allow the root file system to be mounted via NFS....Stefan 2020-04-11linux-boot: Add 'make-hurd-device-nodes'....Ludovic Courtès 2020-04-11linux-boot: 'make-essential-device-nodes' root parameter is optional....Ludovic Courtès 2020-03-02linux-boot: Ensure volatile root is mounted read-only....Maxim Cournoyer 2019-12-12linux-boot: Don't ignore flags when mounting root file system....Guillaume Le Vaillant 2019-11-18linux-boot: Don't ignore options when mounting root file system....Guillaume Le Vaillant 2019-11-18linux-boot: Fix indentation....Maxim Cournoyer 2019-09-25linux-boot: Fix typo....Maxim Cournoyer 2019-08-16linux-modules: Add 'load-linux-modules-from-directory'....Ludovic Courtès 2019-06-03linux-boot: Fix e2fsck warning....Danny Milosavljevic 2019-03-24system: Initialize console keyboard layout in the initrd....Ludovic Courtès 2018-05-28file-systems: Remove 'title' field and add <file-system-label>....Ludovic Courtès 2018-02-06gnu: build: linux-boot: Remove bind-mount export....Christopher Baines 2018-02-01linux-boot: Add find-long-options....Danny Milosavljevic 2018-01-19gnu: Consistently Write ‘file system(s)’....Tobias Geerinckx-Rice 2018-01-08linux-boot: Add #:on-error for initrd error handling....Ludovic Courtès 2017-12-16linux-boot: Add make-static-device-nodes....Danny Milosavljevic 2017-12-02linux-boot: Remove unneeded import....Ludovic Courtès 2017-11-29linux-boot: Ensure /etc exists on the root file system....Ludovic Courtès 2017-11-08build: Use overlayfs instead of unionfs....Hartmut Goebel 2017-10-11file-systems: 'mount-file-system' now takes a <file-system> object....Ludovic Courtès 2017-04-11build: Fix compilation warnings....Mathieu Othacehe 2016-01-29Rename '/root/etc/dmd' directory and 'do-not-kill' file....Alex Kost 2016-01-05linux-boot: Remove verbose output for module loads....Ludovic Courtès 2015-09-20linux-boot: Mount /dev as a devtmpfs from the start....Ludovic Courtès 2015-05-24gnu: linux-boot: Remove outdated and misleading comment....Ludovic Courtès 2015-01-28linux-boot: Don't fail if /root/etc/mtab is a dangling symlink....Ludovic Courtès 2015-01-05linux-boot: Make /etc/mtab a symlink to /proc/self/mounts....宋文武 2014-11-28linux-boot: Load modules and their dependencies, à la 'modprobe'....Ludovic Courtès 2014-11-26linux-boot: Call 'pre-mount' before 'mount-root-file-system'....Ludovic Courtès 2014-11-26linux-boot: Error out when 'pre-mount' returns #f....Ludovic Courtès 2014-11-20linux-boot: Don't catch exceptions thrown by 'mount-root-file-system'....Ludovic Courtès