Right. Repairable hardware is just the one side, security updates needs to be available as well. We need mandated open sourcing of device software (including firmware and drivers + unlocking of the bootloader) after the support timerange, or at the very least alternatively the obligation to continue security updates for decades.
Who is actually going to update this even if it is open source though? There are so many drivers and firmware in a smartphone, nevermind the tens of thousands of models of smartphones out there. It would require an army of people to patch, test and distribute everything. That's even if you can figure out all this code.
I agree that the manufacturer or carrier doesn't owe you updates indefinitely, but they definitely should give you all the resources you need to develop these updates yourself if you wanted to.
The landscape can change. Maybe there's going to be a huge open-source project that will make these updates. Maybe someone will figure out a way to automatically handle a large number of hardware configurations at scale (a powerful enough hardware abstraction layer should be able to deal with it). Maybe someone will make a business out of it, providing security updates at a reasonable cost. Either way, there shouldn't be any artificial hurdles against the customer developing and running their own firmware on hardware they paid money for.
It's not about 'who's going to do it' but about 'if I want to do it, I can'.
I would really like to hack on a tablet I have that's 5 years old, but I can't because the firmware and drivers are both closed source.
I think when I buy a device, I should get the source code to it once the manufacturer decides it's not worth it for them to continue patching the software for the device I've bought.
We see that happening all the times with devices that are open and popular enough, as much as is possible now. Have a look at the xda forum to see how it is done today.
OTOH, you can wind up with stuff like installing an OS that requires more than the device has to offer- like installing the most recent version of Ubuntu Desktop on a Intel Core2 Duo isn't going to go well, nor did installing iOS 7 on iPhone 4's- which I remember eagerly installing without realizing the major slowdown all the new features added that I couldn't undo.
Linux usually works perfectly fine with old hardware, a Intel Core2 Duo should be completely enough. That's even 64 bit hardware. Worst case you have to swap out Gnome with something more minimal, but that's unlikely.
I'm currently running Manjaro with i3wm on a laptop with a core 2 duo. It came with a couple of simple conky widgets enabled by default and those probably took 5-10 seconds to load. Just boxes, one with static text and the other with load statistics. Resizing windows is a little painful, as is opening them.
I3 runs reasonably well, but Gnome would probably be too heavy to make for an enjoyable experience.