As a mac user i shifted all my development to use containers for deps management and runtime efficiency. My thought process was this would also translate well to a productive move to Linux (i have similar concerns to you) and it just so happens to also work with my cicd platform. The biggest pain on linux is dependency management across a variety of languages and software stacks. I believe you can be productive on Linux today with a similar approach.