Hello, I confirm the test failure. I tried fixing it with the patch below, but there's still something up with it. I don't know the go build system enough to be able to tell what's up--can someone else help? diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index e595ad3702..2b46928512 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -85,6 +85,7 @@ #:use-module (gnu packages dns) #:use-module (gnu packages elf) #:use-module (gnu packages file) + #:use-module (gnu packages firmware) #:use-module (gnu packages flex) #:use-module (gnu packages gawk) #:use-module (gnu packages gettext) @@ -4246,7 +4247,8 @@ disk utilization, priority, username, state, and exit code.") `()) (inputs `(("go-golang-org-x-text" ,go-golang-org-x-text) - ("go-github.com-ulikunitz-xz" ,go-github.com-ulikunitz-xz))) + ("go-github.com-ulikunitz-xz" ,go-github.com-ulikunitz-xz) + ("go-github.com-u-root-u-root" ,u-root))) ; does not work for some reason (synopsis "UEFI image editor") (description "This package provides a command-line UEFI image editor.") (home-page "https://github.com/linuxboot/fiano") diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index fcdb5a801e..992ff812c2 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -30,6 +30,7 @@ #:use-module (guix utils) #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (guix build-system go) #:use-module (gnu packages) #:use-module (gnu packages admin) #:use-module (gnu packages assembly) @@ -621,3 +622,33 @@ switching support).\n") #t))))) (native-inputs `(("cross-gcc" ,(cross-gcc "arm-none-eabi" #:xgcc gcc-7)) ("cross-binutils" ,(cross-binutils "arm-none-eabi")))))) + +;; TODO: busybox mode. +;; TODO: Unvendor things: gopkg.in (yaml.v2), gopkg.in (alecthomas/kingpin.v2), golang.org (x-text, x-tools, x-xerrors, x/mod/semver, x/mod/module, x/net/ipv4, x/net/ipv6, x/crypto, x/sys/unix, x/sys/windows, x/sys/cpu), github.com (gliderlabs/ssh, beevik/ntp, intel-go/cpuid, stretchr/testify, u-root/iscsinl, google/go-tpm, goexpect, goterm, go-cmp, safchain, rck, mattn/go-isatty, creack/pty, ...) +(define-public u-root + (package + (name "u-root") + (version "7.0.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/u-root/u-root.git") + (commit (string-append "v" version)))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1awpbzmfmzyzwyjk917dvmmz2ssz15fj4raqhv7dhg9k6vy00px1")))) + (build-system go-build-system) + (arguments + `(#:tests? #f + #:import-path "github.com/u-root/u-root" + #:unpack-path "github.com/u-root/u-root")) + (native-inputs + `()) + (inputs + `()) + (synopsis "Minimal initrd with system tools") + (description "Go-based embedded initrd with system tools +(it's like busybox, just in Go).") + (home-page "https://u-root.org/") + (license license:bsd-3)))