GNU-Darwin Dropping Cocoa, PPC Support
Johnny Mnemonic writes "MacSlash is reporting that the Gnu-Darwin ports project has taken issue with some of Apple's current policies, to the extent of: 'GNU-Darwin will not support or distribute any software which links to
proprietary libraries, and that includes Cocoa, Carbon, CoreAudio, etc.
There will be no native package manager from GNU-Darwin (pkg_add
suffices).
Second, we will be moving our operations to x86, and we are putting the
ppc collection into maintenance mode.' Astonished reaction on MacSlash, and recognition of the Fink alternative. Is this a worthy principled stand, or is it more like Kruschev banging his shoe in the UN? Will this help or hurt Apple's adoption of GPL technology?"
"First, Apple continues the wall-of-silence with respect to their repugnant DMCA-based legal action, and there is no reason whatsoever for us to think that they will not undertake similar action in the future. It is regrettable that the DMCA was Apple-sponsored legislation, and it is now time for them to disavow it and promise never to employ it."
I think it's about time for Apple's actions to catch up with them. Frankly, they've made a lot of people mad over the years and it's nice to see a project so politically active. I just hope it doesn't destroy the project in the long run.
I couldn't get to the MacSlash article but I have to question the motivations of these GPL people. They say that Apple doesn't seem to be properly embracing GPL. Well that was never apple's motivation! They have been using the BSD license, and they use it a lot!! They both employ prominent members of the BSD community and have given back to the community in code as well.
I have to say I don't even understand the purpose of darwin-x86 myself. It seems like stupid factionalization again. If you want to run BSD and x86, run FreeBSD. If you want to run a secure server or a routing box, etc, go for OpenBSD. If you want to run on anything else, go for NetBSD. And if you want to run OSX...darwin! As it comes closer and closer into synch with FreeBSD, I just don't see the point.
I quite frankly hope that the gnu-darwin project falls into oblivion.
it won't help their project much.
_ __
Sure, they can't call the thing GNU if they keep all the proprietary stuff from the Cocoa angles in.
Apple is NOT ready to go all open-source with their stuff so its an impasse.
Can't really blame either side. The OSnews folks are plugging this in the commentaries as an example of closed-minded attitude of the GNU folks or either the greed of a silly corporation who has no clue.
I think that is the wrong response. It had to happen if the Gnu/Darwin project was going to stay true to its ideals. Still, moving Apple to be open-minded to open-source ideas is like moving a mountain with a spoon. It is happening but very slowly. I have worked for too many corporations to just get all knee-jerk and blast them immediately. They act of moving such a huge thing in a new direction is a slow process at best.
This is especially difficult when Apple is not really sure if it wants to change direction. On one hand it wants to open-source the tech or guts of the OS while at the same time protect its look and feel. It would be easier if Apple was totally sure of what it wanted.
_______________________________________________
ACK
Hey, rember GCC? Well Apple adopted it, ASTONISHING!
Or even easier, name one non-Linux company that has embraced the GPL at all.
Apple is trying something new. As they decide what they feel comfortable releasing and retracting, they will make mistakes. Some of their decisions will be marketing related, some will be legal related, and we may not be happy with many of the decisions... but at least they are trying. The best that we can do is constructively support and offer recommendations.
Keeping
Look at the installer.
/tmp before they are overwritten).
/tmp...
First they want you to run it by doing curl http://gnu-darwin.sourceforge.net/one_stop | csh as root, allowing them to run whatever they want as root on your machine.
Next, it downloads a bunch of GNU utilities (wget, killall, tar, and a couple of others) and replaces the standard system utilities with them, without checking checksums, or providing an easy way to back out the changes if something goes wrong ( some - but not all - are copied to
Then, these unchecked progams, are run as root, to download the rest of the packages. I see no attempt to verify that anything was downloaded correctly, let alone compromised.
You would think they could have at least used md5 or even cksum to try to make sure that they are downloading what they think they are downloading, or back up the system files they overwrite to some place besides
Obviously this is just an attempt at a troll (and not a very good one, at that). But I feel I need to correct a few of your points so that nobody is confused.
GNU license is vile and repugnant.
The [L]GPL is just another license; developers can read it, understand it, and evaluate it before choosing to license their software under its terms. Some of its properties (specifically the "viral" aspect) make some people uncomfortable, but we must assume that the software creators are aware of these, and choose the GPL anyway. And in the end, we must respect the wishes of the authors.
*BSD is dying.
LOL. Mac OS X seems to be doing fine, on the desktop no less, and OpenBSD practically owns the firewall market. *BSD is a lot healthier than GNU's operating system, the HURD.
FreeBSD is already dead.
I don't know what you mean by this. They have had some difficulties with leadership in the last year, but they are far from dead. The latest news on their web site is from just a few weeks ago. The ports collection continues to grow, and the developer community is burgeoning. FreeBSD is far from dead.
Karma: Good (despite my invention of the Karma: sig)
It seems this company just never can let things get too good for them. At some point, they screw up everything, and i'm not talking recently, but historically, back even to the early 80's with the massive marketing blunders with the Apple II series.
Why did they even make Darwin open-source? I note M$ uses BSD TCP/IP code and that sure isn't open source. This seems like just bad publicity that they don't need. And what did it buy them, ever?
Why not use the BSD license for the small number of basic components that are APSL? I mean, who gives a crap - not like they are handing out the Finder or something.
Why not just use NeXT code rather than BSD? They had a full Unix behind them. Why mess with open source at all?
If you are going to choose an open-source Un*x, why not choose the most popular one (Linux)? Then you build in gobs of application support.
They have a wonderful customer base, who will stick to them through thick and thin. They have decent technology at times. Yet, for all this, at the times of their greatest success, they seem to have this weird hubris that causes them to make idiotic business decisions that poison the very landslide of acceptance they seemingly deserve.
Forever a niche player.
This is just a tiny example of same. I feel sorry for people who are enamoured of Apple. I really do. Kind of like being a Red Sox fan or something.
HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
I've been up all night doing some Mac OS X device programming. Entirely from userspace code, using the gdb-based ProjectBuilder GUI debugger to debug it. No lockups and no rebooting (although that can happen by programming the IOKit. But it's less common than with kernel space programming.)
It is quite nice.
You can write device drivers for OS X, but you often don't need to, there are interfaces exported to userspace to allow you to do a lot of stuff.
The userspace interface for OS X' IOKit is based on (ducking) Microsoft COM. I've never heard much that's real positive about COM, but the way it's used here seems to make sense, in that you can instantiate C++ objects that talk to the kernel.
That is, the user code access to the kernel is largely done through C++ class interfaces. There are a few file-based hardware interfaces like in traditional Unix. I think that's mostly for compatibility with legacy code, and you still have to use the IOKit to obtain a file descriptor, rather than opening a file by giving its pathname.
While the kernel is indeed a BSD-derivative on top of Mach, the driver architecture has been completely replaced. In its place is a system of "kernel extensions" whose code is written in C++.
If you want to write a driver that extends an existing driver in some way, you subclass the existing one and add your specialization in the subclass.
Let's see if I can find you some documentation on this...
-
kernel extensions tutorials
-
IOKit Fundamentals
-
Writing an IOKit Device Driver
-
Accessing Hardware from Applications (that is, from userspace)
I think the IOKit driver architecture is a signficant advance over the driver architecture employed by any traditional Unix or Linux kernel. May I timidly suggest that some of them would do well to adopt it.Of course there is the question of license compatibility between the BSD or GPL and APSL. But you could adopt the architecture by rewriting the code, rather than adopting the actual Darwin source code.
Of course, most Linux hackers aren't into programming C++.
Request your free CD of my piano music.
Overall, I think that Apple's action is an example of the effects of the year-old "open source" movement: of its plan to appeal to business with the purely materialistic goal of faster development, while putting aside the deeper issues of freedom, community, cooperation, and what kind of society we want to live in.
...
This passage made me sick. The notion that any "movement" that is not compatible with FSF philosophies necessarily puts "aside the deeper issues" is so self-important and self-righteous, even coming from Stallman's mouthpiece. Sorry, there are plenty of people who have considered the issue who do NOT feel that our society must engender all the rules and restrictions that you would have placed on us. The FSF's world-view is not the only considered one. Many people who adopt non-"free" (as defined by FSF gospel) licenses do so after careful consideration of all the issues and deciding that non-"free" licenses more closely reflect the world *they* want to live in. Who the hell is the FSF to decide ? Keep your self-righteous ramblings to issues like GPL violations
favorite thing about BSD license is that it's really really really free. restricts just about 0 uses of the code (which is why WinDoze has some of it lurkin around under the hood too, tho bastardized it may be). u can be commercial, or non-profit or mad scientist with it, and not have anyone sue you.
/rant"You never want a serious crisis to go to waste." - Rahm Emanuel
Why complain about APSL now? Probably because initially there were high hopes, but Apple has shown that they aren't deeply committed to FOSS.
Why complain about DMCA now? Does the phrase "chilling effects" mean anything to you? Use your head.
Actually, the linkage argument isn't at all clear. A lawyer I read said that no linkage, no matter what kind, turned something into a derivitive work. That required amalgamation. So all that would be required is that certain routines be GPL'd with the source code available.
Now I will admit that this isn't the universal opinion. Many have much more restrictive opinions. Which is why the LGPL was created. But appearantly there's some doubt that there was even a need for it.
However: It is certainly the case that one could create a routine that linked to GPL code, and issue it under a dual license (GPL and your choice). And then call that routine from your proprietary code. So there's a way around this if you want. (I beleive that this approach was discussed in an article about kernel driver implementations, and how to add GPL routines as drivers where there were binary only drivers released. [GPL wrappers to binary drivers].)
I think we've pushed this "anyone can grow up to be president" thing too far.
I never said that the GPL takes away my freedom. I merely state that there are restrictions on using GPL software. There is no question on that. I am perfectly free *not* to use GPL code, which I rarely do, to develop that is. Please try to respond to what I write.
What I said is:
And this is true. With GNU, I am not free to add value and then charge for that value. Technically, it is true, I can, but since I must also provide that value free of charge, the fact is sort of obviated. Yet this does not restrict my freedom, it just restircts me from using GPL software in my own development projects, which is how I earn a living. There are very clear and strong restrictions on what I can do with GPL software, and that is the hippocrisy, that they complain about restrictions on APSL software simple because those restrictions are incompatible with their own restrictions.
I respect the GPL and what they are doing, and I understand what the GPL is about very well. As to whether the restrictions are "severe" or not, you seem to miss the point that it's all about context. In the context that I develop code and need to distribute it (and charge for my distribution) in order to survive, then the GPL is very restrictive indeed. Again, there's nothing wrong with that, they can be restrictive if they want, it's their license, but restrictive it is none-the-less.
Let's see - the original manifesto reads like this:
* The freedom to run the program, for any purpose (freedom 0).
- Yep. You can do this and still have Apple technologies (Cocoa, Carbon, Core Audio) handle the grunt work they were designed for. Pretty good compromise to attach all these ease-of-use goodies to your main event...
* The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.
- Yep also. Unless you need to have the control boxes mauve, puce and burnt sienna instead of red, yellow, and green. Or you need to reconfigure MIDI so that all the white keys are black. But really, how often does such low-level tinkering drive an app? This smacks of kids who play with the fonts instead of writing their paper...
* The freedom to redistribute copies so you can help your neighbor (freedom 2).
- Absolutely. Linking to core services doesn't stop this in the least.
* The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. (freedom 3). Access to the source code is a precondition for this.
- Again - no problem. Gets done every day.
This amounts to shoe banging.
As I said over on MacSlash, GNU's Not Unix, and It Ain't Intuit, Either. This sort of behavior will not get a doorstop-style, Jehovah's Wittness visit from Steve. Alienating the platform in question will not get anyone to open-source the proprietary technologies that they get to make money on.
Don't hand out recipes and then punish me because I need to Cuisinart to make it happen at my house.
Here's what yiour actions predict: Apple will continue with certain core technologies, make money to buy bananas, maybe never invoke the DCMA again for anything, do quite well in either case, and you guys will be the backwater of open source software for a darn good platform.
"Win treats sysadmins better than users. Mac treats users better than sysadmins. Linux treats everyone like sysadmins."