bug#51317: wishlist: option to not display new packages when list-generations
Hi, On Thu, 17 Feb 2022 at 23:22, Ricardo Wurmus wrote: > Looks like newer versions of Guix no longer show the list of new > packages. Can this be closed now? Yes, fixed by b9df2e2b4d8a8efa5983aeb69a5ed394e7bcba60. Thanks for the follow-up. Cheers, simon
bug#48007: computing derivations through inferior takes twice as long
Hi, Ludovic Courtès skribis: > Previously, each 'inferior-eval-with-store' would lead the inferior to > connect to the named socket the parent is listening to. With this > change, the connection is established once for all and reused > afterwards. > > * guix/inferior.scm ()[bridge-file-name]: Remove. > (open-bidirectional-pipe): New procedure. > (inferior-pipe): Use it instead of 'open-pipe*' and return two values. > (port->inferior): Adjust call to 'inferior'. > (open-inferior): Adjust to 'inferior-pipe' changes. > (close-inferior): Remove 'inferior-bridge-file-name' handling. > (open-store-bridge!): Switch back to 'call-with-temporary-directory'. > Define '%bridge-socket' in the inferior, connected to the caller. > (proxy): Change first argument to be an inferior. Add 'reponse-port' > and call to 'drain-input'. Pass 'reponse-port' to 'select' and use it > as a loop termination clause. > (inferior-eval-with-store): Remove 'socket' and 'connect' calls from the > inferior code, and use '%bridge-socket' instead. [...] > +(define (open-bidirectional-pipe command . args) > + "Open a bidirectional pipe to COMMAND invoked with ARGS and return it, as a > +regular file port (socket). > + > +This is equivalent to (open-pipe* OPEN_BOTH ...) except that the result is a > +regular file port that can be passed to 'select' ('open-pipe*' returns a > +custom binary port)." > + (match (socketpair AF_UNIX SOCK_STREAM 0) > +((parent . child) > + (match (primitive-fork) I noticed that there’s at least one case where this is used from a multi-threaded program, and as we know, fork + threads don’t go well together: --8<---cut here---start->8--- $ make as-derivation […] @ build-succeeded /gnu/store/n5jfi8pn1aq1ykmnq75xhr8ba2m7161l-profile.drv - warning: call to primitive-fork while multiple threads are running; further behavior unspecified. See "Processes" in the manual, for more information. warning: call to primitive-fork while multiple threads are running; further behavior unspecified. See "Processes" in the manual, for more information. warning: call to primitive-fork while multiple threads are running; further behavior unspecified. See "Processes" in the manual, for more information. --8<---cut here---end--->8--- The threads are created in ‘build-aux/cuirass/evaluate.scm’. In practice it’s OK because the code above calls ‘exec’ right away; still, it’s annoying. Ludo’.
bug#54055: texlive-bin fails to build on armhf-linux, breaking guix pull
Something I've noticed from data.guix.gnu.org, it fails to compute the guix derivation for armhf-linux because texlive-bin fails to build [1] 1: https://data.guix.gnu.org/job/28674 phase `check' failed after 820.9 seconds command "make" "check" "-j" "8" failed with status 2 builder for `/gnu/store/hq3r8ayp8ak2p36y016x62f028m4miv1-texlive-bin-20210325.drv' failed with exit code 1 @ build-failed /gnu/store/hq3r8ayp8ak2p36y016x62f028m4miv1-texlive-bin-20210325.drv - 1 builder for `/gnu/store/hq3r8ayp8ak2p36y016x62f028m4miv1-texlive-bin-20210325.drv' failed with exit code 1 cannot build derivation `/gnu/store/gd3xkfbpfcv03y958ggmgnc150cz4r82-texlive-amsmath-59745.drv': 1 dependencies couldn't be built error: while computing manifest entry derivation for armhf-linux error %exception: (#<&message message: "You found a bug: the program '/gnu/store/s82qcdcxsyr16fp1db8n800jd171vk4v-compute-guix-derivation'\nfailed to compute the derivation for Guix (version: \"e9f9f291edafaa27fa6d7e9967909555a08d383e\"; system: \"armhf-linux\";\nhost version: \"1.3.0-21.e427593\"; pull-version: 1).\nPlease report the COMPLETE output above by email to .\n">) I've included what looks like the failure at the bottom of the email. I did find a thread [2] which suggested this is a real upstream issue on armhf-linux. 2: https://tug.org/pipermail/tlbuild/2021q1/004873.html FAIL: tests/mendex == #!/gnu/store/97xwzdsw9p6019dbml5mzf781c7avfkq-bash-minimal-5.1.8/bin/sh -vx # $Id: mendex.test 58575 2021-03-21 08:54:52Z takuji $ # Copyright 2017 Karl Berry # Copyright 2013 Peter Breitenlohner # You may freely use, modify and/or distribute this file. TEXMFCNF=$srcdir/../kpathsea + TEXMFCNF=../../../texlive-20210325-source/texk/mendexk/../kpathsea export TEXMFCNF + export TEXMFCNF rm -f foo.* + rm -f 'foo.*' ./mendex $srcdir/tests/foo.idx -o foo.ind1 -t foo.ilg1 \ && diff $srcdir/tests/foo.ind foo.ind1 || exit 1 + ./mendex ../../../texlive-20210325-source/texk/mendexk/tests/foo.idx -o foo.ind1 -t foo.ilg1 This is mendex version 3.3 [21-Mar-2021] (utf8.uptex) (TeX Live 2021). Scanning input file ../../../texlive-20210325-source/texk/mendexk/tests/foo.idxdone (3 entries accepted, 0 rejected). 3 entries accepted, 0 rejected. Sorting indexdone(0 comparisons). Sorting pagesdone(4 comparisons). Making index filedone. 0 warnings, written in foo.ilg1. Output written in foo.ind1. + diff ../../../texlive-20210325-source/texk/mendexk/tests/foo.ind foo.ind1 cat $srcdir/tests/foo.idx | ./mendex >foo.ind2 2>foo.ilg2 \ && diff $srcdir/tests/foo.ind foo.ind2 || exit 1 + cat ../../../texlive-20210325-source/texk/mendexk/tests/foo.idx + ./mendex + diff ../../../texlive-20210325-source/texk/mendexk/tests/foo.ind foo.ind2 ./mendex -U -d $srcdir/tests/uni.dict -s $srcdir/tests/uni.ist \ $srcdir/tests/uni.idx -o uni.ind1 -t uni.ilg1 \ && diff $srcdir/tests/uni.ind uni.ind1 || exit 1 + ./mendex -U -d ../../../texlive-20210325-source/texk/mendexk/tests/uni.dict -s ../../../texlive-20210325-source/texk/mendexk/tests/uni.ist ../../../texlive-20210325-source/texk/mendexk/tests/uni.idx -o uni.ind1 -t uni.ilg1 This is mendex version 3.3 [21-Mar-2021] (utf8.uptex) (TeX Live 2021). Scanning dictionary file ../../../texlive-20210325-source/texk/mendexk/tests/uni.dictdone. Scanning input file ../../../texlive-20210325-source/texk/mendexk/tests/uni.idxdone (8 entries accepted, 0 rejected). 8 entries accepted, 0 rejected. Sorting indexdone(24 comparisons). Sorting pagesdone(0 comparisons). Making index filedone. 0 warnings, written in uni.ilg1. Output written in uni.ind1. + diff ../../../texlive-20210325-source/texk/mendexk/tests/uni.ind uni.ind1 cat $srcdir/tests/uni.idx | \ ./mendex -U -d $srcdir/tests/uni.dict -s $srcdir/tests/uni.ist \ >uni.ind2 2>uni.ilg2 \ && diff $srcdir/tests/uni.ind uni.ind2 || exit 1 + cat ../../../texlive-20210325-source/texk/mendexk/tests/uni.idx + ./mendex -U -d ../../../texlive-20210325-source/texk/mendexk/tests/uni.dict -s ../../../texlive-20210325-source/texk/mendexk/tests/uni.ist + diff ../../../texlive-20210325-source/texk/mendexk/tests/uni.ind uni.ind2 # test for page_precedence ./mendex -s $srcdir/tests/pprec0.ist $srcdir/tests/pprecA.idx -o pprecA-0.ind1 -t pprecA-0.ilg \ && diff $srcdir/tests/pprecA-0.ind pprecA-0.ind1 || exit 1 + ./mendex -s ../../../texlive-20210325-source/texk/mendexk/tests/pprec0.ist ../../../texlive-20210325-source/texk/mendexk/tests/pprecA.idx -o pprecA-0.ind1 -t pprecA-0.ilg This is mendex version 3.3 [21-Mar-2021] (utf8.uptex) (TeX Live 2021). Scanning input file ../../../texlive-20210325-source/texk/mendexk/tests/pprecA.idxdone (9 entries accepted, 0 rejected). 9 entries accepted, 0 rejected. Sorting indexdone(0 comparisons). Sorting pagesdone(27 comparisons). Making index filedone. 0 warnings, written in pprecA-0.ilg. Output written in pprecA
bug#51801: No warning when attempting to build unsupported system with --system
Ludovic Courtès skribis: > Maxim Cournoyer skribis: > >> I was surprised that: >> >> guix build fpc --system=armhf-linux >> >> would send me in a dead end without any word of caution, given that >> armhf-linux is *not* listed in the supported-systems field. >> >> We should at least warn near the beginning of the build, and remind of >> that fact at the end of the build in case of failure. > > I came up with the patches below. > > The first part forbids unsupported packages altogether in user-facing > commands: ‘guix install’, ‘guix shell’, etc. Until now, they’d just > start building things that were bound to fail. > > The second part adds a mere warning for ‘guix build’ (it does not repeat > it at the end, though). I went ahead and pushed them: 0ca26437cb guix build: Warn when attempting to build an unsupported package. 5a57313918 profiles: 'profile-derivation' rejects unsupported packages. 0572737a62 packages: 'package-transitive-supported-systems' ignores '%current-target-system'. Ludo’.
bug#54041: cannot load (gnu services virtualization)
Hi, Ricardo Wurmus skribis: > When I add > > (service qemu-guest-agent-service-type) > > to the list of my services and add (gnu services virtualization) to the > imports and then try to build my system configuration I get this error: > > guix system: error: #< file: "gnu/services/virtualization.scm" > line: 893 column: 18>: invalid G-expression input Fixed in 01821914e272ed682dc83b5163c17a0345dcaf17. I believe the bug has always been there. There are no tests for this service. :-/ Ludo’.
bug#54055: texlive-bin fails to build on armhf-linux, breaking guix pull
Christopher Baines writes: > Something I've noticed from data.guix.gnu.org, it fails to compute the > guix derivation for armhf-linux because texlive-bin fails to build [1] > > 1: https://data.guix.gnu.org/job/28674 > phase `check' failed after 820.9 seconds > command "make" "check" "-j" "8" failed with status 2 > builder for > `/gnu/store/hq3r8ayp8ak2p36y016x62f028m4miv1-texlive-bin-20210325.drv' failed > with exit code 1 > @ build-failed > /gnu/store/hq3r8ayp8ak2p36y016x62f028m4miv1-texlive-bin-20210325.drv - > 1 builder for > `/gnu/store/hq3r8ayp8ak2p36y016x62f028m4miv1-texlive-bin-20210325.drv' > failed with exit code 1 > cannot build derivation > `/gnu/store/gd3xkfbpfcv03y958ggmgnc150cz4r82-texlive-amsmath-59745.drv': 1 > dependencies couldn't be built > error: while computing manifest entry derivation for armhf-linux > error %exception: (#<&message message: "You found a bug: the program > '/gnu/store/s82qcdcxsyr16fp1db8n800jd171vk4v-compute-guix-derivation'\nfailed > to compute the derivation for Guix (version: > \"e9f9f291edafaa27fa6d7e9967909555a08d383e\"; system: > \"armhf-linux\";\nhost version: \"1.3.0-21.e427593\"; pull-version: > 1).\nPlease report the COMPLETE output above by email to > .\n">) I forgot an important link, here's a texlive-bin derivation on data.guix.gnu.org, which links to some logs for failed builds [1]. I'm not quite sure why the derivation here doesn't match up with the derivation shown in the log above. 1: https://data.guix.gnu.org/gnu/store/vr6q02wyzjkbk35fkqcqi653csza22mw-texlive-bin-20210325.drv signature.asc Description: PGP signature
bug#54056: guix-data-service build failure, segfault probably related to guile@3.0.8
The recent derivation for the guix-data-service built with Guile 3.0.8 seems to often segfault when running the tests (see the failed builds here [1]). 1: https://data.guix.gnu.org/gnu/store/qzxq38kpd2vrpj1xwgd5i3gjdkmmxmn1-guix-data-service-0.0.1-29.4a1088c.drv With some help from IRC, I managed to get a core dump: Core was generated by `/gnu/store/jjl6sa1bhjpj9cssi80yr4h8ihdgk34z-guile-3.0.8/bin/guile --no-auto-com'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x70720496 in ?? () [Current thread is 1 (LWP 2505)] (gdb) bt #0 0x70720496 in ?? () #1 0x00436488 in ?? () #2 0x719eb180 in ?? () #3 0x7fffea6ac858 in ?? () #4 0x77ee7ccc in scm_jit_enter_mcode (thread=0x775c8d80, mcode=0x439154 ) at jit.c:6038 #5 0x77f3cf3c in vm_regular_engine (thread=0x775c8d80) at vm-engine.c:360 #6 0x77f4a5e9 in scm_call_n (proc=, argv=, nargs=4) at vm.c:1608 #7 0x77eb2144 in scm_call_4 (proc=, arg1=, arg2=, arg3=, arg4=) at eval.c:517 #8 0x77eaedd0 in error_during_backtrace (data=0x71c2b080, tag=out-of-range, throw_args=0x7fffe5a9bb80) at backtrace.c:252 #9 0x77f68821 in scm_c_with_exception_handler.constprop.0 (type=#t, handler_data=handler_data@entry=0x7fff98b0, thunk_data=thunk_data@entry=0x7fff98b0, thunk=, handler=) at exceptions.c:167 #10 0x77f3a88f in scm_c_catch (tag=, body=, body_data=, handler=, handler_data=, pre_unwind_handler=pre_unwind_handler@entry=0x0, pre_unwind_handler_data=0x0) at throw.c:168 #11 0x77f3a8ae in scm_internal_catch (tag=, body=, body_data=, handler=, handler_data=) at throw.c:177 #12 0x77eaf005 in scm_display_backtrace_with_highlights (stack=stack@entry="#" = {...}, port=port@entry=# 71c2b080>, first=first@entry=#f, depth=depth@entry=#f, highlights=highlights@entry=()) at backtrace.c:277 #13 0x77eaf080 in scm_backtrace_with_highlights (highlights=()) at backtrace.c:310 #14 0x77f3d336 in vm_regular_engine (thread=0x775c8d80) at vm-engine.c:972 #15 0x77f4a5e9 in scm_call_n (proc=, argv=, nargs=4) at vm.c:1608 #16 0x77eb6571 in scm_apply_0 (proc=#, args=()) at eval.c:603 #17 0x77f3bc8d in scm_throw (key=match-error, args=("match" "no matching pattern" x86_64-linux)) at throw.c:262 #18 0x77edb239 in throw_ (key=, args=) at intrinsics.c:396 #19 0x77f3f137 in vm_regular_engine (thread=0x775c8d80) at vm-engine.c:1183 #20 0x77f4a5e9 in scm_call_n (proc=, argv=, nargs=1) at vm.c:1608 #21 0x77eb2457 in scm_primitive_eval (exp=) at eval.c:671 #22 0x77eeb239 in scm_primitive_load (filename=filename@entry="/tmp/guix-build-guix-data-service-0.0.1-29.4a1088c.drv-0/source/tests/jobs-load-new-guix-revision.scm") at load.c:131 #23 0x77eedff0 in scm_primitive_load_path (args=) at load.c:1267 #24 0x77f3d336 in vm_regular_engine (thread=0x775c8d80) at vm-engine.c:972 #25 0x77f4a5e9 in scm_call_n (proc=, argv=, nargs=1) at vm.c:1608 #26 0x77eb2457 in scm_primitive_eval (exp=, exp@entry=((@ (ice-9 control) %) (begin ((@@ (ice-9 command-line) load/lang) "./build-aux/test-driver.scm") (main (command-line)) (quit at eval.c:671 #27 0x77eb84b6 in scm_eval (exp=((@ (ice-9 control) %) (begin ((@@ (ice-9 command-line) load/lang) "./build-aux/test-driver.scm") (main (command-line)) (quit))), module_or_state="#" = {...}) at eval.c:705 #28 0x77f1c3b6 in scm_shell (argc=19, argv=0x7fffa6d8) at script.c:357 #29 0x77ec749c in invoke_main_func (body_data=0x7fffa590) at init.c:312 #30 0x77eb085a in c_body (d=0x7fffa4b0) at continuations.c:430 #31 0x77f3d336 in vm_regular_engine (thread=0x775c8d80) at vm-engine.c:972 #32 0x77f4a5e9 in scm_call_n (proc=, argv=, nargs=2) at vm.c:1608 #33 0x77eb209a in scm_call_2 (proc=, arg1=, arg2=) at eval.c:503 #34 0x77f68752 in scm_c_with_exception_handler.constprop.0 (type=#t, handler_data=handler_data@entry=0x7fffa440, thunk_data=thunk_data@entry=0x7fffa440, thunk=, handler=) at exceptions.c:170 #35 0x77f3a88f in scm_c_catch (tag=, body=, body_data=, handler=, handler_data=, pre_unwind_handler=, pre_unwind_handler_data=0x71c2b040) at throw.c:168 #36 0x77eb2e66 in scm_i_with_continuation_barrier (pre_unwind_handler=0x77eb2b80 , pre_unwind_handler_data=0x71c2b040, handler_data=0x7fffa4b0, handler=0x77eb98b0 , body_data=0x7fffa4b0, body=0x77eb0850 ) at continuations.c:368 #37 scm_c_with_continuation_barrier (func=, data=) at continuations.c:464 #38 0x77f39b39 in with_guile (base=0x7fffa538, data=0x7fffa560) at threads.c:645 #39 0x77e100ba in GC_call_with_stack_base () from /gnu/store/2lczkxbdbzh4gk7wh91bzrqrk7h5g1dl-libgc-8.0.4/lib/libgc.so.1 #40 0x77f328b8 in scm_i_with_guile (dynamic_state=, data=, fun
bug#40998: [PATCH 1/3] initrd: Rename the '--root' initrd option to just 'root'.
This is to make it less surprising, given the common convention sets forth by the kernel Linux command-line parameters. * gnu/build/linux-boot.scm (boot-system): Rename the '--root' option to 'root'. Adjust doc. * gnu/installer/parted.scm (installer-root-partition-path): Use 'root' instead of '--root'. * gnu/system.scm (bootable-kernel-arguments): Likewise. (operating-system-boot-parameters): Adjust doc. (operating-system-boot-parameters-file): Likewise. * gnu/system/linux-initrd.scm (base-initrd): Likewise. * doc/guix.texi: Adjust doc. --- doc/guix.texi | 6 +++--- gnu/build/linux-boot.scm| 20 ++-- gnu/installer/parted.scm| 2 +- gnu/system.scm | 8 gnu/system/linux-initrd.scm | 4 ++-- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index a4145af7fd..ba613ea31f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -34909,7 +34909,7 @@ Guix uses this option to yield control to a boot program that runs the service activation programs and then spawns the GNU@tie{}Shepherd, the initialization system. -@item --root=@var{root} +@item root=@var{root} Mount @var{root} as the root file system. @var{root} can be a device name like @code{/dev/sda1}, a file system label, or a file system UUID. When unspecified, the device name from the root file system of the @@ -34967,7 +34967,7 @@ here is how to use it and customize it further. [#:helper-packages '()] [#:qemu-networking? #f] [#:volatile-root? #f] Return a derivation that builds a raw initrd. @var{file-systems} is a list of file systems to be mounted by the initrd, possibly in addition to -the root file system specified on the kernel command line via @option{--root}. +the root file system specified on the kernel command line via @option{root}. @var{linux-modules} is a list of kernel modules to be loaded at boot time. @var{mapped-devices} is a list of device mappings to realize before @var{file-systems} are mounted (@pxref{Mapped Devices}). @@ -34997,7 +34997,7 @@ to it are lost. Return as a file-like object a generic initrd, with kernel modules taken from @var{linux}. @var{file-systems} is a list of file-systems to be mounted by the initrd, possibly in addition to the root file system specified -on the kernel command line via @option{--root}. @var{mapped-devices} is a list of device +on the kernel command line via @option{root}. @var{mapped-devices} is a list of device mappings to realize before @var{file-systems} are mounted. When true, @var{keyboard-layout} is a @code{} record denoting diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm index 0ae316849e..d36601d824 100644 --- a/gnu/build/linux-boot.scm +++ b/gnu/build/linux-boot.scm @@ -499,12 +499,12 @@ (define* (boot-system #:key KEYMAP-FILE is true), then setting up QEMU guest networking if QEMU-GUEST-NETWORKING? is true, calling PRE-MOUNT, mounting the file systems specified in MOUNTS, and finally booting into the new root if any. The initrd -supports kernel command-line options '--load', '--root', and '--repl'. It -also honors a subset of the documented Linux kernel command-line parameters -such as 'fsck.mode', 'resume' and 'rootdelay'. +supports kernel command-line options '--load' and '--repl'. It also honors a +subset of the Linux kernel command-line parameters such as 'fsck.mode', +'resume', 'root' and 'rootdelay'. -Mount the root file system, specified by the '--root' command-line argument, -if any. +Mount the root file system, specified by the 'root' command-line argument, if +any. MOUNTS must be a list of objects. @@ -517,9 +517,9 @@ (define (root-mount-point? fs) (string=? (file-system-mount-point fs) "/")) (define (device-string->file-system-device device-string) -;; The "--root=SPEC" kernel command-line option always provides a -;; string, but the string can represent a device, an nfs-root, a UUID, or a -;; label. So check for all four. +;; The "root=SPEC" kernel command-line option always provides a string, +;; but the string can represent a device, an nfs-root, a UUID, or a label. +;; So check for all four. (cond ((string-prefix? "/" device-string) device-string) ((string-contains device-string ":/") device-string) ; nfs-root ((uuid device-string) => identity) @@ -533,9 +533,9 @@ (define (device-string->file-system-device device-string) (mount-essential-file-systems) (let* ((args(linux-command-line)) (to-load (find-long-option "--load" args)) - ;; If present, ‘--root’ on the kernel command line takes precedence + ;; If present, ‘root’ on the kernel command line takes precedence ;; over the ‘device’ field of the root record. - (root-device (and=> (find-long-option "--root" args) + (root-device (and=> (find-long-option "root" args) device-
bug#40998: [PATCH 2/3] initrd: Honor rootfstype and rootflags command-line parameters.
* gnu/build/linux-boot.scm (boot-system): Honor rootfstype and rootflags arguments. Update doc. Error out in case there is insufficient information with regard to the root file system. Restore the behavior of inferring the root device from the root file system from the operating system in case the root argument is not provided. * doc/guix.texi (Initial RAM Disk): Document the new command-line parameters. --- doc/guix.texi| 10 +++ gnu/build/linux-boot.scm | 59 +--- 2 files changed, 47 insertions(+), 22 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index ba613ea31f..cbfd9f68f2 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -34915,6 +34915,16 @@ name like @code{/dev/sda1}, a file system label, or a file system UUID. When unspecified, the device name from the root file system of the operating system declaration is used. +@item rootfstype=@var{type} +Set the type of the root file system. It overrides the @code{type} +field of the root file system specified via the @code{operating-system} +declaration, if any. + +@item rootflags=@var{options} +Set the mount @emph{options} of the root file system. It overrides the +@code{options} field of the root file system specified via the +@code{operating-system} declaration, if any. + @item fsck.mode=@var{mode} Whether to check the @var{root} file system for errors before mounting it. @var{mode} is one of @code{skip} (never check), @code{force} (always diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm index d36601d824..b1573fe757 100644 --- a/gnu/build/linux-boot.scm +++ b/gnu/build/linux-boot.scm @@ -499,9 +499,9 @@ (define* (boot-system #:key KEYMAP-FILE is true), then setting up QEMU guest networking if QEMU-GUEST-NETWORKING? is true, calling PRE-MOUNT, mounting the file systems specified in MOUNTS, and finally booting into the new root if any. The initrd -supports kernel command-line options '--load' and '--repl'. It also honors a -subset of the Linux kernel command-line parameters such as 'fsck.mode', -'resume', 'root' and 'rootdelay'. +supports the kernel command-line options '--load' and '--repl'. It +also honors a subset of the Linux kernel command-line parameters such as +'fsck.mode', 'resume', 'rootdelay', rootflags and rootfstype. Mount the root file system, specified by the 'root' command-line argument, if any. @@ -533,17 +533,32 @@ (define (device-string->file-system-device device-string) (mount-essential-file-systems) (let* ((args(linux-command-line)) (to-load (find-long-option "--load" args)) - ;; If present, ‘root’ on the kernel command line takes precedence - ;; over the ‘device’ field of the root record. (root-device (and=> (find-long-option "root" args) device-string->file-system-device)) - (root-fs (or (find root-mount-point? mounts) - ;; Fall back to fictitious defaults. - (file-system (device (or root-device "/dev/root")) - (mount-point "/") - (type "ext4" + (rootfstype (find-long-option "rootfstype" args)) + (rootflags (find-long-option "rootflags" args)) + (root-fs*(find root-mount-point? mounts)) (fsck.mode (find-long-option "fsck.mode" args))) +(unless (or root-fs* (and root-device rootfstype)) + (error "no root file system or 'root' and 'rootfstype' parameters")) + +;; If present, ‘root’ on the kernel command line takes precedence over +;; the ‘device’ field of the root record; likewise for +;; the 'rootfstype' and 'rootflags' arguments. +(define root-fs + (if root-fs* + (file-system +(inherit root-fs*) +(device (or root-device (file-system-device root-fs*))) +(type (or rootfstype (file-system-type root-fs*))) +(options (or rootflags (file-system-options root-fs* + (file-system +(device root-device) +(mount-point "/") +(type rootfstype) +(options rootflags + (define (check? fs) (match fsck.mode ("skip" #f) @@ -615,18 +630,18 @@ (define (repair fs) (setenv "EXT2FS_NO_MTAB_OK" "1") -(if root-device -(mount-root-file-system (canonicalize-device-spec root-device) -(file-system-type root-fs) -#:volatile-root? volatile-root? -#:flags (mount-flags->bit-mask - (file-system-flags root-fs)) -#:options (file-system-options root-fs) -#:check? (check? r
bug#40998: [PATCH 3/3] initrd: Print its command-line parameters.
* gnu/build/linux-boot.scm (boot-system): Print command-line parameters to standard output. --- gnu/build/linux-boot.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm index b1573fe757..45be05d705 100644 --- a/gnu/build/linux-boot.scm +++ b/gnu/build/linux-boot.scm @@ -540,6 +540,8 @@ (define (device-string->file-system-device device-string) (root-fs*(find root-mount-point? mounts)) (fsck.mode (find-long-option "fsck.mode" args))) +(format #t "initrd command-line parameters: ~a~%" args) + (unless (or root-fs* (and root-device rootfstype)) (error "no root file system or 'root' and 'rootfstype' parameters")) -- 2.34.0
bug#54011: FreeCAD: Unable to import STEP files
Guillaume Le Vaillant skribis: > When decompressing the zip file and importing the STEP file: > > Traceback (most recent call last): > File "", line 1, in > File > "/gnu/store/cwfgf3xb2vfqckxqv196jz8xpbigxkqj-python-shiboken-2-5.15.2/lib/python3.9/site-packages/shiboken2/files.dir/shibokensupport/__feature__.py", > line 142, in _import > return original_import(name, *args, **kwargs) > : > /gnu/store/pd0pxvnr3qdgcz37p80v6q8p0wk9xyfh-freecad-0.19.3-0.09a05a9/lib/Import.so: > undefined symbol: > _ZN3tbb6detail2r122cancel_group_executionERNS0_2d118task_group_contextE > > I guess now we have to find where > '_ZN3tbb6detail2r122cancel_group_executionERNS0_2d118task_group_contextE' > is coming from. It was coming from the fact that the freecad package had the tbb package as dependency, but it also depends on opencascade-occt which depends on tbb-2020. Fix pushed as 27a91b2f57bd0bf7efab77eaeb4b920f162bf8c8. signature.asc Description: PGP signature
bug#54011: FreeCAD: Unable to import STEP files
Thanks for working on it! On 2/18/22 17:00, Guillaume Le Vaillant wrote: Guillaume Le Vaillant skribis: When decompressing the zip file and importing the STEP file: Traceback (most recent call last): File "", line 1, in File "/gnu/store/cwfgf3xb2vfqckxqv196jz8xpbigxkqj-python-shiboken-2-5.15.2/lib/python3.9/site-packages/shiboken2/files.dir/shibokensupport/__feature__.py", line 142, in _import return original_import(name, *args, **kwargs) : /gnu/store/pd0pxvnr3qdgcz37p80v6q8p0wk9xyfh-freecad-0.19.3-0.09a05a9/lib/Import.so: undefined symbol: _ZN3tbb6detail2r122cancel_group_executionERNS0_2d118task_group_contextE I guess now we have to find where '_ZN3tbb6detail2r122cancel_group_executionERNS0_2d118task_group_contextE' is coming from. It was coming from the fact that the freecad package had the tbb package as dependency, but it also depends on opencascade-occt whic h depends on tbb-2020. Fix pushed as 27a91b2f57bd0bf7efab77eaeb4b920f162bf8c8. -- Jacob Hrbek, In support of ukraine sovereignty #supportUkraine publickey - kreyren@rixotstudio.cz - 1677db82.asc Description: application/pgp-keys signature.asc Description: OpenPGP digital signature
bug#54041: cannot load (gnu services virtualization)
Ludovic Courtès writes: > Fixed in 01821914e272ed682dc83b5163c17a0345dcaf17. Thank you! -- Ricardo
bug#54057: epiphany: error while loading libwebkit2gtk cannot read file data
Hi Guix, Epiphany (a.k.a. GNOME Web) is having trouble loading the webkit shared library: ``` jackhill@leyden ~$ guix describe Generation 61Feb 18 2022 11:47:21(current) guix 27a91b2 repository URL: https://git.savannah.gnu.org/git/guix.git branch: master commit: 27a91b2f57bd0bf7efab77eaeb4b920f162bf8c8 jackhill@leyden ~$ guix shell epiphany -- epiphany /gnu/store/ns3aks8xslgmgf98qb107gwzfxgj45k5-profile/bin/epiphany: error while loading shared libraries: /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37: cannot read file data guix shell: error: epiphany: command not found ``` Best, Jack
bug#54057: epiphany: error while loading libwebkit2gtk cannot read file data
Hi Jack, what is the output of `ls -l /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2- 2.34.6/lib/libwebkit2gtk-4.0.so.37`? If that's an empty file, you'll have to repair your store. Cheers
bug#54057: epiphany: error while loading libwebkit2gtk cannot read file data
On Fri, 18 Feb 2022, Liliana Marie Prikler wrote: Hi Jack, what is the output of `ls -l /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2- 2.34.6/lib/libwebkit2gtk-4.0.so.37`? If that's an empty file, you'll have to repair your store. Cheers Thanks for taking a look. It doesnt' look empty to me: ``` jackhill@leyden ~$ ls -l /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37 lrwxrwxrwx 1 root root 28 Dec 31 1969 /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37 -> libwebkit2gtk-4.0.so.37.55.9 jackhill@leyden ~$ ls -l /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9 -r-xr-xr-x 2 root root 13631488 Dec 31 1969 /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9 jackhill@leyden ~$ file /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9 /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, missing section headers at 81305720 jackhill@leyden ~$ ldd /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9 not a dynamic executable ```
bug#54057: epiphany: error while loading libwebkit2gtk cannot read file data
Am Freitag, dem 18.02.2022 um 14:42 -0500 schrieb Jack Hill: > On Fri, 18 Feb 2022, Liliana Marie Prikler wrote: > > > Hi Jack, > > > > what is the output of `ls -l > > /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2- > > 2.34.6/lib/libwebkit2gtk-4.0.so.37`? If that's an empty file, you'll > > have to repair your store. > > > > Cheers > > Thanks for taking a look. It doesnt' look empty to me: > > ``` > jackhill@leyden ~$ ls -l /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb- > webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37 > lrwxrwxrwx 1 root root 28 Dec 31 1969 > /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2- > 2.34.6/lib/libwebkit2gtk-4.0.so.37 -> libwebkit2gtk-4.0.so.37.55.9 > jackhill@leyden ~$ ls -l /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb- > webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9 > -r-xr-xr-x 2 root root 13631488 Dec 31 1969 > /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2- > 2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9 > jackhill@leyden ~$ file /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb- > webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9 > /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb-webkitgtk-with-libsoup2- > 2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9: ELF 64-bit LSB shared object, > x86-64, version 1 (GNU/Linux), dynamically linked, missing section > headers at 81305720 > jackhill@leyden ~$ ldd /gnu/store/f965xf6iwll8cj2fb45bbqkj32n8dndb- > webkitgtk-with-libsoup2-2.34.6/lib/libwebkit2gtk-4.0.so.37.55.9 > not a dynamic executable > ``` Hmm, webkit changed some 15 hours ago [1]. CCing lfam to have a look at this too. Jack, does the parent commit [2] still work for you? [1] http://git.savannah.gnu.org/cgit/guix.git/commit/?id=f47125d2868315acc40379c8e859fb60d6942dad [2] http://git.savannah.gnu.org/cgit/guix.git/commit/?id=1d1a4efd8cdac3757792cfbae92440edc5c3a802
bug#54057: epiphany: error while loading libwebkit2gtk cannot read file data
On Fri, 18 Feb 2022, Liliana Marie Prikler wrote: Hmm, webkit changed some 15 hours ago [1]. CCing lfam to have a look at this too. Jack, does the parent commit [2] still work for you? [1] http://git.savannah.gnu.org/cgit/guix.git/commit/?id=f47125d2868315acc40379c8e859fb60d6942dad [2] http://git.savannah.gnu.org/cgit/guix.git/commit/?id=1d1a4efd8cdac3757792cfbae92440edc5c3a802 Yep, `$ guix time-machine --commit=1d1a4efd8cdac3757792cfbae92440edc5c3a802 -- shell epiphany -- epiphany` seems to open a browser window and can browse at least one webpage. I do see messages like, ``` /run/current-system/profile/lib/gio/modules/libgioremote-volume-monitor.so: file too short Failed to load module: /run/current-system/profile/lib/gio/modules/libgioremote-volume-monitor.so /run/current-system/profile/lib/gio/modules/libgvfsdbus.so: file too short Failed to load module: /run/current-system/profile/lib/gio/modules/libgvfsdbus.so /run/current-system/profile/lib/gio/modules/libgioremote-volume-monitor.so: file too short Failed to load module: /run/current-system/profile/lib/gio/modules/libgioremote-volume-monitor.so /run/current-system/profile/lib/gio/modules/libgvfsdbus.so: file too short Failed to load module: /run/current-system/profile/lib/gio/modules/libgvfsdbus.so ``` printed to the consol though. My system has been reconfigured with the same commit that I originally reported. Best, Jack
bug#54057: epiphany: error while loading libwebkit2gtk cannot read file data
Tags: notabug This problem went away after I did `guix gc --verify=repair,contents`, so I'm closing this issue as notabug. At least it's not a bug in webkitgtk. Thanks for taking a look and sorry for the noise. Best, Jack
bug#47204: DrRacket fonts issue
On Fri, 26 Mar 2021, Philip McGrath wrote: Hi Jack, I haven't been able to reproduce this yet, but I'm on a foreign distro, and I don't have any fonts explicitly installed via Guix. (For that matter, I don't have a monitor connected, just now: I've done this with X forwarding.) I do have a few debugging ideas you could try and see if they turn up anything interesting: Hi, I tested again today with Guix commit 27a91b2f57bd0bf7efab77eaeb4b920f162bf8c8 and I don't observe a font issue anymore, so I'm closing this issue. Thanks for all the work you do to improve Racket in Guix, Jack
bug#40998: [PATCH v2 1/4] system: Add a version field to the record.
This version field exposes the (already present) version information of a boot parameters file. * gnu/system.scm (%boot-parameters-version): New variable. ()[version]: New field. (read-boot-parameters): Use it. (operating-system-boot-parameters-file): Likewise. * tests/boot-parameters.scm (test-read-boot-parameters): Use %boot-parameters-version as the default version value in the template. --- gnu/system.scm| 18 ++ tests/boot-parameters.scm | 2 +- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index cc925de16f..c29a44111b 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2020 Danny Milosavljevic ;;; Copyright © 2020, 2021 Brice Waegeneire ;;; Copyright © 2020 Florian Pelz -;;; Copyright © 2020 Maxim Cournoyer +;;; Copyright © 2020, 2022 Maxim Cournoyer ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen ;;; Copyright © 2020 Efraim Flashner ;;; Copyright © 2021 Maxime Devos @@ -161,6 +161,8 @@ (define-module (gnu system) boot-parameters-kernel-arguments boot-parameters-initrd boot-parameters-multiboot-modules +boot-parameters-version +%boot-parameters-version read-boot-parameters read-boot-parameters-file boot-parameters->menu-entry @@ -295,6 +297,8 @@ (define (operating-system-kernel-arguments os root-device) ;;; Boot parameters ;;; +(define %boot-parameters-version 0) + (define-record-type* boot-parameters make-boot-parameters boot-parameters? (labelboot-parameters-label) @@ -322,7 +326,9 @@ (define-record-type* (kernel boot-parameters-kernel) (kernel-arguments boot-parameters-kernel-arguments) (initrd boot-parameters-initrd) - (multiboot-modules boot-parameters-multiboot-modules)) + (multiboot-modules boot-parameters-multiboot-modules) + (version boot-parameters-version ;positive integer +(default %boot-parameters-version))) (define (ensure-not-/dev device) "If DEVICE starts with a slash, return #f. This is meant to filter out @@ -359,12 +365,16 @@ (define uuid-sexp->uuid (warning (G_ "unrecognized uuid ~a at '~a'~%") x (port-filename port)) #f))) + (define (version? n) +(and (exact-integer? n) (not (negative? n + (match (read port) -(('boot-parameters ('version 0) +(('boot-parameters ('version (? version? version)) ('label label) ('root-device root) ('kernel kernel) rest ...) (boot-parameters + (version version) (label label) (root-device (device-sexp->device root)) @@ -1500,7 +1510,7 @@ (define* (operating-system-boot-parameters-file os system-kernel-arguments?))) (scheme-file "parameters" #~(boot-parameters - (version 0) + (version #$(boot-parameters-version params)) (label #$(boot-parameters-label params)) (root-device #$(device->sexp diff --git a/tests/boot-parameters.scm b/tests/boot-parameters.scm index b2799d0596..d4b680df2e 100644 --- a/tests/boot-parameters.scm +++ b/tests/boot-parameters.scm @@ -101,7 +101,7 @@ (define (quote-uuid uuid) ;; Call read-boot-parameters with the desired string as input. (define* (test-read-boot-parameters #:key - (version 0) + (version %boot-parameters-version) (bootloader-name 'grub) (bootloader-menu-entries '()) (label %default-label) -- 2.34.0
bug#40998: [PATCH v2 4/4] initrd: Print its command-line parameters.
* gnu/build/linux-boot.scm (boot-system): Print command-line parameters to standard output. --- gnu/build/linux-boot.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm index 2f8b114806..30442ec8f8 100644 --- a/gnu/build/linux-boot.scm +++ b/gnu/build/linux-boot.scm @@ -542,6 +542,8 @@ (define (device-string->file-system-device device-string) (root-fs*(find root-mount-point? mounts)) (fsck.mode (find-long-option "fsck.mode" args))) +(format #t "initrd command-line parameters: ~a~%" args) + (unless (or root-fs* (and root-device rootfstype)) (error "no root file system or 'root' and 'rootfstype' parameters")) -- 2.34.0
bug#40998: [PATCH v2 3/4] initrd: Honor rootfstype and rootflags command-line parameters.
* gnu/build/linux-boot.scm (boot-system): Honor rootfstype and rootflags arguments. Update doc. Error out in case there is insufficient information with regard to the root file system. Restore the behavior of inferring the root device from the root file system from the operating system in case the root argument is not provided. * doc/guix.texi (Initial RAM Disk): Document the new command-line parameters. --- doc/guix.texi| 10 gnu/build/linux-boot.scm | 55 ++-- 2 files changed, 46 insertions(+), 19 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index d3f9216563..ec1e49630f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -34915,6 +34915,16 @@ name like @code{/dev/sda1}, a file system label, or a file system UUID. When unspecified, the device name from the root file system of the operating system declaration is used. +@item rootfstype=@var{type} +Set the type of the root file system. It overrides the @code{type} +field of the root file system specified via the @code{operating-system} +declaration, if any. + +@item rootflags=@var{options} +Set the mount @emph{options} of the root file system. It overrides the +@code{options} field of the root file system specified via the +@code{operating-system} declaration, if any. + @item fsck.mode=@var{mode} Whether to check the @var{root} file system for errors before mounting it. @var{mode} is one of @code{skip} (never check), @code{force} (always diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm index 179fb12a2b..2f8b114806 100644 --- a/gnu/build/linux-boot.scm +++ b/gnu/build/linux-boot.scm @@ -499,9 +499,9 @@ (define* (boot-system #:key KEYMAP-FILE is true), then setting up QEMU guest networking if QEMU-GUEST-NETWORKING? is true, calling PRE-MOUNT, mounting the file systems specified in MOUNTS, and finally booting into the new root if any. The initrd -supports kernel command-line parameters 'gnu.load' and 'gnu.repl'. It also +supports the kernel command-line options 'gnu.load' and 'gnu.repl'. It also honors a subset of the Linux kernel command-line parameters such as -'fsck.mode', 'resume', 'root' and 'rootdelay'. +'fsck.mode', 'resume', 'rootdelay', rootflags and rootfstype. Mount the root file system, specified by the 'root' command-line argument, if any. @@ -537,13 +537,30 @@ (define (device-string->file-system-device device-string) ;; over the ‘device’ field of the root record. (root-device (and=> (find-long-option "root" args) device-string->file-system-device)) - (root-fs (or (find root-mount-point? mounts) - ;; Fall back to fictitious defaults. - (file-system (device (or root-device "/dev/root")) - (mount-point "/") - (type "ext4" + (rootfstype (find-long-option "rootfstype" args)) + (rootflags (find-long-option "rootflags" args)) + (root-fs*(find root-mount-point? mounts)) (fsck.mode (find-long-option "fsck.mode" args))) +(unless (or root-fs* (and root-device rootfstype)) + (error "no root file system or 'root' and 'rootfstype' parameters")) + +;; If present, ‘root’ on the kernel command line takes precedence over +;; the ‘device’ field of the root record; likewise for +;; the 'rootfstype' and 'rootflags' arguments. +(define root-fs + (if root-fs* + (file-system +(inherit root-fs*) +(device (or root-device (file-system-device root-fs*))) +(type (or rootfstype (file-system-type root-fs*))) +(options (or rootflags (file-system-options root-fs* + (file-system +(device root-device) +(mount-point "/") +(type rootfstype) +(options rootflags + (define (check? fs) (match fsck.mode ("skip" #f) @@ -615,18 +632,18 @@ (define (repair fs) (setenv "EXT2FS_NO_MTAB_OK" "1") -(if root-device -(mount-root-file-system (canonicalize-device-spec root-device) -(file-system-type root-fs) -#:volatile-root? volatile-root? -#:flags (mount-flags->bit-mask - (file-system-flags root-fs)) -#:options (file-system-options root-fs) -#:check? (check? root-fs) -#:skip-check-if-clean? -(skip-check-if-clean? root-fs) -#:repair (repair root-fs)) -(mount "none" "/root" "tmpfs")) +;; Mount the root file
bug#40998: [PATCH v2 2/4] initrd: Use non-hyphenated kernel command-line parameter names.
This is to make it less surprising, given the common convention sets forth by the kernel Linux command-line parameters. * gnu/build/linux-boot.scm (boot-system): Rename '--load', '--repl', '--root' and '--system' to 'gnu.load', 'gnu.repl', 'root' and 'gnu.system', respectively. Adjust doc. (find-long-option): Adjust doc. * gnu/installer/parted.scm (installer-root-partition-path): Adjust accordingly. * gnu/system.scm (bootable-kernel-arguments): Add a VERSION argument and update doc. Use VERSION to conditionally return old style vs new style initrd arguments. (%boot-parameters-version): Increment to 1. (operating-system-boot-parameters): Adjust doc. (operating-system-boot-parameters-file): Likewise. * gnu/system/linux-initrd.scm (raw-initrd, base-initrd): Likewise. * doc/guix.texi: Adjust doc. * gnu/build/activation.scm (boot-time-system): Adjust accordingly. * gnu/build/hurd-boot.scm (boot-hurd-system): Likewise. * gnu/packages/commencement.scm (%final-inputs-riscv64): Adjust comment. --- doc/guix.texi | 12 +- gnu/build/activation.scm | 4 ++-- gnu/build/hurd-boot.scm | 12 +- gnu/build/linux-boot.scm | 30 +++ gnu/installer/parted.scm | 2 +- gnu/machine/ssh.scm | 5 ++-- gnu/packages/commencement.scm | 4 ++-- gnu/system.scm| 45 ++- gnu/system/linux-initrd.scm | 4 ++-- 9 files changed, 66 insertions(+), 52 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index a4145af7fd..d3f9216563 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -34901,7 +34901,7 @@ honors several options passed on the Linux kernel command line @code{-append} option of QEMU), notably: @table @code -@item --load=@var{boot} +@item gnu.load=@var{boot} Tell the initial RAM disk to load @var{boot}, a file containing a Scheme program, once it has mounted the root file system. @@ -34909,7 +34909,7 @@ Guix uses this option to yield control to a boot program that runs the service activation programs and then spawns the GNU@tie{}Shepherd, the initialization system. -@item --root=@var{root} +@item root=@var{root} Mount @var{root} as the root file system. @var{root} can be a device name like @code{/dev/sda1}, a file system label, or a file system UUID. When unspecified, the device name from the root file system of the @@ -34934,7 +34934,7 @@ or @code{preen} to repair problems considered safe to repair automatically. @code{preen} is the default if this option is not present or if @var{level} is not one of the above. -@item --system=@var{system} +@item gnu.system=@var{system} Have @file{/run/booted-system} and @file{/run/current-system} point to @var{system}. @@ -34946,7 +34946,7 @@ Instruct the initial RAM disk as well as the @command{modprobe} command must be a comma-separated list of module names---e.g., @code{usbkbd,9pnet}. -@item --repl +@item gnu.repl Start a read-eval-print loop (REPL) from the initial RAM disk before it tries to load kernel modules and to mount the root file system. Our marketing team calls it @dfn{boot-to-Guile}. The Schemer in you will @@ -34967,7 +34967,7 @@ here is how to use it and customize it further. [#:helper-packages '()] [#:qemu-networking? #f] [#:volatile-root? #f] Return a derivation that builds a raw initrd. @var{file-systems} is a list of file systems to be mounted by the initrd, possibly in addition to -the root file system specified on the kernel command line via @option{--root}. +the root file system specified on the kernel command line via @option{root}. @var{linux-modules} is a list of kernel modules to be loaded at boot time. @var{mapped-devices} is a list of device mappings to realize before @var{file-systems} are mounted (@pxref{Mapped Devices}). @@ -34997,7 +34997,7 @@ to it are lost. Return as a file-like object a generic initrd, with kernel modules taken from @var{linux}. @var{file-systems} is a list of file-systems to be mounted by the initrd, possibly in addition to the root file system specified -on the kernel command line via @option{--root}. @var{mapped-devices} is a list of device +on the kernel command line via @option{root}. @var{mapped-devices} is a list of device mappings to realize before @var{file-systems} are mounted. When true, @var{keyboard-layout} is a @code{} record denoting diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm index 9f6126023c..10c9045740 100644 --- a/gnu/build/activation.scm +++ b/gnu/build/activation.scm @@ -389,8 +389,8 @@ (define %current-system "/run/current-system") (define (boot-time-system) - "Return the '--system' argument passed on the kernel command line." - (find-long-option "--system" (if (string-contains %host-type "linux-gnu") + "Return the 'gnu.system' argument passed on the kernel command line." + (find-long-option "gnu.system" (if (string-contains %host-type "linux-gnu") (linux
bug#54037: LD_LIBRARY_PATH=$LIBRARY_PATH caused wrong libraries to be loaded
My guess is I wanted to force the foreign distro to load a guix installed library (when compiling something on the foreign distro..? can't remember). Running `$ LD_LIBRARY_PATH= guix pull` works as normal. So this is, as it most often is, an user error. Sorry for the noise.