<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8">
</head>
<body><div style="font-family: sans-serif;"><div class="plaintext" style="white-space: normal;"><p dir="auto">Ah, I see.  I think some of my work colleagues were doing something in their CL init files that must have loaded some ASDF systems, because they were seeing configuration happen before they got into interactive contact with the REPL.</p>
<p dir="auto">Thank you very much for clarifying, Faré!</p>
<br><br><p dir="auto">On 4 Jun 2023, at 14:11, Faré wrote:</p>
</div><blockquote class="embedded" style="margin: 0 0 5px; padding-left: 5px; border-left: 2px solid #777777; color: #777777;"><div id="087BC443-2D8C-498C-977C-7B66A0E25C46">

<div dir="auto">ASDF configuration is lazy. It doesn't happen during load, but the first time ASDF is invoked, if not done by the user after loading ASDF.</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sun, Jun 4, 2023, 15:00 Robert Goldman <<a href="mailto:rpgoldman@sift.net">rpgoldman@sift.net</a>> wrote:<br></div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div style="font-family:sans-serif">
<div style="white-space:normal">
<p dir="auto">TBQH, I am not as sure as I should be. I try to avoid all the configuration that happens while ASDF loads, so that I configure only <em>after</em> the load is complete, at a point where I can watch what goes on. As I have said before, I don't like the configuration that uses config files, environment variables or magic directories, because it's impossible to debug (by the time ASDF is loaded and can be instrumented, it's too late).</p>
<p dir="auto">I believe the right thing would be for you to figure out how to add an entry to the variable <code style="margin:0 0;padding:0 0.25em;border-radius:3px;background-color:#f7f7f7">asdf:*default-source-registries*</code> that is a function that will collect the appropriate configuration information. But I don't claim to fully understand <a href="https://gitlab.common-lisp.net/asdf/asdf/-/blob/9c7f1b76ca8e820c020a3ec3aeb4b507ab15aa34/source-registry.lisp" style="color:#3983c4" target="_blank" rel="noreferrer">source-registry.lisp</a>.</p>
<p dir="auto">On 4 Jun 2023, at 3:29, Marco Antoniotti wrote:</p>
</div>
<blockquote style="margin:0 0 5px;padding-left:5px;border-left:2px solid #777777;color:#777777">
<div id="m_-220804623616922997658E9A93D-5066-4E77-B273-3A5E6578D9F4">
<div dir="ltr">
<div>Sure.<br>
<br></div>
<div>I am not privy to ASDF bootstrap.  Where would you start?</div>
<div><br></div>
<div>MA</div>
<div><br></div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sun, Jun 4, 2023 at 12:41 AM Robert P. Goldman <<a href="mailto:rpgoldman@sift.net" target="_blank" rel="noreferrer">rpgoldman@sift.net</a>> wrote:<br></div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>The next step would be to add an ASDF plug-in so that ASDF can read its configuration from a CLAD set up…. :-)<br>
<br>
<div class="gmail_signature">
<div>-- <br>
Robert P. Goldman</div>
</div>
<p class="gmail_quote" style="color:rgb(0,0,0)">On June 3, 2023 at 16:56:53, Marco Antoniotti (<a href="mailto:marco.antoniotti@unimib.it" target="_blank" rel="noreferrer">marco.antoniotti@unimib.it</a>) wrote:</p>
<blockquote type="cite" class="gmail_quote">
<div>
<div>
<div dir="auto"><span>Wellll.  You need a CL to load ASDF, don’t you? :)</span></div>
<div dir="auto"><span><br></span></div>
<div dir="auto"><span>CLAD is minimal and barebones.  You can load it from two files (just because the DEFPACKAGE is separate) and it’s there.  Look ma! No ASDF! :) (Or UIOP)</span></div>
<div dir="auto"><span><br></span></div>
<div dir="auto"><span>But I see your point.  Time to add a clad-setup.lisp file.</span></div>
<div dir="auto"><span><br></span></div>
<div dir="auto"><span>Cheers</span></div>
<div dir="auto"><span><br></span></div>
<div dir="auto"><span>MA</span></div>
<div dir="auto"><span><br></span></div>
<div dir="auto"><span><br></span></div>
<div><span><br></span>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr"><span>On Sat, 3 Jun 2023 at 23:10, Robert Goldman <<a href="mailto:rpgoldman@sift.info" target="_blank" rel="noreferrer">rpgoldman@sift.info</a>> wrote:<br></span></div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<div style="font-family:sans-serif">
<div style="white-space:normal;font-family:sans-serif">
<p dir="auto" style="font-family:sans-serif"><span>I do like the idea of CLAD, but in this case isn't there a Catch-22? You need to configure ASDF in order to load CLAD, so you can't use CLAD to configure ASDF, can you?</span></p>
</div>
</div>
</div>
<div>
<div style="font-family:sans-serif">
<div style="white-space:normal;font-family:sans-serif">
<p dir="auto" style="font-family:sans-serif"><span>On 3 Jun 2023, at 10:57, Marco Antoniotti wrote:</span></p>
</div>
<blockquote style="margin:0px 0px 5px;padding-left:5px;border-left:2px solid rgb(119,119,119);font-family:sans-serif;color:rgb(119,119,119)">
<div id="m_-2208046236169229976m_7182489774587654323m_52537731837992730384CA67F53-8F89-4AAC-866C-9273FC7EC3F5" style="font-family:sans-serif">
<div dir="ltr" style="font-family:sans-serif">
<div style="font-family:sans-serif"><span>Ahem.  Shameless plug: <a href="https://gitlab.common-lisp.net/mantoniotti/CLAD" style="font-family:sans-serif" target="_blank" rel="noreferrer">https://gitlab.common-lisp.net/mantoniotti/CLAD</a></span></div>
<div style="font-family:sans-serif"><span><br></span></div>
<div style="font-family:sans-serif"><span>Cheers</span></div>
<div style="font-family:sans-serif"><span><br></span></div>
<div style="font-family:sans-serif"><span>MA</span></div>
<div style="font-family:sans-serif"><span><br></span></div>
</div>
<span><br></span>
<div class="gmail_quote" style="font-family:sans-serif">
<div dir="ltr" class="gmail_attr" style="font-family:sans-serif"><span>On Sat, Jun 3, 2023 at 5:28 PM Robert Goldman <<a href="mailto:rpgoldman@sift.info" style="font-family:sans-serif" target="_blank" rel="noreferrer">rpgoldman@sift.info</a>> wrote:<br></span></div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex;font-family:sans-serif">
<div style="font-family:sans-serif">
<div style="font-family:sans-serif">
<div style="white-space:normal;font-family:sans-serif">
<p dir="auto" style="font-family:sans-serif"><span>Dear Greg,</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Thanks for the kind words! I am not sure why I didn't see your post on ASDF-devel, but I didn't. And I have seen several requests for moderation, so the list seems live. In case my response is interesting to the group, I am responding to the list as well.</span></p>
<p dir="auto" style="font-family:sans-serif"><span>A couple of disclaimers: (1) I haven't used Windows in more than a decade, and (2) I don't use these configuration files. I find I'm happier to keep all of my lisp configuration in lisp configuration files (<code style="margin:0px;padding:0px 0.25em;border-radius:3px;font-family:monospace;background-color:rgb(247,247,247)"><a href="http://clinit.cl" style="font-family:monospace" target="_blank" rel="noreferrer">clinit.cl</a></code>, <code style="margin:0px;padding:0px 0.25em;border-radius:3px;font-family:monospace;background-color:rgb(247,247,247)">.sbclrc</code>, etc. -- indeed I point all of those at one single <code style="margin:0px;padding:0px 0.25em;border-radius:3px;font-family:monospace;background-color:rgb(247,247,247)">lisp-config.lisp</code> file), instead of having to hunt through multiple files in multiple locations for this information. So take anything I say with more than a grain of salt (given your cardiologist approves!).</span></p>
<p dir="auto" style="font-family:sans-serif"><span>That said, these config files are placed according to the XDG standard which... as far as I can tell only applies to linux, and not to either Windows or MacOS. So there's code in ASDF/UIOP that extends XDG to other platforms. ASDF documentation about XDG can be found <a href="https://asdf.common-lisp.dev/asdf.html#XDG-base-directory" style="font-family:sans-serif;color:rgb(57,131,196)" target="_blank" rel="noreferrer">here</a>.</span></p>
<p dir="auto" style="font-family:sans-serif"><span>I don't understand Windows enough to understand this piece of text from the ASDF manual:</span></p>
</div>
<div style="white-space:normal;font-family:sans-serif">
<blockquote style="margin:0px 0px 5px;padding-left:5px;border-left:2px solid rgb(119,119,119);font-family:sans-serif;color:rgb(119,119,119)">
<p dir="auto" style="font-family:sans-serif"><span>Since support for querying the Windows registry is not possible to do in reasonable amounts of portable Common Lisp code, ASDF 3 relies on the environment variables that Windows usually exports, and are hopefully in synch with the Windows registry. If you care about the details, see uiop/configuration.lisp and don’t hesitate to suggest improvements.</span></p>
</blockquote>
</div>
<div style="white-space:normal;font-family:sans-serif">
<p dir="auto" style="font-family:sans-serif"><span>The relevant code may be found in <a href="https://gitlab.common-lisp.net/asdf/asdf/-/blob/release/uiop/configuration.lisp" style="font-family:sans-serif;color:rgb(57,131,196)" target="_blank" rel="noreferrer">uiop/configuration.lisp</a>. It looks like invoking the functions <code style="margin:0px;padding:0px 0.25em;border-radius:3px;font-family:monospace;background-color:rgb(247,247,247)">uiop:xdg-config-home</code> and <code style="margin:0px;padding:0px 0.25em;border-radius:3px;font-family:monospace;background-color:rgb(247,247,247)">uiop:xdg-config-pathnames</code> might help you figure out where ASDF is looking. But I don't really understand the discussion about the registry above. I do see a bit of code that says that UIOP (and thus ASDF) look for configs in the value of <code style="margin:0px;padding:0px 0.25em;border-radius:3px;font-family:monospace;background-color:rgb(247,247,247)">(uiop:xdg-data-dirs "config/")</code> -- maybe see what that evaluates to on your Windows box?</span></p>
<p dir="auto" style="font-family:sans-serif"><span>I hope that these snippets have been helpful, and if you find the answers you seek, please send to me and ASDF-devel, so that the information will be available to others.</span></p>
<p dir="auto" style="font-family:sans-serif"><span>It might be a good thing if someone with the resources would gift a Windows resource to the CL Foundation to hook into <code style="margin:0px;padding:0px 0.25em;border-radius:3px;font-family:monospace;background-color:rgb(247,247,247)"><a href="http://common-lisp.net" style="font-family:monospace" target="_blank" rel="noreferrer">common-lisp.net</a></code> so that the community doesn't have to rely on this kind of guesswork. I note that ASDF is no longer tested on Windows at all, since I don't have access to a Windows VM and even if I did, I wouldn't know how to use it (nor do I have the time to learn).</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Good luck!<br>
R</span></p>
<p dir="auto" style="font-family:sans-serif"><span>On 2 Jun 2023, at 19:40, Greg Bennett wrote:</span></p>
</div>
<div style="white-space:normal;font-family:sans-serif">
<blockquote style="margin:0px 0px 5px;padding-left:5px;border-left:2px solid rgb(119,119,119);font-family:sans-serif;color:rgb(119,119,119)">
<p dir="auto" style="font-family:sans-serif"><span>Good evening Robert,</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Some longish time ago you were kind enough to help me with ASDF matters.<br>
I posted recently to asdf-devel, largely in the hope that you might see it, I confess.</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Web search has, so far, not been helpful, I'm afraid.</span></p>
<p dir="auto" style="font-family:sans-serif"><span>I shall quite understand if you do not reply; your inbox must receive lots of this sort of thing.</span></p>
<p dir="auto" style="font-family:sans-serif"><span>I have a test system in c:/ASDF/asdf-tests/ copied from the linux directory /home/gwbennett/ASDF/asdf-tests/</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Under Linux in my source-registry.conf.d directory I have the file gb-source.conf<br>
with the one line (:tree "/home/gwbennett/ASDF/asdf-tests/")</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Then in sbcl I can issue (asdf:load-system "gb-a") and all is well.</span></p>
<p dir="auto" style="font-family:sans-serif"><span>I have tried various spots for gb-source.conf under Windows, all without success:</span></p>
<p dir="auto" style="font-family:sans-serif"><span>c:\Users\Greg\AppData\Local\config\common-lisp\source-registry.conf.d\</span></p>
<p dir="auto" style="font-family:sans-serif"><span>c:\Users\Greg\</span></p>
<p dir="auto" style="font-family:sans-serif"><span>c:\Users\Greg\AppData\</span></p>
<p dir="auto" style="font-family:sans-serif"><span>c:\Users\Greg\AppData\Local\</span></p>
<p dir="auto" style="font-family:sans-serif"><span>If I issue, old style,  (push "c:/ASDF/asdf-tests/" asdf:*central-registry*) then all is well.</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Perhaps there is no place for a config file under W!</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Cheers</span></p>
<p dir="auto" style="font-family:sans-serif"><span>Greg</span></p>
</blockquote>
</div>
<div style="white-space:normal;font-family:sans-serif"></div>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
<div style="white-space:normal;font-family:sans-serif"></div>
</div>
</div>
</blockquote>
</div>
</div>
<span><span class="gmail_signature_prefix">--</span><br></span>
<div dir="ltr" class="gmail_signature">Marco Antoniotti<br>
<a href="https://dcb.disco.unimib.it" target="_blank" rel="noreferrer">https://dcb.disco.unimib.it</a></div>
</div>
</div>
</blockquote>
</div>
</blockquote>
</div>
</div>
</blockquote>
<div style="white-space:normal"></div>
</div>
</div>
</blockquote>
</div></div></blockquote>
<div class="plaintext" style="white-space: normal;">
</div>

</div>
</body>

</html>