Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Looking for you, OSX users
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2  
This topic is locked: you cannot edit posts or make replies.    Gentoo Forums Forum Index Gentoo for Mac OS X (Portage for Mac OS X)
View previous topic :: View next topic  
Author Message
the_snark
n00b
n00b


Joined: 17 Jan 2003
Posts: 13

PostPosted: Wed Feb 11, 2004 8:16 pm    Post subject: Wow, do I feel silly :;) Reply with quote

Heh,
I mentioned to a friend the alternate root problem, and how I had thought that there was a way to specify it, but couldn't find it. He pointed to the emerge man page. Heh. ROOT=/gentoo might be worth trying.

I'll see about installing some stuff now...

-- Daniel Mannarino
Back to top
View user's profile Send private message
Immortal Q
Apprentice
Apprentice


Joined: 14 Sep 2003
Posts: 241
Location: Silicone Valley

PostPosted: Wed Feb 11, 2004 10:18 pm    Post subject: Reply with quote

I took a look at the portage CVS tree the other day - it doesn't look like any changes have been made regarding Mac compatibility, but general updates have been made to the package as a whole - so it's probably worth a shot.

I'm wondering where we go from here. Do we devote our efforts to making virtual .ebuilds to satisfy the dependencies, or do we wait on the developers for some new portage structure? Maybe one of the devs could enlighten us/me.
_________________
Osmos.org
Now with 20% fewer rabid primates.
Back to top
View user's profile Send private message
0g
n00b
n00b


Joined: 11 Feb 2004
Posts: 9

PostPosted: Thu Feb 12, 2004 1:57 am    Post subject: Reply with quote

I'm not sure I agree that we need a separate gentoo root in the long term. If need be, we could have ebuilds for the BSD packages that Darwin provides (similar to DarwinPorts) as well as ebuilds for the GNU alternatives (similar to GNU/Darwin).

In the short term, or just for those who don't want to jeopardise a solid OS X machine, what about /usr/local as the prefix? (I think that would be consistent with BSD convention, and Apple doesn't use it.)

Perhaps this question has already been answered by metapkg.org?
Back to top
View user's profile Send private message
the_snark
n00b
n00b


Joined: 17 Jan 2003
Posts: 13

PostPosted: Thu Feb 12, 2004 3:09 am    Post subject: Misc Reply with quote

Well, doing a "ROOT=/gentoo emerge -v --nodeps foo" works well.

Don't know if metapkg answered it, but Fink did:
"
Q1.4: Why doesn't Fink install into /usr/local?

A: There are several reasons, but the common line is "because breakage will occur".

Reason One: Third-party software. /usr/local is the well-established place to put software that is not part of the system shipped by the original vendor. This means that it is a good place to put stuff. However, it also means that other people will put stuff there, too. Most install routines will just overwrite what's there - this also applies to dpkg. One can, of course, choose not to install third-party software in /usr/local. Unfortunately, most installers don't tell you beforehand what they will install where.

Reason Two: /usr/local/bin is in the default PATH. This means that your shell will find the install programs without additional measures. But it also means that you do have to take additional measures if you do not want to use the programs. In extreme cases, this can also affect the system itself - many parts depend on shell scripts.

Reason Three: The compiler tool chain searches /usr/local by default. The compiler searches /usr/local/include for header files and the linker searches /usr/local/lib for libraries. Again, this is sometimes a welcome convenience, but it's very hard to disable should the need arise. You can easily disable the compiler by putting a garbage file called stdio.h into /usr/local/include.

All that said, it is possible to install Fink into /usr/local. The installation script will warn you explicitly, but proceed once you acknowledge that you're doing this at your own risk.

Q1.5: Then why did you choose /sw?

A: That choice is quite arbitrary, but is likely to stay for the foreseeable future for practical (upgrade) issues as well as the fact that it's safe from conflicting with other packaging systems.
"

I figure that anything I am doing right now to find and fix problems with it is temporary anyway, so I just picked /gentoo

Why create seperate ebuilds? No need. That's what "emerge inject" is for. Fink does something similar, I believe. Of course, Mac OS X/BSD stuff is not identical to GNU stuff, as I said. So we will need to install libraries which technically duplicate functionality already provided. *shrug* That is why it is critical to install into an alternate root. I suspect overwriting /usr/include/term.h when you install ncurses would be BAD. The only problem is getting the environment set-up to use the alternate root. Really it shouldn't be difficult at all. I am planning to just copy what the Fink people do, more or less :;)

I never got around to subscribing to the mailing list, and haven't been plugged-in to the Portage-NG development effort. I am pretty sure that this is petty stuff for the new design. Really it's not that big a deal now. Once I actually just tried this, I realized how easy it should be (at least to get this workring for our purposes, not Portage-NG). ::)

I'm going to go see what Fink installs as a base system, and what they pretend is installed (to be filled-in-for by the native OS X stuff, such as X)

Anyway, I'm rambling. Any of you ever in the IRC room? It always seems dead.

-- Daniel Mannarino
Back to top
View user's profile Send private message
0g
n00b
n00b


Joined: 11 Feb 2004
Posts: 9

PostPosted: Thu Feb 12, 2004 3:39 am    Post subject: Reply with quote

Quote:
I am planning to just copy what the Fink people do, more or less

Fink is aimed at OS X, so it has to keep out of Apple's way. But, it is Darwin that can benefit most from Gentoo, IMHO. Darwin (as it comes) is very minimal.
Quote:
I am pretty sure that this is petty stuff for the new design

I agree that naming conventions are trivia. I would hate to start an argument along those lines. I have no real interest in /usr/local. What I do find interesting is the question, "can I get away with using / if I choose to?" If so, I think Darwin would benefit hugely.

OS X users would benefit too, if only those who don't like Fink's approach and are prepared to re-emerge or update their packages after running Apple's Software Update.
Back to top
View user's profile Send private message
0g
n00b
n00b


Joined: 11 Feb 2004
Posts: 9

PostPosted: Thu Feb 12, 2004 4:13 am    Post subject: Re: I used portage-2.0.50-r1 Reply with quote

the_snark wrote:
Hello,
I essentially followed the directions with the two or three tweaks mentioned above, but I used portage-2.0.50-r1.


Thanks Daniel, portage-2.0.50-r1 fixed the overlay problem and the bz2 problem. I installed the new portage/pym/*.py files and added the symlink /etc/make.profile -> /usr/local/portage/profiles/default-ppc which is a copy of /usr/portage/profiles/default-ppc but with make.defaults as per the snapshot readme. It seems to me that we need a default-mac profile in the portage tree. Anyone know what is happening with ARCH=mac?
Back to top
View user's profile Send private message
zojas
Veteran
Veteran


Joined: 22 Apr 2002
Posts: 1138
Location: Phoenix, AZ

PostPosted: Thu Feb 12, 2004 4:38 am    Post subject: Reply with quote

I think drobbins wanted to use "macos" in the KEYWORDS rather than just "mac"
_________________
http://www.desertsol.com/~kevin/ppc
Back to top
View user's profile Send private message
Immortal Q
Apprentice
Apprentice


Joined: 14 Sep 2003
Posts: 241
Location: Silicone Valley

PostPosted: Thu Feb 12, 2004 4:52 am    Post subject: Reply with quote

zojas wrote:
I think drobbins wanted to use "macos" in the KEYWORDS rather than just "mac"

He certainly did.

While I would really like to be able to emerge to /, for now I think I'll use /opt/gentoo, and add subfolders to my $PATH as necessary. I would really like to see that macos keyword put into portage ASAP, as it would give us sort of a legitimate starting point. MetaPkg looks great, but I don't think any of the respective parties involved have really wanted (or been able) to give the time to the project that it really requires.

</rant> - I'm gonna go grab that new portage CVS.
_________________
Osmos.org
Now with 20% fewer rabid primates.
Back to top
View user's profile Send private message
the_snark
n00b
n00b


Joined: 17 Jan 2003
Posts: 13

PostPosted: Thu Feb 12, 2004 5:35 am    Post subject: Who reads the Subject anyway? Reply with quote

What really needs to get done is a Stage 1 or 2 tarball. It's the first few base packages the first time that will likely require heavy massaging. Maybe I'll be able to take a stab at it this weekend. The macos profile is important too.

Sorry, didn't think of Darwin. Darwin really should be easier in the sense that you don't have to worry about stepping all-over Apple's stuff.

BTW, even though packages *merge* to /foo when ROOT=/foo, they do not always *know* that they are supposed to look under /foo for stuff. Silly packages ::)

I've subscribed to the mailing list, and I'll see what's going on there. I wonder if I'm stumbling in the dark past the people with flashlights :;)

-- Daniel Mannarino
Back to top
View user's profile Send private message
schlesi
Apprentice
Apprentice


Joined: 16 Jun 2003
Posts: 233
Location: near Cologne/Germany, Europe

PostPosted: Fri Feb 13, 2004 7:45 pm    Post subject: @0g: Portage & bz2 0g 0g Reply with quote

0g,

how did you fix the ebuild.sh problem with bz2-files?

Thomas
Back to top
View user's profile Send private message
0g
n00b
n00b


Joined: 11 Feb 2004
Posts: 9

PostPosted: Sat Feb 14, 2004 2:10 am    Post subject: Re: @0g: Portage & bz20g0g Reply with quote

schlesi wrote:
0g,

how did you fix the ebuild.sh problem with bz2-files?

Thomas

You really want the lastest portage, but unfortunately it doesn't emerge, so I had to use ebuild to unpack it, then install by hand out of the work directory.

Or you can patch the ebuild.sh script with this,
Code:

--- ebuild.sh.orig      Wed Jun 11 17:07:33 2003
+++ ebuild.sh   Sat Feb 14 13:00:09 2004
@@ -276,7 +276,7 @@
                        tar ${tarvars} -xzf ${DISTDIR}/${x} || die "$myfail"
                        ;;
                tbz2)
-                       bzip2 -dc ${DISTDIR}/${x} | tar ${tarvars} -xf ${DISTDIR}/${x} || die "$myfail"
+                       bzip2 -dc ${DISTDIR}/${x} | tar ${tarvars} -xf - || die "$myfail"
                        ;;
                ZIP|zip)
                        unzip -qo ${DISTDIR}/${x} || die "$myfail"
@@ -290,7 +290,7 @@
                        ;;
                bz2)
                        if [ "${y}" == "tar" ]; then
-                               bzip2 -dc ${DISTDIR}/${x} | tar ${tarvars} -xf ${DISTDIR}/${x} || die "$myfail"
+                               bzip2 -dc ${DISTDIR}/${x} | tar ${tarvars} -xf - || die "$myfail"
                        else
                                bzip2 -dc ${DISTDIR}/${x} > ${x%.*} || die "$myfail"
                        fi

I recommend he first approach. Let me know if you need more detail and I will fill in any gaps when I get a minute.
Back to top
View user's profile Send private message
schlesi
Apprentice
Apprentice


Joined: 16 Jun 2003
Posts: 233
Location: near Cologne/Germany, Europe

PostPosted: Sat Feb 14, 2004 8:57 am    Post subject: Reply with quote

Og,

thank you for your reply. I've modified the ebuild.sh as shown in your posting.

Unpacking works now, but then portage runs into an error:

Code:

>>> Unpacking portage-2.0.50-r1.tar.bz2 to /var/tmp/portage/portage-2.0.50-r1/work
>>> Source unpacked.
./create-localdecls
Checking truncate argument type... off_t
Checking libc version... ./create-localdecls: line 1: ldd: command not found

./create-localdecls: line 1: /bin/uname: No such file or directory
./create-localdecls: line 56: [: mips: unary operator expected

gcc  -Wall -c -D_GNU_SOURCE -DPIC -fPIC -D_REENTRANT libsandbox.c
libsandbox.c: In function `init_wrappers':
libsandbox.c:218: error: `RTLD_NEXT' undeclared (first use in this function)
libsandbox.c:218: error: (Each undeclared identifier is reported only once
libsandbox.c:218: error: for each function it appears in.)
libsandbox.c: In function `get_dlsym':
libsandbox.c:346: error: `RTLD_NEXT' undeclared (first use in this function)
libsandbox.c: In function `open':
libsandbox.c:542: warning: `mode_t' is promoted to `int' when passed through `...'
libsandbox.c:542: warning: (so you should pass `int' not `mode_t' to `va_arg')
libsandbox.c: In function `execve':
libsandbox.c:758: warning: implicit declaration of function `strndupa'
libsandbox.c:758: warning: assignment makes pointer from integer without a cast
libsandbox.c: In function `init_env_entries':
libsandbox.c:937: warning: assignment makes pointer from integer without a cast
libsandbox.c:946: warning: implicit declaration of function `strndup'
libsandbox.c:946: warning: assignment makes pointer from integer without a cast
In file included from libsandbox.c:1344:
getcwd.c:224:1: warning: "__lstat" redefined
getcwd.c:207:1: warning: this is the location of the previous definition
In file included from libsandbox.c:1344:
getcwd.c: In function `__egetcwd':
getcwd.c:346: error: `__ptr_t' undeclared (first use in this function)
getcwd.c:346: error: parse error before "dotlist"
getcwd.c:388: warning: implicit declaration of function `_D_ALLOC_NAMLEN'
getcwd.c:419: warning: implicit declaration of function `_D_EXACT_NAMLEN'
getcwd.c:443: error: void value not ignored as it ought to be
getcwd.c:461: error: parse error before "dotlist"
getcwd.c:472: error: parse error before "dotlist"
getcwd.c: In function `egetcwd':
getcwd.c:483: error: argument `size' doesn't match prototype
libsandbox.c:136: error: prototype declaration
In file included from libsandbox.c:1345:
canonicalize.c: In function `erealpath':
canonicalize.c:153: warning: implicit declaration of function `__mempcpy'
canonicalize.c:153: warning: assignment makes pointer from integer without a cast
canonicalize.c:163: error: void value not ignored as it ought to be
make: *** [libsandbox.o] Error 1

!!! ERROR: sys-apps/portage-2.0.50-r1 failed.
!!! Function src_compile, Line 45, Exitcode 2
!!! (no error message)


I suppose, there are some additional packages missing. Which of them of the long --pretend list must/can I install without damaging OS X?

Thomas
Back to top
View user's profile Send private message
the_snark
n00b
n00b


Joined: 17 Jan 2003
Posts: 13

PostPosted: Sun Feb 15, 2004 7:42 pm    Post subject: I never notice the subject line Reply with quote

Bah!
This is an exercise is futility without the Pathspec features. I don't want to spend a ridiculous amount of time assembling a dirty hack that I will only have to re-do. I'm going to see if I can help with Portage-NG so we can install into an alternate root the right way. Projects like this will become a matter of an afternoon's work (barring compile-time :;). We can absorb the work done by the other projects like Darwin Ports and Fink (and share our own advances).
*subscribing to Portage development list*

-- Daniel Mannarino

PS schlesi: Emerging Portage won't work yet because libsandbox isn't very portable. I think the Portaris (Portage for Solaris) people said something about commenting-out the relevant sections of the Portage ebuild to bypass trying to build sandbox.

PPS Regarding my earlier comment about ROOT=, apparently packages aren't supposed to "know" that they are in an alternate root. This option appears to be for building chroots and the like. This is not very helpful for us, I think. At least, not long-term. Using it for the initial "Stage 1" (even though we really don't need half the stuff in the traditional Stage 1 tarballs, we really need Half a Stage 2 :;) could be helpful.
Back to top
View user's profile Send private message
Immortal Q
Apprentice
Apprentice


Joined: 14 Sep 2003
Posts: 241
Location: Silicone Valley

PostPosted: Mon Feb 16, 2004 6:00 am    Post subject: Re: I never notice the subject line Reply with quote

the_snark wrote:
Bah!
This is an exercise is futility without the Pathspec features. I don't want to spend a ridiculous amount of time assembling a dirty hack that I will only have to re-do. I'm going to see if I can help with Portage-NG so we can install into an alternate root the right way. Projects like this will become a matter of an afternoon's work (barring compile-time :;). We can absorb the work done by the other projects like Darwin Ports and Fink (and share our own advances).

My thoughts exactly - my (non-web) programming experience isn't really up to the task of anything but hacking together ebuilds, so I don't know how much help I can be there - let me/us know how that goes.

the_snark wrote:

(even though we really don't need half the stuff in the traditional Stage 1 tarballs, we really need Half a Stage 2 :;)

Yah - what we need is a stage tarball to reconcile the Apple-provided base packages with those needed for dependencies, and use the stage tarball for fill in the holes and set up the basic ROOT structure, wherever that ends up... :roll:

Oh - I'll play around with that sandbox hack and see if I can keep the portage ebuild from b0rking that early.
_________________
Osmos.org
Now with 20% fewer rabid primates.
Back to top
View user's profile Send private message
schlesi
Apprentice
Apprentice


Joined: 16 Jun 2003
Posts: 233
Location: near Cologne/Germany, Europe

PostPosted: Sat Mar 13, 2004 7:28 pm    Post subject: Reply with quote

Hi,

did anything go ahead with portage/mac meanwhile?

according to this http://www.gentoo.org/proj/en/portage/ there should be an initial implementation roadmap now.

Thomas
Back to top
View user's profile Send private message
genfoo
Apprentice
Apprentice


Joined: 17 Apr 2003
Posts: 192

PostPosted: Mon May 03, 2004 1:03 pm    Post subject: Reply with quote

the hardest part of all of this is not just making portage 'run' on OSX (after all it's just a mish-mash of python and shell scripts for the most part) ... but it's the fact that the portage tree is really not properly supportive of things that will be needed (alternate paths, etc etc etc). Much stuff is hardwired so to speak.

It will be a long and (possibly bumpy) path to get the trees in shape for usage in OSX ... there are tons and tons of patches that will need to happen, tons of patches that curently exist will need to go away ... and very likely the functionality will have to be extended quite a bit to accomodate things. I don't think ARCH="osx" is going to cut it here !

That said I'm hoping it will all work out sooner than later .. but having to install everythign with --nodeps and having to manually watch out to not overwrite your OSX tools doesn't make for any sort of comfort factor!
Back to top
View user's profile Send private message
0g
n00b
n00b


Joined: 11 Feb 2004
Posts: 9

PostPosted: Mon May 03, 2004 2:54 pm    Post subject: Reply with quote

genfoo wrote:
It will be a long and (possibly bumpy) path to get the trees in shape for usage in OSX ... there are tons and tons of patches that will need to happen, tons of patches that curently exist will need to go away


Yes, there are tons of ebuilds to patch. But that is fine, because the pool of potential users able to submit those patches is huge. Interest seems to be fairly high. Here are some more frustrated potential users...

portage for OS X
Where is Gentoo/OSX
Gentoo with a Darwin kernel?
Gentoo on OSX
gentoo within OS X

One cause of delay seems to be that some crucial infrastructure is still missing from the ports tree and/or portage. I understand that sandbox was ported to OS X last year (don't know if it is under CVS). Clearly portage is working (if you are prepared to carefully merge into /). The missing pathspec feature and the missing macos keyword (and profile) were half described by drobbins in the Portage Project Roadmap back in July 2003, see http://www.gentoo.org/proj/en/portage/, but it seems that document is a work in progress (?)

Edit: I just read that Daniel Robbins is no longer Chief Architect. I hope that he hasn't given up architecting all together.
Back to top
View user's profile Send private message
HawkFB
n00b
n00b


Joined: 22 Feb 2005
Posts: 25
Location: Tokyo, Japan

PostPosted: Mon Apr 04, 2005 8:40 am    Post subject: To fink or not to fink Reply with quote

I installed Portage for mac os x in my Mac mini some months ago, but I can't find any useful package yet ^^;

The X11, I downloaded from Apple. But some other packages... I can't find them. So I m considering installing Fink. Can fink coexist with Portage or is it gonna mess my system up?
Back to top
View user's profile Send private message
schlesi
Apprentice
Apprentice


Joined: 16 Jun 2003
Posts: 233
Location: near Cologne/Germany, Europe

PostPosted: Mon Apr 04, 2005 3:03 pm    Post subject: Reply with quote

HawkFB,

have a look here: http://www.metadistribution.org/macos/ .
Back to top
View user's profile Send private message
Display posts from previous:   
This topic is locked: you cannot edit posts or make replies.    Gentoo Forums Forum Index Gentoo for Mac OS X (Portage for Mac OS X) All times are GMT
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum