"activate.scm.drv" Empty and Live

  • Done
  • quality assurance status badge
Details
2 participants
  • Maxime Devos
  • Zain Jabbar
Owner
unassigned
Submitted by
Zain Jabbar
Severity
normal
Z
Z
Zain Jabbar wrote on 16 Apr 2022 03:20
(address . bug-guix@gnu.org)
CAH+UbWRnFg0nQGmMA4HqJQ9+uvdCF6hkYgdm8TT6r+eZRHVqtg@mail.gmail.com
Aloha Guix,

A number of errors have appeared on my system. Notably I have the following
issue with "sudo guix system reconfigure $CONFIG_FILE":
"guix system: error: error parsing derivation
`/gnu/store/8jqz1m1src0h4md70q09rlxppdy6d1jx-activate-service.scm.drv':
expected string `Derive(['"

I believe this is due to key files on my system (e.g.
"/gnu/store/...-activate.scm.drv" and
"/gnu/store/...-activate-service.scm.drv") have become both empty and live
on my system.

Here is the result of trying to repair using "guix gc"
"zjabbar@tao ~$ sudo guix gc --verify=contents,repair
reading the store...
checking path existence...
checking hashes...
path `/gnu/store/035mddyijs1xrp7z36fn1yvqd6asx4vq-provenance-builder' was
modified! expected h
ash `468eebad16e7842b982f046d0e846c5bc2672af01879cc43409f9534820eb815', got
`77ac62e2629d8e45f
624589c0c8bf99e24b3a722349bf1e79bc186008534e246'
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'...
100.0%
error: cannot repair path
`/gnu/store/035mddyijs1xrp7z36fn1yvqd6asx4vq-provenance-builder'
path `/gnu/store/0c9hqf02jksb06r3ywdz0alq1154kkq9-grub.cfg-builder' was
modified! expected hash
`04ed96b94726f1ffc7ce3fae556d5c057de1e0348da488a31694190787783b6a', got
`77ac62e2629d8e45f624589c0c8bf99e24b3a722349bf1e79bc186008534e246'
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'...
100.0%
error: cannot repair path
`/gnu/store/0c9hqf02jksb06r3ywdz0alq1154kkq9-grub.cfg-builder'
path
`/gnu/store/17q0ymk80965sm1vww4anwz96q57q229-shepherd-user-homes.scm.drv'
was modified! expected hash
`c69bf28c4c631368cbe1ad4d5d3dcc424f5a0d4a658cb964e796b2b92a6306fd', got
`77ac62e2629d8e45f624589c0c8bf99e24b3a722349bf1e79bc186008534e246'
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'...
100.0%
error: cannot repair path
`/gnu/store/17q0ymk80965sm1vww4anwz96q57q229-shepherd-user-homes.scm.drv'
path
`/gnu/store/1byrjg1w8mqmgla4257xc25lyh042bq2-xdg-desktop-database-builder'
was modified! expected hash
`77ed327cc6131e0a0cc6e207e679b09edc826a26a2bc4bf5c7f0f6e3f7bc6517', got
`77ac62e2629d8e45f624589c0c8bf99e24b3a722349bf1e79bc186008534e246'
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'...
100.0%
error: cannot repair path
`/gnu/store/1byrjg1w8mqmgla4257xc25lyh042bq2-xdg-desktop-database-builder'
path `/gnu/store/1mcdi0zvcmb184dg6459cpxg4hr1pz4h-glib-schemas.drv' was
modified! expected hash
`b9504e60e0576992ee0cb323ec15a71a0b6aeedcb47f22be5a16040063da0757', got
`77ac62e2629d8e45f624589c0c8bf99e24b3a722349bf1e79bc186008534e246'
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'...
100.0%
error: cannot repair path
`/gnu/store/1mcdi0zvcmb184dg6459cpxg4hr1pz4h-glib-schemas.drv'
path `/gnu/store/1wdm4khqlrx2yxb646jp9s7ia3f9p9w9-configuration.scm' was
modified! expected hash
`851294df3f63927f9da53b318e7cec9dedf0d7e149a57be38707ae3c2a819e80', got
`77ac62e2629d8e45f624589c0c8bf99e24b3a722349bf1e79bc186008534e246'
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'...
100.0%
error: cannot repair path
`/gnu/store/1wdm4khqlrx2yxb646jp9s7ia3f9p9w9-configuration.scm'"

It looks like a lot of files have the same hash and are empty. Is the only
way to fix this to reinstall Guix? Is it known why this could happen in the
first place?

--
Thank you,
Zain Jabbar
Attachment: file
M
M
Maxime Devos wrote on 16 Apr 2022 15:52
58290879a9a4bab95c58fd04ac84d77a9e2ad6ca.camel@telenet.be
Zain Jabbar schreef op vr 15-04-2022 om 15:20 [-1000]:
Toggle quote (2 lines)
> Is it known why this could happen in the first place?

I guess a power outage or the like. Currently the guix daemon never
calls 'sync' or the like (except possibly for the SQlite db), though
maybe it should (at cost of some performance).

Toggle quote (2 lines)
> Is the only way to fix this to reinstall Guix?

That's a way to do it, but there are less heavy-handed ways. E.g.,
maybe "guix gc --verify=repair" could be extended to delete objects
that are broken (wrong hash) and aren't referenced? (long-term)

For the short term, maybe do "guix gc", possibly some of the broken
files are unused.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYlrKNxccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7qLoAPsEjvgsI8CM6uDTK2WBTmApNuuo
NKUo92L9kF8hiWSe1wEAyiX4qrslNLBX82vw3gmsCRkIp70sqHl7KciftylClwo=
=d1d7
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 16 Apr 2022 16:47
(name . Zain Jabbar)(address . zaijab2000@gmail.com)(address . 54969-done@debbugs.gnu.org)
2196e032bd3d5e722d5e5e9269de0809da57b890.camel@telenet.be
Zain Jabbar schreef op za 16-04-2022 om 04:18 [-1000]:
Toggle quote (5 lines)
> Aloha Maxime Devos,
>
> Your suggestion worked! I did the following but I'm not sure how much
> was actually needed: [...]

Nice, closing.

FWIW, you can close reports yourself by sending to
NNNNN-done@debbugs.gnu.org instead of NNNNN@debbugs.gnu.org.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYlrXDRccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7kX5AP4i6rOCxwf7co3NqG64WAYOkSWJ
VaOmZdEptX8S5FDAcAEA+3+P70msPbJwc/ncetaUWlGcGbjLzyAnpxgeitITbQ4=
=Fga0
-----END PGP SIGNATURE-----


Closed
Z
Z
Zain Jabbar wrote on 16 Apr 2022 16:18
(name . Maxime Devos)(address . maximedevos@telenet.be)(address . 54969@debbugs.gnu.org)
CAH+UbWTvOQQEy_1KY-hAJrWPDBOPVa2EOv9Vf6fHgGVz7s=u=w@mail.gmail.com
Aloha Maxime Devos,

Your suggestion worked! I did the following but I'm not sure how much was
actually needed:

1. Use guix pull and guix system to switch to an older generation (I did
like -100)
2. Use guix gc
3. Run guix system again which remakes the files (like activate.scm as per
title)

This time guix system actually runs to completion. Mahalo nui i? ?oe!

On Sat, Apr 16, 2022, 3:53 AM Maxime Devos <maximedevos@telenet.be> wrote:

Toggle quote (19 lines)
> Zain Jabbar schreef op vr 15-04-2022 om 15:20 [-1000]:
> > Is it known why this could happen in the first place?
>
> I guess a power outage or the like. Currently the guix daemon never
> calls 'sync' or the like (except possibly for the SQlite db), though
> maybe it should (at cost of some performance).
>
> > Is the only way to fix this to reinstall Guix?
>
> That's a way to do it, but there are less heavy-handed ways. E.g.,
> maybe "guix gc --verify=repair" could be extended to delete objects
> that are broken (wrong hash) and aren't referenced? (long-term)
>
> For the short term, maybe do "guix gc", possibly some of the broken
> files are unused.
>
> Greetings,
> Maxime.
>
Attachment: file
?