Comment by WhyNotHugo

10 months ago

The kernel is continuously changing (which IMHO is also an issue), so keeping a fork requires a lot of work to continuously adapt to those changes.

This is why forks made for specific devices are seldom updated for more than a few months (or a couple of years if you're very lucky).

maybe we need something better than git. meh.

I feel like this problem should have a technical solution.

maybe a VCS good enough that this isn't as big an issue? (along the lines of pijul?) or

maybe something from formal verification methods to better enforce or more clearly explain why some drivers cannot be accepted. then again, I don't think the computer science is quite there yet

  • The VCS has nothing to do with it. Code has all sorts of subtle dependencies. When changes are made, other things are liable to break. When they're in someone else's fork, the person making the change is obviously not going to make sure that fork will stay working.

    Either the change is accepted upstream meaning that everyone else making changes to the mainline needs to keep it working, or it isn't and they don't.

  • It's not about the VCS, it's about API compatibility being broken.

    If your code is out-of-tree, every time someone changes an API that break your build, it's your responsibility to update your for and fix it.

    If your code is mainline, the people who change API and break the compilation are on the hook to fix it.