Hardware problems/poor drivers: Linux runs well on some devices and not so well.on others. It is largely up to the manufacturer to make drivers so this will improve if manufacturers want to support Linux.
Software availability: Projects like nix, app image and flathub try to fix this by providing a way developers can package their app so that it can be used on all distros. As far as I can tell:
Snap is centralised around canonical.
flathub doesn’t seem to have a huge amount of apps packaged yet (at least compared to nix or the aur).
App image doesn’t really have an easy way to manage all your different packages/update apps. It is useful though because it lets you install an app by simply downloading a file.
As far as I can tell nix is the best option long term but it doesn’t have a simple gui yet/at the moment. Although there is one being worked on.
Hardware problems/poor drivers: Linux runs well on some devices and not so well.on others. It is largely up to the manufacturer to make drivers so this will improve if manufacturers want to support Linux.
Software availability: Projects like nix, app image and flathub try to fix this by providing a way developers can package their app so that it can be used on all distros. As far as I can tell:
As far as I can tell nix is the best option long term but it doesn’t have a simple gui yet/at the moment. Although there is one being worked on.