
There are something like 175 USE variables (never mind local use variables) and at least 2 dozen -march/-mcpu settings that I can think of off the top of my head. Then there are lots of other various GCC flags as well. (-O2, etc.) I tried calculating all the possible permutations that could be used there, but my computer melted before I could get a number...Lazlo wrote:We would need to introduce a concept I call a PROFILE. Your gentoo profile would consist of your ARCH, CHOST, CFLAGS and USE variables.
Now if you had the same profile as some other user should be able to exchange binary packages without any problems. So obviously users who want to take advantage of my little scheme would have to gravitate around common profiles.

Portage already supports binary packages via the -k option and the BINHOST variable in make.conf. That's been there for a while. There are also plans to offer limited mirrors of GRP packages. However, GRP is only intended for the initial installation of a computer -- there is no support (now or planned) for migrating an existing computer from KDE 3.1 to KDE 3.2, for example. Except of course by compiling from source.madchaz wrote:Some of the talk about binaries in portage is going on from the dev side as well, from what I understand. I think portage-ng that is comming will have the capabilities to introduce binary packadges.


I can tell you for a fact this is wrong. From my experience, more folks run -march than -mcpu, so let's start there:Lazlo wrote:I'll be willing to bet on that 80%+ users running gentoo stable would fit into maybe 10 different profiles.
Code: Select all
-march=pentium3
-march=pentium4
-march=athlonXP
-march=athlonCode: Select all
-O3 -funroll-loops -fprefetch-loop-arrays -pipe
Anyone who needs to maintain a "buttload" of machines is probably also going to have some specific wants and needs in terms of software. This is going to affect their USE flags at the very least and probably also their CFLAGS. Portage already offers support for these folks. You can create the package once and distribute it to all your machines via the -k option and BINHOST. It's not reinventing the wheel. It's setting up one web server and making a change to /etc/make.conf. That's it.EvilTwinSkippy wrote:The folks who are interested in it fall into 2 camps: those who need to maintain a butload of machines and don't want to have to reinvent the wheel, and people with crufty old computer that lack the cahoonas to perform a full gentoo build.
There are already distributions that do this far better than Gentoo.EvilTwinSkippy wrote:Many just want something to unstuff onto a box that has half a chance of being kept up to date.

I think there is something to be said for Gentoo being content with the burgeoning user base it has already. I'm hooked with it in it's present state. Besides, I can't help but envision sliced flesh and a few gallons of blood when I envision what "binary edge' is supposed to mean.Lazlo wrote: If gentoo had a binary edge I am sure more users would be attracted. Debian would have very little to offer against us then it seems to me. And as gentoo growth out of its little niece. More joe-average-user is attracted. People who are happy to stick within a predefined profile.

My apologies Kurt. I was having DotCom style pangs of "if you build it they will come...' '...PROFIT!'klieber wrote:Anyone who needs to maintain a "buttload" of machines is probably also going to have some specific wants and needs in terms of software. This is going to affect their USE flags at the very least and probably also their CFLAGS. Portage already offers support for these folks. You can create the package once and distribute it to all your machines via the -k option and BINHOST. It's not reinventing the wheel. It's setting up one web server and making a change to /etc/make.conf. That's it.EvilTwinSkippy wrote:The folks who are interested in it fall into 2 camps: those who need to maintain a butload of machines and don't want to have to reinvent the wheel, and people with crufty old computer that lack the cahoonas to perform a full gentoo build.
There are already distributions that do this far better than Gentoo.EvilTwinSkippy wrote:Many just want something to unstuff onto a box that has half a chance of being kept up to date.
--kurt

You left out "support". That's probably as big as security.QPegasus wrote:The problems are, disk space, bandwidth and any costs associated with those. With so many potential contributers and packages, security would also be an issue. Probably the biggest one imo.

That is already being done via the GRP. With the first release in 2004, GRP packages will be available for installation over the network.DrNick wrote:But maybe there's a middle road to this discussion, there're probably relative few packages that are a real pain to compile and maybe they could be stored somewhere or why not a comunity effort among those interested.
-- which isn't a lot :)7. Delivery a feature set that addresses the needs of user community
Careful attention should be paid to the needs of our user community. What features are our users looking for in portage-ng? What kinds of problems are they interested in having portage-ng solve? These needs should be taken into account in the design.

In regards to tossing binary packages on P2P networks, I can name an awful lot of times where I pulled up a binary named something tantelizing, only to have a the download never complete because some key part was missing, or for it to turn out to be something completely different than what I was expecting. (No dear I was looking for information about the Hilton hotel in Paris... I swear!)Lazlo wrote:It seems like Daniel Robbins is on my side here, if that counts for anything.
http://www.gentoo.org/main/en/philosophy.xml
I can't seem to find the any plans on what portage-ng holds for the future. I'd be happy for a url, if anyone has it. But reading the philosophy page, I find it hard to belive that better support for binary packages is not planned. It is only THE single largest complaint from people who has looked at gentoo.
As for security and binary packages. In the end it is all about trust. You can assume that the binary packages are safe just as safe as you assume that nobody has injected backdoors into the code you are manually building. Like the recent case, that was fortunatly caught in the kernel development.
http://slashdot.org/article.pl?sid=03/1 ... 06&tid=185
It is a matter of procedures and engineering to ensure that the system stays as safe as possible from intruders. I am confident it can be done so it is both safe and a small hassle to add new binary packages and an even smaller hassle for maintainers to test and approve these packages.
With the amount of data P2P already serves today, I can't see how a 3-400Gb binary repository would be impossible to support at all. Hard drives are damn cheap. P2P allows for massive downloads without killing the server.
So it would require P2P rather than ftp and rsync and automation rather than manual labour, but impossible? I don't think so!
/Lasse

Perhaps you haven't read my previous posts. Portage *already* supports binary packages. You can install binary packages using the -k option of emerge. It works. It's supported. Now and today.Lazlo wrote:But reading the philosophy page, I find it hard to belive that better support for binary packages is not planned. It is only THE single largest complaint from people who has looked at gentoo.
I realize that portage supports binary packages. In all my assumptions above you will see that I wish to build upon that functionality.It's important that our tools support binary packages, because binary packages are widely used and widely in demand in the Linux community. If our tools don't support binary packages, then we can't claim that our tools are designed to allow a user to do anything he or she might want to do. If we purposely choose to exclude binary support, then we are attempting to interfere with how users might choose to approach particular problems, by instead imposing our own will or view of how they should approach a problem. And if we do not build binary packages, then we are not taking any steps to ensure that our tools actually work well with binary packages, nor are we taking steps to ensure that others can build binary packages, nor are we able to *demonstrate* that our tools work well with binary packages. Besides these philosophical reasons, there are many practical reasons to create binary packages.
klieber wrote:There are something like 175 USE variables (never mind local use variables) and at least 2 dozen -march/-mcpu settings that I can think of off the top of my head. Then there are lots of other various GCC flags as well. (-O2, etc.) I tried calculating all the possible permutations that could be used there, but my computer melted before I could get a number...
If you restrict yourself to "common profiles" like you suggest, then you've just negated one of the primary benefits of Gentoo and turned it in to Just Another Binary Distribution. So why use Gentoo at that point? Why not use Debian or Fedora or Mandrake or Suse or any of the other 16 gazillion binary distros?
Your system isn't unavailable during emerges. It's even available during most of the initial install. Between virtual consoles, terminal emulators, su and sudo and nfs and ssh and whatever, the compiling can easily happen in the background without interrupting anything else going on. Checking through the forums and people running stable systems have cronned "emerge sync && emerge -uUD world", people have sshed into their machines from across the continent and ran an emerge ...Lazlo wrote:This would typically be people who has actual work to be done and can't afford the system to be unavailable for an extended period. Servers and average workstations users come to mind.
