IRC channel logs
2021-10-17.log
back to list of logs
<RhodiumToad>(system foreign) desperately needs a better way to get host data types <RhodiumToad>definitions of e.g. time_t or uid_t are pretty simple to get at C compile time, but really hard from guile <lilyp>I think the only way to reliably get those is nyacc tho <ArneBab>I’m skipping the lisp game jam this weekend. I had planned to do something, but my "you can play this on the server" did not work out: I can only access it from the local network :/ <ArneBab>I guess that something is wrong with my router <lampilelo>is the port forwarded? maybe you need to unblock it in the firewall rules too? i always forget about the firewall <ArneBab>I can access it from the local network, so it should not be the firewall. I did explicitly tell the router to forward the port, but it is still not accessible outside <ArneBab>(sidenote: be very careful with iptables: to check the firewall I added a config. The result was that my IntelliJ ceased being able to run maven, because it uses a tcp socket for that, and that got filtered. That was a very painful lessons learned after a long hunt for the cause. <lampilelo>i meant router's firewall, but if you had a router that doesn't unblock ports automatically when you set up forwarding, you'd probably think about that <lilyp>ArneBab you could still try releasing some wisp-no-js thing, no? <ArneBab>lilyp: yes, but I didn’t do that over the weekend <ArneBab>lilyp: I’d need a guix VM to actually provide something <lilyp>Wouldn't a Guix pack suffice? <ArneBab>lilyp: though I just realized that I might be able to create a docker tarball for a cloud platform <ArneBab>How can I use guix pack if I only have the package defined in a local guix.scm? <RhodiumToad>bleh. why do I get a warning about "imported from both ..." even when using (merge-generics) ? <RhodiumToad>and why does it sometimes work or not work depending on whether it needs to recompile? <lilyp>ArneBab: `guix pack' should support both -f and -m <RhodiumToad>well, after a few hundred lines of scheme, I can write a function that reads in an archive in almost any format and writes it in another format <ArneBab>lilyp: -f in guix pack is format, -m would be a manifest, right? (so not for the local dir) <lilyp>oh, that doesn't seem to exist either <ArneBab>that didn’t work either, but I found a workaround <lilyp>-e '(load "my-package-file.scm") <ArneBab>guix pack -L . -RR -S bin=bin -e '(load "guix.scm")' <ArneBab>and now I’m testing whether that allows me to run it on Google cloud <psyklax>So I want to use the chickadee library. It expects to find Guile 3.0 and depends on guile-opengl. I find no package for guile-opengl so I go fetch the source. I ./configure in guile-opengl. It expects Guile 2.2. Is there a newer version of guile-opengl somewhere? <lilyp>guile-opengl can build against Guile 3.0 <lilyp>You simply need to patch the configure script and all is well <lilyp>Search for _guile_versions_to_search <psyklax>make: error while loading shared libraries: libguile-2.2.so.1: cannot open shared object file: No such file or directory <psyklax>Looks like I also have to do something similar elsewhere <lilyp>hmm, you would need to reconfigure it, but the Guix definition simply patches configure <lilyp>(it does only build the program once, though) <psyklax>Still not working for me, with patch applied. And then after the patch failed to fix it, I also changed _guile_versions_to_search and am back at the same place I was before the patch. Am I meant to have guile2.2 installed alongside 3.0? <psyklax>oh I also linked /usr/bin/guile3.0 to /usr/bin/guile since the script was not aware of the guile3.0 file <lilyp>oh, that's a distro-specific quirk then <lilyp>Perhaps there's a configure option to set the guile path? <lilyp>i.e. --with-guile=/usr/bin/guile3.0 or something like that <psyklax>All I really need is for it to find libguile-3.0.so.1 <psyklax>line 81: aclocal-1.14: command not found <psyklax>fixed that problem (not with symlinks this time) only to reveal yet another problem <psyklax>./env: line 14: exec: compile: not found <lilyp>Did you autoreconf after patching configure.ac? <lilyp>I think that ought to solve many of the problems you're experiencing with already bootstrapped files <psyklax>I deleted the directory and re-extracted the source fresh before I patched <lilyp>probably yes, because it already has a configure file in it <psyklax>I had never heard of autoreconf before.. now I know <lilyp>most packages hide it behind a file called "bootstrap" <psyklax>Is there something wrong with Archlinux? Should I be using something else? <psyklax>./configure: line 2639: syntax error near unexpected token `3.0' <psyklax>./configure: line 2639: `GUILE_PKG(3.0 2.2 2.0) <psyklax>I've gotten past guile-opengl, that is working, now I need guile-sdl2. This is the error in the configure script. I see nothing wrong with it. <lilyp>GUILE_PKG is an autoconf macro, which appears unexpanded here <mwette>I found that configure does not work if you have guileX.Y and not guildX.Y. <lilyp>maybe build-aux/guile.m4 is outdated? You should be able to find a new one in Guile itself <psyklax>there is no guile.m4 anywhere on my filesystem <psyklax>Error also happens when cloning source from git and ./bootstrap <lilyp>there is no guile.m4: That's the issue <psyklax>shouldn't that be effecting other people who use this package, including the developer? how does that not get noticed? <lilyp>Again, guile.m4 is part of the Guile package, so it ought to exist on a sane system. <lilyp>Perhaps Arch hides it behind a -dev variant like Debian does? <psyklax>nope, the only other guile packages are guile2.0 and guile1.8, no -dev packages <psyklax>I did install guile2.2 again just to check, and that's not it either <psyklax>after autoreconf (which I don't even know what it does) the configure got far enough to determine that I had 3.0 and 2.2 installed and it does not know about /usr/bin/guile3.0 <psyklax>I remove 2.2 and it once again does not have guile.m4 <lilyp>where version is major.minor.patch <lilyp>then put it into your local m4 directory <psyklax>mk, I do not know the meaning of "local m4 directory" <psyklax>I tried to guess it out by finding other .m4 files but that didn't work <lilyp>wait, lemme peek into my local copy of guile-sdl2 <lilyp>Add this line to configure.ac: AC_CONFIG_MACRO_DIR([m4]) <lilyp>then mkdir m4 and put it there <psyklax>I actually correctly guessed that it was an m4 directory in the source tree, but didn't know I needed to edit the configure.ac... <psyklax>./pre-inst-env: line 32: exec: compile: not found <lilyp>Didn't you already autoreconf? <psyklax>confirmed I got the 3.0 version of guile.m4 <psyklax>Thanks for the help. I couldn't have gotten this far without you. <daviid>RhodiumToad: do you have a concrete small example of the 'warning although you do merge-generics problem, maybe I can help' - and what version of guile 'exactly' are you using? - going afk a little, be back later though ...