Hello Ben,
Am I correct that software that doesn't link directly to any AGPLv3 code (e.g. code that just uses libc) is okay to have proprietary licenses?
this is not correct because the proprietary code would still linked to Genode in addition to the libc.
That seems to be the logical interpretation, and probably the most beneficial, as it wouldn't discourage companies from porting their software to Genode.
This statement is interesting because it raises the question of the motives and goals behind Genode. What does "most beneficial" mean? Beneficial to whom? Let me try to look at this question from different perspectives.
1. The Free Software user
For an end user who consciously uses a Free Software ecosystem, proprietary applications are not interesting because they restrict the freedom of the user. Frankly speaking, I am an example of such a user. I have not touched proprietary applications on my computer since several years. But I vividly remember the inconvenience of using opaque installers, the lack of security updates, the inability to fix bugs, or the suspicion about backdoors and vulnerabilities introduced by such applications. The argument that an operating system would be useless without proprietary applications was probably valid 15 years ago. Today, the Free Software world is so strong and diverse that this argument does not hold anymore.
2. The consumer
Many end users are neither aware nor interested in technical details. They just want to get work done, browse the web, play games, or watch movies. From the operating-system's perspective, I also see professionals (like photographers, writers, business users) in this category. A typical consumer uses the OS that comes pre-installed on the device, and accepts the inherent dependency from commercial vendors. The user does not care too much about the uppercase Freedom of software. I am sometimes such a user. E.g., when using my portable audio player, I just want to listen to music.
3. The proprietary application vendor
For a proprietary application vendor, the consumer (2) is a business case. The application vendor wants to create and distribute applications with as little costs as possible and sell them to the consumer at the highest price possible. The latter would not be easily possible if the application vendor published its own "intellectual property" to everyone for free. Hence, the applications tend to stay proprietary to uphold the business case. The application vendor has to consider expenses like paid-for development tools, licenses of commercial libraries, or app-store fees as cost factors. It is clear that proprietary application vendors welcome liberally licensed open-source libraries or platforms for hosting and distributing proprietary software at no costs.
4. The proprietary platform vendor
A vendor may use Genode as the basis of a proprietary platform, for example an appliance designated for a specific market. But such a platform may in principle also be targeted at the consumer mass market. In order to use Genode as the basis of a proprietary platform, the platform vendor obtains a commercial license of Genode. In this case, the choice of Genode's regular open-source license is not a concern for such a platform vendor.
5. The Free Software developer
The motives of Free-Software developers are diverse. But regardless of the motives, they generally improve the lives of Free-Software users. If the software addresses consumer needs, Free-Software developers often find themselves as competing with proprietary applications.
Of course, the categories are not clear-cut. But they help to address two questions: (1) Who would benefit from the ability to host proprietary applications on top of the open-source Genode system, and (2) whom do we want to cater with the open-source license of Genode?
Regarding question (1), only the proprietary application vendor would immediately benefit, but only under the condition that Genode is a platform used by their target audience (consumers). This is of course not the case. Hence, for an application vendor, there is no business case for porting their applications to Genode at all. Instead, application vendors focus on popular end-user platforms like iOS, Android, Windows.
Regarding question (2), with Genode's open-source license, we want to cater Free-Software users and Free-Software developers in the first place. Acknowledging that the open-source Genode system is not a consumer platform as is, there is no benefit in catering the interests of proprietary application vendors with Genode's open-source license.
Please don't get me wrong. I don't dismiss consumers. I see two principle ways of how Genode can reach popularity among consumers, by becoming a consumer platform, or by consumers gravitating towards Free Software. Regarding the former, I am convinced that Genode can become a popular consumer platform only with strong commercial incentives of a platform vendor. Should a platform vendor develop such an interest, it would seek a commercial license. The funding obtained from the commercial licensing would ultimately help Genode and thereby the Free-Software community. The second direction is that consumers would buy products that are solely based on Free Software. Personally, as a Free-Software user, I find this prospect quite exciting.
Given this line of thinking, I hope that you agree that the ability to host proprietary applications on top of the open-source Genode system would not bring any tangible value. But maybe I have overlooked something? Please don't hesitate to share your thoughts.
Regards Norman