Allan, please help me remember never to try to make a deal with you.
Compromise is the art of two or more parties entering into a partnership where they each get some of what they want. You scratch my back and I will scratch yours.
The journey to completely open software is one of those journeys of the proverbial thousand steps. Each step can be - and, in some sense, *must* be - both a compromise and a step forward. Only with enough of both will you get what you ultimately want.
If you refuse to compromise with someone, you are essentially proposing that you get all of what you want and that they get nothing. The result will be a lose-lose, because they will walk away and make a better deal with someone else - and you will get nothing, because you won't deal.
Yes, I'm oversimplifying a little - but the point remains and is valid.