IRC channel logs

2013-04-21.log

back to list of logs

<CaptainLex>Hello all!
<Steap>well, I was about to go to sleep, but hi!
<CaptainLex>Hello Steap! I was going to ask you a bit about the project, but I can wait until tomorrow!
<Steap>well
<Steap>go on
<Steap>I'm waiting for "apt-get upgrade" to finish.
<CaptainLex>What I wonder the most about the project is why exactly it would take three months
<CaptainLex>(or however long)
<Steap>well
<Steap>we're talking about packaging a huge DE
<Steap>not a simple WM
<CaptainLex>No no I know that now
<CaptainLex>Obviously that involves more work
<Steap>so basically, it will require packaging graphics toolkit, such as GTK+ or Qt
<Steap>it will require support for whatever languages the project use (Vala, for instance)
<Steap>we probably will have to decide how to support certain features
<Steap>for example, the OpenBSD folks find it hard to package Gnome because some of its components require systemd
<Steap>and they obviously do not want to use systemd
<CaptainLex>Hmmmmmm
<CaptainLex>I seeee
<Steap>since we do notreally want that either
<Steap>how are we going to do ?
<CaptainLex>These are interesting questions!
<Steap>The work itself isn't so hard, I guess
<CaptainLex>Wait, what's wrong with systemd?
<Steap>You'd mostly have to know how much of a DE you want to package
<Steap>what steps you're gonna have to take (basically, where t ostart, where to go from there)
<Steap>and make decisions about stuff like systemd
<Steap>well, it's almost 2am for me, so I don't feel like trolling
<CaptainLex>Hahaha
<Steap>but well, some people just do not want to use systemd as their init system
<CaptainLex>True, true
<Steap>and I think civodul is not really found of it
<CaptainLex>Gotcha
<Steap>I think he's working on a Guile way of doing this kind of stuff :)
<Steap>but well, systemd is just an example
<CaptainLex>Well, I'll let you sleep! I'll start using Guix tonight and investigate packaging something simple
<CaptainLex>if only I could find the source for sl :D
<Steap>I don't really know what kind of technologies are used in modern DEs
<Steap>sl = ?
<CaptainLex>sl is a prank command-line utility
<Steap>oh
<Steap>yeah sure, I know it
<Steap>I mistype "ls" a lot.
<CaptainLex>Haha
<CaptainLex>Then it would be good for Guix to have it! xD
<Steap>Homepage: http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/index_e.html
<Steap>from the Debian package
<CaptainLex>Thanks!
<CaptainLex>Maybe that and the pipe cow
<CaptainLex>Those seem fairly simple
<Steap>nice
<Steap>do you know how to use git ?
<Steap>Especially to send patches
<CaptainLex>I use git as personal source control, but never more than that
<Steap>well, packaging sl should be easy
<Steap>once you've done it
<Steap>git add Makefile.am gnu/packages/sl.scm
<Steap>git commit
<Steap>git format-patch -1
<Steap>git send-email --to bug-guix@gnu.org 0001-xxx.patch
<Steap>then we'll review the patch on the mailing list
<CaptainLex>Awesome, thanks!
<CaptainLex>I gotta restart x, brb
<CaptainLex>Have a good night if you're gone when I'm back!
<mark_weaver>Did GNOME actually decide to require systemd? Which component requires it?
<Steap>mark_weaver: I don't really, I stopped using Gnome quite a long time ago
<Steap>but the BSD people seem to have trouble with it
<Steap> https://lwn.net/Articles/524612/
<CaptainLex>I haven't used a full DE in a while; but it surprises that systemd is so controversial, since arch comes with it
<CaptainLex>and arch tries to be as uncontroversial as they can!
<CaptainLex>Is there anyone around? I have a few questions about the Guix daemon
<CaptainLex>I'm getting an error trying to build a package that the guix-builder group has no members, even though $groups guix-builder1 outputs guix-builder
<mark_weaver>I have a vague recollection that you might need to make 'guix-builder' the primary group of each of the 'guix-builder*' users, by putting its group ID in the fourth field of /etc/passwd
<CaptainLex>Hmmmmm, intriguing, thank you!
<mark_weaver>np!
<CaptainLex>Hmmm, looks like it already is though. Darn niche alpha software
<CaptainLex>My normal approach is useless here
<CaptainLex>:P
<mark_weaver>it already is what?
<mark_weaver>what do you mean by your normal approach?
<CaptainLex>The fourth field of /etc/passwd is already the gid of guix-builder, and my normal approach is Google
<CaptainLex>This place is Google for Guix :P
<mark_weaver>CaptainLex: oh, so maybe the problem is the other way around. does the 'guix-builder' line in /etc/group contain the names of all the 'guix-builder*' users?
<mark_weaver>if not, I suggest adding them.
<CaptainLex>Aha! Not at all
<CaptainLex>haha indeed :)
<CaptainLex>Thanks again!
<mark_weaver>no problem!
<CaptainLex>Hahaha all the depencies of the first install
<CaptainLex>So to verify behavior here
<CaptainLex>I installed guix, setup the daemon, turned it on
<CaptainLex>did guix package -i hello
<CaptainLex>and it's been installing various packages (I caught a glimpse of make, linux-libre, and perl) for like half an hour
<CaptainLex>is this installing dependencies, and it's just installing a bunch because they're system dependencies?
<youlysses>CaptainLex: It looks like it's installing the whole of the "distro" right now.
<CaptainLex>Interesting. Why might this be?
<youlysses>CaptainLex: I haven't done an install until right after, 0.1 came out... but it might be a bug. I don't know why the default behavior would be to bootstrap the whole of the custom distro. :-U
<CaptainLex>Hahaha nor would I
<CaptainLex>So is there a preferred way of stopping an install? Ctrl-C would do the trick, but is there something preferred?
<youlysses>CaptainLex: Killing it via a system-call like that should be find... though I don't know if any event code has been written yet to handle it. :-U I'm not the most knowledgeable, tbh... (Sorry!) :-/
<youlysses>*fine
<CaptainLex>youlysses: That's fine! We'll discover together!
<youlysses>:-3
<CaptainLex>youlysses: I have discovered that when you tried to installing it again, it picks up where it left off when I killed it
<CaptainLex>:O
<CaptainLex>This is magic
<CaptainLex>install*
<youlysses>:-)
<CaptainLex>youlysses: Apropos of little
<CaptainLex>is the per-user, unprivileged install capability of nix and guix a special feature of consequence of the functional design?
<CaptainLex>Or is it just an unrelated decision?
<youlysses>CaptainLex: Again, no expert -- but I believe an unrelated decision.
<mark_weaver>Guix does not use any libraries or compilers from your host distro. it is completely independent.
<mark_weaver>so it has to start out by bootstrapping the toolchain and all needed libraries from scratch.
<CaptainLex>mark_weaver: I thought as much, but the packages I saw being installed seemed unnecessary. Luckily, due to the aforementioned magic I am no worse off for having killed it~
<mark_weaver>well, guix itself is built using libraries (and guile) from your host system.. but the actual things that are built in guix are completely independent.
<mark_weaver>what seemed unnecessary?
<mark_weaver>remember that the goal is for guix to be a whole distro, like nixos.
<CaptainLex>Indeed! I'm quite excited!
<CaptainLex>I don't know why Perl was included, for one
<CaptainLex>(although it will make packaging cowsay easier!)
<mark_weaver>it was probably needed by the build system of something that *is* needed.
<CaptainLex>Mmmmm
<CaptainLex>Of course, build system
<youlysses>CaptainLex: It's more-or-less going to be the "official GNU system" and a lot of GNU tools require 3rd party software to some-degree as mark_weaver pointed out. :-P
<CaptainLex>Indeed
<CaptainLex>So I suppose as far as that goes, GNOME is the most appropriate DE to package by default
<youlysses>CaptainLex: More-than-likely, yes.
<youlysses>To my knowledge, xorg nor wayland has been packaged yet, though.
<CaptainLex>Hmm
<CaptainLex>Also, it means bash
<CaptainLex>But one day I'll see a fully-interactive Scheme shell
<CaptainLex>:
<mark_weaver>what do you mean by "it means bash"
<mark_weaver>?
<mark_weaver>Guix is not just GNU software. Vim is included, for example :)
<mark_weaver>but it's certainly in its early stages.
<mark_weaver>it will be a lot of work to make it bootable, and a lot more work to get an entire modern DE like GNOME in.
<CaptainLex>Morning Guixs!
<Steap>Morning!
<CaptainLex>Steap: while my Guix distro is installing its first big grip of packages, I have a couple questions about how to handle packaging sl
<Steap>CaptainLex: go on
<Steap>CaptainLex: shoot :)
<CaptainLex>Haha sorry, my computer's been locking up recently (???)
<CaptainLex>Well, sl is built using a single traditional makefile
<CaptainLex>(and is not installed - the readme tells you to put the result in /usr/local/bin manually!)
<CaptainLex>So what should I put for the build-system?
<Steap>I think you should use the GNU build system
<Steap>You'll just have to do (alist-remove 'configure %standard-phases)
<Steap>so that "./configure" is not run
<CaptainLex>Hmm, okay!
<Steap>and you will have to define the install phase yourself
<CaptainLex>Is there a different guide than the example in the main documentation for package definition? Or should I check out the source for some others?
<Steap>there is no other documentation
<Steap>I suggest you take a look at some of the gnu/packages/*.scm files :)
<CaptainLex>Okay, cool
<CaptainLex>The (alist-remove) you told me to add
<CaptainLex>is that a full argument by itself, or it is passed to build-system?
<CaptainLex>Morning youlysses!
<Steap>CaptainLex: it's a function defined by guix
<Steap>well, taht's alist-delete
<Steap>See lua.scm, for instance
<CaptainLex>Ah, okay! Thanks!
<CaptainLex>Student proposal opens soon! Gah I need to hurry up! :P
<youlysses>CaptainLex: More like noon, here, but thanks. :-)
<CaptainLex>youlysses: Well, any time someone goes from -Zzz to normal, it's morning ;)
<CaptainLex>So Steap, I'm thinking I'll be targeting GNOME in my proposal
<CaptainLex>I know it's huge and all, but it seems appropriate to package another GNU project
<Steap>ok
<Steap>well, that'll be fun :)
<CaptainLex>I hope so!
<CaptainLex>I have obligations for the rest of the day, so I'm hoping to get sl packaged and on the mailing list Monday or Tuesday
<CaptainLex>Then cowsay after that (thanks, whoever packaged Perl 5 already!)
<CaptainLex>Then I'll probably be in a better position to talk about the real proposal
<Steap>ok
<Steap>looking forward to reading your patches!
<CaptainLex>Thanks!
<CaptainLex>Anyway, I have to go into Windows for a bit... :'(
<CaptainLex>I'll catch you cats on the flipside!
<CaptainLex>Afternoon everyone!
<civodul>hello!
<CaptainLex>Hello civodul! I'm working on my first Guix package!
<civodul>aah, great!
<civodul>let us know if you need help
<civodul>did you pass "make check" already?
<CaptainLex>What's that?
<CaptainLex>(And I'm still in the research phase)
<civodul>usually, you would run ./configure && make && make check when getting a source tarball
<civodul>like that of Guix
<CaptainLex>Do you mean after I cloned the guix repo, make check on guix itself?
<civodul>after clone, you must first run ./bootstrap
<civodul>the ./configure && make && make check
<civodul>*then
<CaptainLex>Ah, I see
<CaptainLex>Ahhhh yes I did! I installed it, though I had difficulty installing any packages
<civodul>make sure to report details on the list :-)
<CaptainLex>I will as soon as I can decide whether it's really a bug :P
<CaptainLex>Immediately after installing, I attempted to install hello, and it spent like half an hour installing packages like linux-libre and perl, which seemed to me like those could justifiably be dependencies of the distro as a whole, and then before it finished my computer froze, which it's been doing lately (I believe quite unrelated to guix)
<CaptainLex>(I may have installed a sillier, brokener version of gcc that's leaking memory a few days ago)
<Steap>I think Guix installs quite a lot of things the first time
<CaptainLex>Excellent
<CaptainLex>I'm going to resume the install now
<CaptainLex>If I disappear, it's 'cause I froze again!
<civodul>hope it's just the computer that freezes ;-)
<CaptainLex>I don't know, civodul, here in Minnesota we had twelve inches of snow three days ago
<CaptainLex>You can never tell!
<CaptainLex>So currently when guix receives improper syntax, it backtraces, yes?
<civodul>snow, woow
<civodul>yes, well Guile
<civodul>there's no "backtrace" if it's a syntax error
<CaptainLex>And plans for more helpful error messages are presumably for a version later than 0.1?
<civodul>that concerns Guile, not Guix
<civodul>but i'm not sure it could do much better
<civodul>well, it depends
<civodul>do you have a specific example?
<CaptainLex>I mean, I'm referring to passing aruments to the command line
<civodul>ah, ok
<civodul>and more specifically?
<CaptainLex>Well, for instance, guix package -i without any arguments
<civodul>ERROR: In procedure args-fold: Missing required argument after `-i'
<civodul>and a backtrace
<civodul>which is arguably suboptimal
<civodul>that's what you get too, right?
<CaptainLex>Yep!
<civodul>ok
<civodul>:-)
<civodul>CaptainLex: BTW did you talk with Steap about packaging GNOME for GSoC?
<CaptainLex>Yeah, we touched on it this morning.
<CaptainLex>I've definitelt decided on GNOME for philosophical and personal reasons
<CaptainLex>But I'm going to make a few small packages first to get a hang of it
<civodul>ok
<civodul>yes, makes sense
<CaptainLex>I'm starting of with sl, the train that trolls people who mistype ls
<CaptainLex>off*
<CaptainLex>then fortune and cowsay
<civodul>:-)
<CaptainLex>But before that can happen, I'm getting Guix set up and reading existing package recipes
<civodul>sure
<CaptainLex>gcc takes a while to install :P
<Steap>funny how the binary subtituter doesn't help
<Steap>CaptainLex: are you on an x86_64 machine ?
<CaptainLex>My processor is, but I can never remember which version of arch I installed
<CaptainLex>In other words: possibly!
<civodul>CaptainLex: if you use /nix/store as the store directory, it should be able to download pre-built binaries
<civodul>see the recent threads on the mailing list
<CaptainLex>I am using /nix/store. I'm getting a buil error 977 into installing gcc
<CaptainLex>Specifically, a linker error
<civodul>hmm
<civodul>from Guix master?
<CaptainLex>As in, what branch do I have installed?
<civodul>yes
<CaptainLex>Yes indeed
<civodul>ok
<civodul>could you post all the details on bug-guix?
<civodul>including the architecture, the command you typed in, Guile version, and last 30 lines of the build log
<civodul>roughly ;-)
<CaptainLex>Sure thing :)
<CaptainLex>Sent!
<civodul>thanks!
<civodul>crap, Emacs crash!
<Steap>damn,your OS crashed
<CaptainLex>Hahx2
<CaptainLex>Hahax2*
<Steap>I have no idea why your build fails
<Steap>what do you call "Guix branch master, v.2" ?
<CaptainLex>oops
<CaptainLex>I mean I built from the git master branch
<CaptainLex>and running guix --version returns 0.2
<Steap>oh ok
<Steap>I don't think it has anything to do with Guile 2.1.0
<CaptainLex>I'm also not confident that 2.1 is what it's calling, as 2.0.7 is also installed
<CaptainLex>Time for me to get ready for work
<CaptainLex>Have a wonderful day, everyone!
<Steap>you too!