16 ms·
Introducing GNU Guix
- deleted 14y ago[deleted]
- taejo 14y agoIt's "based on Nix", but what's the difference, and why fork?
- icebraining 14y agoGuix & Nix ~~~~~~~~~~ Nix is really two things: a package build tool, implemented by a library and daemon, and a special-purpose programming language. Guix relies on the former, but uses Scheme as a replacement for the latter. Technically, Guix makes remote procedure calls to the ‘nix-worker’ daemon to perform operations on the store. At the lowest level, Nix “derivations” represent promises of a build, stored in ‘.drv’ files in the store. Guix produces such derivations, which are then interpreted by the daemon to perform the build. Thus, Guix derivations can use derivations produced by Nix (and vice versa); in Guix, the cheat code is the ‘nixpkgs-derivation’ procedure. :-) With Nix and the Nixpkgs distribution, package composition happens at the Nix language level, but builders are usually written in Bash. Conversely, Guix encourages the use of Scheme for both package composition and builders. http://lists.gnu.org/archive/html/guile-user/2012-07/msg00006.html http://lists.gnu.org/archive/html/guile-user/2012-07/msg0000...
- deleted 14y ago[deleted]
- jacquesm 14y ago> it’s not a bootable distribution yet, but rather one to be installed on top of a running GNU/Linux system. For a moment there I thought the GNU Hurd had been finished, I misread it as GNU Unix :(
- xendo 14y agoGNU Hurd finished? Good one :)
- meaty 14y agoIt is finished. It just has no drivers and doesn't work :)
- Argorak 14y agoWith e17 in alpha, Hurd has to be around the corner.
- sspiff 14y agoIt is finished, in the sense like WebOS is finished.
- soapdog 14y agoI use WebOS in two devices (a pre2 and a touchpad) every day and am pretty happy about it. I think Enyo rocks and is available everywhere and that WebOS is more user friendly than iOS and Android. Now, how does that compares to GNU Hurd?
- sspiff 14y agoI'm not saying WebOS is not good, or that it worse than any of the high-volume platforms out there. The same goes for Hurd. What I am saying is that both missed their shot and will never see high volume pickup and large marketshares, in the way Linux, Android an iOS do.
- rlpb 14y agoDebian's dpkg and apt are both GPL2+. What's the reason they are reinventing the wheel here? Is there some kind of licence incompatibility that the GNU project cares about? Is there some kind of major architectural difference? Why is it important enough to fragment Free Software developers over? I feel that this should be answered in an FAQ, but I can't find the answer anywhere.
- zoul 14y agoFrom the e-mail: In addition to standard package management features, Guix supports transactional upgrades and roll-backs, unprivileged package management, per-user profiles, and garbage collection Maybe that’s enough? (I don’t understand package managers.)
- danieldk 14y agoThen, why reinvent the obvious other wheel? http://nixos.org/nix/ http://nixos.org/nix/
- deleted 14y ago[deleted]
- dbaupp 14y agoIt's not a reinvention, it's a fork: "Guix is based on the Nix package manager." [https://savannah.gnu.org/projects/guix/ https://savannah.gnu.org/projects/guix/] (More info here: https://lists.gnu.org/archive/html/guile-user/2012-07/msg00006.html https://lists.gnu.org/archive/html/guile-user/2012-07/msg000..., taken from icebraining below)
- deleted 14y ago[deleted]
- jmtd 14y agoI'm not sure it's even a fork. It appears to plug a different backend/frontend into the nix structure, so it appears to be a "patch", for want of a better word. (at least that's what I gleaned from http://www.fdn.fr/~lcourtes/software/guile/guix-ghm-2012.20120721.pdf http://www.fdn.fr/~lcourtes/software/guile/guix-ghm-2012.201...)
- eterps 14y agoHow can I give it a try? F.e. if I want to install my own vim in my home directory?
- rokgarbas 14y agohavent try guix yet, but with nix you can simply do: nix-env -i vim or vimFull and it should install it. look in documentation at http://nixos.org/nix/ http://nixos.org/nix/ on how to install nix and drop on irc.freenode.org#nixos if having problems
- klrr 14y agoWhat problem does it solve?
- dscrd 14y agoSame problem as every other GNU software.
- eyko 14y agoDoes it need to? It's for hackers, not for every user. If you're bored and feel like hacking on something, this might interest you. If it doesn't, Mr. Ludovic is not trying to force you to use it. For me, some of its features, specially non-privileged user package management, are interesting. I'm not so much interested in the distribution at the moment, more in the package manager. I imagine there aren't many supported packages yet, so it's a matter of writing scripts... eventually it can become a distribution. Not for everyone. But I still see no problem in more package managers being out there - any one has a problem with yum / apt being two different package managers? Why is yet another package manager is a bad thing?
- laumars 14y agoI principle you are right. However in practice there is a sane point where there are so many competing solutions that you have to question why people don't spend their time improving existing solutions instead of adding to the fragmentation.
- chongli 14y agoSometimes you can't just improve an existing solution. It may be fundamentally different from what you intend to do (both technically and philosophically).
- tedks 14y agoI highly recommend reading over some of the Nix papers -- what the author is doing is totally divergent from nearly every other package manager in a way that's either insane or brilliant (I don't personally know enough to judge). I saw his talk at a software upgrades workshop, and it was pretty impressive.
- simonh 14y ago> A distribution built by GNU hackers is a great opportunity to improve consistency and cohesion in GNU! Because the existing fragmentation of GNU package management is too confusing, so we need a new standard for everyone to rally round. [http://xkcd.com/927/ http://xkcd.com/927/]
- moystard 14y agoI thought of the exact same xkcd when I read this email. Let's just create more fragmentation on something already exaggeratedly fragmented.. Until the next "standard".
- p9idf 14y agoThat particular Xkcd comic has been posted 79 times in the past year or so† and has quickly become a cliché. The authors' stated goals are to make a "purely functional" and "practical 100% free" package manager.†† They don't mention competition, proliferation, or winning market share. A vague hope of consistency and cohesion accompanying the announcement of a program "approaching its first alpha release" isn't a rallying cry. I think they made this announcement simply so that people interested in this sort of thing might take a look. † http://www.hnsearch.com/search#request/all&q=http%3A%2F%2Fxkcd.com%2F927%2F&sortby=create_ts+desc&start=0 http://www.hnsearch.com/search#request/all&q=http%3A%2F%... †† http://git.savannah.gnu.org/cgit/guix.git/tree/ROADMAP http://git.savannah.gnu.org/cgit/guix.git/tree/ROADMAP
- simonh 14y agoIt's a fair cop.
- morsch 14y agoHah. Your post made me curious which xkcds are the most popular on HN. This is the top10 (caveat below): 48 http://xkcd.com/927/ 48 http://xkcd.com/386/ 33 http://xkcd.com/538/ 28 http://xkcd.com/378/ 24 http://xkcd.com/810/ 23 http://xkcd.com/327/ 22 http://xkcd.com/323/ 21 http://xkcd.com/605/ 19 http://xkcd.com/936/ 17 http://xkcd.com/552/ You can easily reproduce the results by using the hnsearch API via curl "http://api.thriftdb.com/api.hnsearch.com/items/_search?q=http%3A%2F%2Fxkcd.com&limit=100&start=<iterate> and grep -ohE "http://xkcd.com/[0-9]*/" | sort | uniq -c | sort -n Unfortunately, I could only process the first 1000 entire list of ~1500 results because the API refused queries with start > 900. I have sort of a bad conscience because I'm polluting future queries by posting the top 10 list above, but I think I can live with it.
- nwmcsween 14y agoIt seems everyone reinvents package management poorly again and again. Some things that obviously stand out to me: * Why utilize scheme? It's declaritive utilize a markup like yaml, don't go off the deep end because you can. * Utilize OS specific features such as jails, bind mounts, namespaces, you can have the same NIX style separation without destroying FHS. * Parse the config files for options, it's easy cmake, autocrap, etc all have parsable formatting this way you don't need to mess with adding build time options. * Parse the source for dependencies, there are lots of white papers of people doing this and beating human made spec files. * Utilize machine learning for classification of options, dependency resolution (utilizing previous data).
- meaty 14y agoIt is probably the Guile extension language variety of scheme which is the "official GNU extension language". It makes sense really.
- regularfry 14y agoPlease, utilise the word "use".
- keenerd 14y agoYou are going about it wrong, you need to talk to the audience. Try this phrasing instead: "Use is three times as performant as utilize."
- TallGuyShort 14y agoBut utilize doesn't do joins.
- reinhardt 14y agoThat's because utilize is web scale.
- stcredzero 14y ago
- s_husso 14y agoCan someone explain what benefits do I get for using this rather than the package manager offered by my distribution? And do you need root access to install guix? Because if you do then > unprivileged package management seems quite, well, useless imho. If on the other hand everything in guix lives in the userland, I can see myself using it in the servers I don't have root-access to..
- eyko 14y agoNo, you do not need root access in order to install guix. Put it in your home folder, there, done. For ease of use add it to your $PATH.
- s_husso 14y agoThanks for clearing it up :)
- kokey 14y agoIt does feel a bit like it can become a platform independent alternative to something like Cygwin. Along the lines of ActiveState perl, but a whole GNU environment instead.
- zem 14y agoi wonder if userdir-based language package managers like rvm, cabal and opam can profitably rebase themselves atop guix.
- wooptoo 14y agoThis could turn out way better than current package managers if GNU doesn't screw it up.
- virtualritz 14y agoYet another package manager? :) I've yet to see something that does a better job than http://paludis.exherbo.org/ http://paludis.exherbo.org/ And that is not to say Paludis couldn't be improved. But I don't get why people devote time to the community to work on stuff that has been thoroughly solved.
- rokgarbas 14y agoyou have yet to give guix or nix a try. been using paludis in past and i can tell you that guix/nix is obvious evolution step :)
- davorak 14y agoI hope this causes a surge of interest in gnu guix, nixpkgs, and package management systems with these nice features in general.
- perone 14y agoDocumentation ?
- na85 14y agoI suppose it's nice that GNU has a "GNU-branded" package manager... I guess...
- huhtenberg 14y agoThat's one misleading name if you ask me - GUI+X
- rocky1138 14y agoThe Linux community needed this around 15 years ago when Windows 98 came out. Now we've got .deb and .rpm which do the job perfectly well. It's even better nowadays, as well, since their existence is effectively hidden from the user thanks to package managers. Too little, way too late.
- rokgarbas 14y agoyou can rollback on debian? you can install packages as user on RedHat? i moved away from it just because things like .deb and .rpm don't do the job all the way
- rocky1138 14y ago"do the job perfectly well" is a bad way of saying what I was thinking: "for the most part, they work pretty well for the average user" which is true. They don't cover all edge cases perfectly. But for a user who is new to Linux and wants to install some software, it's better than what we've got on any other OS except ones with dedicated and closed app stores.
- hcarvalhoalves 14y agoI don't think package management is a solved problem. Most distributions fail at the simple task of installing multiple versions of the same package alongside each other. Also, lackluster dependency management (you install library X, it wants to install mail server Y and database Z). There are many approaches that one would mistake as being "reinventing the wheel": 1. FreeBSD ports system is barebones, but incredibly simple and transparent. 2. Arch Linux's PKGBUILD recipes are also simple and, at times, a much better alternative to binary packages. 3. Gobo Linux (http://www.gobolinux.org http://www.gobolinux.org) solved binary packaging the right way by having each package in it's own tree. It's approach is similar to OS X, which also gets this right.
- antidoh 14y ago"you install library X, it wants to install mail server Y and database Z)" Almost exactly what happened when I installed nmh. Wasn't at all obvious from the dependency list that I'd get qmail, didn't pay attention to the warning prompt and said Y, ... Bonus, I have a bunch of new system accounts in my Display Manager's login screen. Bleah. Fortunately my scorched-earth reinstall is coming up, so I just leave them there to make it easier to hate what happened.
- luxxx 14y agoI like that this brings out a bunch of people who don't understand Scheme or why it's important to be purely functional. Oh you, startup kids.
- zstumgoren 14y agoBoth GNU Guix and Nix seem like excellent steps forward in bringing sanity to package management. Does anyone know if puppet, chef, salt and similar configuration management tools were inspired by these projects? At a cursory glance, e.g., there are some striking similarities in the DSLs of NixOS and Puppet.
- JonnyB 14y agoI love it! Please use it and add a ton of packges. Because i'm too lazy :)
- devb0x 14y agoIll stick with apt and yum than you. They've proved themselves enough to me