I am curious if the fact that a lot people use pop os on hardware other than system76 hardware is detrimental or helpful towards the development of the OS and the workload of the devs. Like if the number of users of pop os on different hardware configs increases, is that helpful for the devs considering that it may increase the number of bugs and hence result in an increase in worload
The workload is the same regardless of how many people are using Pop!_OS, or what hardware they’re using it on. It is not detrimental to the development of the OS for people to report hardware-specific issues. Nor does it necessarily matter how many bug reports there are. Outside of what’s necessary for System76 hardware, development time is not typically spent on resolving hardware-specific issue reports because we don’t have the means to do so. Most of the team works exclusively on Pop!_OS and COSMIC-specific features and issues.
For us to diagnose and fix hardware-specific issues, the QA and engineering teams need to have that hardware on hand to test and validate with. Given that our salaries depend entirely on System76 hardware sales, and the QA lab is in the same factory where systems are assembled, that’s the hardware that we provide the best first party support for. With each OS update regression-tested on the hardware we’ve sold in the past.
Sometimes the hardware support that we provide for our systems also fixes issues in hardware from other vendors. We’ve sold a lot of systems over the years with a wide range of hardware configurations. A lot of the components in our hardware are also widely used by other system vendors. Such as a particular Ethernet chip, or the latest NVIDIA graphics card. There’s a lot of regression tests that we use to test some advanced hardware features, and these might coincidentally resolve issues in other systems. As had happened when we worked on hybrid switchable graphics in system76-power for our hybrid graphics laptops.
For everything else though, the majority of the support for hardware-specific issues depends on community support, kernel/firmware updates, or even updates released upstream in certain packages by Ubuntu. Community members who have the same hardware might respond to an issue report with a workaround they found. We might respond to support requests with known solutions we’ve seen reported in the past. Sometimes the community finds a solution that can be generically applied to Pop!_OS.
The best way to get hardware-specific issues resolved is reporting them to the Linux kernel bug reporting mailing list. If a kernel maintainer or developer has that hardware on hand, and is able to write a patch for it which gets merged, then it’ll be included in a future kernel release. We regularly update the kernel in Pop!_OS, so we receive those fixes in bulk without any involvement necessary on our part — outside of packaging and releasing a new kernel.
On the other hand, if you happen to be a hardware vendor and you want us to officially support your hardware, you can contact System76 for a Pop!_OS support deal as HP did with the HP Dev One. We treat the HP Dev One with the same level of care and respect as our own hardware. Implemented features in Pop!_OS to enhance support for it. It’s part of our hardware lineup for regression testing. Our support team can provide training and assistance with Linux and Pop-related issues.