On 07/23/2013 08:38 PM, Matthias Clasen wrote:
I've found it very hard to find the right place to jump into this discussion. So, I'll just put out some of my own thoughts about what I want to see out of Fedora, and then point out how I think this matches or contrasts with Matts proposal. Fedora should be an *OS*. Here are some of the qualities that I associated with that term: - It has a clearly defined boundary, with stable APIs. Some things are not going to be part of the OS, even though they are part of the Fedora universe: for example, applications. Stable is important; if you can't upgrade from version x to version x+1 and keep installed applications working, it is not an OS, imo. And it will never be attractive to anybody outside the Fedora packager community to do something with Fedora or build something on it, if there is no assurance that it continue working beyond the 6 month (or 13 month) horizon of the Fedora schedule. - The purpose of the OS is to run applications. So, it needs to be provide a way to install, update and run applications. We obviously support this now, in a way. But we need to get a lot better (see the AppInstaller proposal). The big is that many apps are simply not available on Fedora, because packaging is not something that is interesting for many people, and mostly a wasted effort from the perspective of the app developer (see the previous point). - There need to be defined extension points for how you add new stuff to it that does not fit int the 'application' category. Things like codecs, translations, fonts, runtime environments. - It should provide a defined (or designed) user experience. It can of course provide more than one, depending on the context it is used in: client, server, cloud, etc. Also worth mentioning here is the runtime vs devel split. Ideally, there will also be a defined experience for developers, an SDK if you will. Thats enough blue sky vision for now. How does this match up with Matt's proposal ? The 'Base OS / ring 0 + 1' in the proposal could possibly match my idea of an OS as having clearly defined boundaries (core + standard is pretty clear as to whats in and whats out), but as far as API is concerned, it seems a little weak - I would expect most of the system services that we are relying on to be part of the core that needs to have a stable API: policykit, pam, logind, udisks, sssd, realmd, etc. Many of these probably get pulled in via dependencies. It would be better to list them explicitly, imo. There is a tension between defining a complete enough API, and going for a minimal platform that can accomodate the needs of e.g. cloud images.
The question we should be asking is how Fedora being used in the wild? I am also hesitant to lax standards and to even consider bundled libs. If someone has a use case for it they will do it anyway. Packaging software in /opt is an alternative. Being a developer it happens to me time and time again and is always dependant on the client. What I love about Fedora is that it forces me to consider latest developments whereas a client may not.
-- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct