Ah, pleasure to learn of another fellow (symbol-name '#:foo) enjoyer :)
On Mon, Jun 5, 2023, 10:18 AM Marco Antoniotti <marco.antonio...@unimib.it> wrote: > Hi > > CLAD can be used for *any* Mac/Windows/UN*X configuration. The current > limitations are that it assumes "personal" configurations and not "system > wide/admin accessible only locations". > > The issue is that, as soon as ASDF gets loaded, it should load CLAD as a > minimal prerequisite. At that point you have the CLAD package present and > you can issue a > > (clad:ensure-app-or-library-data-folder "ASDF") > > or even a > > (clad:ensure-app-or-library-data-folder "ASDF" :impl-dependent t) > > And you will have the, e.g., "~/Library/Common Lisp/ASDF/" ready on a > Mac, or the "C:/Users/MeMyself/AppData/Roaming/Common > Lisp/ASDF/LispWorks/" ready on Windows (10, and 11 for sure). > > Is that what you want? > > I did write this thingy because there was a pesky configuration issue with > - another shameless plus - HELambdaP (https://helambdap.sf.net). I > believe it solved the problem in a rather general way. > > Cheers > > Marco > > PS Of course there is another rabbit hole to be handled - or avoided :) > What you REALLY want to have in the "ASDF loading code" is: > > (load-if-possible "CLAD-STUFF") > (funcall (find-symbol (string '#:ensure-app-or-library-data-folder) > "CLAD") "ASDF") > > > > > > > > On Mon, Jun 5, 2023 at 3:49 PM Robert Goldman <rpgold...@sift.net> wrote: > >> I was just answering what I thought was your question -- could CLAD be >> used as a source for ASDF configuration. >> >> On 4 Jun 2023, at 15:57, Marco Antoniotti wrote: >> >> Hi Robert, >> >> AFAIU this is the configuration of ASDF itself, when loading in a fresh >> CL. I think we are not clear about the timing of what should be loaded >> when. >> >> CLAD does not need ASDF or UIOP. It just has a .asd file because >> Quicklisp asks for it. >> >> Cheers >> >> MA >> >> >> On Sun, Jun 4, 2023 at 9:00 PM Robert Goldman <rpgold...@sift.net> wrote: >> >>> 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 >>> *after* 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). >>> >>> I believe the right thing would be for you to figure out how to add an >>> entry to the variable asdf:*default-source-registries* that is a >>> function that will collect the appropriate configuration information. But I >>> don't claim to fully understand source-registry.lisp >>> <https://gitlab.common-lisp.net/asdf/asdf/-/blob/9c7f1b76ca8e820c020a3ec3aeb4b507ab15aa34/source-registry.lisp> >>> . >>> >>> On 4 Jun 2023, at 3:29, Marco Antoniotti wrote: >>> >>> Sure. >>> >>> I am not privy to ASDF bootstrap. Where would you start? >>> >>> MA >>> >>> >>> On Sun, Jun 4, 2023 at 12:41 AM Robert P. Goldman <rpgold...@sift.net> >>> wrote: >>> >>>> The next step would be to add an ASDF plug-in so that ASDF can read its >>>> configuration from a CLAD set up…. :-) >>>> >>>> -- >>>> Robert P. Goldman >>>> >>>> On June 3, 2023 at 16:56:53, Marco Antoniotti ( >>>> marco.antonio...@unimib.it) wrote: >>>> >>>>> Wellll. You need a CL to load ASDF, don’t you? :) >>>>> >>>>> 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) >>>>> >>>>> But I see your point. Time to add a clad-setup.lisp file. >>>>> >>>>> Cheers >>>>> >>>>> MA >>>>> >>>>> >>>>> >>>>> On Sat, 3 Jun 2023 at 23:10, Robert Goldman <rpgold...@sift.info> >>>>> wrote: >>>>> >>>>>> 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? >>>>>> >>>>>> On 3 Jun 2023, at 10:57, Marco Antoniotti wrote: >>>>>> >>>>>> Ahem. Shameless plug: >>>>>> https://gitlab.common-lisp.net/mantoniotti/CLAD >>>>>> >>>>>> Cheers >>>>>> >>>>>> MA >>>>>> >>>>>> >>>>>> On Sat, Jun 3, 2023 at 5:28 PM Robert Goldman <rpgold...@sift.info> >>>>>> wrote: >>>>>> >>>>>>> Dear Greg, >>>>>>> >>>>>>> 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. >>>>>>> >>>>>>> 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 ( >>>>>>> clinit.cl, .sbclrc, etc. -- indeed I point all of those at one >>>>>>> single lisp-config.lisp 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!). >>>>>>> >>>>>>> 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 here >>>>>>> <https://asdf.common-lisp.dev/asdf.html#XDG-base-directory>. >>>>>>> >>>>>>> I don't understand Windows enough to understand this piece of text >>>>>>> from the ASDF manual: >>>>>>> >>>>>>> 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. >>>>>>> >>>>>>> The relevant code may be found in uiop/configuration.lisp >>>>>>> <https://gitlab.common-lisp.net/asdf/asdf/-/blob/release/uiop/configuration.lisp>. >>>>>>> It looks like invoking the functions uiop:xdg-config-home and >>>>>>> uiop:xdg-config-pathnames 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 (uiop:xdg-data-dirs "config/") -- maybe see >>>>>>> what that evaluates to on your Windows box? >>>>>>> >>>>>>> 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. >>>>>>> >>>>>>> It might be a good thing if someone with the resources would gift a >>>>>>> Windows resource to the CL Foundation to hook into common-lisp.net >>>>>>> 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). >>>>>>> >>>>>>> Good luck! >>>>>>> R >>>>>>> >>>>>>> On 2 Jun 2023, at 19:40, Greg Bennett wrote: >>>>>>> >>>>>>> Good evening Robert, >>>>>>> >>>>>>> Some longish time ago you were kind enough to help me with ASDF >>>>>>> matters. >>>>>>> I posted recently to asdf-devel, largely in the hope that you might >>>>>>> see it, I confess. >>>>>>> >>>>>>> Web search has, so far, not been helpful, I'm afraid. >>>>>>> >>>>>>> I shall quite understand if you do not reply; your inbox must >>>>>>> receive lots of this sort of thing. >>>>>>> >>>>>>> I have a test system in c:/ASDF/asdf-tests/ copied from the linux >>>>>>> directory /home/gwbennett/ASDF/asdf-tests/ >>>>>>> >>>>>>> Under Linux in my source-registry.conf.d directory I have the file >>>>>>> gb-source.conf >>>>>>> with the one line (:tree "/home/gwbennett/ASDF/asdf-tests/") >>>>>>> >>>>>>> Then in sbcl I can issue (asdf:load-system "gb-a") and all is well. >>>>>>> >>>>>>> I have tried various spots for gb-source.conf under Windows, all >>>>>>> without success: >>>>>>> >>>>>>> >>>>>>> c:\Users\Greg\AppData\Local\config\common-lisp\source-registry.conf.d\ >>>>>>> >>>>>>> c:\Users\Greg\ >>>>>>> >>>>>>> c:\Users\Greg\AppData\ >>>>>>> >>>>>>> c:\Users\Greg\AppData\Local\ >>>>>>> >>>>>>> If I issue, old style, (push "c:/ASDF/asdf-tests/" >>>>>>> asdf:*central-registry*) then all is well. >>>>>>> >>>>>>> Perhaps there is no place for a config file under W! >>>>>>> >>>>>>> Cheers >>>>>>> >>>>>>> Greg >>>>>>> >>>>>>> -- >>>>> Marco Antoniotti >>>>> https://dcb.disco.unimib.it >>>>> >>>>