all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Pierre Neidhardt <mail@ambrevar.xyz>
To: Guillaume Le Vaillant <glv@posteo.net>
Cc: 45017@debbugs.gnu.org
Subject: bug#45017: asdf-build-system packages have priority over user ones
Date: Sat, 05 Dec 2020 10:17:41 +0100	[thread overview]
Message-ID: <874kl0sjbe.fsf@ambrevar.xyz> (raw)
In-Reply-To: <87ft4n2cax.fsf@yamatai>

[-- Attachment #1: Type: text/plain, Size: 2236 bytes --]

Tested!

I've installed sbcl to my "common-lisp" profile along quri.
I've also cloned quri to ~/common-lisp.

Then:

--8<---------------cut here---------------start------------->8---
$ sbcl
* (asdf:locate-system :quri)
T
NIL
#P"/gnu/store/5gj1inwiqpn2fm9w384zd0grpyadx96m-sbcl-quri-0.1.0-2.b53231c/share/common-lisp/sbcl/quri/quri.asd"
NIL
NIL
NIL

;; Indeed:
* (asdf:user-source-registry-directory)
#P"/gnu/store/75qppl3a062b138fkrn324qq8f912zqh-profile/etc/common-lisp/source-registry.conf.d/"
--8<---------------cut here---------------end--------------->8---

It does not work because the sbcl package definition sets the
XDG_CONFIG_DIRS native search path which is picked by
user-source-registry-directory, which has higher priority than
default-user-source-registry.

I think the flaw is ASDF's this time:

--8<---------------cut here---------------start------------->8---
  (defun user-source-registry-directory (&key (direction :input))
    (xdg-config-pathname *source-registry-directory* direction))

;...

  (defun xdg-config-pathnames (&rest more)
    "Return a list of pathnames for application configuration.
MORE may contain specifications for a subpath relative to these directories: a
subpathname specification and keyword arguments as per RESOLVE-LOCATION \(see
also \"Configuration DSL\"\) in the ASDF manual."
    (filter-pathname-set
     `(,(xdg-config-home more)
       ,@(xdg-config-dirs more))))
--8<---------------cut here---------------end--------------->8---

So the user registry looks into XDG_CONFIG_DIRS, while really it should
just look at XDG_CONFIG_HOME.

So this patch should do (untested):

--8<---------------cut here---------------start------------->8---
- (defun user-source-registry-directory (&key (direction :input))
-   (xdg-config-pathname *source-registry-directory* direction))
+ (defun user-source-registry-directory (&key (direction :input))
+   (find-preferred-file (list (xdg-config-home *source-registry-directory*)) :direction direction))
--8<---------------cut here---------------end--------------->8---

If you confirm, then we should also report upstream I think.

Cheers!

-- 
Pierre Neidhardt
https://ambrevar.xyz/

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 511 bytes --]

  parent reply	other threads:[~2020-12-05  9:18 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-03  9:42 bug#45017: asdf-build-system packages have priority over user ones Pierre Neidhardt
2020-12-03 12:04 ` Guillaume Le Vaillant
2020-12-03 12:40   ` Pierre Neidhardt
2020-12-03 14:29     ` Guillaume Le Vaillant
2020-12-04  8:51       ` Pierre Neidhardt
2020-12-04  9:12         ` Guillaume Le Vaillant
2020-12-04 12:46           ` Pierre Neidhardt
2020-12-04 13:53             ` Guillaume Le Vaillant
2020-12-04 17:30               ` Guillaume Le Vaillant
2020-12-05  8:18               ` Pierre Neidhardt
2020-12-05  9:42                 ` Guillaume Le Vaillant
2020-12-05  9:17       ` Pierre Neidhardt [this message]
2020-12-05 10:03         ` Guillaume Le Vaillant
2020-12-05 10:52           ` Guillaume Le Vaillant
2020-12-05 14:42             ` Pierre Neidhardt
2020-12-05 15:17               ` Guillaume Le Vaillant
2020-12-05 15:19                 ` Pierre Neidhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=874kl0sjbe.fsf@ambrevar.xyz \
    --to=mail@ambrevar.xyz \
    --cc=45017@debbugs.gnu.org \
    --cc=glv@posteo.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.