LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   GNU introduces Guix, a distro independent package manager based on Nix (http://www.linuxquestions.org/questions/slackware-14/gnu-introduces-guix-a-distro-independent-package-manager-based-on-nix-4175438542/)

DrCube 11-24-2012 09:40 AM

GNU introduces Guix, a distro independent package manager based on Nix
 
https://savannah.gnu.org/projects/guix/

Just thought I'd see what the slackers think of this. Will anybody try it out?
It's based on Nix, does anybody have any experience with that?

It looks like it supports rollbacks, and the dependency management uses a hash of the dependency graph, so you'll always get the exact packages you need. If you're worried about control, it uses Guile Scheme so it's extendable and hackable. Looks like it will eventually grow into it's own full distribution.

kikinovak 11-24-2012 11:48 AM

Quote:

Originally Posted by DrCube (Post 4836038)
https://savannah.gnu.org/projects/guix/

Just thought I'd see what the slackers think of this. Will anybody try it out?

Asking a bunch of die-hard Slackers what they think of a distro-independent package manager handling rollbacks and dependencies seems to me like showing up at a meeting of Monogamists Anonymous and asking everybody if they can warm up to the idea of screwing all these women out there. :p

Find 11-24-2012 11:52 AM

I'd try it in a VM.

H_TeXMeX_H 11-24-2012 12:02 PM

I don't need dependency management. It's one of the reasons I use slackware.

kabamaru 11-24-2012 12:23 PM

Because Linux desperately needs more package managers and text editors :)

688a 11-24-2012 01:42 PM

I love typing :P~~~

vdemuth 11-24-2012 02:06 PM

If I understand what I read correctly and the developers keep it going and they can get it adopted by all of the other distros out there, then this could be just what Linux needs to rid itself of the disparity between themselves. It would though mean there would be little to choose between them of course, so that's the other side of the double edge sword. But anything that can completely do away with dependency management whilst making it robust and reliable must surely be a good thing.
An interesting project to watch.

wildwizard 11-24-2012 03:38 PM

There is no intention here for this to be adopted by other distros, it is the GNU package manager.

brianL 11-25-2012 06:42 AM

My dependency-checker is called Brian. It works quite well, considering its age. ;)

GazL 11-25-2012 10:30 AM

The current slackware approach only requires the user to understand shell-scripting to build packages: which any self-respecting linux/UNIX user will already know.
I've already been exposed to far more programming languages than I care to mention and I really don't want to have to learn any new ones just to package up software.
"Guile Scheme"? No thanks.

sycamorex 11-25-2012 10:43 AM

Quote:

Originally Posted by kabamaru (Post 4836116)
Because Linux desperately needs more package managers and text editors :)

but yes, we do:)
http://imgs.xkcd.com/comics/standards.png

vdemuth 11-25-2012 11:01 AM

Quote:

Originally Posted by GazL (Post 4836583)
The current slackware approach only requires the user to understand shell-scripting to build packages: which any self-respecting linux/UNIX user will already know.
I've already been exposed to far more programming languages than I care to mention and I really don't want to have to learn any new ones just to package up software.
"Guile Scheme"? No thanks.

But you have time to spend downloading compiling installing testing finding missing dependencies etc etc. Or would you prefer to be using your PC more productively?

TobiSGD 11-25-2012 11:46 AM

Quote:

Originally Posted by vdemuth (Post 4836599)
But you have time to spend downloading compiling installing testing finding missing dependencies etc etc. Or would you prefer to be using your PC more productively?

I see this argument often and always think: "What do those people that claim to want to work more productively with their machines so that a lot of their time would be lost with installing software?" Do you really everyday install new software on your productive system?
I see normally two possibilities when it comes to production systems:

1. Either you are a user (maybe also in the admin role) of a single production system. In that case you setup the software you need exactly once, not everyday. Since you know already which software you need and which dependencies that software needs it shouldn't be as time-consuming as many people think to setup a new machine and you get the benefits from a) knowing exactly how your machine works, b) knowing exactly which software runs on your machine, and c) having the possibility to install only the optional dependencies that you need/want. This should lead in general to systems that only have needed software installed, which in turn should lead to more stability.

2. You are an admin that often has to setup a larger number of machines. In this case you still have to track down dependencies only once and testing the software is a part of your job. If compiling is a problem for you you are doing something wrong, any admin that has to do a job more than only a few times will come up with a script to do that work for him. In case of Slackware it would be nothing more than writing a few Slackbuilds, if necessary, and a queue-file for sbopkg.

Dependency tracking may make sense in case of Debian, when you have a repository with 30.000+ packages, where a large number of packages is not part of the default install. it doesn't make sense in case of Slackware, where the number of packages in the repository almost equals the number of packages that are installed in a recommended default install.
Also, many people still forget that there is no such thing like automatic dependency resolution. A package maintainer has to track down the dependencies and integrate that info into the packages. The maintainer also has to decide which optional dependencies should be compiled into the packages, which may or may not fit your needs.

I prefer to be my own package maintainer and Slackware makes it very easy to do that. Slackware is the only distro without dependency resolution (except LFS) and I am still wondering why there is such a great effort from people that are even using it to convince other users that it needs to have dependency resolution. If you want dependency resolution go for Salix, simple as that.

vdemuth 11-25-2012 12:23 PM

Quote:

Originally Posted by TobiSGD (Post 4836626)
You are an admin that often has to setup a larger number of machines. In this case you still have to track down dependencies only once and testing the software is a part of your job. If compiling is a problem for you you are doing something wrong, any admin that has to do a job more than only a few times will come up with a script to do that work for him. In case of Slackware it would be nothing more than writing a few Slackbuilds, if necessary, and a queue-file for sbopkg.

Fine for a server environment, but in a large mixed one, where different people have different requirements, different access rights and the need to use different programs, even a system admin needs to be able to get people up and running and keep them that way as quickly as possible. Go ask an admin team that has to regularly look after 1000's of PCs every day and see what they would prefer when a customer asks for program A. They can either grab it, complete with all required runtime libs, dependencies et al and install it on the recipients computer, or they can spend the next X hours scouring every corner of the Internet to get all the needed component parts, compiling etc etc ad nauseam.
Meaning a) the customer gets fed up waiting, b) the admin gets fed up listening to the customer complaining and c) the admin gets grief from their paymasters for being less than efficient due to the amount of time wasted to get program A running when they should be spending their time more efficiently supporting 1000's of customers and not just 1.

You know, if it were such a bad idea, then all the other distros that currently do something similar wouldn't be doing so. Neither would some other more commercial offerings out there.

GazL 11-25-2012 12:40 PM

Quote:

Originally Posted by vdemuth (Post 4836599)
But you have time to spend downloading compiling installing testing finding missing dependencies etc etc. Or would you prefer to be using your PC more productively?

It only takes a couple of minutes to download a build from slackbuilds.org, extract and run it (and that's assuming one doesn't use a helper like sbopkg) so I don't accept your argument that it is time consuming to do this stuff manually. I certainly don't spend that much time downloading and building stuff.

However my objection is not about the time involved. It's about having to remember the details,syntax and idiosyncrasies of yet another programming language. A long career in IT has resulted in my mind already being far too cluttered with this sort of stuff


All times are GMT -5. The time now is 02:10 AM.