IRC channel logs

2015-06-06.log

back to list of logs

<alirio>alpha.gnu.org is down :(
<a_e>I think I read something about a maintenance today.
<mark_weaver>oh, that's too bad.
*davexunit packaged another handful of ruby libraries
<alirio>ftp://alpha.gnu.org/ isn't down, so I can't bootstrap because guix isn't smart enough to see ftp://alpha.gnu.org/gnu/guix/bootstrap/armhf-linux/20150101/guile-2.0.11.tar.xz and http://alpha.gnu.org/gnu/guix/bootstrap/armhf-linux/20150101/guile-2.0.11.tar.xz are the same
<davexunit>sigh, redis continues to be a pain to package.
<davexunit>ruby packaging continues to be riddled with terrible problems.
<davexunit>and I have no idea how to maintain a full tree of ruby gems for many versions of ruby.
<davexunit>especially once I figure out how to deal with native extensions.
*davexunit thinks about adding a $GUIX_ENVIRONMENT env var that counts how many envs deep you are
<davexunit>I constantly find myself wondering if I will close my terminal emulator if I type "exit" or not
<alirio>davexunit: why $SHLVL doesn't work?
<davexunit>alirio: whoa that's a thing!?
<davexunit>cool!
<davexunit>never knew about that
<davexunit>thanks alirio
<bavier`>I just tried installing some ghc packages with e.g. 'guix package -i ghc-foo ghc', then later got a 'permission denied' error doing 'guix package -i ghc-bar'
<bavier`>I suspect that ghc should be installed before any ghc library, given the collision warning...
<bavier`>installing ghc first doesn't seem to help
<bavier`>Perhaps it makes a difference that I'm installing to a non-default profile
<bavier`>it seems strange that the ghc-* package "doc" outputs are always installed, even when not asked for
<aravind>hi
<aravind>I wanted to try guix (as a package manager in arch), and I tried guix package -i emacs. It began to download the world, and so I stopped it midway. I wanted to start clean after that and mistakenly did a rm -rf /gnu/store/*
<aravind>and now it appears that none of my package commands will work because they all complain that they are missing stuff in /gnu/store/hash....drv files
<aravind>I tried a new install of the guix package (from Arch aur) and that didn't help.
<aravind>I was reading something about a cow fs, but I haven't spent enough time with guix to know how to go about fixing this, any pointers?
<bavier`>aravind: you shouldn't need to worry about the cow fs, that's only for the GuixSD install
<bavier`>aravind: in the future, you should try 'guix gc' instead of removing /gnu/store ;)
<mark_weaver>aravind: if you deleted /gnu/store, then you also need to delete <localstatedir>/guix
<mark_weaver>where <localstatedir> should ideally be /var, but might be <prefix>/var for some <prefix>, depending on how your guix was configured at build time.
<mark_weaver>and to echo bavier`: you must never delete (or modify in any way) anything at all in /gnu/store, or else things will break.
<aravind>yup.. I am getting that much :) about not deleting /gnu/store
<mark_weaver>you can use 'guix gc' to remove entries in the store that are no longer referenced
<aravind>I tried the guix gc thing, and from the output it looks like the other place things are stored is /var/guix
<aravind>what can I do now to get back all those drv files?
<aravind>should I delete /var/guix as well?
<aravind>and then restart the guix daemon?
<bavier`>aravind: yes
<mark_weaver>aravind: yes, at this point you should delete /var/guix as well
<mark_weaver>and then you'll truly be starting from scratch
<aravind>neat, that seems to be working.
<aravind>this should be added to some faq somewhere.. - what to do if I screwed up my system is borked :)
<bavier`>aravind: note that guix will need to download quite a bit because it is entirely self-contained
<aravind>thank you guys
<mark_weaver>aravind: you're welcome
<aravind>bandwidth, I have :-)
<bavier`>np, let us know if you have other questions
<aravind>cool, I arrived here after a long meandering path with cfengine, bcfg2, puppet, chef, ansible, salt, nix, ostree and finally guix :)
<aravind>lets see how this goes.
<aravind>since I am a noob with this, my current plan is to piecemeal replace stuff on my archlinux laptop with stuff from guix. Once I get as far as I can with that.. maybe try replacing systemd with dmd.
<aravind>in the process, I'd like to figure out how to preserve the system config I setup into some sort of a guile script?
<aravind>and then.. world domination? :)
<bavier`>aravind: good plan :)
<aravind>you think it's doable or am I being silly?
<bavier`>if you eventually find that most of the software you're using is from guix, it's worth a shot to try out GuixSD
<aravind>yeah, that's the eventual goal.
<ewemoa>here's an attempt at packaging arandr: https://pastee.org/8f4nm
<bavier`>ewemoa: cool
<bavier`>does it build?
<taylanub>ewemoa: best to comment why tests are disabled. otherwise looks good to me on first sight; please post a patch to the mailing list :)
<bavier`>sometimes we also like to note why python-2 is required vs python-3
<bavier`>I'd also assume that python-pygtk would be in inputs rather than native-inputs
<ewemoa>bavier`: thanks for the comments -- it runs fine here -- i honestly don't know why tests are disabled -- will try w/o disabling (it's a left-over from another package) -- w.r.t. python-pygtk, i will try w/ inputs
<ewemoa>taylanub: thanks for the comments -- sorry i failed to perceive your nick earlier -- i tried to build with tests enabled, and building failed -- will include a portion of the log in the package file for now: https://pastee.org/8ev45
<anthk>How could I fix the udev permissions?
<anthk>I have "exec dbus-launch startxfce4" in .xsession but is not enough
<rekado>when I have (mapped-device ...) in my config, guix system reconfigure fails with "/etc/config.scm:8:0: error: source expression failed to match any pattern", where line 8 is the beginning of (operating-system ...)
<rekado>I already did "guix pull" to get the latest version of guix.
<rekado>oh, I'm supposed to use this in place of a (device ...) declaration in a (file-system ...) form!
<rekado>hmm, no.
<rekado>I have to use (mapped-devices (list (mapped-device ...))).
<rekado>I could not find this in the manual, but got a hint by reading through somebody else's config.
<rekado>The docs for (operating-system ...) do mention "mapped-devices", but the (mapped-device ...) docs do not.
<rekado>I missed the "s" and thought they were the same.
<rekado>I find two things about my current configuration annoying: networking and suspend.
<rekado>I'd like networking to be a little more automatic.
<rekado>right now I need to do "ip link set enp0s25 up && dhclient enp0s25" manually.
<rekado>I also regularly switch interfaces, so I need to kill dhclient, make the other interface ready and start dhclient for the other interface.
<rekado>what are other people using on GuixSD?
<mark_weaver>rekado: you can use wicd, which can also handle wired networking automatically.
<mark_weaver>which entails replacing (dhcp-client-service) with (wicd-service), or just use %desktop-services which includes it now.
<mark_weaver>and if you want to be able to configure wicd, add 'netdev' to your user's supplementary-groups
<mark_weaver>you'll also need 'wicd' in the list passed to 'dbus-service', but that's taken care of already if you use %desktop-services. I would also advise putting 'wicd' in 'packages' of the OS config, and
<mark_weaver>s/, and//
<mark_weaver>anthk: can you be more precise? what problem are you having? why would dbus-launch fix udev permissions?
<rekado>mark_weaver: thanks, I'll try that.
<mark_weaver>rekado: if you're using 'xfce', then a little icon for 'wicd-gtk' should automatically be put in the panel.
<mark_weaver>otherwise you can run 'wicd-gtk' (or 'wicd-curses' if you prefer) manually.
<mark_weaver>but once you have it configured for which wireless networks to connect to (and whether to connect to wired networks automatically), then it'll just take care of it automatically at boot time without user intervention.
<mark_weaver>s/panel/tray/
<anthk>do I need udisks to mount devices?
<alezost>anthk: I don't know what "udisks" is, but you can just use "mount" if that's what you mean
<anthk>alezost I mean automonting
<anthk>udev doesn't mount my usb devices
<anthk>at least in thunar
<alezost>anthk: oh, sorry, I know nothing about automounting
<rekado>had to boot into an older configuration -- it's great that GuixSD makes it so easy to boot into a previously working system!
<rekado>my current configuration doesn't work; it uses (mapped-devices ...) to map an encrypted partition as "fedora-home" and then mount it with a (file-system ...) declaration.
<rekado>during boot I repeatedly see the message "waiting for fedora-home to appear" or something similar.
<rekado>it won't ever appear because I would need to input my passphrase to unlock it.
<rekado>is anyone using GuixSD with an encrypted home partition?
<anthk>where can I learn Scheme? I just know a little of Common Lisp
<alezost>anthk: you may "/join #scheme": there are some useful links at the topic
<anthk>alezost, thanks
<anthk>I really like the Scheme approach, altough is really different from what I learnt (Perl and some of Python)
<davexunit>scheme has made me dislike all of the languages that people actually pay me to program with.
<anthk>davexunit, oddly, I still like Perl because it allows me quick hacks with the huge CPAN repo
<davexunit>libraries are the weakness of pretty much every lisp, unfortunately.
<davexunit>the C FFI is extremely useful, though.
<anthk>this theme https://github.com/thearakattack/adwaita-xfce works perfectly with the XFCE DE , if I knew how to define a package in GUIX
<rekado>I think it would be good to update the pam services such that pam_limits.so is required, or else /etc/security/limits.conf will be ignored.
<rekado>Is there a way to add arbitrary configuration files in /etc to the system configuration?
<rekado>I'd like to make the contents of /etc/security/limits.conf part of my system config.
<davexunit>rekado: you should be able to create a derivation that writes the file to /gnu/store/...-file/etc/
<davexunit>and have that become part of the system derivation somehow
<rekado>davexunit: I'm uncertain about how to accomplish the latter part.
<civodul>Hello Guix!
<bavier`>hello civodul
<paroneayea>hello all :)
<davexunit>hey paroneayea
<civodul>hey!
<bavier`>GHC's package management is silly
<civodul>if it's no Guix, it's silly! :-)
<civodul>*not
<civodul>but yeah, i've heard many complaints from haskellers that Cabal sucks
<davexunit>Ruby's package management also sucks
<davexunit>but everyone thinks its good.
<davexunit>at least Haskell users know Cabal sucks.
<bavier`>that there's no way to override the location of the package database...
<civodul>oh
<bavier`>makes 'guix environment' ineffective for GHC libraries
<davexunit>:(
<davexunit>even worse than ruby!
<civodul>oh the package cache hook in (guix profile) does the right thing i guess
<civodul>but 'guix environment' doesn't use it
<civodul>:-
<civodul>:-/
<bavier`>yeah..
<bavier`>it'd be nice to just give our ghc package a native-search-path
<bavier`>oh wait! GHC_PACKAGE_PATH
<anthk>how does "guix import" work?
<anthk>I am trying to understand "guix import cpan Hailo" with no avail
<civodul>anthk: did you see http://www.gnu.org/software/guix/manual/html_node/Invoking-guix-import.html ?
<bavier`>anthk: that looks like a big cpan module, works for me though
<bavier`>a lot of depdendent modules that we don't have packaged yet
<bavier`>Would it make sense for our importers to have a '--recursive' option?
<civodul>bavier`: re GHC_PACKAGE_PATH, see http://lists.gnu.org/archive/html/guix-devel/2015-03/msg00773.html
<civodul>bavier`: --recursive could be useful, yes
<civodul>but i see that 'guix import cpan' already does that in this case
<bavier`>civodul: it populates the inputs, yes. I was thinking --recursive would also import those inputs that don't already have packages
<bavier`>e.g. I import a package that include foo-1.0 in its inputs, but there's no foo-1.0 package yet, so --recursive would also try to 'guix import foo-1.0'
<bavier`>then dump both package definitions
<bavier`>civodul: thanks for the msg link. Useful background.
<civodul>bavier`: i see; not sure if it's easy to do in general though
<civodul>notably because package names will often differ in practice
*civodul goes afk
<civodul>later!
<rekado>deliberate use of "--recursive" could then be used to import ALL THE PACKAGES! :)
<bavier`>rekado: ;)
<bavier`>yeah, I was looking at the acme-everything Hackage package
<bavier`>haha, there's an Acme::Everything on CPAN too :P
<anthk> https://metacpan.org/pod/Acme::Everything wat
<ewemoa>if what's retrieved for a source is done via git-fetch with a particular revision, how does one generate a corresponding appropriate hash? is there some nice way via guix hash?
<davexunit>ewemoa: it's a long standing inconvenience. 'guix download' is the tool that should do it, but it doesn't yet.
<davexunit>patches very welcome.
<ewemoa>davexunit: ah...so should i try to get an appropriate result via via some nix tool in the mean time? :)
<davexunit>just clone the git repo
<davexunit>delete the .git directory
<davexunit>and run 'guix hash -r' on it, I think.
<ewemoa>davexunit: thanks for the tip!
<davexunit>yw