* stumpwm contrib modules have been broken @ 2021-01-05 21:46 Katherine Cox-Buday 2021-01-06 8:31 ` Pierre Neidhardt 2021-01-06 10:09 ` Guillaume Le Vaillant 0 siblings, 2 replies; 6+ messages in thread From: Katherine Cox-Buday @ 2021-01-05 21:46 UTC (permalink / raw) To: help-guix Sometime recently, the way Common Lisp code is compiled was changed (for the better, I think), and now my StumpWM contrib modules won't load. Here's why: StumpWM looks[1] for .asd files to determine what is a module. Guix's Common Lisp build system used to combine an entire system into a single .fasl file and then produce a .asd file for loading it. Now -- as far as I can tell -- it looks like `lib/common-lisp/sbcl` is more like the Common Lisp cache: one .fasl file per .lisp file. If I point StumpWM at `lib/common-lisp/sbcl` via `set-module-dir`, it finds no modules. If I point StumpWM at `share/common-lisp/sbcl`, it finds modules, tries to compile them, and then gives me a permissions error about writing to the `/gnu` store. Is anyone using StumpWM contrib modules successfully with Guix's new layout? How? [1] - https://github.com/stumpwm/stumpwm/blob/master/module.lisp#L70 -- Katherine ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: stumpwm contrib modules have been broken 2021-01-05 21:46 stumpwm contrib modules have been broken Katherine Cox-Buday @ 2021-01-06 8:31 ` Pierre Neidhardt 2021-01-06 10:09 ` Guillaume Le Vaillant 1 sibling, 0 replies; 6+ messages in thread From: Pierre Neidhardt @ 2021-01-06 8:31 UTC (permalink / raw) To: Katherine Cox-Buday, help-guix [-- Attachment #1: Type: text/plain, Size: 345 bytes --] Hi Katherine, I don't use StumpWM myself, but Guillaume might so I've forwarding the email to him in case he missed the mailing list message. Considering some StumpWM contribs have been updated after the build system overhaul, I expect them to be working one way or another :) Cheers! -- Pierre Neidhardt https://ambrevar.xyz/ [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 511 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: stumpwm contrib modules have been broken 2021-01-05 21:46 stumpwm contrib modules have been broken Katherine Cox-Buday 2021-01-06 8:31 ` Pierre Neidhardt @ 2021-01-06 10:09 ` Guillaume Le Vaillant 2021-01-06 10:36 ` Guillaume Le Vaillant 1 sibling, 1 reply; 6+ messages in thread From: Guillaume Le Vaillant @ 2021-01-06 10:09 UTC (permalink / raw) To: Katherine Cox-Buday; +Cc: help-guix [-- Attachment #1: Type: text/plain, Size: 1293 bytes --] Katherine Cox-Buday <cox.katherine.e@gmail.com> skribis: > Sometime recently, the way Common Lisp code is compiled was changed (for > the better, I think), and now my StumpWM contrib modules won't load. > Here's why: > > StumpWM looks[1] for .asd files to determine what is a module. Guix's > Common Lisp build system used to combine an entire system into a single > .fasl file and then produce a .asd file for loading it. Now -- as far as > I can tell -- it looks like `lib/common-lisp/sbcl` is more like the > Common Lisp cache: one .fasl file per .lisp file. > > If I point StumpWM at `lib/common-lisp/sbcl` via `set-module-dir`, it > finds no modules. If I point StumpWM at `share/common-lisp/sbcl`, it > finds modules, tries to compile them, and then gives me a permissions > error about writing to the `/gnu` store. > > Is anyone using StumpWM contrib modules successfully with Guix's new > layout? How? > > [1] - https://github.com/stumpwm/stumpwm/blob/master/module.lisp#L70 Hi, In my StumpWM init file, I use '(asdf:load-system ...)' instead of '(load-module ...)' to load the contrib modules that are installed in my Guix profile, and it works. I'll see if I can find a combination 'set-module-dir' and 'add-to-load-path' that makes the 'load-module' function work correctly... [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 247 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: stumpwm contrib modules have been broken 2021-01-06 10:09 ` Guillaume Le Vaillant @ 2021-01-06 10:36 ` Guillaume Le Vaillant 2021-01-06 16:08 ` Katherine Cox-Buday 0 siblings, 1 reply; 6+ messages in thread From: Guillaume Le Vaillant @ 2021-01-06 10:36 UTC (permalink / raw) To: Katherine Cox-Buday; +Cc: help-guix [-- Attachment #1: Type: text/plain, Size: 1836 bytes --] Guillaume Le Vaillant <glv@posteo.net> skribis: > Katherine Cox-Buday <cox.katherine.e@gmail.com> skribis: > >> Sometime recently, the way Common Lisp code is compiled was changed (for >> the better, I think), and now my StumpWM contrib modules won't load. >> Here's why: >> >> StumpWM looks[1] for .asd files to determine what is a module. Guix's >> Common Lisp build system used to combine an entire system into a single >> .fasl file and then produce a .asd file for loading it. Now -- as far as >> I can tell -- it looks like `lib/common-lisp/sbcl` is more like the >> Common Lisp cache: one .fasl file per .lisp file. >> >> If I point StumpWM at `lib/common-lisp/sbcl` via `set-module-dir`, it >> finds no modules. If I point StumpWM at `share/common-lisp/sbcl`, it >> finds modules, tries to compile them, and then gives me a permissions >> error about writing to the `/gnu` store. >> >> Is anyone using StumpWM contrib modules successfully with Guix's new >> layout? How? >> >> [1] - https://github.com/stumpwm/stumpwm/blob/master/module.lisp#L70 > > Hi, > > In my StumpWM init file, I use '(asdf:load-system ...)' instead of > '(load-module ...)' to load the contrib modules that are installed in my > Guix profile, and it works. > > I'll see if I can find a combination 'set-module-dir' and > 'add-to-load-path' that makes the 'load-module' function work > correctly... With the following near the top of my StumpWM init file, the 'load-module' function works like 'asdf:load-system': --8<---------------cut here---------------start------------->8--- (let* ((guix-profile (pathname-as-directory (getenv "GUIX_PROFILE"))) (module-dir (merge-pathnames "share/common-lisp/sbcl/" guix-profile))) (set-module-dir module-dir)) (load-module "ttf-fonts") --8<---------------cut here---------------end--------------->8--- [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 247 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: stumpwm contrib modules have been broken 2021-01-06 10:36 ` Guillaume Le Vaillant @ 2021-01-06 16:08 ` Katherine Cox-Buday 2021-01-06 17:26 ` Guillaume Le Vaillant 0 siblings, 1 reply; 6+ messages in thread From: Katherine Cox-Buday @ 2021-01-06 16:08 UTC (permalink / raw) To: Guillaume Le Vaillant; +Cc: help-guix Guillaume Le Vaillant <glv@posteo.net> writes: > Guillaume Le Vaillant <glv@posteo.net> skribis: > >> Katherine Cox-Buday <cox.katherine.e@gmail.com> skribis: >> >>> Sometime recently, the way Common Lisp code is compiled was changed (for >>> the better, I think), and now my StumpWM contrib modules won't load. >>> Here's why: >>> >>> StumpWM looks[1] for .asd files to determine what is a module. Guix's >>> Common Lisp build system used to combine an entire system into a single >>> .fasl file and then produce a .asd file for loading it. Now -- as far as >>> I can tell -- it looks like `lib/common-lisp/sbcl` is more like the >>> Common Lisp cache: one .fasl file per .lisp file. >>> >>> If I point StumpWM at `lib/common-lisp/sbcl` via `set-module-dir`, it >>> finds no modules. If I point StumpWM at `share/common-lisp/sbcl`, it >>> finds modules, tries to compile them, and then gives me a permissions >>> error about writing to the `/gnu` store. >>> >>> Is anyone using StumpWM contrib modules successfully with Guix's new >>> layout? How? >>> >>> [1] - https://github.com/stumpwm/stumpwm/blob/master/module.lisp#L70 >> >> Hi, Hey, thanks for responding Guillaume, and thanks for forwarding, Pierre. >> In my StumpWM init file, I use '(asdf:load-system ...)' instead of >> '(load-module ...)' to load the contrib modules that are installed in my >> Guix profile, and it works. When I try this, I get this error: Error opening #P"/gnu/store/j6s3hhmlm8n7ynv92agcbzzxrc0bgpc0-stumpwm-20.11-lib/lib/common-lisp/sbcl/stumpwm/package-tmpAAURS01.fasl which is a file that does not exist. > With the following near the top of my StumpWM init file, the > 'load-module' function works like 'asdf:load-system': > > (let* ((guix-profile (pathname-as-directory (getenv "GUIX_PROFILE"))) > (module-dir (merge-pathnames "share/common-lisp/sbcl/" guix-profile))) > (set-module-dir module-dir)) This is what I mentioned above, pointing to the `share/` side of things. On my Guix OS system, this works (but it has to compile everything; I'd prefer to use the precompiled fasls), but on my alien distro, I get the afforementioned permission error as it tries to write to the store. I'm happy to try and find something that works in the short-term so I can get my window manager back, but in the long-term, we should repair the bug so that new users aren't left wondering as well. Thanks again for responding. Katherine ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: stumpwm contrib modules have been broken 2021-01-06 16:08 ` Katherine Cox-Buday @ 2021-01-06 17:26 ` Guillaume Le Vaillant 0 siblings, 0 replies; 6+ messages in thread From: Guillaume Le Vaillant @ 2021-01-06 17:26 UTC (permalink / raw) To: Katherine Cox-Buday; +Cc: help-guix [-- Attachment #1: Type: text/plain, Size: 3295 bytes --] Katherine Cox-Buday <cox.katherine.e@gmail.com> skribis: > Guillaume Le Vaillant <glv@posteo.net> writes: > >> Guillaume Le Vaillant <glv@posteo.net> skribis: >> >>> Katherine Cox-Buday <cox.katherine.e@gmail.com> skribis: >>> >>>> Sometime recently, the way Common Lisp code is compiled was changed (for >>>> the better, I think), and now my StumpWM contrib modules won't load. >>>> Here's why: >>>> >>>> StumpWM looks[1] for .asd files to determine what is a module. Guix's >>>> Common Lisp build system used to combine an entire system into a single >>>> .fasl file and then produce a .asd file for loading it. Now -- as far as >>>> I can tell -- it looks like `lib/common-lisp/sbcl` is more like the >>>> Common Lisp cache: one .fasl file per .lisp file. >>>> >>>> If I point StumpWM at `lib/common-lisp/sbcl` via `set-module-dir`, it >>>> finds no modules. If I point StumpWM at `share/common-lisp/sbcl`, it >>>> finds modules, tries to compile them, and then gives me a permissions >>>> error about writing to the `/gnu` store. >>>> >>>> Is anyone using StumpWM contrib modules successfully with Guix's new >>>> layout? How? >>>> >>>> [1] - https://github.com/stumpwm/stumpwm/blob/master/module.lisp#L70 >>> >>> Hi, > > Hey, thanks for responding Guillaume, and thanks for forwarding, Pierre. > >>> In my StumpWM init file, I use '(asdf:load-system ...)' instead of >>> '(load-module ...)' to load the contrib modules that are installed in my >>> Guix profile, and it works. > > When I try this, I get this error: > > Error opening #P"/gnu/store/j6s3hhmlm8n7ynv92agcbzzxrc0bgpc0-stumpwm-20.11-lib/lib/common-lisp/sbcl/stumpwm/package-tmpAAURS01.fasl > > which is a file that does not exist. > >> With the following near the top of my StumpWM init file, the >> 'load-module' function works like 'asdf:load-system': >> >> (let* ((guix-profile (pathname-as-directory (getenv "GUIX_PROFILE"))) >> (module-dir (merge-pathnames "share/common-lisp/sbcl/" guix-profile))) >> (set-module-dir module-dir)) > > This is what I mentioned above, pointing to the `share/` side of things. > On my Guix OS system, this works (but it has to compile everything; I'd > prefer to use the precompiled fasls), but on my alien distro, I get the > afforementioned permission error as it tries to write to the store. > > I'm happy to try and find something that works in the short-term so I > can get my window manager back, but in the long-term, we should repair > the bug so that new users aren't left wondering as well. > > Thanks again for responding. > > Katherine I'm using a Guix OS and I don't have the issue; StumpWM uses the precompiled files and doesn't try to recompile anything. Maybe we can try to find what is the difference between your configuration and mine. Are all the packages for the Lisp systems and StumpWM modules that you load in your init file installed in your Guix profile? How is your StumpWM started (.xsession file, custom script, ...)? What is the result of evaluating '(getenv "XDG_CONFIG_DIRS")' in your StumpWM? What is the result of evaluating '(getenv "XDG_DATA_DIRS")' in your StumpWM? Could you share the part of your init file that sets the module directory (or directories)? Does StumpWM try to recompile every module that you load, or only some of them? [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 247 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2021-01-06 17:26 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-01-05 21:46 stumpwm contrib modules have been broken Katherine Cox-Buday 2021-01-06 8:31 ` Pierre Neidhardt 2021-01-06 10:09 ` Guillaume Le Vaillant 2021-01-06 10:36 ` Guillaume Le Vaillant 2021-01-06 16:08 ` Katherine Cox-Buday 2021-01-06 17:26 ` Guillaume Le Vaillant
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).