* bug#62890: StumpWM fails to start - Read only file system @ 2023-04-16 22:32 Kjartan Óli Águstsson 2023-04-24 12:57 ` Guillaume Le Vaillant ` (3 more replies) 0 siblings, 4 replies; 10+ messages in thread From: Kjartan Óli Águstsson @ 2023-04-16 22:32 UTC (permalink / raw) To: 62890 [-- Attachment #1: Type: text/plain, Size: 1102 bytes --] I just started experiencing an issue with stumpwm where it fails to start, complaining about a read only file system. A web search for the error message leads me to https://lists.gnu.org/archive/html/help-guix/2021-02/msg00080.html, which sounds exactly like the problem I'm experiencing. I'm unsure how to get the backtrace shared in that thread, or in general how to proceed with debugging this. guix describe shows: guix 9a5e1dc repository URL: https://git.savannah.gnu.org/git/guix.git branch: master commit: 9a5e1dc1f16f5f8c056e64f2077b035784003673 but I tried rolling back to an earlier system generation: guix: repository URL: https://git.savannah.gnu.org/git/guix.git branch: master commit: d513ba83ebca347164098bb0fa1354f3657bc7e2 to no success so I doubt it is a new change in Guix. Unless I'm missing something in the help-guix thread there is no solution discussed there, so any help in debugging this would be greatly appreciated. -- Kjartan Oli Agustsson GPG Key fingerprint: 4801 0D71 49C0 1DD6 E5FD 6AC9 D757 2FE3 605E E6B0 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 691 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#62890: StumpWM fails to start - Read only file system 2023-04-16 22:32 bug#62890: StumpWM fails to start - Read only file system Kjartan Óli Águstsson @ 2023-04-24 12:57 ` Guillaume Le Vaillant 2023-04-25 9:35 ` Guillaume Le Vaillant 2024-01-12 21:02 ` bug#62890: StumpWM with --no-grafts and System/Home mismatches Richard Sent ` (2 subsequent siblings) 3 siblings, 1 reply; 10+ messages in thread From: Guillaume Le Vaillant @ 2023-04-24 12:57 UTC (permalink / raw) To: Kjartan Óli Águstsson; +Cc: 62890 [-- Attachment #1: Type: text/plain, Size: 1795 bytes --] Kjartan Óli Águstsson <kjartanoli@outlook.com> skribis: > I just started experiencing an issue with stumpwm where it fails to > start, complaining about a read only file system. A web search for the > error message leads me to > https://lists.gnu.org/archive/html/help-guix/2021-02/msg00080.html, > which sounds exactly like the problem I'm experiencing. I'm unsure how > to get the backtrace shared in that thread, or in general how to proceed > with debugging this. > > guix describe shows: > guix 9a5e1dc > repository URL: https://git.savannah.gnu.org/git/guix.git > branch: master > commit: 9a5e1dc1f16f5f8c056e64f2077b035784003673 > but I tried rolling back to an earlier system generation: > guix: > repository URL: https://git.savannah.gnu.org/git/guix.git > branch: master > commit: d513ba83ebca347164098bb0fa1354f3657bc7e2 > to no success so I doubt it is a new change in Guix. > > Unless I'm missing something in the help-guix thread there is no > solution discussed there, so any help in debugging this would be greatly > appreciated. Hi, I just got the same problem after reconfiguring a machine (using guix-home, but I'm not sure if it is relevant). It only happens when I try to load extra modules from the ".stumpwm/init.lisp" file. It looks like the configuration indicating where to search for the compiled Common Lisp files (ASDF's source-registry and output-translations) is not taken into consideration by Stumpwm anymore... so it tries to recompile them in the wrong place. As a workaround, replacing: exec stumpwm by: exec sbcl --no-userinit --non-interactive --eval '(require :asdf)' --eval '(asdf:load-system "stumpwm")' --eval '(stumpwm:stumpwm)' in my ".xsession" file seems to work... [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 247 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#62890: StumpWM fails to start - Read only file system 2023-04-24 12:57 ` Guillaume Le Vaillant @ 2023-04-25 9:35 ` Guillaume Le Vaillant 0 siblings, 0 replies; 10+ messages in thread From: Guillaume Le Vaillant @ 2023-04-25 9:35 UTC (permalink / raw) To: Guillaume Le Vaillant; +Cc: Kjartan Óli Águstsson, 62890 [-- Attachment #1: Type: text/plain, Size: 2241 bytes --] I think the issue comes from grafts. Without grafts, the ASDF configuration is coherent; the path for stumpwm's sources and libraries is the same everywhere (here in stumpwm:lib and sbcl-stumpwm-cpu): --8<---------------cut here---------------start------------->8--- $ cat $(guix build --no-grafts stumpwm | grep 'lib$')/etc/common-lisp/*/50-stumpwm.conf (("/gnu/store/v18hzbid3rjblz35s69w4c0gcsx9f9w9-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm" :**/ :*.*.*) ("/gnu/store/v18hzbid3rjblz35s69w4c0gcsx9f9w9-stumpwm-22.11-lib/lib/common-lisp/sbcl/stumpwm" :**/ :*.*.*)) (:tree "/gnu/store/v18hzbid3rjblz35s69w4c0gcsx9f9w9-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm") $ cat $(guix build --no-grafts sbcl-stumpwm-cpu)/etc/common-lisp/*/50-stumpwm.conf (("/gnu/store/v18hzbid3rjblz35s69w4c0gcsx9f9w9-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm" :**/ :*.*.*) ("/gnu/store/v18hzbid3rjblz35s69w4c0gcsx9f9w9-stumpwm-22.11-lib/lib/common-lisp/sbcl/stumpwm" :**/ :*.*.*)) (:tree "/gnu/store/v18hzbid3rjblz35s69w4c0gcsx9f9w9-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm") --8<---------------cut here---------------end--------------->8--- With grafts, we get different paths, which probably explains why ASDF fails to find the compiled Lisp files it is looking for: --8<---------------cut here---------------start------------->8--- $ cat $(guix build stumpwm | grep 'lib$')/etc/common-lisp/*/50-stumpwm.conf (("/gnu/store/wsjyjqf20ldbmgdq96h73qikmwhxv36c-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm" :**/ :*.*.*) ("/gnu/store/wsjyjqf20ldbmgdq96h73qikmwhxv36c-stumpwm-22.11-lib/lib/common-lisp/sbcl/stumpwm" :**/ :*.*.*)) (:tree "/gnu/store/wsjyjqf20ldbmgdq96h73qikmwhxv36c-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm") $ cat $(guix build sbcl-stumpwm-cpu)/etc/common-lisp/*/50-stumpwm.conf (("/gnu/store/h8i8mwsgjb96r407xqa2sf56clgy7r7c-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm" :**/ :*.*.*) ("/gnu/store/h8i8mwsgjb96r407xqa2sf56clgy7r7c-stumpwm-22.11-lib/lib/common-lisp/sbcl/stumpwm" :**/ :*.*.*)) (:tree "/gnu/store/h8i8mwsgjb96r407xqa2sf56clgy7r7c-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm") --8<---------------cut here---------------end--------------->8--- [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 247 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#62890: StumpWM with --no-grafts and System/Home mismatches 2023-04-16 22:32 bug#62890: StumpWM fails to start - Read only file system Kjartan Óli Águstsson 2023-04-24 12:57 ` Guillaume Le Vaillant @ 2024-01-12 21:02 ` Richard Sent 2024-05-03 2:30 ` bug#62890: Specific graft that's at fault Richard Sent 2024-05-27 6:54 ` bug#62890: Likely cause found, excess library grafting Richard Sent 3 siblings, 0 replies; 10+ messages in thread From: Richard Sent @ 2024-01-12 21:02 UTC (permalink / raw) To: 62890 I've noticed the same behavior and was able to resolve it by adding --no-grafts whenever I reconfigure my system and home profiles. Likely just the former is necessary, but I haven't tested it. I've also noticed this behavior (SBCL trying to place .fasl in /gnu/store) once when I pulled, reconfigured system, and didn't reconfigure home. I have my setup configured such that StumpWM is installed at the system level, while contrib packages are installed via guix home. I ran a git bisect and continually reconfigured my system to try and narrow down what commit it was, and was able to isolate it to either an xorgproto or Mesa update. Home was built before (49a7a95ba4) the commit, System after (d55a4431f3). The offending commit in this particular case lies somewhere between d55a4431f3 and 17c3a3bfff. (This probably isn't actually a bug, but I'm posting it in case anyone else runs into a similar issue in the future.) If anyone else has a similar setup, encounters this issue, and already uses --no-grafts, be sure both the system and home profiles are built with the same version of Guix. Richard Sent ^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#62890: Specific graft that's at fault 2023-04-16 22:32 bug#62890: StumpWM fails to start - Read only file system Kjartan Óli Águstsson 2023-04-24 12:57 ` Guillaume Le Vaillant 2024-01-12 21:02 ` bug#62890: StumpWM with --no-grafts and System/Home mismatches Richard Sent @ 2024-05-03 2:30 ` Richard Sent 2024-05-27 6:54 ` bug#62890: Likely cause found, excess library grafting Richard Sent 3 siblings, 0 replies; 10+ messages in thread From: Richard Sent @ 2024-05-03 2:30 UTC (permalink / raw) To: 62890 Hi Guix! The issue is likely caused by the glibc/fixed graft in (gnu packages base). When this graft is removed, the the path discussed earlier is coherent. Other grafts do not appear relevant. --8<---------------cut here---------------start------------->8--- Building stumpwm (("/gnu/store/w2jw4s7dnw0yfsp5125dpxiyz6lp7v3w-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm" :**/ :*.*.*) ("/gnu/store/w2jw4s7dnw0yfsp5125dpxiyz6lp7v3w-stumpwm-22.11-lib/lib/common-lisp/sbcl/stumpwm" :**/ :*.*.*)) (:tree "/gnu/store/w2jw4s7dnw0yfsp5125dpxiyz6lp7v3w-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm") Building sbcl-stumpwm-cpu (("/gnu/store/w2jw4s7dnw0yfsp5125dpxiyz6lp7v3w-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm" :**/ :*.*.*) ("/gnu/store/w2jw4s7dnw0yfsp5125dpxiyz6lp7v3w-stumpwm-22.11-lib/lib/common-lisp/sbcl/stumpwm" :**/ :*.*.*)) (:tree "/gnu/store/w2jw4s7dnw0yfsp5125dpxiyz6lp7v3w-stumpwm-22.11-lib/share/common-lisp/sbcl/stumpwm") --8<---------------cut here---------------end--------------->8--- Unfortunately stumpwm currently doesn't build on core-updates so I can't check if the discrepency would occur there where glibc isn't grafted. How exactly does that graft causes the problem? No clue. -- Take it easy, Richard Sent Making my computer weirder one commit at a time. ^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#62890: Likely cause found, excess library grafting 2023-04-16 22:32 bug#62890: StumpWM fails to start - Read only file system Kjartan Óli Águstsson ` (2 preceding siblings ...) 2024-05-03 2:30 ` bug#62890: Specific graft that's at fault Richard Sent @ 2024-05-27 6:54 ` Richard Sent 2024-05-27 7:05 ` bug#62890: StumpWM fails to start - Read only file system Richard Sent 3 siblings, 1 reply; 10+ messages in thread From: Richard Sent @ 2024-05-27 6:54 UTC (permalink / raw) To: 62890 Hi Guix! Once again I sunk more time into this issue when I should have been sleeping. Here's what I found: Building a grafted stumpwm directly creates one stumpwm:lib output. Building it /indirectly/ as a dependency of, say, sbcl-stumpwm-cpu, creates another, distinct stumpwm:lib output. This difference in stumpwm:lib outputs is reflected in 50-stumpwm.conf being incoherent. Packages that depend on say, A:lib graft their own copies of A:lib that is distinct from grafting A:out and A:lib together. This behavior confuses asdf-build-system and leads to breakage. Here's a link to an issue discussing excess library grafts: https://issues.guix.gnu.org/47115#23 The simplest way to resolve this I feel is to either: 1. Remove stumpwm:lib entirely and just have stumpwm:out 1. Realistically is anyone out there using stumpwm:lib but NOT stumpwm:out? What would the point of that be? 2. Add stumpwm as an input to to any package that just uses stumpwm:lib. Between the two, I strongly prefer 1. Below is a bunch of debug output to show how I reached the conclusion that I did. --8<---------------cut here---------------start------------->8--- richard@gibraltar ~/code/cloned/guix [env]$ ./pre-inst-env guix build stumpwm --check The following graft will be made: /gnu/store/bsxspzrhfwsl4qp0n01mgcaqcp1934dj-stumpwm-22.11.drv applying 9 grafts for stumpwm-22.11 ... grafting '/gnu/store/j73w1n1sf3gqgx8qx3cx9csbrndddq0b-stumpwm-22.11-lib' -> '/gnu/store/r4sc5ylh2g30zgr10q35phd80cb3llqy-stumpwm-22.11-lib'... grafting '/gnu/store/2rd3r0m8q11icwhhbwfl20ali3w5mwf4-stumpwm-22.11' -> '/gnu/store/azj1nchh8b9h9bssyzs15qbpd9p1zf7h-stumpwm-22.11'... successfully built /gnu/store/bsxspzrhfwsl4qp0n01mgcaqcp1934dj-stumpwm-22.11.drv successfully built /gnu/store/bsxspzrhfwsl4qp0n01mgcaqcp1934dj-stumpwm-22.11.drv successfully built /gnu/store/bsxspzrhfwsl4qp0n01mgcaqcp1934dj-stumpwm-22.11.drv /gnu/store/r4sc5ylh2g30zgr10q35phd80cb3llqy-stumpwm-22.11-lib /gnu/store/azj1nchh8b9h9bssyzs15qbpd9p1zf7h-stumpwm-22.11 # ^ here 50-stumpwm.conf refers to r4sc5ylh..., as it should # whereas # below 50-stumpwm.conf refers to y8fd8yirq. Notice how stumpwm is # grafted differently richard@gibraltar ~/code/cloned/guix [env]$ ./pre-inst-env guix build sbcl-stumpwm-cpu The following grafts will be made: /gnu/store/w8fbnjz3a8rzigldazhqn75v1ncrwnmr-sbcl-stumpwm-cpu-0.0.1-5.4613a95.drv /gnu/store/w5027r2xlf88pfafw9dsx38cya01la83-stumpwm-22.11.drv applying 5 grafts for stumpwm-22.11 ... grafting '/gnu/store/j73w1n1sf3gqgx8qx3cx9csbrndddq0b-stumpwm-22.11-lib' -> '/gnu/store/y8fd8yirq8n87sl7pv2wliwihrrbv820-stumpwm-22.11-lib'... successfully built /gnu/store/w5027r2xlf88pfafw9dsx38cya01la83-stumpwm-22.11.drv applying 2 grafts for sbcl-stumpwm-cpu-0.0.1-5.4613a95 ... grafting '/gnu/store/r3l0dxxlcdh73092q9fmjj629klayxhq-sbcl-stumpwm-cpu-0.0.1-5.4613a95' -> '/gnu/store/nvp9y9qgpv4w22dqbjmdyc0l41gymims-sbcl-stumpwm-cpu-0.0.1-5.4613a95'... successfully built /gnu/store/w8fbnjz3a8rzigldazhqn75v1ncrwnmr-sbcl-stumpwm-cpu-0.0.1-5.4613a95.drv /gnu/store/nvp9y9qgpv4w22dqbjmdyc0l41gymims-sbcl-stumpwm-cpu-0.0.1-5.4613a95 --8<---------------cut here---------------end--------------->8--- Now that there are two distinct derivations for two distinct stumpwm:lib outputs, we can look at the builders. --8<---------------cut here---------------start------------->8--- ;; guix build stumpwm, stumpwm graft builder (begin (use-modules (guix build graft) (guix build utils) (ice-9 match)) (define %outputs (list (cons "lib" ((@ (guile) getenv) "lib")) (cons "out" ((@ (guile) getenv) "out")))) (begin (setenv "GUIX_LOCPATH" "/gnu/store/visfdda934gvivwihwhlm63fdqhhcc8a-glibc-utf8-locales-2.35/lib/locale") (setlocale LC_ALL "en_US.utf8")) (let* ((old-outputs (quote (("lib" . "/gnu/store/j73w1n1sf3gqgx8qx3cx9csbrndddq0b-stumpwm-22.11-lib") ("out" . "/gnu/store/2rd3r0m8q11icwhhbwfl20ali3w5mwf4-stumpwm-22.11")))) (mapping (append (quote (("/gnu/store/hqxzgbbbnxl8l9q8bcsvzvmyw1mjws4r-zstd-1.5.2-lib" . "/gnu/store/x35wy730jwwmwwypvzy2nmqvcb3hc3ba-zstd-1.5.2-lib") ("/gnu/store/930nwsiysdvy2x5zv1sf6v7ym75z8ayk-gcc-11.3.0-lib" . "/gnu/store/6ncav55lbk5kqvwwflrzcr41hp5jbq0c-gcc-11.3.0-lib") ("/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35" . "/gnu/store/ln6hxqjvz6m9gdd9s97pivlqck7hzs99-glibc-2.35") ("/gnu/store/hbzlh3zjss4w80jscwfkivpyqc2sqbm3-sbcl-alexandria-1.4-0.009b7e5" . "/gnu/store/p8iagp15zzj5ivh3j8443jjpq6wmmzpw-sbcl-alexandria-1.4-0.009b7e5") ("/gnu/store/jd34ay8cyyl2dag62n94m15gg1b4s1sw-sbcl-2.4.0" . "/gnu/store/vj5jdgz6dajq25f6arjw976h6awwblgh-sbcl-2.4.0") ("/gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16" . "/gnu/store/v9p25q9l5nnaixkhpap5rnymmwbhf9rp-bash-minimal-5.1.16") ("/gnu/store/kf04j56xzh2pglwz3d8ybiz7wxwrs4df-sbcl-clx-0.7.5-1.3840045" . "/gnu/store/3sbrd8gj3ddq3cya2fygj0q788wp0kbr-sbcl-clx-0.7.5-1.3840045") ("/gnu/store/1xpjw51n2alaszrvwwm2f78k3nnnlrk1-sbcl-fiasco-0.0.1-2.bb47d2f" . "/gnu/store/z4l73b6b1a6ijfd5chpijjbi37mbq5wl-sbcl-fiasco-0.0.1-2.bb47d2f") ("/gnu/store/7xiwhrv7x4isj2860par69xas9lrk4av-sbcl-cl-ppcre-2.1.1" . "/gnu/store/h7r9c6wxm7d3yk803jyw86c0pr86rxcj-sbcl-cl-ppcre-2.1.1"))) (map (match-lambda ((name . file) (cons (assoc-ref old-outputs name) file))) %outputs)))) (graft old-outputs %outputs mapping))) ;; guix build sbcl-stumpwm-cpu, stumpwm-graft builder (begin (use-modules (guix build graft) (guix build utils) (ice-9 match)) (define %outputs (list (cons "lib" ((@ (guile) getenv) "lib")))) (begin (setenv "GUIX_LOCPATH" "/gnu/store/visfdda934gvivwihwhlm63fdqhhcc8a-glibc-utf8-locales-2.35/lib/locale") (setlocale LC_ALL "en_US.utf8")) (let* ((old-outputs (quote (("lib" . "/gnu/store/j73w1n1sf3gqgx8qx3cx9csbrndddq0b-stumpwm-22.11-lib")))) (mapping (append (quote (("/gnu/store/kf04j56xzh2pglwz3d8ybiz7wxwrs4df-sbcl-clx-0.7.5-1.3840045" . "/gnu/store/3sbrd8gj3ddq3cya2fygj0q788wp0kbr-sbcl-clx-0.7.5-1.3840045") ("/gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16" . "/gnu/store/v9p25q9l5nnaixkhpap5rnymmwbhf9rp-bash-minimal-5.1.16") ("/gnu/store/1xpjw51n2alaszrvwwm2f78k3nnnlrk1-sbcl-fiasco-0.0.1-2.bb47d2f" . "/gnu/store/z4l73b6b1a6ijfd5chpijjbi37mbq5wl-sbcl-fiasco-0.0.1-2.bb47d2f") ("/gnu/store/jd34ay8cyyl2dag62n94m15gg1b4s1sw-sbcl-2.4.0" . "/gnu/store/vj5jdgz6dajq25f6arjw976h6awwblgh-sbcl-2.4.0") ("/gnu/store/7xiwhrv7x4isj2860par69xas9lrk4av-sbcl-cl-ppcre-2.1.1" . "/gnu/store/h7r9c6wxm7d3yk803jyw86c0pr86rxcj-sbcl-cl-ppcre-2.1.1"))) (map (match-lambda ((name . file) (cons (assoc-ref old-outputs name) file))) %outputs)))) (graft old-outputs %outputs mapping)))--8<---------------cut here---------------end--------------->8--- Different builders? Different outputs. Different outputs? Different 50-stumpwm.conf files. Different 50-stumpwm.conf files? Sadness. -- Take it easy, Richard Sent Making my computer weirder one commit at a time. ^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#62890: StumpWM fails to start - Read only file system 2024-05-27 6:54 ` bug#62890: Likely cause found, excess library grafting Richard Sent @ 2024-05-27 7:05 ` Richard Sent 2024-06-24 11:50 ` Guillaume Le Vaillant 0 siblings, 1 reply; 10+ messages in thread From: Richard Sent @ 2024-05-27 7:05 UTC (permalink / raw) To: 62890 Richard Sent <richard@freakingpenguin.com> writes: > Packages that depend on say, A:lib graft their own copies of A:lib that > is distinct from grafting A:out and A:lib together. This behavior > confuses asdf-build-system and leads to breakage. I should rephase this. asdf-build-system is doing its job just fine. I don't think it's the build-system that's broken. It's that splitting outputs like this simply leads to incompatibility with asdf itself. That being said, I've never actually /used/ asdf. I welcome thoughts from my betters! :) -- Take it easy, Richard Sent Making my computer weirder one commit at a time. ^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#62890: StumpWM fails to start - Read only file system 2024-05-27 7:05 ` bug#62890: StumpWM fails to start - Read only file system Richard Sent @ 2024-06-24 11:50 ` Guillaume Le Vaillant 2024-06-29 1:03 ` Richard Sent 0 siblings, 1 reply; 10+ messages in thread From: Guillaume Le Vaillant @ 2024-06-24 11:50 UTC (permalink / raw) To: Richard Sent; +Cc: 62890 [-- Attachment #1.1: Type: text/plain, Size: 136 bytes --] Hi. Here's a patch for using a single output for stumpwm instead of having a separate lib output. Could you check if it works for you? [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1.2: 0001-gnu-stumpwm-Use-a-single-output.patch --] [-- Type: text/x-patch, Size: 7422 bytes --] From 48133ed3d6b4991c18b9c481eb5e0c62662c7e38 Mon Sep 17 00:00:00 2001 Message-ID: <48133ed3d6b4991c18b9c481eb5e0c62662c7e38.1719221599.git.glv@posteo.net> From: Guillaume Le Vaillant <glv@posteo.net> Date: Mon, 24 Jun 2024 11:00:44 +0200 Subject: [PATCH] gnu: stumpwm: Use a single output. This is a warkaround for the excess library grafts issue that can prevent stumpwm from working properly. See <https://issues.guix.gnu.org/47115> and <https://issues.guix.gnu.org/62890>. * gnu/packages/wm.scm (stumpwm)[outputs]: Remove "lib" output. [arguments]: Remove references to the "lib" output from phases. (stumpwm+slynk, stumpwm-contrib, sbcl-stumpwm-pamixer, sbcl-stumpwm-ttf-fonts, sbcl-stumpwm-stumptray, sbcl-stumpwm-disk, sbcl-stumpwm-screenshot, sbcl-stumpwm-notify, sbcl-stumpwm-battery-portable)[inputs]: Replace '(stumpwm "lib")' with 'stumpwm'. Change-Id: I3d8f025057965032c40ea833d3ebe62f9700071d --- gnu/packages/wm.scm | 40 ++++++++++++++-------------------------- 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index c3cd596e6c..d82ea8aab4 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -2426,7 +2426,6 @@ (define-public stumpwm (list sbcl-alexandria sbcl-cl-ppcre sbcl-clx)) - (outputs '("out" "lib")) (arguments (list #:phases @@ -2439,12 +2438,12 @@ (define-public stumpwm (add-after 'create-asdf-configuration 'build-program (lambda* (#:key outputs #:allow-other-keys) (build-program - (string-append (assoc-ref outputs "out") "/bin/stumpwm") + (string-append #$output "/bin/stumpwm") outputs #:entry-program '((stumpwm:stumpwm) 0)))) (add-after 'build-program 'create-desktop-file (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) + (let* ((out #$output) (xsessions (string-append out "/share/xsessions"))) (mkdir-p xsessions) (call-with-output-file @@ -2461,7 +2460,7 @@ (define-public stumpwm out)))))) (add-after 'install 'install-manual (lambda* (#:key (make-flags '()) outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) + (let* ((out #$output) (info (string-append out "/share/info"))) (invoke "./autogen.sh") (invoke "sh" "./configure" "SHELL=sh") @@ -2469,8 +2468,7 @@ (define-public stumpwm (install-file "stumpwm.info" info)))) (add-after 'install-manual 'remove-temporary-cache (lambda* (#:key outputs #:allow-other-keys) - (delete-file-recursively (string-append (assoc-ref outputs "lib") - "/.cache"))))))) + (delete-file-recursively (string-append #$output "/.cache"))))))) (synopsis "Window manager written in Common Lisp") (description "Stumpwm is a window manager written entirely in Common Lisp. @@ -2490,10 +2488,8 @@ (define-public stumpwm+slynk (package (inherit stumpwm) (name "stumpwm-with-slynk") - (outputs '("out")) (inputs - `(("stumpwm" ,stumpwm "lib") - ("slynk" ,sbcl-slynk))) + (list sbcl-slynk stumpwm)) (arguments (substitute-keyword-arguments (package-arguments stumpwm) ((#:phases phases) @@ -2508,8 +2504,7 @@ (define-public stumpwm+slynk #:dependencies '("stumpwm" "slynk") #:dependency-prefixes (map (lambda (input) (assoc-ref inputs input)) - '("stumpwm" "slynk"))) - #t))) + '("stumpwm" "sbcl-slynk")))))) (delete 'copy-source) (delete 'build) (delete 'check) @@ -2533,7 +2528,7 @@ (define stumpwm-contrib (base32 "1g8h2vd5qsmaiz6ixlx9ykrv6a08izmkf0js18fvljvznpyhsznz")))) (build-system asdf-build-system/sbcl) (inputs - `(("stumpwm" ,stumpwm "lib"))) + (list stumpwm)) (home-page "https://github.com/stumpwm/stumpwm-contrib") (synopsis "StumpWM extra modules") (description "This package provides extra modules for StumpWM.") @@ -2578,7 +2573,7 @@ (define-public sbcl-stumpwm-pamixer (sha256 (base32 "0djcrr16bx40l7b60d4j507vk5l42fdgmjpgrnk86z1ba8wlqim8")))) - (inputs (list pamixer `(,stumpwm "lib"))) + (inputs (list pamixer stumpwm)) (build-system asdf-build-system/sbcl) (arguments (list #:asd-systems ''("pamixer") @@ -2620,8 +2615,7 @@ (define-public sbcl-stumpwm-ttf-fonts (inherit stumpwm-contrib) (name "sbcl-stumpwm-ttf-fonts") (inputs - `(("stumpwm" ,stumpwm "lib") - ("clx-truetype" ,sbcl-clx-truetype))) + (list sbcl-clx-truetype stumpwm)) (arguments '(#:asd-systems '("ttf-fonts") #:tests? #f @@ -2733,9 +2727,7 @@ (define-public sbcl-stumpwm-stumptray (modify-phases %standard-phases (add-after 'unpack 'chdir (lambda _ (chdir "modeline/stumptray") #t))))) (inputs - `(("stumpwm" ,stumpwm "lib") - ("xembed" ,sbcl-clx-xembed) - ("alexandria" ,sbcl-alexandria))) + (list sbcl-alexandria sbcl-clx-xembed stumpwm)) (home-page "https://github.com/stumpwm/stumpwm-contrib/tree/master/modeline/stumptray") (synopsis "Modeline support for stumptray connectivity") @@ -2810,9 +2802,7 @@ (define-public sbcl-stumpwm-disk (add-after 'unpack 'chdir (lambda _ (chdir "modeline/disk") #t))))) (inputs - `(("stumpwm" ,stumpwm "lib") - ("cl-diskspace" ,sbcl-cl-diskspace) - ("cl-mount-info" ,sbcl-cl-mount-info))) + (list sbcl-cl-diskspace sbcl-cl-mount-info stumpwm)) (home-page "https://github.com/stumpwm/stumpwm-contrib") (synopsis "StumpWM modeline support to show disk usage") (description "StumpWM modeline support to show disk usage") @@ -2860,8 +2850,7 @@ (define-public sbcl-stumpwm-screenshot (inherit stumpwm-contrib) (name "sbcl-stumpwm-screenshot") (inputs - `(("stumpwm" ,stumpwm "lib") - ("zpng" ,sbcl-zpng))) + (list sbcl-zpng stumpwm)) (arguments '(#:asd-systems '("screenshot") #:tests? #f @@ -2910,7 +2899,7 @@ (define-public sbcl-stumpwm-notify (list sbcl-bordeaux-threads sbcl-dbus sbcl-xml-emitter - (list stumpwm "lib"))) + stumpwm)) (arguments '(#:asd-systems '("notify") #:phases @@ -2930,8 +2919,7 @@ (define-public sbcl-stumpwm-battery-portable (name "sbcl-stumpwm-battery-portable") (build-system asdf-build-system/sbcl) (inputs - (list sbcl-cl-ppcre - (list stumpwm "lib"))) + (list sbcl-cl-ppcre stumpwm)) (arguments '(#:asd-systems '("battery-portable") #:phases base-commit: c5fc11488c7bf6d9cf35513a43a40c61e5b8e1cd -- 2.45.1 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 247 bytes --] ^ permalink raw reply related [flat|nested] 10+ messages in thread
* bug#62890: StumpWM fails to start - Read only file system 2024-06-24 11:50 ` Guillaume Le Vaillant @ 2024-06-29 1:03 ` Richard Sent 2024-06-29 9:03 ` Guillaume Le Vaillant 0 siblings, 1 reply; 10+ messages in thread From: Richard Sent @ 2024-06-29 1:03 UTC (permalink / raw) To: Guillaume Le Vaillant; +Cc: 62890 Hi Guillaume, Thanks, your patch works for me! I don't expect many use cases to break from this (how many people want to install stumpwm lib but not stumpwm proper), but there's probably a fair amount of configs that'll break. Maybe it deserves a NEWS entry. I dream of the day https://issues.guix.gnu.org/48907 is fixed. While testing this I noticed that the error message can be even less descriptive than reported previously. With my current StumpWM config, without your patch, and with grafts enabled I get the following error: > Memory fault in 0x<some_random_hex_address>. Yeah, that's a fun one to debug. Very informative 🙂. I spent far too long bisecting a big Guix commit list before realizing this was ALSO a grafting issue. -- Take it easy, Richard Sent Making my computer weirder one commit at a time. ^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#62890: StumpWM fails to start - Read only file system 2024-06-29 1:03 ` Richard Sent @ 2024-06-29 9:03 ` Guillaume Le Vaillant 0 siblings, 0 replies; 10+ messages in thread From: Guillaume Le Vaillant @ 2024-06-29 9:03 UTC (permalink / raw) To: Richard Sent; +Cc: 62890-done [-- Attachment #1: Type: text/plain, Size: 79 bytes --] Thanks for testing. Patch applied as a46908620fac09bd8ccd0f587a27e86035d3b1d7. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 247 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2024-06-29 9:05 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-04-16 22:32 bug#62890: StumpWM fails to start - Read only file system Kjartan Óli Águstsson 2023-04-24 12:57 ` Guillaume Le Vaillant 2023-04-25 9:35 ` Guillaume Le Vaillant 2024-01-12 21:02 ` bug#62890: StumpWM with --no-grafts and System/Home mismatches Richard Sent 2024-05-03 2:30 ` bug#62890: Specific graft that's at fault Richard Sent 2024-05-27 6:54 ` bug#62890: Likely cause found, excess library grafting Richard Sent 2024-05-27 7:05 ` bug#62890: StumpWM fails to start - Read only file system Richard Sent 2024-06-24 11:50 ` Guillaume Le Vaillant 2024-06-29 1:03 ` Richard Sent 2024-06-29 9:03 ` Guillaume Le Vaillant
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git 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).