As suggested by Sergey Bugaev on bug-hurd
https://lists.gnu.org/archive/html/bug-hurd/2023-05//msg00455.html
* gnu/services/base.scm (static-networking->hurd-pfinet-options): Use
/DEV/ethX. Use long options for settrans.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
* gnu/packages/patches/netdde-build-fix.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/hurd.scm (netdde)[source]: Update to
e67c284ac113d939b10b4578334f27dab29d5b08 and use it.
[inputs]: Add zlib:static.
[arguments]: Remove #true from build phases. In 'build' phase, remove
obsolete CFLAGS, and also build static version. In 'install' phase,
install them in <out>/hurd. There is no check target, so set #:tests?
to #false.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
* gnu/packages/patches/gnumach-support-noide.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/hurd.scm (gnumach-headers): Use it.
* doc/guix.texi (Bootloader Configuration): Document it.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
* gnu/bootloader/grub.scm (make-grub-configuration): When "noide" is in
arguments, use device name "wd0" rather than "hd0".
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
When booting with pci-arbiter and rumpdisk and using 1024MB of memory for
qemu, booting hangs, or seems to hang, at the end of the rumpdisk boot
messages. At least 1200MB is required, currently.
* gnu/services/virtualization.scm (<hurd-vm-configuration>)[memory-size]: Bump
to 2048.
* gnu/system/examples/bare-hurd.tmpl: Suggest using 2048 here too. Update
example `guix system image' and "qemu" command lines too.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
* gnu/packages/disk.scm (parted)[inputs]: Remove lvm2, add hurd-minimal
when building for the Hurd.
[arguments]: Add configure-flag '--disable-device-mapper' when building for
the Hurd.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
* gnu/packages/hurd.scm (hurd-minimal)[inputs]: Add gnumach-headers.
[arguments]: Rewrite to include libshouldbeinlibc and libstore.
* gnu/packages/cross-base.scm (cross-kernel-headers*): Update xhurd-minimal
accordingly: Add xgnumach-headers, add them to cpath, use gexps for
modify-phases, add delete-shared-target phase.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
This uses the Debian Salsa rumpkernel package git as upstream as that is where
delopment happens. Once things have stabalized upstream may change to the
NetBSD git from where Debian takes their snapshots.
* gnu/packages/hurd.scm (rumpkernel): New variable.
(hurd-headers)[native-inputs]: Use cross-mig directly.
(gnumach)[native-inputs]: Likewise.
(hurd)[native-inputs]: Likewise.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
As suggested by youpi on IRC
https://logs.guix.gnu.org/hurd/2023-05-17.log#132259
libpciaccess-0.16 is too old for the Hurd and would need Hurd-specific patches
while libpciaccess-0.17 works out of the box.
* gnu/packages/hurd.scm (hurd)[inputs]: Use libpciaccess-0.17.
(netdde)[inputs]: Likewise.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
* gnu/packages/hurd.scm (mig)[source]: Update to 1.8+git20230520.
* gnu/packages/patches/gnumach-add-missing-const_mach_port_name_array_t-type.patch:
Drop patch.
* gnu/local.mk (dist_patch_DATA): Unregister it.
* gnu/packages/hurd.scm (gnumach-headers): Remove configure flags where we
say the builder is running x86.
* gnu/packages/cross-base.scm (cross-gnumach-headers): Work around limitation
of build system, by manually changing the target host_cpu without relying on
--host, because we don't have a working cross-compiler yet.
* gnu/packages/maths.scm (arpack-ng): Update to 3.9.0.
[source]: Add 'patches'.
[build-system]: Switch to CMAKE-BUILD-SYSTEM.
[native-inputs]: Remove AUTOCONF, AUTOMAKE, and LIBTOOL.
(arpack-ng-openmpi)[inputs]: Use 'modify-inputs'.
[arguments]: Use gexps.
* gnu/packages/patches/arpack-ng-propagate-rng-state.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Fixes <https://issues.guix.gnu.org/63230>.
Previously, when running "guix shell -s X ...", OPTS would contain
something like '((system . "X") ... (system . "DEFAULT")). Thus, since
'profile-cached-gc-root' would iterate over it in this order, "DEFAULT"
would be passed to 'profile-file-cache-key' and 'profile-spec-cache-key'
instead of "X".
* guix/scripts/shell.scm (profile-cached-gc-root): Reverse OPTS before
entering 'loop'.
$ guix shell clang-toolchain@15 -- clang -o test -fsanitize=address test.c
ld: cannot find /gnu/store/i429h17s15g48ir9vl1bzp3cv39l5pib-clang-runtime-15.0.7/lib/linux/libclang_rt.asan_static-x86_64.a: No such file or directory
ld: cannot find /gnu/store/i429h17s15g48ir9vl1bzp3cv39l5pib-clang-runtime-15.0.7/lib/linux/libclang_rt.asan-x86_64.a: No such file or directory
clang-15: error: linker command failed with exit code 1 (use -v to see invocation)
* gnu/packages/llvm.scm (clang-runtime-15): Fix address sanitizer
support by bringing back the static libraries.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* guix/transformations.scm (build-system-with-tuning-compiler): When
checking if a microarchitecture is supported by the compiler, also check
if it is a go compiler which supports that psabi. Add a phase after
'setup-go-environment to set the go microarchitecture.
* gnu/packages/golang.scm (go-1.17)[properties]: New field.
(%go-1.17-arm-micro-architectures,
%go-1.17-powerpc64le-micro-architectures,
%go-1.18-x86_64-micro-architectures): New variables.
(go-1.18)[properties]: New field.