All right, I've in the process of trying to install a prefixed portage in OS X on a MacBook Pro using the instructions found here (The wiki entry is outdated and does not work) and I thought I would start a thread where anyone could post questions and I can list some problems that I have run into and (hopefully) their solutions.
* * Include in your bugreport the contents of: * * /Library/Gentoo/var/tmp/portage/popt-1.10.4-r1/temp/autoconf-25819.out!!!
to resume emerging system, skipping over the now unnecesary popt-1.7.
Hopefully this is helpful for anyone trying to get a prefixed portage in OS X. If anyone sees any mistakes in my post or has any better solutions to my problems, please correct me.
I solved the problem by editing /Library/Gentoo/usr/portage/eclass/java-utils-2.eclass and replacing the =~ by != on line 1893.
EDIT: I'm assuming here that the =~ was supposed to be a "not equal" but if I'm wrong, please correct me.
Personally, its taking a really long time to emerge portage the first time. I started it @ 8:30, its now 8:38, and its stil not finished.
How long did it take you tallest?
I don't think it should take that long, I can recompile it in a minute or so. Is portage the only thing you're emerging or did it have dependencies? Is it progressing through those dependencies? Did you set any use flags before emerging portage?
idk whats up with it, what version of OSX are you on?
I'm on 10.4.7 because 10.4.8 breaks matlab's X support. But I don't think that should make a difference here. Is it still going? What is it doing? What kind of output are you seeing? I really can't help without something more than "it just sits there".
What makes you think that it's 10.4.8? What exactly is going wrong? What is being emerged? Is there an error?
When I get a chance, I'll try it on my Mac Athlon64 to see if I can get any other answers.
OK, it's been a couple of weeks and I thought I'd update my progress.
At some point, I broke my prefix and ended up deleting the whole thing and starting from scratch. This didn't fix the problem (I can't remember exactly what wasn't working, but I think it was ar). Anyway, I waited a week or so before I checked back at the portage-prefix documentation, lo and behold it has been updated and the new instructions seem to be much more stable than the old ones.
and the problem should be fixed. Unfortunately, this requires you to source /Library/Gentoo/etc/profile each time you log in. I made this unnecessary by renaming /etc/profile and creating a symlink to /Library/Gentoo/etc/profile to replace it (I then copied some of the OS X specific stuff from the old /etc/profile into /Library/Gentoo/etc/profile). This is probably a bad idea, and a better solution is needed. I suppose you could just put "source /Library/Gentoo/etc/profile" at the end of Apple's /etc/proifle instead, but unfortunately Gentoo's profile script will overwrite any changes to PATH in Apple's /etc/profile.
Overall, I am very pleased with prefixed portage and it seems to be a decent replacement for darwinports or fink (if you can get all the packages you want to compile) but it's definitely not for the faint of heart and I would imagine that you're going to run into one or two problems following the prefixed-portage documentation. That's why I created this thread and I hope I can encourage more people to try it out.
NOTE: If you are going to try it out, I'd recommend doing everything as your normal user, and not as root (unless you have security reasons for needing the Gentoo prefix to be owned by root), this should make it impossible for you to screw up your OS X install. If anything goes wrong, just >rm -rf /Library/Gentoo and everything should be back to normal. On this note, I'd also recommend trying to change as little as possible in any of OS X's personal files (i.e. in /etc/) as it can be kind of picky about this stuff and it will probably get overwritten sooner or later.
Thanks for posting your experiences. I installed portage today on my macbook pro and I am having a few issues.
!!! All ebuilds that could satisfy "vim" have been masked.
Which is caused by the ebuilds have x86 or ~x86 as their keywords.
The standard keywords in my make.conf are ACCEPT_KEYWORDS="~x86-macos x86-macos"
I was wondering what you have in your make.conf? Do you just put x86 and ~x86 at the end of your ACCEPT_KEYWORDS or is there good reason not to do this?
Edit: I'm starting to think that prefixed portage is not worth the effort at the moment if packages like apache aren't even in the tree.
into /Library/Gentoo/etc/portage/package.keywords instead, that way you unmask things in the x86 or ~x86 branches one at a time and if there is a ~x86-macos version of the package, it is used first.
you will probably need to add other packages (app-editors/vim-core, etc.) into package.keywords as well.
WHY WHY WHY don't you guys don't contact me! Weeeeeee!
That GCC 4.2 compiles is GREAT. REALLY GREAT! And I can easily update the documentation! I need the feedback!
You probably aren't mailing lists persons, but I strongly encourage you to subscribe to gentoo-alt@lists.gentoo.org as all "prefix" related discussions take place there, with messages posted about special OSX support and stuff.
You are not alone, others are using it on their Macs too (like me), and I can use all the feedback I can get!
I hope you didn't give up on it yet.
Excellent, thank you very much. I've just finished subscribing to the mailing list and I'll start posting my problems and solutions there.
Thanks! I just uploaded a new portage snapshot, to be available soon.
what do I use to read the mailing list, not mail.app right?
emerge: there are no ebuilds to satisfy ">=sys-devel/libperl-5.8.8-r1".
feel like you don't have an up-to-date tree and/or bootstrap script. Are you sure you started from scratch (clean directory) and with the latest (fresh download) bootstrap script?
Bareword "gensym" not allowed while "strict subs" in use at /System/Library/Perl/5.8.6/Pod/Parser.pm line 1158.
Compilation failed in require at /System/Library/Perl/5.8.6/Pod/Man.pm line 30.
BEGIN failed--compilation aborted at /System/Library/Perl/5.8.6/Pod/Man.pm line 30.
Compilation failed in require at /usr/bin/pod2man line 16.
BEGIN failed--compilation aborted at /usr/bin/pod2man line 16.
So I'm a bit stumped. This is my 10th attempt in a month to get portage working and it keeps going downhill (used to block on emerge -e system). I see the documentation is evolving so I hope there's a way to eventually get this working. I'm not too interested in fink and others.
I don't know perl or python very well, but last I checked... perl != python, and I doubt they are the same package.