> Sounds intriguing. Clearly the trend in debian to provide build dependencies > is similar to the above functionality. anyone have any experience with gentoo.
Debian build dependencies really are NOT comparable to Gentoo's portage.. Let's take a small example. let's say you LOVE Kde, your printing system is PDQ and the world may burst, you won't change it, you use a Pentium 4 and you can't bear some people may use Athlons and pollute the package system with athlon optimized packages and added to that, you live in a weird country where you would get killed by the government if you ever use SSL. on his side, Mr X uses a 486 for his router, with NO application compiled with X, SSL, and wants everything that supports it to be compiled with SSL on my side, I use a Duron 700, I WANT to get optimized applications for my CPU (like wmplayer..), I want every single supported program to compile with GNOME support, I don't care about flat Gtk, and wouldn't install any Qt based shit. Everytthing MUST be compiled with SSL, and I hate the console, so every console application that provides X support (VIM, for ex..) must be compiled with X.. and I need LDAP So, let's take an example of implementing these 3 situations with debian : Debian is smart.. it tries to fulfills everyone's goal by splitting and splitting and splitting packages again so, for you, it's easy, you'll install all your applications, and install all the yourapps-kde, yourapps-pdq, and for the packages that *really* (really depends on the conception of debian developpers) needs optimisation, you have several version for each cpu.. -mmx, -athlon.. etc... since debian didn't allow ssl in main, it was easy to you to avoid SSL, it's going to be a lil harder in the future, though ok, so you get about what you need with debian, except : - all your binaries are compiled for 486, so you DO lose CPU time. - SSL will be problematic in the future, but it's always possible to block the SSL ports, and you're *ok*, even if it's not THE solution.. - you have 3 times as many packages as you have software installed.. it's not really a problem, but it's a mess, and you always have to pay attention to install the -option package you need, or you're f*cked now, for Mr X he uses a 486, great for him, he's among the 1% of debian users who do have the packages optimized for their CPU. he doesn't want X, ok, he just has to pay attention he wants every single package that supports SSL to use it.. then he has to pay attention to install the -ssl version of the packages otherwise he just doesn't have SSL. so, each time he wants to install something, he better do a apt-cache search name to be sure there is no -ssl version. it works for him, except : - what to do when a package isn't compiled with SSL ? (there are some in woody...) for me, I have to pay attention to install the -gnome packages, when availaible I have to pay attention NOT to install any package that has Qt/KDE support compiled-in like Mr X, I have to pay attention to install the right -ssl packages I have to add all the -ldap packages to the packages I know they support LDAP It works, except : - what to do when there's something like samba.. samba DOES support LDAP, it's just it screws up /etc/ flat files support. So debian doesn't compile samba with LDAP, for backward compatibility.. so I'm basically stuck. OK, now with debian builds depends What is it going to solve : for you : - you can recompile the packages you consider as CPU-intensive, and Optimizable. for Mr X - he can recompile the packages he wants with SSL support for me : - I can get my Samba to work with LDAP OK, but what do you do when there is an upgrade ? you have to keep track of the packages you build from debian builds, and when you see an upgade (let's say you use woody), you recompile your packages by hand, with the changes you did in the debian/rules files. Great !!! so you did all these modifications in every app's debian/rules file, just to do the same for the next version ? again, and again ? And if you want to recompile ALL your packages with your CPU optimizations ? how to do ? Now, let's see gentoo's solution : - First of all during installation, you define - the CPU optimization you want to compile all your apps with - your "USE" variable.. so, Your USE variable would be something like : USE="kde pdq -ssl" mr X's one would be USE="-X ssl" mine would be USE="ldap gnome X -Qt" then, You, Mr X and me would have to type the EXACT same commands to compile our systems with the options WE WANT.. Isn't that terrible ? Sam -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]