From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
deleted by creator
So, by benefitting do you include many-eyes? Do you include GNU and other OSS software under “Linux?” Can you code?
Linux, the kernel, is hard to take advantage of. It’s very large, very complex, very monolithic, and has a very unforgiving and overloaded community of core developers.
GNU is a bit easier. The source codes are smaller, more focused, and easier to learn from or contribute to.
OSS tools in general are the easiest, because the programming languages vary widely, and you aren’t forced to program in C. OSS maintainers may be more friendly and welcoming to contributors. And even if you’re not a programmer, you can always contribute documentation fixes, translations, logos, whatever is in your capability.
I don’t have to buy Windows and deal with Microsoft licensing. Just had a one hour meeting discussing the differences between Microsoft 365 and Office 365.
Hell yea, I mainly submit bug reports and feature requests. I once asked for a feature in a KDE app and the devs implemented it within a week. Also, if you even know a little about programming, you can tweak desktop widgets, etc. I like testing the latest version of certain software too.
I’m gonna be honest, I may know how to manage Linux, servers, and the like, but I don’t know shit about coding actual applications. But that doesn’t mean I still don’t benefit from Linux’s open source nature. When an application doesn’t work, or I feel the need to change something, there’s always someone smarter than me who has a patch or a change that I can use.
I used to edit the source code of gnome-screenshot in order to remove this cheesy flash BS but later they did something to the libraries to force that crap on the users, so I uninstalled that and moved to scrot. As I like to say often - the person who will impose their vision of how things should work and happen on my computer hasn’t been born yet. That was the only time I edited a code. Oh, wait, no, there’s one more - I edited the xkb symbols files for BG and US layouts and those were originally written in C++ but they weren’t compiled.
Fixing issues, adding features, hard forking when I disagree on some fundamental aspects including both technical and social/governance, collaboration…
You question should be towards the free software community in general. Specifically to Linux, I like learning from its documentation and development process, compiling custom kernels, looking at the source…
If I find an error message, and I want to dig into it, I can find the relevant Git (or other source) repo and search through it for the error message. From there, I might find the exact piece of code that failed.
By utilizing custom kernels prepared for ARM SBCs, although I wish there was proper main-line kernel support for them.
If I find bugs that affect me or want to add features, I can tackle that myself and send them the patches. I’ve already done this to great extent with LibreOffice and Avogadro 2, plus some small contributions to other programs.
Avogadro 2 still has a long way to go. Too bad the original stopped being supported. Thank you for your contribution!
For someone still early on in coding, open-source provides some comfort as folks with light years more experience help to ensure the programs do as intented plus instead of having to buy software I’m able to throw spare cash at projectes I enjoy when it makes sense.
For me is less about changing the code myself and more into being able to talk with other people to solve it’s issues, in my case I’ve had reported some bugs for my distro maintainers that they not only responded but fixed it in a good matter of time, something that I can’t be sure will happen with other proprietary OS.
I take advantage of it by having tried and failed to make a miniscule change in two separate programs. AMA. 😎
Which programs and why did you fail?
First one was an open-source game, Dungeon Crawl Stone Soup, which I thought I knew like the back of my hand.
I wanted to try out a small tweak to how trees affect line of sight, but when looking through the codebase, I realized, it wouldn’t just require adding a flag to the tree entity, I’d need to make potentially bigger changes.
So, I asked in their IRC channel whether my suspicion was correct and within a few minutes, they told me the game actually used to behave that way until 2015. I had started playing the game in 2017 or so.
And yeah, I downloaded an old version and that was behaving like I wanted it to, and I quickly understood why it was changed.
Second program was LibreOffice. There’s a dialog somewhere in the settings, which is a bit buggy and I figured that couldn’t possibly be that hard to fix.
So, I downloaded the source code and tried to find that dialog in there. Their repo has 150+ folders top-level. I don’t even have a guess which folder could contain such a dialog. I also couldn’t manage to compile the repo.
Here, too, I probably should’ve asked for help, but yeah, I realized this simply wasn’t going to happen, even with tutoring, so I didn’t want to steal anyone’s time.
A bit frustrating, since I work with large repos on a daily basis and that codebase still slamdunked me without a problem, but yeah, least thing I learned is where to place my confidence.
The power of open source! For many softwares, it’s not as easy to download older versions, I suppose.
Regarding that dialog: is there a bug report already? Maybe the devs don’t even know?
Oh yeah, when I wrote “download”, I was actually simplifying. DCSS can be played in the browser and there’s folks hosting servers for free. On the server I’m on, you can choose from any version since 2012. Just one click and you’re playing antique DCSS:
I was also simplifying when I wrote that the LibreOffice dialogue was buggy. I don’t remember what bothered me with that dialogue, nor what particular dialogue I’m even talking about.
I’ll stumble over it again, I’m sure, but yeah, it must’ve been some petty thing, for which I would have contributed a fix, if I could have managed that, but which wasn’t actually necessary to fix…