emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debbugs-tracker] bug#34402: closed (Inferior channel (I believe 'inferi


From: GNU bug Tracking System
Subject: [debbugs-tracker] bug#34402: closed (Inferior channel (I believe 'inferior-for-channels' function specifically) sometimes fails)
Date: Tue, 12 Feb 2019 22:36:02 +0000

Your message dated Tue, 12 Feb 2019 23:35:44 +0100
with message-id <address@hidden>
and subject line Re: bug#34402: Inferior channel (I believe 
'inferior-for-channels' function specifically) sometimes fails
has caused the debbugs.gnu.org bug report #34402,
regarding Inferior channel (I believe 'inferior-for-channels' function 
specifically) sometimes fails
to be marked as done.

(If you believe you have received this mail in error, please contact
address@hidden)


-- 
34402: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=34402
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: Inferior channel (I believe 'inferior-for-channels' function specifically) sometimes fails Date: Sat, 09 Feb 2019 11:11:39 +0000 (GMT)
Often I'll get this output when building a manifest* with an inferior:

```
address@hidden /tmp$ guix package -n -m example-inferior.scm 
Updating channel 'guix' from Git repository at 
'https://git.savannah.gnu.org/git/guix.git'...
guix package: error: failed to load 'example-inferior.scm':
```

I believe this is the 'inferior-for-channels' function that fails.

After investigating a while back, it seems removing the relevant checkout in 
~/.cache/guix/checkouts temporarily fixes it, but the issue often comes back.




* The manifest used is the example from the Guix manual in the section on 
Inferiors, with the guix commit in the manifest replaced with my guix revision:

```
(use-modules (guix inferior) (guix channels)
             (srfi srfi-1))   ;for 'first'

(define channels
  ;; This is the old revision from which we want to
  ;; extract guile-json.
  (list (channel
         (name 'guix)
         (url "https://git.savannah.gnu.org/git/guix.git";)
         (commit
          "722ac64cd7dc1f09fb77e2ae780427fa13c03110"))))

(define inferior
  ;; An inferior representing the above revision.
  (inferior-for-channels channels))

;; Now create a manifest with the current "guile" package
;; and the old "guile-json" package.
(packages->manifest
 (list (first (lookup-inferior-packages inferior "guile-json"))
       (specification->package "guile")))
```


--- End Message ---
--- Begin Message --- Subject: Re: bug#34402: Inferior channel (I believe 'inferior-for-channels' function specifically) sometimes fails Date: Tue, 12 Feb 2019 23:35:44 +0100 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Hi,

<address@hidden> skribis:

> It looks like line 16205 (at the bottom pretty much) shows that a permissions 
> issue is the culprit:
>
> openat(AT_FDCWD, 
> "/home/itsme/.cache/guix/checkouts/pjmkglp4t7znuugeurpurzikxq3tnlaywmisyr27shj7apsnalwq/.git/FETCH_HEAD",
>  O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0666) = -1 EACCES (Permission denied)
>
> That file, along with  is owned by root and is in the root group, and 
> permissions are set to `-rw-r--r--`.
>
> It looks like this is caused by me running a guix command as root, with `sudo 
> -E` (the -E is probably why it's modifying ownership of files in my user's 
> guix cache directory), that checks out the git commit (I assume since it's 
> only changing the ownership on those two files, the rest in that directory 
> are owned by my user).
>
> Changing the owner of that file back to my user has made the error go away 
> when running `guix package -n -m example-manifest.scm` - and if i then run 
> that command again with 'sudo -E', the ownership of those files is changed 
> back to root.

Great that you found out!

Commits 70a50305c495ca96fdec3d31e7e7972cfc54f8ee and
1d8b10d00f0c242bc5ce9540737af3d3f24a05c0 fix error reporting in this
case: you now get an error message mentioning Git and the invalid
permissions on a file in ~/.cache/guix/checkouts.

Thanks,
Ludo'.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]