Announcement

Collapse
No announcement yet.

GNU Guix 1.0 System Distribution & Transactional Package Manager Released

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • c117152
    replied
    Another feature is that you can git disect your whole system and spin VMs of your system deceleration file with one liners. So, combined, you can gradually remove unrelated packages and pin point the problematic package and commit without having any idea what they actually do and how they do it. Eventually you'll be posting a dozen lines deceleration file and a git hash saying "this package got slow in that commit" and there won't be any room for ambiguity.

    Alone, this justifies abandoned every other package manager except for Alpine's and maybe Openwrt's that have low-RAM requirements that can't be met by Nix and Guix. But everything between Debian, Arch and RPM has really outlived its usefulness.

    Leave a comment:


  • Bsdisbetter
    replied
    Originally posted by Michael_S View Post
    I have Guix running in a VM, it's nice.



    That's the benefit of free software: if you don't like it, you're free to not use it or to fork it and make something you do like.

    We can't win. Everything converges on one solution, like systemd, and you get people screaming that choice is being taken away. Everything diverges into dozens of choices, you get people screaming that there is so much wasteful duplication.

    And as it turns out GuixSD uses the GNU Shepherd init system. It seems to work fine, though I haven't done anything mission-critical with it.
    Yep, because comparing a package manager to systemd is valid. Not. One does 1 thing the other wants to absorb everything.
    I guess it's just a symptom of linux being only a kernel.

    Leave a comment:


  • chithanh
    replied
    Originally posted by Venemo View Post
    Sorry for my ignorance but what problems does Guix solve that isn't yet solved by other package managers?
    To add to the previous poster:
    • Installing packages as user inside the home directory, on GuixSD/NixOS leveraging packages that are already installed system-wide
    • Managing multiple versions of a package on one system
    • Distribution of a package and its dependencies to other systems, in a way that is transparent to the package manager
    • Can use binary package repositories, or build from source, or a combination of these
    Compared to snap/flatpak, which bundle all dependencies and are mostly opaque from the outside, guix/nix can track the stuff that comes as dependencies with a package.

    For example, if some snap/flatpak contains a bundled outdated and vulnerable library, that is a problem. And in many cases you have no way to tell even.
    If however some guix/nix package depends on an outdated and vulnerable library, it will be visible to the package manager. The user can track which packages require the vulnerable version, they can patch and recompile the library (if feasible), and once the last dependent package is removed from the system, the vulnerable library can be automatically removed too.

    Leave a comment:


  • Michael_S
    replied
    Originally posted by Venemo View Post
    Sorry for my ignorance but what problems does Guix solve that isn't yet solved by other package managers?
    Guix borrows a lot of ideas from Nix, but Nix has a custom configuration file syntax while Guix uses GNU Guile Scheme for its configuration files.

    The relatively uncommon thing that Nix and Guix should give you is atomic transactions. Rolling back to previous versions should always work and be almost instant, since it just involves changing a few symlinks.

    The unique thing they give you is bit-for-bit reproducible builds. I don't think they have it working for all packages, but for many software packages if you built libfoo version 3.4.5 for x86_64 on Guix anywhere it should be bit-for-bit identical to everyone else's build of libfoo version 3.4.5 for x86_64. Likewise the same is true for Nix, though I don't know if the same version built on Nix and Guix would be identical. That kind of reliably reproducible thing is huge.

    The Debian project, among others, has work ongoing about reproducible builds but as far as I know - and I could be wrong - they haven't made as much progress as the Nix and Guix teams.

    Guix and Nix are also good for devops stuff. If you want two Ubuntu Linux VMs with complex configuration to be identical, you need to clone one to the other or do some work with other tools that automate the steps you need with files under /etc/ and the apt and deb tools for you (Chef, Puppet, Ansible, Saltstack, Sparrowdo, etc...) With Guix and Nix, the whole system configuration - packages, users, service settings, etc... - is managed by the configuration file for your package manager. So if you want a copy of a Guix installation you just copy the config.scm file from the source machine to the other Guix machine and then run "guix system reconfigure" and when you're done the two boxes are identical.

    Leave a comment:


  • Venemo
    replied
    Sorry for my ignorance but what problems does Guix solve that isn't yet solved by other package managers?

    Leave a comment:


  • GaryTheGravelGuy
    replied
    Nice. Congratulations on the 1.0 release.

    Guix (and Nix) can be installed on any distro, including Android. I used it to install xWayland, IceCat, and some other goodies on SailfishOS.

    Leave a comment:


  • chithanh
    replied
    Originally posted by Bsdisbetter View Post
    Just what the world needs: more package managers.
    It may seem like a https://xkcd.com/927/ situation.
    But guix (and nix) have solved the problem of package management. These package managers even cover what snap/flatpak are trying to achieve, in a much more elegant way.

    Leave a comment:


  • Danielsan
    replied
    This distro is so cool! I look forward to install it in one of my computers.
    Last edited by Danielsan; 02 May 2019, 12:32 PM.

    Leave a comment:


  • M@yeulC
    replied
    Originally posted by Bsdisbetter View Post
    Just what the world needs: more package managers. Can we also have more lawyers?
    Looks like we only have two declarative package managers, though: GUIX and Nix

    Leave a comment:


  • Blahblah
    replied
    Sweet; time to set-up a VM with it.

    Just what the world needs: more package managers.
    At least Guix is actually trying something new and useful

    Leave a comment:

Working...
X