Hello, recently I found that "guix system" makes a "broken" system for
me. When I boot a freshly created system, I get something like this:
In procedure <...> at ./gnu/build/file-systems.scm:282:4 (device)
In procedure fport_seek: Invalid argument
and I'm thrown at the Guile promt.
The same problem (well, I think it's the same) was also reported by
roptat on #guix:
https://gnunet.org/bot/log/guix/2017-01-28#T1277485
After bisecting the guix git checkout, I found that commit b1a505baf6¹
was the first one where my system starts to fail. And indeed when I
reverted this commit on the latest master, guix built a working system.
Moreover, the following simple diff (it's a partial revert of that
commit) "fixes" guix for me:
diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm
index 6e5c6aa..f05e035 100644
--- a/gnu/build/file-systems.scm
+++ b/gnu/build/file-systems.scm
@@ -294,15 +294,11 @@ partition field reader that returned a value."
(define %partition-label-readers
(list (partition-field-reader read-ext2-superblock
- ext2-superblock-volume-name)
- (partition-field-reader read-btrfs-superblock
- btrfs-superblock-volume-name)))
+ ext2-superblock-volume-name)))
(define %partition-uuid-readers
(list (partition-field-reader read-ext2-superblock
- ext2-superblock-uuid)
- (partition-field-reader read-btrfs-superblock
- btrfs-superblock-uuid)))
+ ext2-superblock-uuid)))
(define read-partition-label
(cut read-partition-field <> %partition-label-readers))
I don't have btrfs anywhere (only ext4). During bisecting experiments I
used the attached system config (but the config shouldn't matter I think
as I tried various variants, and all gave me the same result).
Any idea how to dig further? Perhaps there is something I can do in the
Guile prompt.
¹
http://git.savannah.gnu.org/cgit/guix.git/commit/?id=b1a505baf61cc771197eb44af9173f31d2bace46
(use-modules (gnu))
(operating-system
(host-name "leviafan")
(timezone "Europe/Moscow")
(locale "en_US.utf8")
(bootloader (grub-configuration (device "/dev/sda")))
(initrd (lambda (fs . args)
(apply base-initrd fs
#:extra-modules '("sata_nv") ; for my HDD
args)))
(file-systems (cons (file-system
(device "guix")
(title 'label)
(mount-point "/")
(type "ext4"))
%base-file-systems))
(users (cons (user-account
(name "al")
(group "users")
(supplementary-groups '("wheel" "audio" "video"))
(home-directory "/home/al"))
%base-user-accounts))
(packages %base-packages)
(services (cons* (console-keymap-service "dvorak")
%base-services)))