<ArneBab>amz3`: if you want to build a social network, you need to think about scaling it, so you need a way to remove no longer needed data (though I don’t think GNU social provides this). ***logicmoo is now known as dmiles
<cmaloney>amz3: This sounds like that git-annex project for backups <cmaloney>amz3: I think a book like Realm of Racker for Guile would be pretty sweet <cmaloney>Though I think DrRacket makes a book like that more convenient <cmaloney>since you're not fighting with platform strangeness as much <felipebalbi>while building guile-2.2.2 (from git) I get a lot of "ERROR: In procedure load-thunk-from-memory: No such file or directory". For several of the files under bootstrap <Apteryx>I think the bootstrap is using guile@2.0? I'm not sure why building guile 2.2.2 would affect it? <Apteryx>oh, sorry, I thought this was a Guix question somehow. <Apteryx>Hello; would anyone know how I can statically link Guile with the readline library? <davexunit>guile's readline integration uses the dynamic linker to load it at runtime <Apteryx>davexunit: OK. I'm not knowledgeable with autoconf, but I thought I can maybe supply some variable there to have it buils statically instead? <davexunit>readline support is activated via a guile module at runtime that uses the dynamic linker to open the readline shared library <davexunit>maybe there is a way to statically link it, but it's very unlikely that it's as easy as a gcc flag or something <Apteryx>davexunit: OK, thanks for the disclaimer :) <Apteryx>One interesting bit is that there is this file: /gnu/store/xxi8scxxx8g6i9h0lm57i5kc3xwcgj5r-guile-static-2.0.14/lib/libguilereadline-v-18.a for the guile-static@2.0 package in Guix. <Apteryx>This is the package used in the initrd; it'd be nice to have readline support there! <dsmith-work>There is also the license difference between Guile and libreadline. One (the?) reason readline is dynamically loaded and not loaded by default. <dsmith-work>I think it could be posisble to link libreadline.a and libguile.a into an application. You would still need to load the module and call (activate-readline). <dsmith-work>No one does static linking though, so the code may have bitrotted. <davexunit>dsmith-work: I haven't read the source but activate-readline could very well unconditionally call on the dynamic linker to do the work <davexunit>if static linking is possible somehow there would be no problem wrt licensing for guix. the resulting guile would be distributed under the gpl and that's just fine <Apteryx>dsmith-work: Based on the guile-static package definition in Guix, it seems that setting guile_LDFLAGS = -all-static in the Makefile.in should accomplish that. <random-nick>it's also be nice if the guile repl had some basic line editing support <Apteryx>Oh, it also sets the configre flags: --disable-shared" "LDFLAGS=-static <davexunit>I took a look at the source and here's what I've learned <davexunit>guile contains a GPL licensed extension called guile-readline <davexunit>it's a C extension + some supporting scheme code <davexunit>the C extension is a shared library. it ought to be possible to statically link readline into that shared object <davexunit>but AFAIK (someone correct me if I'm wrong) guile extensions are always loaded via the dynamic linker <davexunit>I know of no way to statically link guile extensions into a guile executable <Apteryx>Thanks for the detective work! This is interesting. It seems it'd be a useful feature; I can think that when embedding Guile, to have it fully static would desirable. <amz3`>someone here was working on a guile repl with line editing support, I don't remember who <davexunit>Apteryx: yeah so I think the follow-up to this would be to see if a guile maintainer could chime in on what they think of statically linked extensions <Apteryx>OK. I'll try to formulate something comprehensible to send to guile-devel; is this the right mailing list? <davexunit>I guess he's been using guile-wm silently this whole time <dustyweb>I pretty much set it up for my basic needs and left it there <dustyweb>especially because I still don't trust the SLIME live hacking since they didn't fix the localhost spoofing thing yet <Guest69444>Do anyone here has a project that a begginer like me can help :) ?? <Guest69444>CharlieBrown: that seems cool but, I think it is too complex for me :/ <dustyweb>Guest69444: writing packages for Guix is indeed a nice way to get started, but it also has a lot of its own overhead <dustyweb>Guest69444: what have you done so far? or are you just getting started? <dustyweb>are you familiar with lisp or scheme before Guile? <Guest69444>dustyweb: yes sorry, I have almost finished the little schemer <janneke>CharlieBrown: i'm running emacs-exwm which is not too bad <dustyweb>Guest69444: you're more than prepared to hack on things then :) <davexunit>sometimes writing shell scripts in guile is a fun way to get into things <dustyweb>Guest69444: what are *you* interested in? <CharlieBrown>janneke: I've thought about exwm, but can it do floating? <dustyweb>Guest69444: if you aren't totally sure, I do recommend writing some simple guix packages as an early way to get started... it helped me. but I also worked on some projects that I really wanted <CharlieBrown>davexunit: How can shell scipts be written in Guile? I'd like to get out of Bash, since it's unfashionable to write shell. <Guest69444>I have a little experience with javascript and python, but pretty basic too <janneke>CharlieBrown: i used stumpwm before and i never got that into sane floating <dustyweb>Guest69444: I recommend it; Guix is also kind of Guile's de-facto package manager these days <dustyweb>Guest69444: there are some videos on the Guix homepage that may give you an interesting overview <Guest69444>do you mean like creating my own package, or packaging something like i.e. pidgin or something <dustyweb>Guest69444: yes, package something that exists as a good first step <dustyweb>find, what do you wish was packaged there? and package that :) <Guest69444>yes I should use guix, it uses linux-libre and libre drivers right? <CharlieBrown>janneke: If your computer won't boot, you can at least compute with it: (+ 2 2) <dustyweb>Guest69444: if you use it as a distro (GuixSD). You can also use it as a package manager on top of another GNU/Linux distro <Guest69444>dustyweb: well I think going full guix will help me too :) <dustyweb>Guest69444: awesome! It's a lot of fun :) <CharlieBrown>Guest69444: packaging software for guix, like the mcwm i suggested witch is a tiny program with only one dep that's in guix already <Guest69444>ok so I install guix and then I package something right? <Guest69444>CharlieBrown: it is a windows manager written in guile right? <janneke>CharlieBrown: is that packaged with guix? <dustyweb>Guest69444: if that's what you want to package, go for it, but find something you want <dustyweb>scratching your own itch is a good way to move forward and stay motivated <CharlieBrown>Guest69444: no, mcwm is a tiny c program. i wish a guile wm reimplemented its features, though, so i could live-hack it with scheme <Guest69444>dustyweb: to be honest I am a little afraid of not understanding things <Guest69444>I feel like I can do small scripts that do nothing interesting <rekado_>The website hosting the Guile WM tarball has disappeared :( <CharlieBrown>janneke: mcwm is not pkg'd with guix, whcih is why im trying to convince Guest69444 to pkg it lol <CharlieBrown>rekado_: yes, mwitmer's domain expired. github still has it tho <Guest69444>but I don't know C CharlieBrown, do I need to know? <CharlieBrown>Guest69444: you don't neeed to know c to build a program <dustyweb>CharlieBrown: if Guest69444 wants to package that it's fine but, they should work on what they're interested in <davexunit>guix *may* be a bridge too far for a guile beginner right now <dustyweb>Guest69444: don't be too afraid of having trouble <dustyweb>you can't imagine the kinds of mistakes I made early on :) <CharlieBrown>tbh, i dont need mcwm the most rn. what i need most on guix is Ekiga <Guest69444>I feel desperate because I want to do GUI's and useful things <davexunit>dustyweb has the right idea. scratch an itch. <dustyweb>Guest69444: it took me a lonnnnng time until I understood the majority of guile code I read <CharlieBrown>Guest69444: write nice wrappers around already existing tools, to give them a gui so ppl dont have to use the cli <janneke>Guest69444: "GUI's and useful things" in one sentence ;-) <dustyweb>Guest69444: our GUI options are kind of limited right now. guile-gnome is probably the most fleshed out system <davexunit>Guest69444: I wouldn't recommend trying GUI programs with Guile right now. there is no beginner friendly option right now. <dustyweb>Guest69444: most of the stuff I do is webdev so most of it is sxml -> html ;) <Guest69444>janneke: I do understand that CLI is great but for majority of people it is too hard <davexunit>a web UI is much more feasible, *if* you already know how to do html and such <dustyweb>Guest69444: so the guile manual has a nice tutorial on getting started with webdev stuff <rekado_>are the gtk bindings provided by guile-gnome? Or is this something else. <dustyweb>Guest69444: it's a lot to take in but really interesting <rekado_>CharlieBrown: most programs have authors. <davexunit>writing a good wrapper that fits in with the host language well is difficult <davexunit>guile-gnome is not currently up to date with the latest gtk, it's a work-in-progress <CharlieBrown>davexunit: if you want to get into a language war, i will have you know that 'suck' has nothing to do with a human activity. it has to do with an animal activity between cow and calf <Guest69444>but someone suggested me to try a Common Lisp WM <dustyweb>it does the job, and it's written in a lisp :) <rekado_>but I haven’t been able to control it from within Emacs <rekado_>dustyweb: have you got SLIME and stumpwm interaction working? <dustyweb>rekado_: I did and I disabled it because they haven't dealt with the localhost rebinding attack we fixed in guile yet <rekado_>when people say that Guile WM isn’t quite usable yet and needs a champion,… what exactly does that mean? <rekado_>does it crash often or does it just lack features? <davexunit>rekado_: I encountered a bug that completely locked it up and I had to restart X <davexunit>and I had no luck trying to identify the issue <davexunit>problems like that are tough to deal with without an active maintainer <rekado_>is it still worth working on an X11 window manager, or should one rather hack up a window manager for wayland? <davexunit>rekado_: wayland would be the more forward looking thing. the developer of guile-wm wanted to explore wayland support. <davexunit>if anyone is interested in wayland, the first step is a libwayland (or whatever it is called) wrapper library <paroneayea>happy_gnu[m]: great to hear that you went forward with studying little schemer and sicp and etc since we last talked :D <Guest69444>paroneayea: yes thanks :) Riot is on my phone so is harder to use the happy_gnu[m] right now.. <Guest69444>paroneayea: I am trying to do some real programming now <Guest69444>that is why I was asking about a project to help <Guest69444>I didn't avanced much the last month because I was on rehabilitation, because I was hurt on my knees and back <CharlieBrown>davexunit: do i need to prove to you that my insult to guile-gnome has no lewd etymology, so you won't be offended by everyday language? <paroneayea>Guest69444: sorry to hear about your injury though :( <paroneayea>Guest69444: it sounds like you want to work on things but don't really know where to start; my suggestion would be <paroneayea>Guest69444: write a fun little web application, something simple, following the guile web tutorial <paroneayea>Guest69444: from there, maybe install guix and contribute a package? <paroneayea>and I'm sure we'd love to have your help in Guix-land :) <CharlieBrown>davexunit: I'm put on heavy defensive, because you made issue with something that was far removed from the idea I was conveying using standard speech. <Guest69444>do I need to learn about apache and mysql and that? <paroneayea>CharlieBrown: I can't speak for davexunit, but what I'd like is for you to stop escalating this conversation aggressively <CharlieBrown>paroneayea: I'm scared I'll use the phase again by accident, and get banned. <Guest69444>I have seen a lot of guile making references to C, should I learn C? I mean I plan to eventually, but for now? <paroneayea>Guest69444: Guile is built on C and for historical reasons is a good language for embedding in C <Guest69444>I hope to advance more now, that I am better, I was counting, it is actually almost 2 months I've been on therapy :/. For a while I couldn't even walk <rekado_>CharlieBrown: don’t. Just don’t dwell on it. <rekado_>CharlieBrown: remember that comments like this can make the authors of the software rather sad. <Guest69444>rekado_: your nick seems familiar, do you visit trisquel forums? <rekado_>Guest69444: no, I’ve never been there. <ijp>paroneayea: I don't have much of an update for you, but I hope to have a draft for you tomorrow