GNU bug report logs - #76141
guix locate --clear tries to write to readonly database

Previous Next

Package: guix;

Reported by: yelninei <at> tutamail.com

Date: Sat, 8 Feb 2025 08:24:02 UTC

Severity: normal

To reply to this bug, email your comments to 76141 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#76141; Package guix. (Sat, 08 Feb 2025 08:24:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to yelninei <at> tutamail.com:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sat, 08 Feb 2025 08:24:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: yelninei <at> tutamail.com
To: bug-guix <at> gnu.org
Subject: guix locate --clear tries to write to readonly database
Date: Sat, 8 Feb 2025 09:19:32 +0100 (CET)
When a system wide database exists (at /var/cache/guix/locate/db.sqlite) 'guix locate --clear' invoked as an unprivileged user tries to write to it and fail.
Steps to reproduce:
- sudo mkdir -p /var/cache/guix/locate
- sudo touch /var/cache/guix/locate/db.sqlite
- guix locate --clear
Observe the exception:
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Throw to key `sqlite-error' with args `(sqlite-exec 8 "attempt to write a readonly database")'.

I think the issue is that the 'suitable-database' procedure does not get passed the CREATE? 
parameter (indicating that we want a writable db)  when '--clear'  is given.

I discovered this because this caused the guix-locate.sh test to fail in an normal checkout. 
The db in /var/cache/guix/locate/db.sqlite is created and updated via the package-database-service-type.

Thanks.




This bug report was last modified 55 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.