IRC channel logs

2019-05-28.log

back to list of logs

<Marlin1113>yeah, i have tried some binaries and they won't work :c
<nckx>Marlin1113: So patchelf --set-interp… foo && ./foo runs but immediately exits?
<civodul>vagrantc: yes, the patch doesn't work, as i wrote before :-)
*civodul -> zZz
<civodul>night!
<nckx>Marlin1113: What does ‘ldd ./foo’ (also part of glibc) tell you?
<Marlin1113>no. it literally doesn't output anything'
<str1ngs>readelf -ld ./foo is more informative
<nckx>Marlin1113: OK, but can you be more specific?
<nckx>What is the ‘it’ you keep referring to?
<nckx>(str1ngs: And potentially more confusing…)
<Marlin1113> https://dpaste.de/Q1xu
<Marlin1113>this one is for popcorn time. Tried on blender, jitsi...
<Marlin1113>falkon, ungoogled chromium (some binaries, some appimages)
<Marlin1113>nothing starts or output anything to the terminal
<nckx>Marlin1113: You have to patch it to find *all* its libraries.
<nckx>Every ‘not found’.
<Marlin1113>is the debian chroot approach easier?
<nckx>Don't know what that is.
<nckx>Likely.
<nckx>In exchange for more overhead.
*nckx flies away.
<Marlin1113>welp. i'll just run a vm and forward X through ssh
<kkebreau>I should I set my chroot up better and do a write-up, but my schedule is full for the next several weeks.
<Marlin1113>hey guix, i'm starting my second package :))
<kkebreau>Oh, what package?
<krafter>Can I autologin without using a display manager? The manual only mentions how to do it with one.
<Marlin1113>Some drivers for graphics tablets
<kkebreau>Nice!
<vagrantc>kkebreau: i had another armhf machine running guix, so i built an image from there
<kkebreau>krafter: The mingetty, agetty, and kmscon services seem to have auto-login configuration options.
<kkebreau>In particular, the mingetty service is included in %base-services, so you may use modify-services to customize that.
<krafter>kkebreau: Why are there so many different gettys?
<nckx>krafter: Because freedom.
<krafter>:-D
<kkebreau>krafter: I would think its for the same reason as many other Unix programs: people had different needs on different systems.
<kkebreau>Yeah, basically what nckx said
<janas>I'm excited that someone packaged qtwebengine for guix, even though it probably won't be accepted for security reasons I can use it to package Anki in my own channel :)
<krafter>How can I figure out what is available in for example %base-services? Where is this variable defined?
<janas>krafter: I think it's defined in services.scm, I think I just made an educated guess while browsing the git repo
<janas>I'm sure there's a better way to find out with a guile repo though
<janas>*guile repl
<kkebreau>krafter: I just searched through the Info documentation. It should be in gnu/services/base.scm.
<kkebreau>Section 8.8.1 is Base Services
<janas>kkebreau is right, my bad
<Marlin1113>hey guix
<Marlin1113>mind lending me a hand in packaging this?
<Marlin1113> https://dpaste.de/2HdH https://dpaste.de/88tg
<Marlin1113>this is the package and the error output upon trying to install it
<Marlin1113> https://github.com/DIGImend/digimend-kernel-drivers and here is the kernel driver i'm trying to package
<kkebreau>Marlin1113: Do you mind sharing the contents of the failed build log?
<krafter>kkebreau: So, where is this file actually stored on my PC?
<Marlin1113> http://dpaste.com/3BV8SAN
<Marlin1113>here
<kkebreau>krafter: Try ~/.config/guix/latest/gnu/services/base.scm
<Marlin1113>they are kernel modules installed either through make install or dkms. I guess it would go to wherever kernel modules go (Still don't know that much about these stuff')
<krafter>kkebreau: I have no such directory...
<Marlin1113>oh, you were talking to him heh
<krafter>~/.config/guix/current/ is the best I got.
<krafter>
<kkebreau>krafter: Interesting...
<janas>Marlin1113: If you run `guix install` with the -K option you can inspect the build directory after a failure
<kkebreau>krafter: Have you run "guix pull" before?
<krafter>kkebreau: Yes, multiple times.
<krafter>All such commands work fine.
<kkebreau>krafter: Why do I have that directory when you don't, then?
<janas>Marlin1113: The error says that the configure file was missing, maybe you could check to see if the configure file is in a /src directory or something
<krafter>kkebreau: Do you have a ~/.guix-profile link?
<kkebreau>krafter: Yes.
<kkebreau>Marlin1113: Yes, it looks like configuring is not part of the build process for this package.
<lfam>kkebreau: That directory isn't used anymore with the new `guix pull`
<lfam>It treats the copy of Guix that used to live there as a regular profile
<krafter>kkebreau: How old is your ~/.config/guix/latest/ dir?
<Marlin1113>doesn't seem like there is a config file for it
<Marlin1113>what do i do then?
<lfam>For example you can list `guix pull` generations: guix package -p ~/.config/guix/current --list-generations
<kkebreau>krafter: Created last June, whereas current was created last October.
<krafter>I was thinking it might be something that has changed since then.
<krafter>My system is only roughly a week old.
<janas>Marlin1113: (disclaimer I'm not an expert packager) I think you need to modify the buld phases to remove the 'configure' phase.
<kkebreau>Definitely. lfam's command shows nothing for ~/.config/guix/latest
<janas>Marlin1113: I've never done that myself but there is some documentation in the manual
<Marlin1113>hmm... where in the manual is the documentation for packaging?
<Marlin1113>oh, programming interface. i guess there is no way i can't find it after looking 3 times for it
<lfam>Yes, there, and you can get the basics by browsing the source code in 'gnu/packages'
<janas>best of luck, it's already 1am here and I need some sleep zZz
<lfam>krafter, kkebreau: I don't know if we still keep a source tree around like we used to with the old `guix pull`. My simplest suggestion is to clone our Git repo <https://git.savannah.gnu.org/git/guix.git>
<vagrantc>guix pull updates source trees in .cache/guix/pull/*
<Marlin1113>i'll finish packaging it tomorrow
<Marlin1113>when i'm done with it, what do?
<kkebreau>vagrantc: Nice.
<vagrantc>i'm not sure if bad things happen if you mess with the files there, so i usually make a checkout somewhere else in my home dir, but maybe push/pull to/from that branch to save bandwidth and time
<vagrantc>hmmm... maybe i should just use it as the base for git worktrees...
<lfam>Thanks vagrantc... I forgot that somewhere along the line
<krafter>lfam: Ok, I now know at least what those variables include. Thanks!
*vagrantc still has somewhat fresh eyes on guix :)
<krafter>Hmm, I can't seem to be able to switch over to any virtual terminals.
<krafter>Or rather, they are all blank.
<krafter>This is odd, my PC appears not to be able to handle mingetty what so ever.
<nckx>krafter: Try hitting <Return>.
<nckx>It's needed here.
<krafter>nckx: Nothing. the screen is on but nothing happens.
<nckx>🤷
<krafter>It wasn't like this until I switched graphics card.
<krafter>Also, what font do you use to get unicode glyphs?
<kkebreau>GNU Unifont and the DejaVu fonts are two fonts I know
<nckx>Also font-google-noto if you have half a gig to spare.
<krafter>Hm, odd.
<zch>Is Full-disk encryption supported yet? As in LVM+Luks?
<bandali>i think full-disk encryption with luks is supported, but lvm not yet
<bandali>sadly
<zch>LVM isn't necessarily a requirement for me so it's nice to hear FDE is supported in some fashion.
<zch>Thanks bandali
<bandali>cheers zch
<aerth>so the installer works in qemu but after booting usb , the installer is black screen. is ther e a way to bring up that menu in another tty?
<aerth>maybe this guile installer-real thing
<aerth>"It Worked"
<aerth>to clarify, it worked but it seemed thescreen size was off..parts were not visible.. had to go with manual install
<Sveta>"it"? (i just joined in the middle of that conversation)
<aerth>well the new installer doesnt show up just a black screen.. alt+f2 and whatnot do work..
<aerth>with ps aux | grep install i found guile installer-real , which is the installer menu
<aerth>and it was just me rambling not much of a conversation
<civodul>Hello Guix!
<civodul> https://gnu.org/s/guile/news/join-guile-guix-days-strasbourg-2019.html
<thomassgn>Hello
<vps2>civodul: Will we have the livestream?
<thomassgn>In a package definition, can I have some inputs use specific configure flags? I.E. get a special derivation of a package as an input? (I need ffmpeg with f.x.: --enable-libvorbis --enable-gpl)
<thomassgn>I should probably check if they are already enabled... :)
<civodul>vps2: not sure, i don't think so
*civodul goes afk
<rekado_>thomassgn: you’d need to define a package variant that overrides the configure flags.
<efraim>IIRC --enable-GPL is only necessary for samba support
<g_bor[m]>hello guix!
<g_bor[m]>This bug that some services, notably openssf fails to start on boot is still causing me problems, so I am about to add some more logging to find out what goes wrong here.
<g_bor[m]>s/openssf/openssh
<rekado_>thomassgn: these changes sound generally useful. Could you please submit a patch for core-updates?
<rekado_>g_bor[m]: it’s a pity you’re still getting this with the latest version of shepherd.
<g_bor[m]>rekado_: I don't know what is giong on here, but I don't believe it's in shepherd. I noticed that when I start up my vm instance with default networking parameters it usually starts without problems, but as soon as I specify a nic and a hostfwd, then it fails consistently... So I believe it's a dependency problem.
<thomassgn>rekado_: cool, I'll look into it soon. Have some other packages I think I should have submitted long time ago; but will be doing some more guix work the coming weeks. :)
<civodul>rekado_: colleagues told me about this article that mentions Guix: https://hal.inria.fr/hal-02135891
<efraim>protip: if you develop complex packages and services directly in guix's source tree, running 'make' will help you find extra parentheses and syntax errors
<efraim>I'm currently testing some bootstrap-tarballs on powerpc32, I think even if it does work it shouldn't be added as an official/tier-1 architecture
<wingo>i didn't know ppc32 was still a thing; thought it was all 64-bit
<efraim>heh, failed on glibc-intermediate again, i'll wait and see how aarch64-linux does on core-updates
<efraim>i have two iBooks, circa 2005
<matt`>is there a way to have multiple profiles associated with a single user, and allow the user to switch between them?
<matt`>and the gc would be aware of all profiles
<rekado_>matt`: that’s how it works. (Switching profiles is a little bit inconvenient, though.)
<matt`>how do you setup multiple and switch? from the manual it looks like there's a single one per user in $HOME/.guix_profile
<matt`>i guess you could switch by symlinking to what you want but then the gc wouldn't pay attention to the others i imagine
<rekado_>“guix package” takes a “--profile” option where you can specify any other location.
<rekado_>GC still knows about all profile locations.
<matt`>oh ok cool thanks for pointing that out
<matt`>so why's it difficult to switch?
<matt`>not a simple matter of invoking that command?
<g_bor[m]>hello guix!
<g_bor[m]>What is the status of http://issues.guix.info/issue/30299?
<g_bor[m]>I believe we have updated shepherd since then, and there has not been any recent activity on this issue.
<wingo>guix on a foreign distro can be baffling sometimes
<wingo>just spent 45 min wondering why llvm build was segfaulting
<wingo>reset my PATH to /bin:/usr/bin and problem solved
<jonsger>wingo: that's why "guix environment" is even nicer on foreign distros :)
<wingo>only when --pure i guess
<wingo>i use guix environment all the time but the issue is whatever's in the profile
<rekado_>matt`: there is no single command to switch.
<rekado_>you can operate on profiles with “--profile” but to use another profile you need to know what you want the result to be.
<rekado_>should the environment be replaced or augmented?
<rekado_>this determines what mechanism you would use to “activate” a profile or switch to it.
<rekado_>(e.g. to use “source /the/.guix-profile/etc/profile” or to use “env bash -i”)
<PirBoazo>Bonjour civodul
<PirBoazo>Hello All
<PirBoazo>I have a question about the postgresql's installation .
<civodul>salut PirBoazo, dis moi :-)
<PirBoazo>How can i install postgresql-9.6 ?
<civodul>"guix install postgresql@9.6" should do that
<PirBoazo>c'est @ :-)
<PirBoazo>- ne marchez pas
<civodul>however, if you need the service, see https://www.gnu.org/software/guix/manual/en/html_node/Database-Services.html#Database-Services
<civodul>oui, c'est "@", pas "-"
<PirBoazo>Si je veux avoir les deux installations 9.6 & 10.8 que doit-on faire ?
<civodul>tu peux le faire, mais dans des "profils" différents
<civodul>donc : "guix install postgresql@9.6 -p ./vieux" et "guix install postgresql@10 -p ./nouveau"
<PirBoazo>Merci pour le lien pour le momment je charche à comprendre comment je peux faire coexister deux version
<PirBoazo>Donc pas au niveau configuration du system
<mfg>Hi there o/
<matt`>rekado_: ok so let's say i want a default profile and a separate environment and i want to switch between them. i can declare the default profile with guix package --manifest=/path/to/manifest. Then, i can declare a separate environment (and switch to it) with guix environment --root=$HOME/.guix_enviro --manifest=/path/to/enviro-manifest (using --pure if i want to unset the default enironment). Now both are registered with the GC. Then
<matt`>how do i switch back to the default profile (and then back to the environment)?
<matt`>oh i guess i can just exit...
<matt`>e.g. C-d
<matt`>to get back to the default profile
<mfg>i'm asking myself a similar question matt`: when i register an environment as env, is it possible to guix environment env in some way that the GUIX_ENVIRONMENT variable contains the environemnts name?
<ItsMarlin>hi guix
<mfg>in other words is it possible to name environemnts?
<ItsMarlin>seems like my irc client wasn't getting the messages
<mfg>hi
<ItsMarlin>did you get mine?
<ItsMarlin> https://framagit.org/marlin1113/guix-digimend-drivers
<ItsMarlin>here
<ItsMarlin>i finished packaging the drivers for guix
<matt`>mfg: yeah that's what i'm wondering now
<ItsMarlin>:))
<matt`>i guess the long way is to pass the manifest again and omit the root arg? since the packages are already in the store it should work without a setup delay
<matt`>but would be nice to register a name and pass that
<mfg>yes indeed!
<pkill9>ItsMarlin: wouldn't you need to recompile the kernel to add the drivers to it?
<ItsMarlin>the drivers are libre. i did test it here, but my kernel is linux vanilla
<abarbosa>hey, node package file and site says its in version 9.11.1, while repo says it 10.15(up to date)
<abarbosa>I think same goes for webkit-gtk and nix
<abarbosa>still to confirm
<abarbosa>nah, nix is "correct"
<abarbosa>same goes for webkit
<abarbosa>lol
<ItsMarlin>YEA
<ItsMarlin>the drivers work
<ItsMarlin>my tablet is working
<ItsMarlin>:D
<mfg>ItsMarlin: Guix on your tablet?
<mfg>*GuixSD
<ItsMarlin>no, no. it's a graphics tablet
<ItsMarlin>from huion
<mfg>ah i see :D
<ItsMarlin>which requires a driver that wasn't available for guic
<ItsMarlin>now it's working :D
<PirBoazo>Error in config.scm : extraneous field initializers (user-group) I try to append a new group.
<rekado_>PirBoazo: the error means that you have a “user-group” field where it can’t be added. This might be a parenthesis error.
<PirBoazo>as describe in doc : (user-group (name "postgres"))
<rekado_>where did you add it?
<rekado_>can you show us the config file?
<bzp>hi all
<rekado_>mfg: the GUIX_ENVIRONMENT variable contains the name of the profile tree.
<rekado_>mfg: the environment name is ill-defined. Is it the set of all names of all packages that are part of it? Or in the case of “guix environment foo” the name “foo”?
<bzp>When reading the pdf 'guix.es.pdf', there are grammatical problems, my native language is Spanish. Could you help them?
<rekado_>matt`: you can “enable” a profile by running this: GUIX_PROFILE=/the/profile; source $GUIX_PROFILE/etc/profile
<bzp>I'm not computer, just a user and enthusiast who admires the work that the FSF, GNU and GUI does.
<PirBoazo>rekado : in operating-system after host-name and before users declaration.
<wingo>humm who is responsible for the spanish translation of the manual? is it the translation project?
<bzp>I really like guixsd, I suggest that you can make support for old PC equipment
<mfg>rekado_: I'm not sure what you mean... the command itself is obviously wrong, yes. But i mean if i can have something else in the GUIX_ENVIRONMENT var, say GUIX_ENVIRONMENT="devel" instead of the envs store path ?!
<rekado_>PirBoazo: the field name is “groups”. The value for that field must be a list of values created with the “user-group” constructor.
<rekado_>mfg: the variable cannot be changed (without changing the code obviously). Why would you like something like “devel” to be there?
<rekado_>mfg: if that’s for a shell prompt you could do that by just looking if GUIX_ENVIRONMENT is set.
<rekado_>bzp: could you please send an email to bug-guix@gnu.org with a list of the grammatical errors? (Are these mistakes in Spanish as used in Spain or as used in other countries?)
<PirBoazo>rekado : in 8.5 User Accounts § : User group declarations are even simpler:
<PirBoazo>(user-group (name "students"))
<PirBoazo>Data Type: user-group
<PirBoazo>This type is for, well, user groups. There are just a few fields:
<PirBoazo>name
<PirBoazo>The name of the group.
<rekado_>correct
<rekado_>“user-group” is the name of the constructor.
<rekado_>the manual is not wrong.
<rekado_>but you can’t just place this anywhere. The operating-system configuration has a couple of “fields”.
<rekado_>and the field for groups is called “groups”
<rekado_>so it’ll look like this: (operating-system … (groups (cons (user-group (name "students")) %base-groups)) …)
<PirBoazo>rekado : where find this explanation ?
<rekado_>section 8.2
<bzp>the recurrent error is the word 'usuaria' the correct is "usuario"
<PirBoazo>:-) merci
<bzp>rekado_:
<rekado_>PirBoazo: I realize that this may be unclear. I’m in favour of adding a “cook book” document with tutorials and examples to supplement the manual.
<PirBoazo>It's sometime difficult to understand the logic :-) but it's becaus in try to use Guix SD since 15 days
<PirBoazo>it's very interesting to learn how this are working ...
<PirBoazo>civodul: hello
<jonsger>wingo: Miguel <rosen644835@gmail.com> did most of the spanish translation of the manual
<dongcarl>civodul: Would love to come to France but have to get a Visa... If there are events in the future please post to the channel!
<civodul>dongcarl: sure, will do!
<ItsMarlin>hey guix
<ItsMarlin>can i change the compile flags for guix in order to optimize stuff better for my system (Like with gentoo)?
<janas>civodul: Would love to join too, I think I have an exam on the 21st though :(
<dongcarl>ItsMarlin: Like USE flags?
<ItsMarlin>yes
<rekado_>ItsMarlin: there is no global setting for compile flags.
<ItsMarlin>Oh
<str1ngs>that would cause ever package to be rebuilt :P
<dongcarl>str1ngs: I think Gentoo USE flags would also cause every package to be rebuild, no? Perhaps ItsMarlin could verify.
<dongcarl>I've heard from my neckbeard friends that they would switch to Guix from Gentoo if there were USE flags...
<dongcarl>If anyone's got the time, please take a look at #35962, core-updates currently doesn't work because Guile's oom test is flaky, this simple patch fixes it.
<str1ngs>dongcarl I think it would. which would really suck.
<dongcarl>str1ngs: Not that big a deal as long as the user is aware, no?
<str1ngs>keep in mind Gentoo is a ports based distro. and Guix is a rolling release. I think the concept of use flags translates will to Guix
<str1ngs>does not translate well I meant
<dongcarl>Hmmm perhaps you can explain to me the diff between ports based vs. rolling
<str1ngs>ports based, has a tendency to assume you will be building from source. rolling release assumes you will want to upgrade via binaries. aka substitute in this case
<ItsMarlin>Well
<ItsMarlin>guix kinda acts like a mix
<dongcarl>str1ngs: But isn't the point of Guix that you can do either and be totally fine? E.g. if I use a weird USE flag, I forego my ability to download substitutes, and build from source?
<ItsMarlin>if you don't have substitute, it's mostly a source based distro
<str1ngs>dongcarl: yes, but by introducing the idea of USE flags. you also now have a situation where many substitutes are rebuilt unintentionally.
<ItsMarlin>maybe only having use flags when substitutes aren't used?
<str1ngs>adding use flags changes the inputs. which would change the outputs. cause rebuilds. you would have to have a set of default use flags.
<b0f0>is there realy a big difference, now, on fast machines if you compile it with better USE flag ?
<b0f0>isnt that more like for old machines ?
<b0f0>s/old/slower
<b0f0>I dont know .. hm
<ItsMarlin>well, everybody is shilling intel because of their clear linux kernel
<ItsMarlin>which basically compiles stuff with max optimization
<ItsMarlin>so i guess yes
<str1ngs>Ports based distro's are good if you have exotic hardware. Or you have highly specialized server deployment.
<ng0>that's a weird assertion. not the last, the first. ports trees have nothing to do with hardware.. well they start to do on some systems, but i think you were just generalizing.
<str1ngs>maybe, but I don't personally find the idea of rebuilding the world fun. it's resource intensive and redundant. Especially on low end hardware like laptops :P
<ng0>still has nothing to do with exotic hardware. and some ports trees have tools and infrastructure now for a long time which enable binary only installations (see for example freebsd).
<str1ngs>sure because even freebsd, understands that it's pointless to rebuild every package on every machine with no benefit. The only place it has benefit is when you have exotic hardware and use cases.
<str1ngs>even on Guix it does not make sense for every machine to be rebuilding packages. If that was the case why put so much effort into repeatable builds. Unless the end goal is to actually reuse those builds..
<ng0>i have to continue looking intoi server replcament to buy. i have different ideas, but i respect yours and have too much of a grumpy day to go into detail (my only test system died)
<str1ngs>I think you took my statement as ports system are only for exotic hardware. What I meant was exotic hardware benefits the most.
<str1ngs>sorry to hear about your test system :(
<ng0>it "only" blocks 1/4 of my work on gsoc (cygwin,windows)
<str1ngs>oh ng0 do you contribute to golang at all?
<ng0>I started to
<str1ngs>ahh that's where I recognize your handle :P
<ng0>yeah and around here, but I haven't contributed in a while
<ng0>nmostly doing pkgsrc, gnunet and other stuff these days
<str1ngs>I have contribute to golang in the past
<ng0>i hate buying new hardware. this was 10 years old or so. much older systems were still running at this point. so I can get a 1000+ euro silent'ish desktop or a 250 euro server.
<b0f0>contribute, how do I do that. I have this problem that if I want to help fix stuff I dont have an idea how to do that, all at such a high level of thiking. But always had an idea in my head that I want to give back - contribute. I guess I could try writting a package or somthing easy . What does #guix think, where should a noob start ?)
<b0f0>I subscribed to help-guix and discussion too
<b0f0>so I guess thats the way to find something
<b0f0>don know ..
<str1ngs>b0f0: here is some documentation if you would like to contribute to Guix. https://www.gnu.org/software/guix/manual/en/html_node/Contributing.html
<b0f0>str1ngs: good, I can start with this. Thx.
<str1ngs>no problem
<dongcarl>b0f0: My current setup: 1. checkout branch 2. `guix environment guix` 3. `./bootstrap && ./configure --localstatedir=/var && make -j$(nproc)`
<dongcarl>After that you can use `./pre-inst-env guix blah blah` and you'd be running the built version without installing it!
<str1ngs>then hackh .. hack .. hack :P
<b0f0>dongcarl: why would I install guix again ? It's installed. I mean I trying to understand what you just wrote. checkout branch must be a git command, I guess you are downloading/pulling all of guix to some "directory". Then ywhat you want with guix environment guix is to enable dev tools and the evironment to build stuff, then play with guix and the try to compile that and istall. Is that what you were thinking
<b0f0>?
<dongcarl>b0f0: Do you have guix installed already?
<b0f0>dongcarl: yes
<dongcarl>Cool. So the steps I wrote above doesn't install anything
<dongcarl>`./pre-inst-env` is a wrapper that allows you to play with the guix that you built from source using `make -j$(nproc)`
<dongcarl>But it doesn't install it
<b0f0>thats good to know. Nice!
<dongcarl>So that way, your normal `guix` is still normal, and you can play with the `guix` you built without worry!
<dongcarl>b0f0: Lemme know if you got any other questions!
<b0f0>dongcarl: ok
<b0f0>dongcarl: Thx.
<dongcarl>Savannah Guix group members: wondering what are the steps I have to take to become a member?
<b0f0>dongcarl: you have to put a request https://savannah.gnu.org/project/memberlist.php?group=guix
<b0f0>dongcarl: and contribute to the project
<dongcarl>Seems like the recommendation is to contact project members using mailing list before putting in formal request
<b0f0>emacs, emacs doom, emacs evil. If I choose the Vim bindings, will that break anything when I start to use emacs for anything else, like other tools, like mu4e gnus org mode and so on ?
<vagrantc>dongcarl: or just keep submitting to guix-patches until you catch someone's attention :)
<dongcarl>vagrantc: I'm certainly going to do both :-)
*vagrantc just submitted a status update to the debian bug and guix-devel regarding guix in debian
*dongcarl gets excited
<dongcarl>Wish there were a review-for-review trading system...
*dongcarl needs more patience
<nckx>dongcarl: New members are usually a ‘don't call us, we'll notice you’ situation, but asking on the mailing list is just fine.
<dongcarl>:-)
<nckx>ItsMarlin: Hey, I use (some) Clear Linux patches. Check your mail, by the way.
<efraim>Hmm, anyone having trouble spinning up a vm? Mine gets stuck at creating /etc/machine-id
<rekado_>dongcarl: I share your impatience.
<rekado_>dongcarl: reviews are tough and I had to accept that I won’t be able to even read all email in time.
*rekado_ goes afk
<dongcarl>rekado_: Hard problem to solve, especially in a rapidly-growing project like Guix. I wish there was a labelling system so that maintainers could label patches with priority to ease other reviewers
*rekado_ delays afk
<rekado_>dongcarl: yes! Labeling would be great.
<dongcarl>rekado_: Is there such a thing for mailing lists?
<dongcarl>We do this in bitcoin core github... but not sure about mailing lists
<rekado_>we (I?) have a few problems with debbugs, which imposes a few limitations
<rekado_>debbugs is a proper bug tracker, not just a mailing list
<rekado_>the GNU fork of debbugs supports per-user tags (not sure about the upstream version)
<dongcarl>rekado_: Hmmm... I'd be happy to help fix, but you should go afk and do what you were going to do haha, some other day!
<rekado_>but… it’s weird
<rekado_>I should reserve some more time for Mumi
<rekado_>or we should do that hackathon for real
<dongcarl>Mumi?
<dongcarl>Hackathon?
<rekado_>Mumi is the software behind issues.guix.gnu.org
<rekado_>it’s really just a web frontend to the quirky Debbugs SOAP interface
<rekado_>the SOAP interface has a couple of defects that make Mumi slow and weird.
<rekado_>hacking on Mumi alone means that it doesn’t get enough attention
<dongcarl>Where can I find Mumi repo?
<rekado_>so I’d love to have a group of people meet and figure out what to do to make it good.
<rekado_> https://git.elephly.net/software/mumi.git
<rekado_>there’s a package for it in Guix
<rekado_>(it’s my tiny i686 netbook hosting this whenever it feels like it, so be gentle)
<dongcarl>Hahaha
<dongcarl>Of course, I'll take a look when I get the chance!
<rekado_>anyway, switching laptops now; the repaired Librem arrived and this T60 is just a little too weak for doing two things at once…
*rekado_ –> afk
<ItsMarlin>nckx: didn't know it was you who anwered hehe
<ItsMarlin>thanks for the instructions
<b0f0>is there a open hardware computer on the market to buy ?
<ItsMarlin>b0f0: i guess the talos workstation computers, if you want something modern
<b0f0>ok the nI must see it.
<ItsMarlin>the fsf uses asus KCMA d8 server boards
<ItsMarlin>talos computers seem really great. power9 is nice
<ItsMarlin>each core has 4 threads too, so keep that in mind (people dislike the fact it's quad core)
<ItsMarlin>and you can have 2 processors on a board, so 32 threads total
<b0f0>ItsMarlin: this is great, I thought such stuff is not on the market yet.
<ItsMarlin>:) it's a bit pricey in comparison, but it seems real good
<ItsMarlin>There are always older server boards with xeons and opterons too
<ItsMarlin>older mac hardware is also pretty great
<ItsMarlin>and thinkpads and all
<ItsMarlin>GPUs are probably the one annoying thing
<ItsMarlin>then you have to get older cards that run nouveau on nvidia, or which don't require firmware blobs on amd
<ItsMarlin>i think the newer vega cards can run without firmware blobs
<ItsMarlin>mine is a polaris, so i had to use linux vanilla :/
<b0f0>yes for graphics card AMD is ok I guess. The Vega yes.
<b0f0>I need to start saving money.
<b0f0>:>
<sebboh>hi again all. Let's say I author some config.scm and then I do `guix system init ...`. Then I boot into the new system and install a package. How may I get a copy of my *new* config.scm, which should contain that package I just installed?
<str1ngs>sebboh: you can add this as a service. (simple-service 'config-file etc-service-type`(("config.scm" ,this-file)))
<str1ngs>umm this-file require more code one sec.
<vagrantc>sebboh: how did you install the package? normally packages are only installed system-wide if specified in the system config.scm
<vagrantc>sebboh: otherwise they're installed per-user
<vagrantc>and not part of the system config.scm
<sebboh>vagrantc: ok, how may I "export" a user's config or profile or system? (What is it called?)
<str1ngs>sebboh: this-file procedure is. http://dpaste.com/3NQ6GQ4
<str1ngs>guix system init kinda implied system configuration. umm was I wrong in my understanding?
<sebboh>Maybe I'm asking the wrong question. Can I keep my config for my guix system in version control, and if I do so, which things might escape version control? (I guess `guix install emacs` wouldn't get recorded anywhere unless I "export" my package list somehow.)
<sebboh>str1ngs: it's likely that *I* am wrong in my understanding. I just got here. :)
<str1ngs>sebboh: you can keep your system config.scm in version control. just reffer to that file when using guix system
<str1ngs>sebboh: no I think you are asking the right thing. for guix profiles though you might want to use a manifest file. see --manifest section of https://www.gnu.org/software/guix/manual/en/html_node/Invoking-guix-package.html
<eric23>I am a little confused. I just installed guix 1.0.1 in the graphical installer. I see the instructions to do "guix pull && sudo guix system reconfigure /etc/config.scm", but it gives me a warning that guix pull was never run. I thought I was to run guix pull as my user not root.
<eric23>"guix system: warning: /root/.config/guix/current not found: 'guix pull' was never run"
<str1ngs>sebboh: so you could keep config.scm and profile.scm in version control. and just refer to those files. when using guix system and guix package. no caveat's in terms of version control. I hope that answers your question.
<vagrantc>eric23: you might want: sudo -E guix system ...
<vagrantc>eric23: then it will use your user's "guix pull"
<vagrantc>eric23: otherwise, you'll need to also run "guix pull" as root.
<eric23>Thanks vagrantc
<mfg>rekado_: the mere presence of a GUIX_ENVIRONEMNT variable is not sufficient. suppose i have threee envs: one for python datascience things one for C development and one nodejs development
***apteryx_ is now known as apteryx
<mfg>so it makes sense to be able to distinguish them without hardcoding the sotre path in the shell rc file ...
<mfg>but you are right that the only way is changing the code
<mfg>i will look into this when i have enough spare time
<mfg>one way is to use the link name used in the --root option ...
<mfg>and if none is present use the store path as it is now
*mfg goes to bed, see you tomorrow :D
<jje>is there anyway to tell "guix system reconfigure /etc/config.scm" to use more than one core? cups has pulled in qtwebkit. it takes hours to build on one core.
<ngz>Hello. My computer just crashed and now I get an error about missing "/var/guix/daemon-socket/socket" each time I try to invoke guix build. Does that ring a bell?
<str1ngs>jje: --cores=$(nproc) --max-jobs=1
<jje>thanks str1ngs
<str1ngs>jje: check guix system --help for exact syntax pleaase
<sebboh>ngz, yes. You need to start the guix daemon. I had to google the command line, and I ended up burning a virtual console for it, so, you probably don't want the specific invocation I used anyway.
<ngz>The guix daemon is already started, as a systemd service (or whatever this is called).
<ngz>I'm on a foreign distro, btw
<sebboh>ngz, does it really say "missing", or something else? Did you confirm that /var/guix/daemon-socket/socket exists?
<str1ngs>jje: you can also set this with GUIX_BUILD_OPTIONS. see https://www.gnu.org/software/guix/manual/en/html_node/Common-Build-Options.html
<ngz>In /var/guix/daemon-socket/ there is no "socket" file.
<sebboh>There's probably some way to ask the foreign distro's systemd to give you a status report for the guix daemon.
<ngz>sebboh: it says something like: impossible to connect to "/var/guix/...": no such file or directory.
<rekado_>systemctl status guix-daemon
<ngz>Yes, and systemctl tells me it is active. I tried to restart it, too.
<sebboh>ngz, well, I'll get out of the way in case some more experienced person can help where I cannot. My next step is to poke around with `ps` and `lsof` to see if the guix daemon is indeed running and if it has some socket file open at some other location. But that's just poking in the dark.
<rekado_>ngz: is it “active” or running?
<jje>str1ngs: thanks much for the link
<rekado_>ngz: it can be enabled but exited
<rekado_>ngz: instead of plain “ps” I’d recommend “pgrep -fa guix”.
<sebboh>or `ps aux|grep -i guix` ;)
<rekado_>this will also match “grep”, no?
<ngz>rekado_: It is active and exited
<rekado_>so people often do something like “egrep '[g]uix'”, but I think it’s just cumbersome
<rekado_>ngz: yeah, so that’s what’s wrong here. It shouldn’t have exited.
<rekado_>it should also say why it exited.
<ngz>It just says: (code=exited, status=1/FAILURE)
<str1ngs>jje: no problem
<str1ngs>rekado_: I abuse pgrep myself :P
<str1ngs>just don't abuse pkill :P
<sebboh>rekado_: ah, I never minded the grep invocation showing up. It does bother me that it doesn't *always* show up--it's racey. Anyway I've heard of pgrep, but never used it.
<rekado_>ngz: are you sure? There should be more info. Otherwise you may have to use journalctl to get more info.
<rekado_>(and I just can’t remember the right journalctl invocation.)
<sebboh>On a guix system, where do configuration files for shepherd and/or herd live?
<rekado_>sebboh: somewhere in the store
<str1ngs>sebboh: in config.scm ideally
<rekado_>pretty much everything ends up somewhere in the store; some things are “checked out” at boot time to populate /etc, but only in cases where the software is not flexible enough to tell it to look elsewhere.
<ngz>rekado_: Unbound variable: %storedir
<rekado_>uhm, this doesn’t look right
<sebboh>Ah. so when I define the service.. I need to specify that I want it to start automatically, there in config.scm (is there some other name for that?).
<rekado_>ngz: can you show us the installed systemd unit file for guix-daemon.service?
<ngz>FWIW, I'm using guix commit : e7f078c337c98e8bb14e9f419cbc4f632d495384
<rekado_>sebboh: if you’re curious you can do “pgrep -fa shepherd” and take a look at the command line for PID 1.
<ngz>rekado_: I can paste it, but I haven't touched it since initial installation.
<rekado_>sebboh: you’ll see an arbitrary looking file name after “--config”
<rekado_>ngz: try running the command it is supposed to execute manually in a shell — as root.
<rekado_>let’s cut out systemd from this debugging session
<ngz>you mean "sudo guix-daemon" ?
<ngz>Same error from root
<sebboh>rekado_: oh, right, it's init. Yeah sure, I'll look at files in the store, why not? I haven't seen any other example of a valid shepherd config before; that will do. Thanks.
<rekado_>ngz: what’s the full command line that the service should execute?
<rekado_>sebboh: oh, you want to write a service yourself? Then better look in the Guix sources.
<ngz>rekado_: /var/guix/profiles/per-user/root/current-guix/bin/guix-daemon --build-users-group=guixbuild
<rekado_>sebboh: the stuff that gets passed to PID 1 is all generated from sources in Guix.
<rekado_>ngz: the guix commit you mentioned: is that for the root user’s version of Guix?
<ngz>both, I usually guix pull from user and root.
<rekado_>sebboh: you can find examples in gnu/services/ in the Guix sources.
<rekado_>okay
<rekado_>ngz: do you have more context for the error? Is there a backtrace?
<rekado_>or is this “unbound variable” thing the only line printed.
<sebboh>rekado_: nope, I am not writing a service yet. I am just getting the ssh-daemon service to start automatically at boot.
<ngz>rekado_: there is a small backtrace (https://paste.debian.net/1084321/)
<rekado_>sebboh: oh. I think it should start automatically already, but there seems to be a bug that g_bor[m] is currently investigating.
<sebboh>ok, I'll investigate too.
<R-_>How do I go about setting SDDM as the display manager? I can't quite figure out what or where %desktop-services is, or where the GDM service is, so I have no templates
<rekado_>R-_: a service of the gdm-service-type is part of %desktop-services
<rekado_>R-_: so if you want SDDM you need to use modify-services to delete the gdm-service-type before adding SDDM.
<rekado_>ngz: it’s possible that there’s a bug. Have you tried the commit before (i.e. 70fa77d8815bf09760b7523d2559c9f6708ff279)?
<ngz>rekado_: You mean "guix pull --commit=70fa..." and try guix build again?
<ngz>or from root perhaps.
<ngz>Bah, I cannot even run "guix pull"
<rekado_>:(
<sebboh>wait, is there some simple way to get a guile repl that has all these guix functions defined so I can just eval some of these service definitions and see what comes out, perhaps pretty-printed if I can figure out how to do that in scheme? I'm an amateur common lisp hacker. (Amateur!)
<rekado_>ngz: I guess you may be able to work around this by setting NIX_STORE_DIR, but be careful!
<rekado_>ngz: I’m trying to reproduce this but haven’t been successful yet.
<rekado_>sebboh: guix repl
<rekado_>ngz: I’m pulling now.
<ngz>Should I "export NIX_STORE_DIR=/gnu guix-daemon"?
<rekado_>ngz: I can reproduce it.
<rekado_>ngz: congratulations, you found a bug!
<R-_>rekado_: Do I need to write a scheme script to do this, or is modify-services some kind of terminal command...?
<rekado_>ngz: I bet this was caused by dfc69e4b6d4bbc41a4d37b3cc6ea12adb34aaafa
<rekado_>R-_: oh, I’m sorry for not explaining this. This needs to be done in your operating system configuration file (config.scm).
<rekado_>R-_: the manual has a bunch of examples for using modify-services
<rekado_>ngz: %storedir appears to be just a symbol
<rekado_>ngz: it should have been #$%localstatedir, I think
<rekado_>erm, sorry, #$%storedir
<rekado_>(this is the appropriate amount of syntax to express cursing)
<ngz>hehe
<rekado_>I’ll try to fix this; just a moment
<rekado_>ngz: in the meantime exporting NIX_STORE_DIR=/gnu should be sufficient to work around this bug.
<rekado_>(I haven’t tried it, but it would avoid the faulty setenv call)
<sebboh>rekado_: is that literally #$%foo or #$@foo?
<str1ngs>sebboh: emacs-guix is probably the best thing for guix introspection
<rekado_>sebboh: #$ is syntax for gexp-unquote; and the variable name is %storedir (where % is conventional for “special” or “global” variables).
<sebboh>str1ngs: it's not just a mode for highlighting config.scm specially? Neat.
<ngz>Hmm. export NIX_STORE_DIR=/gnu let me start the daemon, but odd things then happen from the user's side.
<str1ngs>sebboh: oh no, it does way way more
<ngz>Like: error: derivation `/gnu/store/...guile-2.2.4.tar.xz.drv' has incorrect output `/gnu/store/...guile-2.2.4.tar.xz', should be ...
<rekado_>ngz: erm, better wait for the fix
<rekado_>ngz: in the meantime you can roll back your root user’s profile.
<rekado_>ngz: I’m almost done testing.
<rekado_>… testing is slow
<ngz>Hmm. How am I supposed to roll back to my root user's profile?
<rekado_>you can use and older version directly via .config/guix/current-123-link/bin
<ngz>Ah, indeed. I can run the guix-daemon from there.
<rekado_>92%…
<sebboh>the default emacs version is 26.2. :) nice
<rekado_>ngz: commit fa86654824 should fix this.
<rekado_>ngz: you can try pulling again
<ngz>ok
<rekado_>I just did and it seems to work
<rekado_>I think I may have to do a follow-up to e7f078c337c98e8bb14e9f419cbc4f632d495384 as well, i.e. to update the “guix” package, but that’s a little less urgent.