4 ms·
If you look at the contributors graphs[1] on our GitHub repository, you'll find that folks other than myself have added tens of thousands of lines of code. I'm
by akling 5y ago
If you look at the contributors graphs[1] on our GitHub repository, you'll find that folks other than myself have added tens of thousands of lines of code. I'm not quite the power-hungry gatekeeper you might imagine :^)
Regardless, the issue I have with the mainstream FOSS desktop system isn't about any one project's development process, but rather the fact that there are hundreds of independent development processes, each controlling a small fraction of the whole system. Doing any kind of cross-subsystem work in that environment becomes a significant undertaking, and that's what I'd like to avoid.
[1] https://github.com/SerenityOS/serenity/graphs/contributors https://github.com/SerenityOS/serenity/graphs/contributors
- throwaway82652 5y ago>but rather the fact that there are hundreds of independent development processes, each controlling a small fraction of the whole system. Doing any kind of cross-subsystem work in that environment becomes a significant undertaking Hi Andreas, hope you are doing well. This is very wrong. There are a lot of distributions of Linux and BSD that try very hard to ship as one cohesive system. Your issue doesn't make any sense. You would find it even more the case if you tried to do something like create a whole userspace from scratch and ship that, but you've already shown otherwise how that's possible. You need to get over this false reasoning or you will find yourself in the same narrow box that a lot of Linux distributions get trapped in. That's my experience anyway from seeing a lot of failures in Linux distributions with poorly defined goals. In any case thanks for making this project, I hope it's not the last OS you design.
- awesomekling 5y agoPlease point me to one of these Linux systems where the kernel, drivers, windowing system, GUI framework, networking libraries, image format decoders, font rasterizers and all CLI and GUI applications plus the libraries that support them are developed cohesively within a single project and not assembled from 3rd party sources.
- throwaway82652 5y agoAndreas, that request makes no sense. You didn't write all that code in Serenity either. Other people (a.k.a. third parties) helped out. I assume a lot of the algorithms are standard too so you didn't come up with those either. I don't want to disparage your effort but please give credit where credit is due. Please also don't underestimate the amount of work an OS like Ubuntu does to get everything to function together, it may not be perfect but if you plan to grow to the size of Ubuntu then you sign up for about the same amount of work. It's not particularly relevant if the code came from in house or not. I get what you're trying to say about vertical integration but even Apple ships a ton of common open source components because it's not practical to write every single thing again from scratch. I also get that it's fun to write your own drivers, GUI controls, TCP stack, image decoders, font rasterizers and such. It's hard for me to see how this is supposed to be "cohesive" when most of the tasks here are implementing standard things that every other OS has, even more so when this is another clone of Unix with a Windows 98 style GUI on top of it. I mean just thinking about something like a web browser, probably a good 95% of that is implementing the DOM/CSS/Javascript engines. It's a great achievement but has nothing to do with SerenityOS at all and gains nothing from any kind of perceived cohesion. It's just apparent to me this is a really weak selling point, you can do much better than defining yourself as the OS that blatantly copies features but considers it unacceptable to copy code. That's the failing of a lot of bad NIH-syndrome Linux distributions, don't fall into that trap. You need to come up with a good selling point that isn't just "we are another Unix but we hate Linux and refuse to collaborate with them". So many other people have tried that and got nowhere. It's critical for the long term success of your project to move past this.
- slacka 5y agoWhat frustrates you about Linux is exactly what drew me into FreeBSD. Have you looked into the BSDs and their development model? For example, the FreeBSD kernel and the base operating system are developed as a cohesive unit like you described. I've been watching videos of your baby progress over the years. I love the look and guiding philosophy. You should be immensely proud of what you've accomplished. But without leveraging the existing drivers, GUI frameworks, decoders from BSD or Linux, I fail to see how it can ever be more than a toy OS. However your vision implemented on a BSD base, could be the next Solus.