macosforge / darwinbuild

Darwinbuild is a collection of tools that assist compilation of the many projects contained in Darwin, the open source base of Apple's macOS operating system.
https://macosforge.github.io/darwinbuild/
Other
128 stars 54 forks source link

This migration went HORRIBLY wrong :`( #137

Closed geoff-nixon closed 8 years ago

geoff-nixon commented 8 years ago

@ryandesign; cc: @jeremyhu

Hi guys — I'm trying not to be too pissed/angry here. I do believe that fundamentally/eventually migrating is a good idea.

But I really have to emphasize first and foremost:

Again, I'm trying to hold my tongue here as best I can but:

I'd also note:

Now, none of this would matter particularly...

if you had, it seems, done any testing. Like, maybe just to make sure it didn't break horribly?

Have you once ever tried using darwinbuild? Have you ever even looked at the code? Are you aware that significant, critical portions of it do not even not reside within subversion at all? (Hint: grep "roots", "binary_sites").

I see I'm losing my temper a bit already so I'm going to leave it there. But. I have a, um, forceful request, that you please do at least ONE of the following:

Honestly, either one is totally fine my me.

I don't want to get anyone in trouble, but I will make a BIG STINK about this if I must.

Believe it or not, darwinbuild is still the ONLY way to independently build some semblance of "darwin" semi-extricable from a commercial Apple product, as the internal B&I build system (or whatever is being used these days) is not, to my knowledge, open source. If I'm wrong about that, and there is another, better project to build Apple OSS projects into a functioning OS, PLEASE let me know and I'll switch in a heartbeat and forget all about this.

But otherwise, I consider this an "IMPORTANT PROJECT". So... I'd really appreciate it if you'd at least meet me half way here?

Yours / no hard feelings / but please fix this, Geoff

ryandesign commented 8 years ago

Thanks @geoff-codes for bringing these problems to our attention and I apologize for the frustration we've caused. I'll do my best to explain what happened, and I would like to help resolve any issues but I'll need guidance on what exactly isn't satisfactory and what would be a suitable resolution.

First, I can clarify a few things. @jeremyhu contributes to MacPorts and maintains XQuartz but is not involved with Darwinbuild. I am a MacPorts manager and contributor. MacPorts is an independent open source project. MacPorts does not own Mac OS Forge. Mac OS Forge was a hosting service created by Apple to host MacPorts, Darwinbuild, XQuartz and other open source projects. Apple has decided to discontinue offering the Mac OS Forge service and move the projects to other hosting arrangements, primarily GitHub. Apple hired me as a temporary contractor to administer the Mac OS Forge service and oversee this transition.

The post you referred to above was specifically for MacPorts developers, and was sent in my capacity as MacPorts manager. An announcement to MacPorts users will follow after the MacPorts transition is complete. MacPorts is a large project with an active user and developer base, so I knew that keeping them informed was necessary. The owners of other still-active former Mac OS Forge projects that moved—such as CalendarServer, CUPS, XQuartz—have informed their users as they saw fit. Upon consultation with the owners of the Darwinbuild project, Darwinbuild did not appear to be actively used or developed, so they did not announce the Darwinbuild move.

We realized that moving the roots and other files that used to be on https://src.macosforge.org to GitHub would be a problem, since GitHub does not offer arbitrary file hosting on that scale. Upon consultation with the owners of the Darwinbuild project, it was decided that the roots did not need to be provided anymore, and that users would be able to recreate them using the files offered on https://opensource.apple.com. If this is insufficient and we do need to continue providing those files, we can look into BinTray or other hosting options.

The source code conversion from Subversion to Git was straightforward; no information should have been lost. If that's not the case, please let me know.

The conversion from Trac tickets to GitHub issues preserved as much information as possible but was slightly lossy, due to GitHub restrictions. For example, it's not possible to create issues or comments as an arbitrary user, which is why all imported issues and comments appear to have been created by @macosforgebot. The project owners considered these compromises to be acceptable. If you find that there is essential information from Trac that was not successfully migrated to GitHub, please let me know.

You are correct that I don't personally use Darwinbuild, so I don't know what's been broken. It was my hope that users would submit pull requests to fix things as needed, and that the project owners would provide further guidance.

The new Darwinbuild web site was created out of the old Trac wiki pages. It probably contains outdated information that needs to be updated.

So that's where we are. I hope that answers some of your questions, and that we can find a solution that works for you.

mocomoc commented 8 years ago

Content previously hosted on src.macosforge.org has been migrated to https://opensource.apple.com/darwinbuild. I will work with @ryandesign to setup redirect rules so the old URLs continue to work as before.

You can grab roots and patches directly from there in the meantime

Please note that src.macosforge.org was previously using the following redirect rule so you can't do a straight substitution from http://src.macosforge.org to https://opensource.apple.com/darwinbuild in the plist files:

RewriteRule ^/Projects/(.*)-(.*)\.tar\.gz$ http://opensource.apple.com/tarballs/$1/$1-$2.tar.gz [L,R=permanent]

cclamb commented 8 years ago

Okay, so I thought this project was completely dead - since it may not be, this is what I just recently found when I tried to build and use darwinbuild:

Hope this helps.

cclamb commented 8 years ago

@geoff-codes Who is still using darwinbuild? There's been no activity on this for years. If somebody is actively using it, they should take ownership of the project. From what I can see, it's ophaned.

The bugs you mention have been around since 2015, based on issues I can see via a cursory look. Even before then, it was not used widely.

The fixes to the problems that currently exist may not be that difficult - I think opensource.apple.com hosts tarballs that the specification PLISTs can use, for example.

Anyway, if this is really actively used somewhere, and somebody takes it over, I'd be happy to commit some fixes and get it running again.

ryandesign commented 8 years ago

The web server rules for svn.macosforge.org and src.macosforge.org have been updated; the old URLs Darwinbuild was using should be redirecting correctly to the new locations. For example:

Please let me know if this is working from Darwinbuild, and what else we need to fix.

mocomoc commented 8 years ago

Marking the ticket as closed as darwinbuild should now be as functional as it was pre-migration to GitHub.