<davexunit>I'm working on auto-generating some package definitions by using the whole code-is-data thing and creating an sexp using quasiquote and pretty printing it. <davexunit>however, I want to actually output quasiquote and unquote... <davexunit>I guess it just works, though... wasn't expecting that. <mark_weaver>it gets slightly tricky when you need to unquote something that's within multiple nested quasiquotes *tadni_ has like 3 different emails link to me in Guix... I really should write a patch that just updates it to one. <davexunit>hmm, the sha256 of a bytevector containing the contents of a file is different than the output of 'guix hash <file>' <davexunit>gah, and doing the same operation with a string port yields yet another hash <davexunit>the bytevector is the same length as the file on disk. *davexunit has an almost functioning pypi2guix script <davexunit>still can't figure out the hash issue, if I could get that working I think my script is ready to roll... <Steap_>Nice, I was also planning on working on that <Steap_>davexunit: would you care to share your script so that I can try it, see if I can get it working ? *Steap_ will just go to sleep for now <davexunit>be warned, it requires guile-json and guile-curl (for now) <Steap_>OK, that looks like a lot of code <Steap_>I thought it would be shorter :/ <Steap_>I think one thing to add is the Python2 definition <Steap_>would be nice to figure out this hash issue <Steap_>I don't think we should have a Pypi specific script <Steap_>Instead we should have an "auto-packager" <Steap_>that would support writing most of a package definition and updating an existing package for PyPI, perl, GNU software <Steap_>So we'd have a unified CLI for all packages, and it would be easy to add new "kinds" of packages <Steap_>but that looks like a good start, I'll have to try that tomorrow <davexunit>Steap_: I classify this as a "quick hack" to solve my immediate need of automating the process of creating python packages somewhat. <davexunit>I was using base32 format, not nix-base32 format! <civodul>i wish it could help improve the libc situation <phant0mas>especially when only a handful of people work on the hurd :-/ <civodul>phant0mas: a handful of people can sometimes make a difference ***civodul changes topic to 'GNU Guix --- http://gnu.org/s/guix/ --- guix.el merged: https://savannah.gnu.org/forum/forum.php?forum_id=8081'
***DusXMT_ is now known as DusXMT
<Svetlana>right! the 20s delay worked and I got into the installer bash prompt, but I'm missing free wifi firmware (and I would still have a nonfree bios, probably, after I do all that) <Svetlana>I'll now go and figure out how & where to best purchase the free wifi thing that's in the 'ryf' list as time goes <civodul>Svetlana: good to hear that progress has been made :-) <civodul>my laptop has an Intel wifi chip, so i end up using plain old wired networking currently <civodul>been planning to buy an Atheros wifi dongle though <Svetlana>unfortunately I find people a bit too hard to deal with lately, especially landlord, so I'm not very excited about possibilities of wired internet here <Svetlana>unrelated thing: I don't know whether my cpu is 32bit or 64bit <davexunit>I flashed a hacked version of the proprietary BIOS for my thinkpad x220 that removed the whitelist for pci-e wifi chips. now I use an atheros chip from thinkpenguin instead of intel. <DusXMT>Svetlana: do "cat /proc/cpuinfo" <Svetlana>but windows insists it's a 32bit cpu for some reason which leaves me surprised <DusXMT>davexunit: actually, int is 4 bytes wide even on amd64 <davexunit>Svetlana: (use-modules (system foreign)) (sizeof int) <DusXMT>I think long is 8 bytes wide, but I'm not 100% sure (it-s 4 bytes on x86) <DusXMT>Svetlana: in /proc/cpuinfo, what is the address size? <DusXMT>And model name (perhaps we can look it up on the internet?) <Svetlana>riight, I'll go stab windows a bit more then for peace of mind <DusXMT>You might have had w32 installed, and it was reporting the architecture it was built for <Svetlana>DusXMT: 'windows' 'built' (lol). I'll not bother you tho, it's an issue on another side. <civodul>davexunit: i agree, (system foreign) is more user-friendly than /proc/cpuinfo <bavier>davexunit: does pypi not encode information about package dependencies? <davexunit>I have to add those manually, but it's not too bad. <davexunit>I usually also have to edit the license and synopsis/description <davexunit>and synopses usually don't meet the constraints for guix <bavier>yeah, I noticed that a while back when doing some python packages <bavier>I wonder if setup.py could be explored to fill in some blanks <davexunit>the script has still been super useful, I can quickly generate the boilerplate, complete with the correct source tarball and hash! <davexunit>bavier: that would be an excellent extension. <davexunit>that would involve extracting the tarball, which I haven't done here. <davexunit>once we go that route, we can inspect the license file too to make a better guess. :) <davexunit>I think this will be useful enough to other packagers, so I'm going to create a repo for it soon and see if anyone wants to jump in and make it more robust. :) <davexunit>I'd also like to remove the guile-curl dependency and replace with guile-gnutls, but I haven't gotten there yet. <leth>i wish there was a way to fix alwas regarding how to make a mashine readable and yet legaly conformed way of licensing a body of work which is a program. <davexunit>it was pretty easy to write this script, the hardest part was generating the (source ...) form. <davexunit>does anyone know if hydra can be used as a general-purpose CI system, or is it intended for building nix/guix packages only? <Steap_>davexunit: civodul used to run a hydra instance at his work, to test some C code <Steap_>but I think you might end up writing some Nix anyway :) <davexunit>I wonder how it stands up to jenkins or travis <davexunit>I have too many projects, but the idea of writing a hydra-like system in guile is tempting. *Tsyesika looks at her clock <jxself>Nah, DST.... davexunit standard time. :) <davexunit>Tsyesika: do not question DST! It is absolute! <civodul>davexunit: the pipy2guix thing looks cool <davexunit>I wouldn't say "finished", but it doesn't crash and makes decently usable output :) <Tsyesika>hm i'm gunna look at this later i need to finish up working <Tsyesika>does this make it easier to package my software ;) <Tsyesika>hopefully this evening i will find time to play with guix <Tsyesika>might even throw it on my thinkpad rather than a vm <Tsyesika>oh i did have a question now i come to think of it! I'm wondering when you're defining your system config file and the user section, if you specify say zsh rather than bash will it be able to pull in that package if it's not installed? I presume not but that'd be really awesome <davexunit>Tsyesika: I'm not sure if it does that *yet*, but I know it's possible. <davexunit>civodul wrote a really cool thing call "g-expressions" <DusXMT>Tsyesika: you could add zsh to the system packages, and then edit /etc/passwd to make it your shell <davexunit>so you could add this "gexp" that contains zsh, and when guix builds the derivation, the zsh package will be included as an input. <Tsyesika>sure but i'm just wondering if it'd possible to make it so that it does it automatically <davexunit>I don't really know how they work, so my explanation is at least partly wrong. <davexunit>but I think it's possible for it to happen automatically. <Tsyesika>I'm wondering if maybe packages could list what files they provide so the zsh package might be able to list it provides /bin/zsh or whereever and then guix package manager do a check to see which packages provides that shell <Tsyesika>well that would only work if zsh was already there <Tsyesika>what you'd want is packages in their definition to list a bunch of files provided or them to maybe come with a seporate manifest file or something so that you could query guix to ask what package provides a certain file or in this case executable (/bin/zsh) and it could query that and install it as part of the transaction? <davexunit>I just can't give you the right answer right now :) <Tsyesika>i'm not sure how else it'd know what provides zsh without that? <davexunit>it's not about knowing what provides the zsh binary, because you as the programmer know that the 'zsh' package has it. many packages *could* provide /bin/zsh, but you need to explicitly refer to the one you want. <Tsyesika>i think i was more wanting an eligant solution than having to manage packages to get my config to work <Tsyesika>so rather than adding zsh to a list of packages i want installing and then defining the user i want let guix figure some of that out <Tsyesika>davexunit: and installing something based on a "what provides" works yum/dnf has such a feature <davexunit>I think that's where gexps come in, when you reference a package in a gexp, that package is automatically added to the inputs of the "derivation". the derivation in this case builds an operating system. <Tsyesika>i think i need to look at gexps more but i suspect it won't do what i want as i don't think guix packages currently have enough info to do that <Tsyesika>davexunit: maybe if i specify a package rather than a path but it'd then have to derive the path from the package somehow <davexunit>I'm sure that they *should* have that info, and either way I think you can get what you want. <davexunit>it would be a lot easier to demonstrate if I knew the code to write :D <Tsyesika>davexunit: another example of this might be me saying i want openssh-server/sshd enabled and i don't want to have to touch a package list or have to care if it's installed nor should i have to care about adding it or removing it from the init system <Tsyesika>i was wondering if you could enable multiple at once as the documentation encurrages you to setup own build farm if possible, not saying i definitly will but just wondering how it might work if you want to maybe enable two? <Ulrar>I was wondering, is it possible to install packages from source instead of binary ? <DusXMT>Ulrar: just pass --no-substitutes to the command <alezost>Ulrar: it is described in manual: (info "(guix) Substitutes") <Ulrar>Oh yeah, missed that. Great, thanks :) <Tsyesika>also not the right channel but woo the tests all pass now :P <Tsyesika>sorry i was just being lazy to switch windows to gmg channel xD <davexunit>Ulrar: guix is a source-based distro. getting binary substitutes is just a nice optimization. :) <davexunit>paroneayea: oh, is the test suite failing in the 0.7.1 release? <Ulrar>davexunit: Well that's what I thought the first time I read about it, but I couldn't figure out how <davexunit>guix builds from source by default. you have to explicitly authorize a build farm for fetching substitutes. <DusXMT>Ulrar: unfortunately, with Guix, there's no real advantage to building your own things, other than that you don't have to put your trust into a build farm <Ulrar>DusXMT: You mean there is nothing like gentoo use flags, I guess ? <davexunit>paroneayea: now I know to disable the test suite in my 'mediagoblin' package. :) <DusXMT>Ulrar: nope. In fact, the point of guix is to have reproducible builds <davexunit>Ulrar: are use flags for toggling configure flags? <davexunit>so, you can definitely do that in guix, but they way you would do it is by creating a new package that inherits from another and specifying the configure flags that you want. <Ulrar>DusXMT: Well I suppose that if you were to put the flags in the config it'd reproduce the same thing, no ? <davexunit>guix packages are *exact* recipes from producing a binary. to re-configure, you need to make a new package, which is very easy to do in guix. <Ulrar>davexunit: That's what I was thinking, that's fine by me <DusXMT>My point was: disabling substitutes won't help you with that <davexunit>DusXMT: I think this was a separate concern. <Ulrar>yes. Anyway, I'll try it out soon, sounds great <davexunit>paroneayea: okay cool. I will expect them to pass, then. :) <davexunit>I'm going to have a massive patch set for guix when I finish this. <davexunit>Ulrar: it would be fun to write a little procedure that takes a package plus a list of configure flag strings and returns a new package that is the exact same but with different flags. <davexunit>(package-with-use-flags foo '("--install-gentoo")) <Ulrar>davexunit: That's a good idea. If I like guix I might try to write some packages, I always liked lisp, I guess I would like scheme <davexunit>Ulrar: I hope you will like guix and scheme. :) <Tsyesika>davexunit: there are two which don't pass on 2.6 btw <tadni_>Tsyesika: If you're an Emacs user, I can give you a config.scm to get ratpoison, conkeror, and emacs working -- if you plan on putting Guix/GNU on a dedicated box. :^P <Tsyesika>oh cool, yeah if you can show me that, ratposion isn't my wm of choice but :P <davexunit>we're a bit limited on vm choice right now :) <davexunit>Tsyesika: do you use a DE like gnome or a lightweight WM? <tadni_>Tsyesika: I mean, it's trivial to switch to guile-wm -- but it's been problematic to me. <tadni_>davexunit: Well obviously, but I was hoping it'd crash a bit less and tiling would not limit itself to the upper 4th of the screen. :^P <Tsyesika>i'll see xD tadni_ not even got it booted yet :P gotta try and find time <Ulrar>Ho yeah, there is no xmonad package. So I guess that would be step one <tadni_>Oh darn, sans those GGGG in-front of (gnu packages admin)! <tadni_>Ulrar: Yeah, really know haskell things are packaged yet that I'm aware of. <cantstanya>is there a list of things people want packaged or that people are trying to package (with issues)? <davexunit>tadni_: tiling shouldn't be that broken. it works for me pretty well. also I recommend compiling from master. <tadni_>Oh, those ggggs are only in my local buffer, nevermind. Good. <davexunit>cantstanya: not that I know of. how about I create a place for that right now? <davexunit>I'll create a page on libreplanet.org's wiki. <tadni_>davexunit: Well, not a ton of motivation to compile it locally right now. Maybe when/if it gets multi-key maps and a mode-line like Stumpwm. Right now, even if I can get guile-wm tiling to work proper, what I'll end up with it just bassically ratpoison. :^P <tadni_>It's not like I have the hacking skills currently to be able to contribute anything of worth to guile-wm anyways either... :^I <cantstanya>also is there anyone using guix to manage local packages under ~/ in another OS such as OS X or FreeBSD? <davexunit>cantstanya: not that I know of, though it should work. <tadni_>cantstanya: Don't use another OS, butk other unix-like OSes should in theory work. <cantstanya>I might try it with the latter then. I was contemplating nix, but I've finished htdp a few months ago, starting sicp, and I like scheme. <tadni_>Aren't they porting to the Linux kernel, or something? <Tsyesika>they have their own kernel and aren't planning on changing it <tadni_>davexunit: Neat! We could maybe have a "status" system at some point to to denote if someone is working on it. <cantstanya>I hope this doesn't start a debate, but would it be frowned upon to package spl and zfs (ZoL)? <Tsyesika>tadni_: i haven't been part of that decision and it is very recent so i could be wrong but i don't think they're going to switch <tadni_>cantstanya: That's not a problem, the more foss the better -- just don't expect them to be defaults over GNU software though. <Tsyesika>tadni_: the haiku philosophy is completely different than what you find over in the BSD/linux world <Tsyesika>anwyays :P now to go through this list and see what i want :P <Tsyesika>davexunit: i can add stuff to this list right? <cantstanya>I have three things I want to package, maybe someone may beat me to it :^] <tadni_>Tsyesika: Yeah, just make a FSF account. You don't have to be a paid member, be aware. *tadni_ thinks it's about time to renew his FSF membership, now that he thinks about it. <tadni_>Tsyesika: I probably should, but no. <tadni_>Okay, upgraded with the packages I plan to work on eventually. Hopefully by the end of the month. <Tsyesika>i was actually meaning already packaged :P <tadni_>Tsyesika: I added the last 4. Those are practically all I'm missing, to get my Fedora install. <tadni_>Oh yeah, probably should add Wicd. Still not sure if that's not the best way to go for networking though. :^P <tadni_>Tsyesika: Isn't NetworkManager systemd dependent? <Tsyesika>i think gentoo has problems having gnome too <Tsyesika>sigh i thought of a package but i forgot <tadni_>Is pump.io the same as gnu social now? <Tsyesika>pump.io is a completely different network and piece of software <davexunit>new protocol, new server software, new clients <Tsyesika>but i'm bias i wrote the python library for it and my day job is writing a pump.io complient federation API into GNU MediaGoblin <tadni_>Tsyesika: Ah, that was you-- neat! <Tsyesika>tadni_: glad i no longer write closed source code for 8 hours of my day ^_^ *tadni_ could probably strucure this wiki a bit for networked stuff, desktop stuff, etc. <tadni_>Also just added Krita and Mypaint to the list. <davexunit>tadni_: yeah, grouping them would be good if the list grows a lot <Tsyesika>oh tadni_ while you're re-arranging can you add 'click (python module) <Tsyesika>right! finished work i gunna go grab my thinkpad and throw guix on it! <Tsyesika>or spend the rest of the evening looking for my usb stick, who knows xD <tadni_>... Well, I did all that and it reset and I lost it... <tadni_>It wasn't that much work... but still a pain. <tadni_>I'm going to do it in sections now, instead all at once. <tadni_>I wish wiki had live editing, so you can see what other contributors are dong ... <jxself>Yes. I was surprised when I clicked suvmit and I was like "Huh?!" <tadni_>jxself: Okay, done editing for the most part. <tadni_>Need to figure out why these headers aren't working though. <davexunit>I'm glad that so many of you have taken interest <tadni_>I wish the FSD could show one all the entries at once, not just 500 at a time. <tadni_>davexunit: Not default to it, but have an option. <davexunit>using the semanticmediawiki data for each entry *tadni_ needs to get in on the next fsd hackathon, there are quite a few packages missing on this list thusfar. <davexunit>it's really easy to participate and doesn't take much time. <davexunit>I won't be working tomorrow, but I'll be on IRC and will probably join in briefly. <tadni_>davexunit: Oh there's one tomorrow? What time? <Tsyesika>i need to add some of my projects to the FSD <tadni_>I should be home from classes then. :^) <davexunit>it's a special "davexunit's birthday" edition :) <tadni_>davexunit: Oh, fun, fun -- you edge me out by only two years or-so. <Tsyesika>3 years difference between me and davexunit <Tsyesika>i'm 22 in decemeber though so it's more like 2 and a little bit <civodul>happy birthday, young davexunit! :-) <Tsyesika>i presume FSD i put the user level to deploy it (if it's a webapp) rather than to use a deployed one? <davexunit>tomorrow I will be spending the whole day hacking on guix, I think. <tadni_>Okay, think I have all the suggested packages that are too in the fsd linked. <civodul>davexunit: but your birthday is today, right? <davexunit>tadni_: thanks for that. when I'm done upgrading libreplanet.org to the latest mediawiki, we'll be able to do cool things like "interwiki links" <jxself>Oh, pre-birthdays can be fun too. <Tsyesika>sigh i think i never add anything to FSD because i can't describe stuff <tadni_>Tsyesika: I mean 80% is describing what the actual package does and the other 20% is marketing -- a general rule I use. <Tsyesika>it's difficult especially when it's "short description" <Tsyesika>basically you make a bunch of unique email addresses so giving a website an email address doesn't also give them your identity <civodul>tadni_: for descriptions in Guix i try to go down to 0% marketing <Tsyesika>tadni_: hopefully soon we'll have a "Deploy" button next to "Join" <tadni_>civodul: I was speaking more-so of a general rule. Yeah, for technical descriptions -- not the best thing. <davexunit>then why is the guile synopsis "the best damn scheme implementation ever"? <Tsyesika>(i don't know i haven't used either much really) <civodul>davexunit: of course there are exceptions to that rule ;-) <tadni_>Stumpwm's FSD seems to follow that 80% 20% rule. <tadni_>Uses that "The Emacs of WMs" line. <Tsyesika>tadni_: think of a good description then ;P <Tsyesika>problem with inboxen i tend to have to explain a lot of background behind so that it makes sense xD <tadni_>Tsyesika: The huh page is decent. <Tsyesika>but yeah it's the short description i'm really struggling with <tadni_>Tsyesika: You need just one sentence? Try two or three, it's still short enough for the average person to read and get a lot more out of it. <tadni_>One sentence descriptions, more likely than not, tend to be marketing orriented. <Tsyesika>tadni_: it's just something to throw in "Short description (required):" <tadni_>"Email service that provides protection, via virtual inboxes"? <tadni_>I mean, I don't know. I'm not good at brevity when it comes to technical descriptions. I don't think most people are. <tadni_>Tsyesika: Different strokes for differnt folks. Different skills for different pills. <tadni_>Does FSD enteries need to be approved? <davexunit>tadni_: yes, an admin will approve them shortly. *tadni_ plans on adding Krita and Mypaint, at least tomorrow. <tadni_>Not sure what all else. I need to catch up on some HW tomorrow, for the week. <tadni_>Professors need to set harder deadlines, this "you have a week before all these are due" is far too liberal for me. All it ends up with is "you have 5 assignments to do tonight." :^I <tadni_>phant0mas: It's early enough in the semester for me to correct this ... I just need to find the motivation to do so. I think it's a pretty common thing though. <tadni_>Schools need to get better with general pyschology though. <davexunit>Tsyesika, tadni_: the FSD meeting is actually from 2pm to 5pm EDT (19:00 to 22:00 UTC) <tadni_>So 3 or 4 here, okay. Should be clear to attend, assuming I do an assignment or two to get caught up in said mentioned class prior. <DusXMT>For some reason, my network doesn't automatically get started by dmd, I have to issue `deco start networking' <DusXMT>davexunit: I'm not sure, how does one do that? <DusXMT>I just added the service to my config.scm <tadni_>DusXMT: (static-networking-service "lo" "127.0.0.1" #:provision '(loopback) ? <tadni_>Tsyesika: Once it hit stable, yeah, I don't think currently it's a good idea when it's still problematic in some areas of day to day use. <tadni_>A notable one being networking wirelessly. <civodul>tadni_: this specific example is due to the lack of free driver <civodul>Tsyesika: the FSDG-compliance is under evaluation at the FSF, i think <civodul>so it could be listed there, eventually <civodul>one criterion for being listed is that it must stand alone <tadni_>DusXMT: Looks like it should work, hrm. <DusXMT>tadni_: it works after I invoke `deco start networking' <DusXMT>Is there some specific thing I need to do to make it start by default? <DusXMT>As it's rather inconvenient to have to log in as root each time I reboot the computer and start the network, dmd would do that on its own ideally <civodul>DusXMT: if you use 'static-networking-service' i think it should be started by default, no? <DusXMT>Perhaps if there are more of them, ie. also for the loopback interface, dmd only starts that, but this assumption may be wrong. <civodul>DusXMT: so you do use static-networking-service, right? <DusXMT>civodul: Yup, see the pastebin I sent *civodul grumbles something about pastebin.com being inaccessible over Tor <civodul>DusXMT: yes, that should work, so there's a bug <civodul>maybe it tries to start it before the ethernet device has been detected or something <DusXMT>sorry, I should probably switch to a different paste site, it's just that it's not that bad once you have adblock and request policy <tadni_>DusXMT: Yeah, for anythying Lisp -- paste.lisp.org is great. <DusXMT>civodul: in dmd's log file, all it states is that `Service Networking could not be started' <DusXMT>So it is possibly a timeout issue <DusXMT>tadni_: and thanks for the paste site :) <tadni_>Well davexunit suggested it first, I just shared the seniment. But yw. <DusXMT>you're right... should pay more attention <Ulrar>So vmware doesn't see my usb stick, that's great <civodul>Ulrar: try qemu, it's software that respects your freedom <Ulrar>yeah, but I never really used it. I guess it's time to figure out how that works <DusXMT>Ulrar: kinda like this: qemu-system-arch -hdX image.{qcow2,img} -m MEGS [--enable-kvm] <DusXMT>if your system supports kvm, use it <Ulrar>kvm being a kernel module, I guess ? <DusXMT>yup, literally `Kernel Virtual Machine', only works on some (though most modern) CPUs, though <DusXMT>basically, it allows for hardware accelleration <Ulrar>Well, I guess I'll just enable it quickly <jxself>I guess you're not using the Guix kernel? Because it comes with KVM configured already. <Ulrar>I'm on gentoo right now, I'm trying to make a guix VM to try it out