IRC channel logs

2017-01-21.log

back to list of logs

<adfeno>With 0.10.1
<buenouanq>I wish it automatically republished things you downloaded.
<adfeno>Indeed that would be great buenouanq :)
<buenouanq>there would be a lot more (at least temporary) seeders of things
<adfeno>I think I might open issue suggesting that.
<buenouanq>does the torrent terminology carry over to this?
<adfeno>buenouanq: ???
<adfeno>Perhaps.
<buenouanq>peers, seeders, leechers, etc
<adfeno>(seeding, leecher, etc)
<adfeno>I guess...
<adfeno>So, GNUnet would be leechers by default. :S
<buenouanq>well, we here right now can decide before it takes off it that's something we want to keep or start pushing for something else specific to gnunet
<adfeno>I don't know exactly. Perhaps #gnunet can give more input.
<mekeor>so, i'd like to run a local script which runs many other local scripts which use `#!/usr/bin/env bash` as shebang. how can i run it in GuixSD?
<ZombieChicken>What is keeping you from just running them?
<mekeor>there is no /usr in GuixSD
<cbaines>You could run them using bash, as in, bash foo-script.sh
<buenouanq>or change them to just /bin/sh
<cbaines>using either bash on the PATH as above, or use an absolute path to the bash executable
<mekeor>i guess, i will run something like: sed -i $(git grep /usr/bin/env | cut -d : -f 1)
<buenouanq>hack the planet
<ZombieChicken>Someone been watching Hackers recently?
<mekeor>what's that?
<ZombieChicken>it's a movie
<ZombieChicken>One scene one of the protagonist is getting arrested and yelling "Hack the planet" over and over again
<ZombieChicken>whoa
<mekeor>damn. i replaced all occurrences of the wrong shebang with the good one. but it still doesn't work because the script downloads scripts which still contain the wrong shebang... :(
<ZombieChicken>This sounds like a rather complex problem that will be nontrival to solve. Mind if I ask what this script is doing?
<mekeor>it's the try-reflex script from https://github.com/reflex-frp/reflex-platform/
<adfeno>Oh boy.... :S
<mekeor>yeah, shebangs are a quite big issue actually in guixSD
<ZombieChicken>Well
<ZombieChicken>there is the option of adding a symlink in to /usr/bin
<ZombieChicken>then remembering to remove it
<ZombieChicken>but are you trying to install the Nix package manager in a Guix enviroment?
<ZombieChicken>ah, nvm
<mekeor>ZombieChicken: in fact, try-reflex invokes installNix which downloads the nix binary...
<mekeor>well. maybe i should just give up on it
<mekeor>this particular case is not so important for me.
<ZombieChicken>I think the simplest option is to hope the scripts don't make excessive use of paths and simply symlink /usr/bin/env to your env implementation then remove the symlink once the install is done
<mekeor>but still, wouldn't it be a good idea for GuixSD to have a /usr/bin/env symlink by default?
<mekeor>ZombieChicken: why remove it?
<ZombieChicken>and maybe fill a bug report with both guix and the your software so they will think some about how to resolve the issue
<ZombieChicken>mekeor: iirc, where the symlink points may well move in the future, meaning it isn't useful in the long term
<ZombieChicken>I could be wrong, though
<mekeor>there is a symlink at /run/current-system/profile/bin/env
<ZombieChicken>Is it smart to symlink to a symlink?
<mekeor>it works
<ZombieChicken>works != smart always
<ZombieChicken>Up to you
<ZombieChicken>Might make a measure of sense for Guix to provide a minimal bind-mount or something at /usr/bin to handle these kinds of cases
<mekeor>ZombieChicken: /bin/sh is a symlink to a symlink, too
<ZombieChicken>Interesting
<mekeor>how to use cabal-install within GuixSD? – cabal isn't compatible with GHC_PACKAGE_PATH variable which is used by GuixSD
<mekeor>mekeor: checkout https://lists.gnu.org/archive/html/help-guix/2016-12/msg00038.html
<atw> https://lavabit.com/ DIME was just released! I hate to say "this should get packaged" and not be able to do it, but...that would be pretty cool! (repos: https://github.com/lavabit/)
<sneek>Welcome back atw, you have 1 message.
<sneek>atw, ng0 says: possible because I use a shorter source uri format.
<bavier>atw: libdime doesn't look too difficult to package
<bavier>that it bundles zlib and openssl is concerning though
***atw`` is now known as atw
***jonsger1 is now known as jonsger
***jonsger1 is now known as jonsger
***jonsger1 is now known as jonsger
<enoeht>can anyone tell me how or point me to the documentation that details the process of getting the source code and exteding a current guix package
<adfeno>enoeht: You can do:
<enoeht>:)
<ng0>for people using fish as their shell, my completions are now in a rather usable state. it's still not ready to be included somewhere, but whoever wants to give it a try: https://pagure.io/fish-guix
<adfeno>enoeht: guix build --source [package]
<adfeno>or: guix build --sources=[level] [package]
<adfeno>Note that these two do different things, it depends on what you want.
<ng0>on completions: is there a maximum level for the verbosity switch?
<enoeht>ok, running guix build downloaded the tar, I'm guessing I just extract it, run guix evironment [package] and start hacking right?
<ng0>I gave packaging evolution a try (found it on an very old TODO list), turns out either the application is wrong or we need to update some GNOME components
<ng0>and EVOLUTON_DATA_SERVER is not found. that's just my first approach without patching anything or even looking at the sources :)
<ng0>is this common, that data server is not found?
<ng0>and: Requested 'camel-1.2 >= 3.22.4' but version of camel is 3.22.3 ... guix package -s "camel" returns 0 results
<ng0>times where I would want e-file for guix
<ng0>maybe 3.22.4 or 3.22.2 will do.. 3.22.4 of evolution was just released on 16th
<civodul>Hello Guix!
<ng0>and what happened to california? is gnome still developing that? the latest is 0.4.0 which was last uploaded in march of 2015
<enoeht>any more info about the compiling process? I thought I had to clone git://git.sv.gnu.org/guix.git copy the package scm change my environment to point to the clone and develop from there right?
<ng0>more or less.. I have a build-clean-bootstrap function which does setup a new repo, includes: make clean-recursive; ./bootstrap; ./configure --localstatedir=/var; make ... assumes you have all the dependencies for developing :)
<enoeht>and another question, I'm doing some development on icecat but it doesn't have it's own scm file, only a patch where do I find the package definition for it?
<ng0>gnuzilla
<ng0>(gnu packages gnuzilla)
<ng0>you can find out the location by doing guix package -s $package
<ng0>for icecat, location: gnu/packages/gnuzilla.scm:304:2
<enoeht>ah ha
<civodul>enoeht: or you can run "guix edit icecat"
<civodul> https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-edit.html
<ng0>I asked a question about the questionable "you can not edit the search engines" in icecat developent list a while ago but never received any replies.. I hope we can include this fix if I come up with one?
<ng0>because it's plain bs.. upstream firefox allows this since forever
<ng0>why should icecat forbid it?
<ng0>s/?//
<enoeht>and why is javascript so slow in icecat?
***jonsger1 is now known as jonsger
<jonsger>enoeht: maybe because LibreJS?
<ng0>hrm... what's wrong with the keyservers
<ng0>all, including onions are gone for me
<ng0>had to restart all gpg daemons
<enoeht>I'm getting an error with guix refres:
<enoeht>guix refresh: warning: failed to load '(enoeht gnuzilla)':
<enoeht>ERROR: no code for module (enoeht gnuzilla)
<enoeht>what code is it expecting?
<ng0>for git-download, how do I select a branch which is not "master"? for example, I want branch "tor-browser-45.6.0esr-6.0-1"
<enoeht>you clone the repo then run git checkout -t origin/branch-name
<ng0>no
<ng0>git-download as in the function for guix packages
<enoeht>what i did was go to the github page, find out the commit hash you want and use it as the hash
<ng0>the commit id is unique on each branch? okay this would work then
<ng0>it has to.
<mekeor>ACTION is sad he can't come to FOSSDEM
<mekeor>there are som quite nice events on Guix at FOSSDEM: https://fosdem.org/2017/schedule/track/gnu_guile/
<mekeor>do you know whether they will be recorded?
<cbaines>mekeor, they will be
<cbaines>but they were last year as well, but for some reason, the recordings were lost, or at least unavailable
<mekeor>i hope, we will be able to watch them online
***jonsger1 is now known as jonsger
<mekeor>what's the work-flow to code on official guix-packages?
<cbaines>mekeor, if by official you mean packages in the Git repository, you just make changes, and then send patches to guix-devel@gnu.org
<ng0>uh. does our git-download use "shallow-clone" ? either the source right now is very big or we don't use shallow
<cbaines>There is a section on contributing in the manual, including information on sending patches https://www.gnu.org/software/guix/manual/guix.html#Contributing
<mekeor>thanks
<civodul>cbaines, mekeor: the recordings of a couple of talks from last year were lost, but the others are at https://gnu.org/s/guix/help/#talks
<civodul>davexunit, mark_weaver: do you know how to add the GHM videos on-line? https://savannah.gnu.org/task/?14181
<civodul>too bad we fail to upload videos when we have them
<cbaines>Ah cool, I don't think I've watched the videos from the last GHM
<civodul>i was waiting for them to show up on audio-video.gnu.org but 6 months later they're still no there :-/
<civodul>*not
<civodul>if you'd like to become a member of the "audio-video" group, that could help :-)
<ng0>yeah seems like we don't use shallow clone
<ng0>I expected that we do this, as the download directory matters only to the specified commit
<ng0>anything beyond it is pointless
<cbaines>civodul, in case this is useful, the link to the 2nd talk on this page is broken http://videos.rennes.inria.fr/Workshop-GNUHackersMeetings2016/index-WorkshopGNU2016PartTwo.html
<cbaines>the filename needs expose- at the start
<cbaines>I spent a bit too long wondering why VLC and Gnome Videos in Guix wouldn't play a HTML 404 page...
<ng0>is there a reason why we do a full checkout of git repositories with the default git-download? if there's none, I will create a patch to add the shallow-clone thing gentoo uses in git-r3.eclass, which makes use of some git functions
<ShalokShalom>hi there :)
<cbaines>ShalokShalom, hey :D
<ShalokShalom>i am interested to ship one app to each distro
<ShalokShalom>i currently read the manual :)
<civodul>cbaines: oops :-)
<civodul>cbaines: unfortunately i don't have control over that page either
<ShalokShalom>so GuixSD is an OS?
<ShalokShalom>it it offers the most easy way to come to my goal?
<ShalokShalom>does it run in VM?
<ShalokShalom>i really want to pack just one single application :)
<cbaines>ShalokShalom, yep
<ShalokShalom>fine, thanks
<ShalokShalom>i guess more stable as on real hardware directly?
<ShalokShalom>what is the difference between Guix and Nix?
<cbaines>It sounds like you are looking to try and use Guix to produce some blob that can be used to run an application on any OS, is that correct?
<adfeno>Wow.
<adfeno>What a good stretch. I laugh.
<enoeht>by blob do you mean "closed source" binary
<ShalokShalom>cbaines: Guix supports Linux only, or?
<ShalokShalom>That is enough to me
<adfeno>I would use "non-free" instead of just "closed source", open source misses the point of free/libre.
<ShalokShalom>All platforms is even nicer
<cbaines>ShalokShalom, GuixSD only supports Linux currently
<ShalokShalom>adfeno: which strech?
<ShalokShalom>yes, thats fine
<ShalokShalom>to me
<ShalokShalom>so long as it is easy :)
<cbaines>but I think Guix (the package manager) is usable under the GNU Hurd
<ShalokShalom>thats the tool i like to build: https://github.com/KaOSx/isowriter/blob/master/README.md
<adfeno>ShalokShalom: The stretch i referred to is in regards to cbaines's message.
<ShalokShalom>ah i see
<ShalokShalom>long complete sentences are also in english rare, as it seems :P
<mekeor>so, let's say i want to upgrade a Guix package in the official Git repository. i edited the code of the package, now i want to test and install it. how to do so?
<adfeno>mekeor: You do this:
<cbaines>mekeor, there is one approach to this documented in the manual in the Building from Git and Running Guix Before It Is Installed sections
<adfeno>guix build -f [Path to new package recipe]
<adfeno>Oh, cbaines also has other method.
<adfeno>I use the first line I just sent, and after that, I do:
<adfeno>guix package -f [Same path as before]
<ng0>"make; ./pre-inst-env guix build foo" if you are inside the git repository
<mekeor>adfeno: guix build -f my-package.scm # leads to: error: #<unspecified>: not something we can build
<adfeno>mekeor: You have to change the recipe slightly so that #:use-module is reverted back to scheme's use-modules
<adfeno>And have to remove/comment one level of parentesis: define-public.
<mekeor>i see. you mean like, commenting out "(define-public my-package" and such, right?
<mekeor>yeah
<adfeno>All that I just said is needed if you use -f option.
<efraim_>ShalokShalom: there has been some work to be able to export a standalone executable, but currently I dont believe one exists
<mekeor>ng0: there is no Makefile. just a Makefile.am
<mekeor>and the ./configure script errors saying: cannot find install-sh, install.sh, or shtool in build-aux "."/build-aux
<mekeor>and of course, there is no ./pre-inst-env script either
<cbaines>Try running ./bootstrap
<mekeor>ah, perfect :D
<cbaines>I have a reasonably reliable alias for building Guix: guix environment --fallback --pure --container -N guix -- sh -c "pwd; make clean; ./bootstrap && ./configure --prefix=/ && make -j4"
<mekeor>cbaines: do you use guixSD?
<cbaines>Yes, but I also use Debian at the moment
<cbaines>I'm using GuixSD at the moment :)
<mekeor>i was thinking about the --localstatedir parameter for ./configure which the manual says should be used on guixSD
<mekeor>should i specify --localstatedir=/var ?
<cbaines>I don't think it makes much difference
<cbaines>If I remember correctly, it can make a difference when using make install, and when accessing build logs through the Guile API
<mekeor>in the git repo of guix, i did `guix environment guix`, then `./bootstrap`. but when i run ./configure, the script errors saying bzip2 is missing.
<mekeor>so, i guess, bzip2 is missing in the guix environment?
<mekeor>or maybe, i'm still not really understanding environments. gotta read it properly when i have time
<mekeor>oh, ./configure just required me to specify --localstatedir=/var
<mekeor>ACTION is realizing enoeht asked similar question about packaging in the git repo just today
<ng0>hrm.. read-line is not in (ice-9 popen) ?
<ng0>oh, rdelim
<ng0>no wonder my attempts did not work
<mekeor>i broke guix. it get this error: '/var/guix/daemon-socket/socket': Connection refused. but the guix-daemon is actually running
<cbaines>Does that file exist?
<mekeor>yes
<cbaines>Ok, what is the ownership/permissions like
<cbaines>On the GuixSD system I'm currently on, its rw-rw-rw- root root
<mekeor>srw-rw-rw- 1 root root
<cbaines>Ok, well that looks fine
<cbaines>What command are you running?
<mekeor>oh, well. i just did 'sudo herd restart guix-daemon' and now it works
<mekeor>both 'guix environment guix' and 'guix package -i curl' weren't working
<rekado>mekeor: the error means that the daemon is not running.
<mekeor>rekado: but it *was* running
<mekeor>i did ps -aux | grep guix-daemon
<rekado>what was the process status?
<mekeor>i think the problem was that before, i run sudo ./pre-inst-env guix-daemon --build-users-group=guixbuild
<mekeor>i can't tell anymore, i'm sorry. should i try to reproduce it?
***jonsger1 is now known as jonsger
<ng0>what's the problem with reading cover letters which explicitly say "help, I'M stuck and I can#t solve this" while the email afterwards still has [PATCH] in it because it's send from git?
<adfeno>Woow
<adfeno>A patch that needs patching?
<adfeno>:)
<ng0>uh.. no?
<ng0>A patch send from a branch where I'm asking in the cover letter for help
<ng0>sending links to the online view of branches didn't work, I tried it.
<ng0>at least only one person ever commented on that
<ng0>so what should I do? be stuck in perpetual motion until I've learned enough on my own? optimal case, yes. But to ask people who know more in a certain language is the best way, usually. To learn and share
<adfeno>Yes indeed.
<mthl>ng0: You can use 'git format-patch --subject-prefix=DRAFT ...'
<adfeno>Sorry for being naive, but: did I sound harsh in my "patch that needs patching" joke?
<ng0>i didn't know about the --subject-prefix
<ng0>thanks
<ng0>I will include it in a new function
<adfeno>Well, to answer in advance: I didn't mean to sound harsh. And I'm sorry if it wasn't clear. :)
<Apteryx>Wow, lm-sensors now depends on gnuplot which pulls in texlive-minimal
<adfeno>Woooooow
<Apteryx>Apparently there are features in lm-sensors which I've never used ;)
<ng0>which is also why I ask for help on mozjs-38... but I guess I'll just ask other distros then how they solved the problem with that one
<ng0>idk.. kinda frustrating to ask for help and only occasional get feedback. But I know everyone is busy..
<ng0>maybe that's too harsh now from my side. but sometimes it feels like this
<adfeno>ng0: Don't worry, I sometimes feel this way with some other projects.
<adfeno>There's one for example, which I have sent a patch for a Brazilian legislative website, but I never received reply so far.
<ng0>mailinglists are frustrating. someone did the dulwich python stuff only because my patches from september went out of scope
<adfeno>Sorry what is "dulwich"?
<ng0>I'll go back to trying to teach my mailget script tor now.
<rekado>Apteryx: texlive-minimal isn’t great. It still requires the complete contents of the CTAN repo. Depending on parts of texlive should not be a problem once we replace the big texlive packages.
<ng0>I've read again what I wrote and I'm sorry. I work on too many small and big packages and probably 1) just need to find a way to point out that it's being worked on so that no parallel work happens and 2) to pick packages which aren't using so unique or broken systems. for (2) I wasn't so lucky recently. (2) is a huge frustration factor when you are stuck
<catonano>ng0: as for mozjs-38 , Maxim Cournoyer suggested to set MOZJS_MAOR_VERSION and MOZ_MINOR_VERSION. I don't understand your answer. You pointed to a mozjs-38 definition for Fedora but I can't understand wether MOZJS_MAOR_VERSION and MOZS_MINOR_VERSION are defined, in the Fedora case
<catonano>good evening, by the way :-)
<ng0>and I've replied that setting this solved nothing for me
<catonano>ng0: ah okkk, I hadn't understood the answer
<ng0>I wouldn't have asked if I didn't try it before
<janneke>catonano: what's the no-deps that you are exploring?
<Apteryx>rekado: That's why my HD ran out of space.
<ng0>catonano: I'm not sure if I synced recently, but https://pagure.io/guix-dev/c/07c579fd3e7e0621ef0f323b6130c74fe5a09f62 should be the state of trouble
<catonano>ng0: those are packages that have no dependenciies, so if you wanted to port Jquery you should start from those
<ng0>you mean janneke
<janneke>ng0: tnx
<janneke>catonano: ah, right. -- great
<catonano>yes I meant Janneke, sorry
<janneke>catonano: have you seen my work trying to package `q'?
<catonano>janneke: no I haven't. Where is it ?
<janneke>patches to the mailing list...let me see
<janneke>catonano: https://lists.gnu.org/archive/html/guix-devel/2016-09/msg00335.html
<janneke>i finally gave up on the amount of (~10,000) and cyclic dependencies and broken packages (~150) and packages without license
<janneke>and added a `--binary' switch to help break the dependencies
<janneke>as a workaround
<catonano>I see
<ng0>is there an easy way to find out the guile module an variable is part of?
<ng0>like for example system* .. I know it's part of processes, but not the module name
<Apteryx>ng0: Suggesting to try to set the MOZJS_{MINOR,MAJOR}_VERSION environment variables was me trying to be helpful. I apologize I wasn't.
<ng0>don't apologize, it is welcome :) mozjs is just awful
<Apteryx>ng0: You mean, easier than grep? If the variable is a package, you could do "guix edit 'package-name'"
<Apteryx>Will bring you right to it.
<ng0>the problem is that i'm trying to circumvent the other pain which would be building the bundled mozjs-38 in 0ad
<ng0>and mozjs-38 is only quasi-released
<ng0>most distros include it, but that's all
<ng0>it's not a package, I'm looking for the guile function "system*"
<ng0>maybe "info" is more helpful if I knew how to search in it
<Apteryx>ng0: What do you mean by quasi-released or "not completely released" ?
<ng0>well (info guile system*) takes me only to the section I know already. but that's offtopic
<civodul>ng0: 'i' to search for a term in the index, and C-s to search for a string in the whole text
<ng0>well mozjs-38 is released, but it's in a crap state for something public available
<ng0>thnaks :)
<ng0>my only problem with mozjs-38 is really the naming of the output folder and the .pc file
<ng0>ommited version number... but why? I set the variables, I even tried to substitute
<ng0>and more
<ng0>but I always end up with only half of what I want
<Apteryx>OK, so it's a PITA to build. And looking at how other people do it doesn't help? I see you've investigated what Fedora does?
<ng0>yes
<ng0>and it didn#t help
<ng0>so my next step will be asking the fedora maintainer
<ng0>the problem is often that our build environment is even different than the one Nix has, or at least the parts I know. Nix was not so helpful as the Fedora package.
<ng0>and when it comes to unbunlding mozjs-38 from 0ad it seems as if fedora is the only distro doing that, from a selective choice of distros I scan for oackages
<catonano>janneke: in my dreams there should be a sort of wikidata populated with nodejs packages and we all could contrbute snippets of information collaboratively editing the whole thing AND incrementally importing data like the ones I produced.. An npm importer could use such information
<ng0>I can't even just be like, hey I don't care I build the bundled one.. because the bundled one causes more problems to build than the approach to unbundle
<janneke>catonano: yeah, *something* is needed...
<Apteryx>ng0: OK. My take would be to build it as you would without Guix, and iron out all the kinks "hands-on", looking at the source code when something doesn't work as expected.
<Apteryx>if there are issues with it, they ought to be communicated to the maintainer so they can fix them.
<ng0>my understand is that the maintainer will not care
<ng0>but I use guix environment too little.. building without the guix build system, I could try that
<ng0>*understanding
<adfeno>I think he already contacted the maintainer :)
<ng0>who?
<adfeno>I mean: I think ng0 already contacted the maintainer of the projects in question.
<jin>how a service refer to a package, in the service definition?
<Apteryx>rekado: Ah, I guess the problem was just that there were no texlive-minimal substitutes at the time I tried upgrading, and it tried building the full texlive locally. I'll try again. I have bayfront & hydra.gnu.org as substitutes servers now, hopefully that works!
<rekado>Apteryx: I don’t think there are any substitutes for any texlive stuff ever. (Except for texlive-bin.)
<rekado>Apteryx: building texlive-texmf locally is not a problem. It’s actually faster than downloading a substitute.
<rekado>but you need some space on your disk to unpack the big tarball in TMPDIR and then install the same amount of data in the store.
<Apteryx>rekado: The problem is my disk space ;) I should run the gc I guess.
<rekado>I have the same problem on my machine.
<rekado>I always dread a texlive installation.
<Apteryx>It's so big I haven't bother installing it yet, although my resume and most writings depend on it. I used to think Office2007 was bloated ;).
<civodul>jin: it just refers to the package variable in the appropriate context
<civodul>typically in the 'start' slot mentioned in https://www.gnu.org/software/guix/manual/html_node/Shepherd-Services.html
<jin>civodul: What happens when a service provides several demons?
<jin>e.g. evolution-data-server
<jin>or tracker
<ng0>rekado: thanks, your fish patch works :)
<jin>i mean the package has several executables
<ng0>jin: how are other service system services constructed for it?
<ng0>for example systemd one, or openrc
<jin>ng0: i will investigate those services!
<jin>thanks
<ng0>is system* just a constructor? I've searched srfi-1 on srfi.schemers.org/srfi-1/ but it wasn't very obvious until I just went through all srfi modules in the repl where system* comes from
<Apteryx>What's the best way to send a patch to guix-devel using Gnus + git format-patch? Is there a nice way to use both together? I usually manually attach the patches, but this seems suboptimal.
<ng0>there's git send-email
<ng0>or email-send? it's called git_send_email in my function