IRC channel logs


back to list of logs

<lispmacs>which package do I install if I want libstdc++ to show in my profile?
<lispmacs>I tried that, but I don't see it
<lispmacs>pkill9: libc shows up, but not see libstdc++ or similar
<terpri>lispmacs, there is a separate package of an old version of libstdc++ iirc, for bootstrapping llvm or something maybe. probably not what you want
<terpri>g++ should be able to link to libstdc++ if you use gcc-toolchain though
<lispmacs>terpri: I was trying to run pre-compiled java code that says it can't find libstdc++
<lispmacs>okay, so looks like it is actually part of the hidden gcc package
<lispmacs>now, how do I specify a hidden package in a specifications->manifest list?
<lispmacs>please don't tell me I'm going to have to rewrite the whole manifest
<lispmacs>okay, forget that, at least how do I install a hidden package?
<guixy>lispmacs: Try (@@ (namespace to package) package-name). I don't know if it will work with guile3 though.
<lispmacs>that worked doing an imperative install, would like to get that integrated into the manifest file
<raghavgururajan>nckx: Thanks! you around?
<lispmacs>arrrg! all that and I still didn't get libstdc++ showing up in the profile
<terpri>lispmacs, i'd like to know the answer too :)
<lispmacs>surely I can't be the first guy to ever want libstdc++ to show up in his profile
<terpri>lispmacs, out of curiousity...can you say what this precompiled java code is
<lispmacs>what a second, there is a gcc package and a gcc-lib package
<lispmacs>okay, how do I adjust that previous command to do the lib output instead of the default output
<lispmacs>I tried (@@ (gnu packages gcc) gcc:lib) but gcc:lib is an unbound variable
<terpri>the colon syntax is command-line-only
<lispmacs>what's the non command line syntax for that?
<terpri>in the (native-)inputs list, ("gcc" ,gcc "lib") (("name" package-object "output"))
*lispmacs has to go to a barbeque
<lispmacs>I'll try that later
<terpri>ah, yes, it's the 4th of july. time to crack open the stoli and queue up some ratm
***catonano__ is now known as catonano
<guixy>Several patches are pending to be sent at the end of the month.
<guixy>There are several games that need fixing. I have fixed most of these games.
<pkill9>which games are those?
<guixy>I fixed enigma, freedink, knights, chroma.
<guixy>Packages I've given up on include emulation-station
<guixy>unknown-horizons in particular has been restructured. It is now a godot project instead of a python project, and should be completely redefined.
<guixy>KDE packages are also not building. kdenlive is the biggest, but there's also kblocks
<guixy>I'm also going to try to fix lskat
<guixy>Last I checked, all the other games, emulators, and game-development packages build correctly.
<guixy>I think there's a python package isn't reproducible.
<guixy>I think it's python-sge, but I'm not sure. I have an elaborate script to keep track of these things.
<guixy>Other notweorthy patches include adding support for gme and MIDI files in VLC, add support for libgme in ffmpeg, updating and renaming python-hy to hy, removing python2-hy, adding python-funcparserlib and python-filelock packages and as inputs to hy, packaging npiet,
<guixy>I've been busy for the last 6 months so I couldn't do more.
<athune>Hi, I've just installed GuixSD, and I'm wondering how I can set XDG_DATA_DIRS to make XFCE find flatpak's apps. I know where the flatpak desktop files are located, I just don't know where I should set the variable. I tried ~/.profile, but that seemed to have no effect.
<hwpplayer1>hi all! i have a question about package manager, i'm writing via ERC GNU Emacs so it is very similar with your package manager as far as i can see this is my first question.
<hwpplayer1>i watched the video
<hwpplayer1>i want to collaborate for spesific applications this is the second request
<hwpplayer1>like HPC and scientific calculation
<guixy>athune, try ~/.bash_profile. If that doesn't work, I'm out of ideas.
<guixy>hwpplayer1, what packages do you want?
<hwpplayer1>guixy: i don't know your approach but every Friday i volunteer to FSF Directory and there are many scientific applications with different technologies. I'd prefer python at first to write a source code base from scratch. But GNU Octave and Scilab afaik they are free and for example I added to COVID-19 Response Team's list "bioruby" and many more... but i need to listen how you work first ...
<walter[m]1>athune, I believe it's handled by (some component of) %desktop-services, maybe someone else knows which
<vagrantc>hwpplayer1: typically, people who want software added work on the package locally and then submit patches
<guixy>hwpplayer1, I usually find an application I want, check that the dependencies are available, package the missing dependencies, package the application, and check that the application builds correctly. Then I submit a patch.
<guixy>I stopped submitting patches after guix became hopelessly unstable a few months ago, and now I maintain my own channel.
<hwpplayer1>understood guixy vagrantc thanks i'll read that document asap
<hwpplayer1>what about GNU Emacs and Guix ? Are they similar ? I heard once something like that ...
<vagrantc>hwpplayer1: they both are written in lisp dialects
<vagrantc>hwpplayer1: but it's kind of comparing apples to oranges ... they do different things
<hwpplayer1>yes i see
<hwpplayer1>i mean an extensible and programmable package manager or not
<vagrantc>there are various integrations of guix in emacs ... many guix developers use emacs
<roptat>once you know how guix works and can program in scheme a bit, you can easily extend it
<guixy>There are too many undocumented parts of guix :(
<guixy>Like channel authentication through "introductions"
<guixy>You can't find anything about it outside the source.
<guixy>At least, last I checked.
<guixy>I see.
<hwpplayer1>do you have a hackathon project ? i plan one that's why i'm asking
<roptat>that's one thing guix europe wanted to organize
*vagrantc needs to remember to use manual/devel/en as the other url is often quite dated
<hwpplayer1>roptat: i think you answered my request... so i plan a hackathon over a git instance and irc communication channel is it okay for you ?
<hwpplayer1>understood neat :)
<hwpplayer1>btw only free software and copyleft licenses for contributions is it okay for you ?
<guixy>I'm going to be hacking guix all August. I know of a ton of apps that need to be packaged.
<athune>thanks guixy, ~/.bash_profile did the trick
<hwpplayer1>i see you prefer copyleft like me ...
<roptat>I do, but I'm not sure what that limitation implies
<guixy>Guix is GPL3+. Any contributions have to be GPL3+-compatible IINM
<roptat>what if I want to package a non copyleft (but free) software in guix? is that ok?
<hwpplayer1>like expat apache etc
<guixy>The package definitions are GPL3+.
<guixy>Guix is a strictly free distro, so packages are welcome iff they add free software.
<vagrantc>they just need to follow the Free Software Distribution Guidelines
<vagrantc>er, Free *System* ...
<roptat>hwpplayer1, do you have more details about that hackaton?
<hwpplayer1>understood i prefer AGPLv3+ for my network projects btw
<guixy>There are plenty of expat and BSD-licensed packages in guix. Else we woudn't have x
<guixy>I added a package a while ago that had a nonfree part. I had to remove it from the source.
<guixy>But the rest was fully functional and free.
<guixy>You don't need to clone guix to add packages. Just use a channel and add it to your list of channels.
<guixy>Fixing packages is a different ongoing issue though...
<roptat>you don't even need to pull your channel to use it, if you have a clone of it, you can use the -L option to build directly from that clone
<hwpplayer1>roptat: i planned first to volunteer Trisquel, then Milis and now i think it would be better to write a network service with AGPLv3+ during the hackathon and the rest of the parts like userspace and kernelspace will be managed by me not contributors. I'll offer a terminal and web interface for managing free network services like Mastodon, GNU Mailman, MediaWiki etc...
<roptat>it'd be bad if you had to push your changes, pull and test stuff to discover there's an issue in one of your recipes :)
<hwpplayer1>roptat: with that project there will be a distro free interface for admins and developers
<hwpplayer1>roptat: does it make sense for Guix people ?
<roptat>the guix way would be to write a service, but we'd need the package first, which can be hard because they're not written in languages we really support yet
<guixy>There are already a lot of services, but we could always use more. Try guix system search "" for a list.
<roptat>although mediawiki is written in php, so it might be doable
<roptat>I think I have a wip composer-build-system somewhere
<hwpplayer1>i'm open for new ideas but more important then i now realize that it should be vendor-free and distro-free not with a single technology such as php7.x or 8.x or python3.x or whatever because this is a training/hackathon project and people need first their comfort and freedom
<guixy>At some point you need dependencies...
<hwpplayer1>i see
<roptat>I never participated in a hackaton, so I might just not get what it is exactly
<guixy>python2.x is basically dead. Is python4.x in development yet?
<vagrantc>does guix need porting to guile-json 4.x ... or will it likely "just work" ?
<guixy>guile-json@4.0.1 is a dependency of guix.
<roptat>oh yes, I have a branch with a composer build system: :)
<hwpplayer1>i need a core community first which will have write access to organization repositories, and then committers and then contributors... committers are also have the right some parts of the repositories and contributors are who don't know but want to learn things and this project is for contributors
<roptat>and an importer, I'm impressed by myself ^^
<roptat>hwpplayer1, so you have a project in mind, and you're looking for other people to help you build it?
<hwpplayer1>roptat: i need feedback first and some mid-level programmers with their own knowledge base
<vagrantc>hwpplayer1: you might need to get less vague, otherwise it will be hard for people to know if they're interested :)
<hwpplayer1>vagrantc: yes i want to talk in short
<hwpplayer1>vagrantc: as i said six years ago : i want to volunteer to all of the free software projects... I have one single laptop but i'm interested in many projects... so it'll be good to learn everything i can ... in short making services and applications for any useful purpose
<hwpplayer1>so i prefer a terminal, desktop and web interface for a convergent platform at first
<hwpplayer1>if you like to run an Android app you may add something for that via f-droid etc
<hwpplayer1>in other words writing projects in short
<hwpplayer1>please ask if it is not clear
<guixy>g2g. Bye guix
<roptat>so you to do everything in every possible way? I don't think that's very realistic :)
<hwpplayer1>roptat: this is my goal not contributors
<hwpplayer1>contributors will do their own small parts
<hwpplayer1>it is like running GNU Emacs on different distributions
<roptat>how so?
<hwpplayer1>i think people first need to learn how to program for any small project from zero
<hwpplayer1>how so ? i think small projects from zero and managing contributions by a core community a trainer community maybe in other words
<hwpplayer1>and also i offer a kernel project for advanced programmers linux-libre contributions
<hwpplayer1>i'm available 24/7 almost for requests
<roptat>I might be too tired, but I still don't understand what you want to organize. good night!
<hwpplayer1>roptat: see you take care
<hwpplayer1>roptat: in short a training platform maybe that'll help you
<hwpplayer1>lxo: hi how are you ?
<hwpplayer1>lxo: do you have a plan for Guix at kernelspace ?
<hwpplayer1>lxo: talk to you later maybe thanks
<nckx>Good morning, #guix.
<nckx>raghavgururajan: I am now.
<lxo>'fraid I don't have any plans WRT Guix. I had plans to implement/bring in LVM support, but that was so long ago, I made zero progress, and so many other things changed that I don't expect to get myself to do even that any more. I didn't realize I was still present in the channel. that I can fix right now
<raghavgururajan>nckx: The gtk+ and webkitgtk did not get substitute
<raghavgururajan>Also, gtksourceview with groovy.
<raghavgururajan>nckx: I built gtk+ myself and now building webkitgtk, so no worries for them. I am looking for substitute for gtksourceview with groovy.
<nckx>raghavgururajan: What's the package name of this gtksourceview with groovy.
<nckx>I don't think building webkitgtk on your melty x200 is realistic but I won't stop you.
<nckx>I'm getting the hashes for gtk+/webkitgtk.
<nckx>Oh shunt.
<nckx>They just happened to get GC'd during the past 5 hours >.<
<nckx>I have a cron job that sacrifices semi-temp-gcroots when space gets really low, seems that it got triggered due to my recent troubles (turns out a 1 TiB disc image takes up almost a terabyte, who'd've thought). Sorry. I'm rebuilding them all and they'll be ready in several hours.
<raghavgururajan>nckx: Here is the hash output for `./pre-inst-env guix build gtksourceview --dry-run`
<nckx>raghavgururajan: OK, so it's just ‘gtksourceview’? You kept specifying ‘with groovy’ so I thought it was a variant.
<raghavgururajan>nckx: GC explains it. When I did guix weather, I got 33% (1 out of 3) for gtk+ and 0% (0 out of 3) for webkitgtk.
<nckx>gtksourceview is part of the current job.
<nckx>Yeah, this sucks, I lost over 500 GiB of substitutes overnight.
<raghavgururajan>Just gtksourceview. The groovy is a dep.
<raghavgururajan>nckx: Would you be able to termiate the current job and restart with webkitgtk first? So that I can stop my current build of it.
<raghavgururajan>I know it is not gonna end successfully.
<raghavgururajan>I just started the build wishfully.
<nckx>I'll just hack into the mainframe and nice -10 the webkitgtk build 🙂
*raghavgururajan terminates webkitgtk
<raghavgururajan>Btw, I was able to locally build gcr and libical successfully. Not sure, why it failed on your end.
<nckx>Interesting. It happens. My ThinkPad builds things that fail on berlin/, due to parallelism bugs or timeouts or other issues.
<nckx> doesn't scream ‘race condition’ but it certainly could be one.
<raghavgururajan>The errors in the log for libical. I have seen them before. I think one of the older definitions of libical produced that error.
<nckx>Or it's non-deterministic and you got lucky after updating. This log is for 3w5cc97wjxlilf4z0bz9cgsc1k7460x4, the same one you built in the paste above.
<raghavgururajan>nckx: Wait a sec! Thinkpad? I thought was a remote machine.
<raghavgururajan>I see.
<raghavgururajan>nckx: Never mind!
<raghavgururajan>I over looked the / part
<nckx> isn't that remote either; the host side is a VPS in Germany but the build side is my house.
<raghavgururajan>Ah I see.
<mroh>good morning #guix!
<raghavgururajan>nckx: How to escape a back-slash inside ("") of substitute* ?
<raghavgururajan>The line in the source code has a back-slash
<nckx>Double for regex, then double again for Guile.
<raghavgururajan>So, for line "foobar \", (substitute* "file" (("foobar \\\\\") ""))
<nckx>I count 5 \s.
*nckx There… are… 4… \s…!
<raghavgururajan>Oh, I thought yu meant 4 \s to escape 1 \
<raghavgururajan>> Double for regex, then double again for Guile.
<raghavgururajan>That's 2+2 right?
<nckx>No, don't think of it that way, you'll always be guessing. Think in pairs.
<raghavgururajan>I am confused.
<raghavgururajan>So, for line "foobar \", (substitute* "file" (("foobar \\\\") ""))
<nckx>I don't really know how to explain it differently. You want to match \. ‘\’ is an escape in regex, so you write ‘\\’ to match ‘\’. So you want a Guile string that contains ‘\\’, but ‘\’ is an escape character in Guile, so you write "\\\\".
<nckx>Yes, that looks correct. If it works, it almost certainly is 😉
<nckx>Oh, /gnu/store/jnv0pq34q5j0cr5zfr3ch5wdvd803nsh-webkitgtk-2.28.2 is ready.
<raghavgururajan>> I don't really know how to explain it differently. You want to match \. ‘\’ is an escape in regex, so you write ‘\\’ to match ‘\’. So you want a Guile string that contains ‘\\’, but ‘\’ is an escape character in Guile, so you write "\\\\".
<lispmacs>I think the --manifests section in the manual needs to be expanded to include more examples using (guix profiles) procedures.
<lispmacs>it took me a while to figure out how to (1) specify package outputs and (2) concatenate manifests
<lispmacs>I see now it is easy to do due to those great functions in (guix profiles)
<raghavgururajan>nckx: Is it possible to launch a binary before 'check, where the binary is produced by the package itself.
<nckx>You can INVOKE anything.
<raghavgururajan>For example, can I do (system "ibus &") in 'check of the ibus pack-def.
<nckx>raghavgururajan: For example (system "Xvfb :1 &"), or ‘start a virtual X server in the background so we can run X tests’, is very common.
<nckx>No reason it can't be (system "blah/foo/whee &") instead.
<raghavgururajan>nckx: I thought things can only be invoked if they are in PATH (inputs)
<nckx>But INVOKE can take relative or absolute file names like anything else.
<nckx>Same for system (which just spawns a shell).
<nckx>And if the binary absolutely needs to be in PATH for things to work, (setenv "PATH") 🙂
<raghavgururajan>nckx: I see. Thanks!
<raghavgururajan>Btw, I wanted to invoke dbus, so that tests programs can connect to it. But there are lot bins for dbus. Narrowing it down to three: dbus-daemon, dbus-launch and dbus-run-session. Which to use?
<nckx>I'm not a desktop guru. DBus is a magical black box to me.
<nckx>dbus-launch is like a hypothetical (with-dbus …) in Guile: you run ‘dbus-launch <real command line>’ and it will run the command with DBus running. I use it in my .xsession (‘dbus-launch … i3 …’).
<nckx>So it sounds like a good choice but I don't know what the others do.
<raghavgururajan>nckx: This situtation reminds me
<nckx>raghavgururajan: Don't forget you've got a big database of examples. I ran ‘grep -r 'system.*dbus' gnu/packages/*scm’ and ‘gnu/packages/kde-frameworks.scm: ;; (zero? (system* "dbus-launch" "ctest" ".")))))))’ popped out. It's commented out, though, so maybe it didn't actually work.
<raghavgururajan>nckx: Thanks! I am going with dbus-daemon, as that tests spit error "dbus-daemon" not running.
<raghavgururajan>I actually used invoking dbus for tests myself. That time I used dbus-run-session after several tries.
<raghavgururajan>This time, I just wanted to be sure.
<raghavgururajan>Oh, tests spit ibus-daemon not dbus-daemon. *sigh*
<nckx>That is a very different thing.
<nckx>Argh, serves a ‘helpful’ HTML page, breaking mirror fallback to
<nckx>Shame on my country.
<raghavgururajan>Which is?
<nckx>🇧🇪 o7
<raghavgururajan>I guessed not by the flag, but by the fact you mentioned at that your paying belgium price.
<nckx>That and ‘belnet’ and ‘.be’, but I guess it could've been Belize.
<raghavgururajan>nckx: So in 'pre-check I get "sh: ibus-daemon: command not found". This for pack-def of ibus.
<raghavgururajan>Should I do (setenv "PATH" (getcwd))?
<nckx>raghavgururajan: That will replace PATH, you want (setenv "PATH" (string-append ".:" (getenv "PATH"))) or so.
<nckx>No need for getcwd.
<nckx>Depends on where ibus-daemon is, of course (build with --keep-failed and see the ‘note: ’ near the end of the output).
<nckx>But wait, is that ‘command not found’ due to *your* invocation of ibus-daemon using SYSTEM or INVOKE? Because as I noted before, there's no reason to set $PATH just for that.
<raghavgururajan>I am doing this to see where the built binaries are in the cwd.
<raghavgururajan>(add-after 'build 'stop
<raghavgururajan>along with -K
<nckx>raghavgururajan: Oh, does that work now? I just add (invoke "punt") when I want to stop, since returning #f didn't used to be fatal. It just printed an easy-to-miss warning and built on.
<raghavgururajan>Yeah, it works.
<raghavgururajan>I have done it before.
<nckx>Anyway: just like in your shell or anywhere else, (invoke "./ibus-daemon") works just as well.
<nckx>OK, good to know.
<nckx>I'll stick with "punt" since on can insert it anwhere, not only at the end of phases.
<nckx>I'm off; gtkstuffthing is building. o/
<raghavgururajan>nckx o/
***apteryx_ is now known as apteryx
<rekado>I use (error 'foo)
<Rovanion>I want to find which package provides a binary named `host`. Is there an equivelant of `apt-file search host` on Debian and `yum whatprovides host` on redhat in Guix?
<mroh>Rovanion: host is in bind:utils and no, currently, there is no such equivalent in guix.
<Rovanion>Thank you for the straight answer!
<raghavgururajan>If `guix build` takes forever to start, then I was told that it is dur to circular dependency.
<raghavgururajan>But what if the 'check phase takes forever?
<raghavgururajan>The process just hanged in middle of tests, and never continued for forever.
<rekado>raghavgururajan: did you perhaps start a blocking process without backgrounding it?
<raghavgururajan>rekado: ^
<raghavgururajan>rekado: May be, should I use (system "./bus/ibus-daemon --daemonize") instead of (system "./bus/ibus-daemon &")
*raghavgururajan will be back in 15min
<jonsger>hm. CI doesnt have any successful evaluations recently :(
<efraim>If you think that's it it'd be a good reason to move it to a pre-check phase to see
<raghavgururajan>efraim: I tried --daemonize. Same issue.
<raghavgururajan>efraim: it is already in 'pre-check phase.
<raghavgururajan>rekado , efraim : New diff ^
<peanutbutterandc>Hey there
<raghavgururajan>peanutbutterandc, o/
<peanutbutterandc>raghavgururajan, Hey! :)
<peanutbutterandc>I have a question... regarding makefiles...
<peanutbutterandc>Can one not use (call macro,param1,param2) as a prerequisite of a target in a makefile? o.O
<peanutbutterandc>@echo $(call macro,param1,param2) works just fine, but putting the same call as a prereq (to dynamically figure out the prereqs w/o code-duplication) gives me an empty $^. :/
<raghavgururajan>rekado: Wait, what did you mean by blocking process?
<Rovanion>How would I go about running a 32-bit x86 ELF binary on a Guix system? On a Debian system I would install something along the lines of ia32-libs and then it would run.
<raghavgururajan>rekado: It was xorg server that caused trouble
<leoprikler>peanutbutterandc: you can use macros to write the rules themselves with some trickery
<leoprikler>I did that some years ago
<peanutbutterandc>leoprikler, I am just a beginner. And I am writing an 'uninstall' target. And I have a macro that figures out what has been installed, so as to uninstall them. But the macro $(call macro,param1,param2) doesn't work. What is strange is, if I use the body of the macro in place of the prereq, it works. I think I've hit some obscure wall with make. :(
<leoprikler>that is certainly weird
<leoprikler>looking at my own code, I have the following:
***sputny1 is now known as sputny
<leoprikler>$(call a,b,c): $(call d,e)
<peanutbutterandc>leoprikler, Could you please take a look at this: ?
<leoprikler>i.e. using macros not only to figure out the dependencies, but also the name of the target itself
<peanutbutterandc>You've got macros on both sides...
<leoprikler>I'm not digging the assignment to get-symlinks-to-files-in
<leoprikler>would it work if you used get-installed-items instead?
<peanutbutterandc>leoprikler, It didn't... but I'll try again
<peanutbutterandc>leoprikler, Nothing
<Kimapr>do we have anttweakbar yet?
<leoprikler>and you do have the scripts installed, don't you?
<peanutbutterandc>leoprikler, Affirmative, captain
<leoprikler>okay, let's try something else
<peanutbutterandc>Please run it yourself, too, with some dummy .scm files. It is currently using /tmp/gimp-dir anyways...
<peanutbutterandc>it works if I put @echo $(call .....) in the recipe
<leoprikler>Okay, this is quite hacky, but:
<leoprikler>$(foreach link,$(shell find $(GIMP_SCRIPTS_DIRECTORY) -iname '*.scm' -type l),$(if $(filter $(CURDIR)%,$(shell readlink -f $(link))),uninstall-scripts: $(link)))
<nckx>raghavgururajan: A blocking process is one like ‘guix-daemon’ or ‘cat’, that doesn't fork itself into the background and return immediately. Hence the ‘ &’ to send Xvfb to the background earlier. Otherwise it runs *instead* of your program, not at the same time.
<peanutbutterandc>leoprikler, That's quite hacky...
<leoprikler>Well, so is the idea of using macros to do this stuff
<leoprikler>automake exists, you know?
<peanutbutterandc>leoprikler, Hmm... I'm new to make so it might be a while before I move on to automake... But yeah...
<peanutbutterandc>leoprikler, Thank you, nevertheless. You've been the only one who's been of any help :)
<leoprikler>I highly suggest using Automake *before* diving into the deep rabbit hole of macros or other unportable features.
<peanutbutterandc>leoprikler, I see. Perhaps after after I complete the book on make that I've been reading. I'm sure I won't dive that deep...
<leoprikler>The thing you're trying to achieve is a couple of lines if you're willing to abstain from wildcards.
<peanutbutterandc>leoprikler, Umm.... how might that be...?
<peanutbutterandc>leoprikler, Sorcery! What would I name the file? And how would I go about generating a makefile out of it?
<peanutbutterandc>so it is supposed to be two files
<peanutbutterandc>silly me
<peanutbutterandc>so what do i do now? ./configure?
<leoprikler>autoreconf -vif; ./configure; make
<leoprikler>it copies instead of symlinking, but imo symlinks are evil
<leoprikler>(especially if done this way)
<peanutbutterandc>leoprikler, "symlinks are evil" says someone who is in #guix :P
<peanutbutterandc>guix install-ing autoconf
<leoprikler>Guix has heavily controlled and audited symlinks ;)
<leoprikler>But yeah, my wording was unclear
<leoprikler>what I meant was "installing software through symlinks"
<leoprikler>e.g. what some other distros do by installing stuff in /opt and then symlinking it to /usr/bin
<peanutbutterandc>leoprikler, Haha guix does that too: for foreign distros: from ` ln -sf "${var_guix}/bin/guix" "$local_bin"`
<peanutbutterandc>But I think I get the idea
<leoprikler>That's why you should use Guix System ;)
<peanutbutterandc>But I kinda' like symlinks in this case. I can make changes to my gimp plugins in the source tree and they show up in gimp. Pretty neat
<peanutbutterandc>I was heavily inspired by:
<peanutbutterandc>Also, I think there ought to be people who absolutely love guix (me) who still will stay on a foreign distro (fear of intimacy - also me) so that foreign distro issues will be reported/fixed (my contribution to does make guix ready to use out-of-the-box for a foreigner). :)
<raghavgururajan>nckx: Gotcha!
<leoprikler>Well, sure, many people sadly depend on other distros for some stuff and we can't really hope to replace that for them.
<leoprikler>But really, what is a distro except for its package manager?
<peanutbutterandc>leoprikler, True. But now, with guix, I have the ability to distro-hop without any issues. guix is my primary package manager :)
<nckx>raghavgururajan: Everything's finished by now except gcr (→gvfs) which always fails here due to a timing issue: Bail out! Gck:ERROR:../gcr-3.36.0/gck/test-gck-slot.c:110:test_slot_info: assertion failed: (927623999 == token->utc_time)
<raghavgururajan>> leoprikler‎: But really, what is a distro except for its package manager?
<raghavgururajan>How it distributes the packages: roll vx lts, vanilla vs hardened etc.
<leoprikler>That's just an aspect of package management imo.
<raghavgururajan>nckx: thank you. I will check now. It is fine if gcr and thus gvfs fails. I can build them myself, provided, there dependencies are available as substitutes.
<raghavgururajan>> That's just an aspect of package management imo.
<raghavgururajan>Hmm, yeah. Makes sense.
<nckx>They should be. Your Guix should transparently fall back to building locally.
<raghavgururajan>> leoprikler‎: That's just an aspect of package management imo.
<raghavgururajan>But same package manager can be used to create different natures of system. Like Arch vs Parabola vs Hyperbola. All use pacman. But they all have difference upstream development.
<raghavgururajan>But guix's approch is novel. With guix, different systems can be generated without needing different distros (separate development process).
<raghavgururajan>nckx: Works \o/
<Rovanion>Does anyone happen to know where I can find readelf? I've installed elfutils and also tried elfutils:bin but its not on my system.
<leoprikler>raghavgururajan: That may sound revolutionary until you consider Gentoo.
<janneke>Rovanion: readelf is part of binutils
<raghavgururajan>> leoprikler‎: raghavgururajan: That may sound revolutionary until you consider Gentoo.
<raghavgururajan>I never tried it. Should do it.
<leoprikler>Don't get me wrong, Gentoo is still a step back from Guix.
<mjw>Rovanion, eiflutils provides eu-readelf which is similar
<janneke>omg, we not only don't have fdisk on i686, we also don't have magit :-(
<janneke>and i'm not even talking hurd
<stikonas>leoprikler: yeah, Guix seems to go quite a bit further than Gentoo, although some things can be easily ported (e.g. bootstrapping of go/java/rust can be done one gentoo too)
<janneke>"easily ported"
<stikonas>a couple of weekends for java, a couple for rust...
<janneke>stikonas: whoa, that's impressive!
<stikonas>it's not even exactly "stolen" from guix. E.g. Guix builds icedtea-1 and I skip it
<stikonas>instead I patched ecj 4.2 to build with jamvm and went for icedtea 2 directly
<janneke>stikonas: nice, can guix "steal" that back?
<stikonas>janneke: I think so, but I need to either familiarize myself with scheme more or somebody else can try to do it
*janneke feels that reviewing by redoing and improving other's work in a different setting warrants a friendlier word than "stealing"
<stikonas>"stealing" is not offensive in this context :). Everybody uses it for some reason and everybody knows the context
<janneke>stikonas: right; such things need time and love
<stikonas>perhaps I'll find some more time at some point...
<janneke>stikonas: i didn't hear offence, but i would still love to see a word esp. for when a conversaton like this is taken out of context
<janneke>*nicer word
<stikonas>well, "borrowing" is a bit nicer
<janneke>yeah, borrowing would work for me
<janneke>i love it when i see more sharing between distributions
<civodul>hey! interesting graph:
<janneke>oh, we need a live variant of that
<civodul>yeah, but we should strip the points above Guix :-)
<civodul>i'm really curious about Nixpkgs
<civodul>it's "easy" to be at the top by continually updating
<civodul>but it's harder to have something that actually builds, works, and for which users would get substitutes
<civodul>we should learn (and borrow! :-)) from them
<janneke>it would be interesting to see this divided by the number of contributers/packagers
<civodul>they have this "guix refresh" kind of continuous updater:
<efraim>Do they use travis-ci or something similar to try building all the affected packages?
<civodul>i *think* they use Hydra
<civodul>there's no doubt that a large part of the work can be automated
<civodul>but the devil in the details!
<civodul>(there is the devil)
*civodul fails to write grammatically-correct English
<efraim>I feel like perl is mature enough that most version bumps just work, python always seems to need some massaging to get everything working again
<efraim>I was thinking of packages but I guess for the language itself too
<civodul>i wonder how often an update needs work beyond just updating the version and hash
<efraim>Some of that falls back to the question is it already broken
<efraim>And there's raghav_gururajan working on actually reviewing a bunch of staging and core-updates packages to make them better
<efraim>In terms of trying to figure it out I normally start by trying to track down the dependants of whatever I'm using and bump those. And then follow the rabbit hole to fix whatever that breaks
<cbaines>hopefully we'll be able to automate parts of updating packages some point soon
<cbaines>It's possible now to have the Guix Build Coordinator send build information to the Guix Data Service, which is something I've been wanting so that you can compare the effect a change has on builds, and detect when things break or get better
<janneke>any advice about running "guix system init" on a second partition, wrt the grub menu, history and all?
<janneke>we have (menu-entry (label "The Other Distro") ...) but that doesn't really nail it
<janneke>running guix system reconfigure instead could work, but how would i get the store on the target partiion updated?
<gnutec>I see Flightgear! Nice! Is there a simulator of F1 lost out there? :) I install colobot.
<nckx>gnutec: Our Flightgear package works (last I tried) but is two years old. Love welcome!
<gnutec>nckx: I have a notebook with Core i3 with 2GB of memory. I think I need more to play Flightgear. :(
<nckx>Performance probably won't be great. The system requirements aren't ridiculous ( but you'll probably be very limited by your GPU and lack of dedicated video RAM.
*nckx AFK.
<gnutec>nckx: Really? Nice!
<gnutec>nckx: I'll take 2GB of internet in a promo to create a fintech account, then I'll install Flightgear. rsrsrsrsrs
<raghavgururajan>sneek, later tell nckx: Could you build /gnu/store/f2v9974yifcwyjpp9iir3xm7mfc0ybm8-webkitgtk-2.28.2.drv ? Same repo and branch as last time. But commit is 22a2223594.
<sneek>Got it.
<nckx>gnutec: Er, ‘not great’ here could mean 20 FPS or 2, I have no idea 🙂
<sneek>nckx, you have 1 message!
<sneek>nckx, raghavgururajan says: Could you build /gnu/store/f2v9974yifcwyjpp9iir3xm7mfc0ybm8-webkitgtk-2.28.2.drv ? Same repo and branch as last time. But commit is 22a2223594.
<alextee[m]>we dont have a tta decoder?
<alextee[m]>o.o we need more packagers geez
<nckx>No argument there, but a TTA decoder ain't the most mainstream thing either.
<nckx>(Or it would be part of gst, Q.E.D. 😛)
<nckx>raghavgururajan: Your hash for geoclue is still bogus, it should be 13fk6n4j74lvcsrg3kwbw1mkxgcr3iy9dnysmy0pclfsym8z5m5m.
<nckx>Please fix it on your end so I don't have to baby-sit the build.
<nckx>It also changes the hash, so I've built /gnu/store/i024mscydsk26wdv1gi4gmqwznhagcp5-webkitgtk-2.28.2.drv instead. Once you change the hash so will you. Enjoy.
<raghavgururajan>nckx: You dont have build webkitgtk.
<raghavgururajan>I actually fixed it via rebase.
<raghavgururajan>Sorry, I assumed you are gonna re-pull.
<nckx>Well, it's built 🤷
<nckx>raghavgururajan: I did!
<nckx>22a2223594 still has 0a833x5apzabxj80ywvsh8crd635vni2i9v9c1p095f6hvmfc45k.
<alextee[m]>nckx: i built it! \o/
<alextee[m]>i have a few packages pending to send
<raghavgururajan>Yeah, it is already built during last job.
<alextee[m]>i should stop being lazy and submit them
<raghavgururajan>nckx: I was shown that webkitgtk was gonna build because of that hash mismatch. But I have fixed it now.
<nckx>OK. You got it then. Looking at my logs ‘someone’ downloaded the right webkitgtk already, and I doubt anyone else is using wip-desktop.
<raghavgururajan>Yep, that was me. :-)
<nckx>alextee[m]: Yay! Thank you.
*nckx AFK for most of the day.
<PotentialUser-35>How can I cross-compile a BeagleBone Black installation image on a computer with a x86_64 intel cpu?
<PotentialUser-35>I tried this command : guix system disk-image --target=arm-linux-gnueabihf -e "(@ (gnu system install) beaglebone-black-installation-os)", but it fails to compile linux-modules.
<gnutec>nckx: Yeh! I have problems to run red-eclipse. But it's OK! I'm have fun with colobot. :)
*janneke just booted guix/hurd on real iron
<efraim>You can't leave us hanging like that!
<civodul>janneke: noooo????!
<civodul>now we want a picture of happy janneke next to the laptop!
<civodul>(or janneke scratching head staring at a boot failure :-))
<janneke>civodul: yeah!!!!!
*janneke is searching for a command that would show "guix hurd on real iron"
<janneke>it all looks awfully much like a VM
<janneke>...and "someone" "should" (ahum) get that build farm going!
<efraim>Uname -a?
<janneke>efraim: identical to my VM: "GNU vuurvlieg 0.9 GNU-Mach 1.8/Hurd-0.9 i686-AT386 GNU"
<janneke>apparently, lspci should show that -- but i didn't include that during system reconfigure
<vagrantc>janneke: you could capture the photons output by some display :)
<NieDzejkob>unfortunately, humanity has invented fullscreen
<NieDzejkob>people will just have to believe it's
<vagrantc>well, guile-gnutls on guile 3.x is in debian experimental now ... so i need to update all of guix's dependencies to also build on guile 3.x ...
<NieDzejkob>pro tip: don't announce it on april 1st
<janneke>yeah, sure
<janneke>still, some teaser in ascii is nice
<vagrantc>i know, the photons are really small and difficult to grab meaningfully
<rekado>I added the hurd-vm service to the head node (as a sanity check) and I also cannot connect to it when it is started via shepherd.
<rekado>another thing that’s unexpected is that the SSH host key appears to change
<janneke>rekado: ah, the SSH host key; yet another thing i didn't think of
<janneke>as we're using --snapshot it's completely volatile, so the (default) ssh service regenerates the host key each time anew
<janneke>maybe open a bug on these issues, to collect thougths/experiences, dunno?
<apteryx>Am I the only one for whom tab doesn't move fields when filling PDFs with Evince?
<terpri>here's a bit of an odd bug -- in icecat, sound is badly distorted when playing videos on *some* sites, notably twitter (generally sounds garbled and deep-pitched)
<terpri>for example...let me find an 'apolitical' example...
<terpri>but it sounds fine in the flatpakified firefox dev edition from , which presumably bundles its own pulseaudio libs etc.
<terpri>not all sites, e.g. youtube is fine, but twitter videos and occasionally videos from news sites, etc. have badly distorted audio
<terpri>any ideas on where to start debugging? :)
<cbaines>I experience that too, there's this open issue about it
<terpri>ah, thanks for the bug link
<jonsger>terpri: that's for h264/h265 videos
<rekado>disabling media.mediasource.mp4.enabled has the same effect of fixing distorted videos (and disabling some others)
<rekado>so I guess this is about firefox using a different plugin when mp4 is disabled
<terpri>jonsger, you mean the distortion only happens with h264/h265? i guess youtube might be sending webm or something
<jonsger>terpri: vp9. webm is only the container. av1 is also fine and I guess vp8 as well
<terpri>let's see if this free "devtools media panel" addon still works
<terpri> (
<terpri>it does with icecat \o/
<terpri>and is much more informative than watching the "network" devtools tab (the addon adds a Media-Webrtc tab to the devtools panel)
<terpri>broken in ff dev edition though
*** sets mode: +o ChanServ
<terpri>rekado, thanks, toggling media.mediasource.mp4.enabled fixed twitter video playback at least
<terpri>i don't understand *why*, because the media devtools still says it's using mp4: "Audio Decoder(audio/mp4a-latm, 2 channels @ 44.1kHz)", same as before
***CcxWrk_ is now known as CcxWrk
<rekado>is icecat using gstreamer plugins?
<rekado>if so, can we figure out which of the plugins it is using?
<rekado>is it using the libav plugin or the -good/-bad/-ugly plugins?
*** sets mode: +o ChanServ
<jonsger>terpri: oh that's a nice trick, so I don't need chromium for watching videos anymore :)
<terpri>rekado, dunno, i'll check. "cubeb" is a potentially relevant project here, it's a cross-platform audio library which i believe firefox uses for playback
*** sets mode: +o ChanServ
<terpri>rekado, ff's testing scripts install gstreamer in the testing containers/etc., so it may depend on gstreamer at some level. but gstreamer isn't mentioned otherwise in the source
<terpri>and, firefox uses at least bits and pieces of ffmpeg, e.g. media/ffvpx ("This directory contains files used in gecko builds from FFmpeg")
<terpri>"Currently, we only use the vp8, vp9, mp3, and flac portion of the library." (quotes from README_MOZILLA)
<terpri>ah yes, gstreamer support was in fact removed in 2016:
<terpri>firefox *also* seems to have a copy of libav bundled, in dom/media/platforms/ffmpeg
<terpri>ok, cubeb is probably irrelevant here, i'm guessing it's just a library to send a raw audio stream to the os
<NieDzejkob> results in a 500 Internal Server Error
<terpri>this is what the "mediasource" in "media.mediasource.mp4.enabled" seems to refer to:
<terpri>(N.B. not a DRM spec)
<terpri>and indeed, watching the network devtools tab with that config toggled on or off:
<terpri>if disabled, icecat GETs a .mp4 file from
<terpri>if enabled, icecat first fetches some js files, with names like[...].js suggesting a custom video player,
<terpri>then fetches (for that talking heads video,,
<terpri>actually a couple of .m3u8 files,
<terpri>then incrementally downloads .ts chunks (mime type video/MP2T), e.g.
<terpri>(apologies for the extended examples from a nonfree-js site, i haven't run across this problem on, e.g., ActivityPub-based services yet)
<terpri>the mp4 file url, for comparison, is
<terpri>(the mp4 file it fetches when MSE is disabled)
<terpri>the three m3u8 files it downloads when MSE is active are:
<terpri>which actually appear to each correspond to the full video in different resolutions (and maybe other differences),
<PotentialUser-47>Is it possible to cross-compile a BeagleBone Black installation image on a computer with an x86 processor?
<terpri>and mpv, for example, has no trouble playing them (just running mpv $URL)
<terpri>though for all of the m3u8 files, mpv reports lots of "packet corrupt" errors like "[ffmpeg/demuxer] mpegts: Packet corrupt (stream = 0, dts = 7013100).", though it plays correctly nonetheless
<terpri>for the mp4 file, mpv says the audio format is "aac 2ch 44100Hz"
<terpri>"(+) Audio --aid=1 (*) (aac 2ch 44100Hz)", to be exact
<terpri>and mpv reports three audio streams in that first m3u8 file: "Audio --aid=1 'bitrate 256000' (aac 1ch 44100Hz)", "Audio --aid=2 'bitrate 832000' (aac 2ch 44100Hz)", "(+) Audio --aid=3 'bitrate 2176000' (aac 2ch 44100Hz)"
<terpri>and with the other m3u8 files, just one audio stream in each, both 44 kHz aac, 1ch in one and 2ch in the other
<nojr>Hi, my GIMP installation on a foreign distro wont pick up any plug-ins I set in the plug-ins folder
<terpri>so that means it can't be an issue with the audio format itself, as they're all AAC streams. does that sound correct?
<terpri>although...the "packet corrupt" errors ffmpeg reports (when demuxing under mpv) do seem slightly suspicious, maybe it's an error that the versions of ffmpeg/libav bundled with icecat can't cope with?
<terpri>(also worth noting that mpv only spams the terminal with those errors for a second or two during initial loading, maybe while buffering)
<gnutec>Just looking for simulators like flightgear in f-droid and I don't find out anything. :( But I find out a new, and better, text editor to replace the "Retro Text Editor". "Editor" is free software GPLv3. Tips: GPLv3 apps is all very good in f-droid. Apache 2.0 licence apps are the worst.
<terpri>gnutec, thanks for the recommendation, definitely looks nicer than retro text editor, which i had been using
<terpri>i'll keep retro text editor installed though, just in case i want to feel like i'm using a tiny ms-dos laptop sometime ;)
<gnutec>terpri: Yep! Non GPLv3 app is terrible in f-droid. I don't know why.