Open Source doesn't imply anything on the code. It assumes to benefit from a wide range of people (and outsiders views). Open Source projects, which would reject PRs on improving the build process will suffer contributions in the long run, risking their acceptance in the community. It should aid itself. At least this is the philosophy I proclaim myself :)
No, but if we imagine the incentive taken to the extreme, where you have an arcane build process that makes it essentially impossible for any person who's not on the original team to build the software, then the software devolves to effectively just a source-available project, since the users have no way of actually building their own versions, which also precludes being able to make any modifications even on their own forks.
I guess the major difference vs truly only source-available is that you can still copy and paste chunks of code to use in other projects?
1. Kubernetes
2. git-annex
3. The new generation of replacements for various core command tools (e.g. ripgrep, fd, etc.)
EDIT:
> several weeks of time
Out of curiosity, what projects were those that took several weeks? My presumption is probably very GUI heavy ones?
Debezium is also very Byzantine, or maybe it’s just that I don’t understand maven.
./configure [options]
make
make install
...or the closest equivalent (e.g. some use meson or cmake).But to your point, there are a lot of projects for which those steps work just fine.
For example many early 2000s games that used SDL 1.x can be made to work on modern Linux simply by removing the SDL so file they were bundled with and let them use the one the system provides (most common issue would be audio but also mode setting or full screen support).
This isn't a thing only on Linux btw, SDL games that have an old DLL can also have issues on Windows (in fact a game of mine was like that :-P) but be made to work by simply replacing the DLL with a newer one.
apt build-dep hello
dpkg-buildpackage ...
https://wiki.debian.org/BuildingTutorial#Building_the_source...
https://ostechnix.com/how-to-build-debian-packages-from-sour...
https://buildd.debian.org/stats/
...all hail distribution package maintainers!
There's a little more to it (deb-src into /etc/apt/sources.list), but it's super-instructive to do it on something like 'busybox' and be able to make legitimate changes to something like 'ls' ... or do it to 'coreutils' and make modifications to the "real ls".
Although the "speed-bump" to being able to build packages for the first time is a bit rough, the benefit is that the documentation is outstanding and the process is pretty seamless for most/all packages, regardless of complexity.
The docs and tools are written by engineers and maintainers for people just like you... an independent consumer/programmer, sitting at their computer, trying to (re-) build a package to add a feature or fix a bug.
The other benefit is that the process is relatively consistent across literally thousands of packages and there's a lot of docs + tools +features to handle almost any scenario that Debian (Ubuntu) supports. If you learn it for one use case, your investment pays dividends across all other packaged software.
I think you underestimate the incentive of free (beer) stuffs.
This simultaneously shows the weakness of the open-source development model - a non-monetizable passion project can rarely match the quality of something with full-time devs behind it, and probably isn't something that the Aseprite dev(s) are happy about - it sucks to compete against your own product sold for $0.
git clone && npm run build is not worth $20 to most people.