On Sat, Apr 02, 2022 at 07:11:42AM +0200, Sebastien Marie wrote: > On Fri, Apr 01, 2022 at 12:16:58PM -0600, Ashlen wrote: > > > > XMonad is recompiling and replacing itself with another XMonad process > > because the current process is called "xmonad" but the compiled > > configuration should be called "xmonad-x86_64-openbsd" XMonad will use > > build > > script at "/home/ashlen/.config/xmonad/build" to recompile. XMonad > > recompiling because a custom build script is being used. > > [2022-04-01|12:07:54]: /home/ashlen/.cache/xmonad/xmonad-x86_64-openbsd is > > newer than xmonad.hs. XMonad recompilation process exited with success! > > ld.so: xmonad-x86_64-openbsd: can't load library 'libX11.so.17.1' Killed > > > > now, going back to the problem. the port doesn't need these libraries, but > you > have a *locally build* binary (~/.cache/xmonad/xmonad-x86_64-openbsd) which > need them. > > I am unsure how xmonad itself work. if I recall well, the configuration is > done at compile time. so I assume it needs recompilation at some point, > specially after updating xmonad package (and potentially before removing > unused libraries). > > how do you recompile it ? your mail mentions ~/.config/xmonad/build. it is a > binary ? a script ? do you made it or it is a 'part' of xmonad ? >
After reading https://xmonad.org/INSTALL.html#custom-build-script , some additional questions: could you show use your .xsession or .xinitrc (the part starting xmonad specially) ? if you use `~/.cache/xmonad/xmonad-x86_64-openbsd` directly to start xmonad, you would need recompile it (with `xmonad --recompile`) after updating (base and/or packages) to keep your local binary in sync with installed libraries. if you use `xmonad`, it should recompile itself (at every startup), and you have nothing special to do (xmonad-x86_64-openbsd will be always up-to-date regarding library dependances). (I am not 100% sure about that, I didn't take time to read and understand xmonad source code). Please note that https://xmonad.org/TUTORIAL.html explicitly mentions this problem: One more word of warning: if you are on a distribution that installs every Haskell package dynamically linked—thus essentially breaking Haskell—(Arch Linux being a prominent example) then we would highly recommend installing via stack or cabal as instructed in INSTALL.md. If you still want to install xmonad via your system’s package manager, you will need to xmonad --recompile every time a Haskell dependency is updated—else xmonad may fail to start when you want to log in! Thanks. -- Sebastien Marie