Hi, game developer here.
If you're just starting out, Unity is a bit more mature and established - and it works fine on Linux. There are also quite a few resources for getting started that apply to the current version out there (E.g. It isn't rapidly changing too much at the moment for someone just starting out). It also has the best mobile support of any engine out there, so if you want to test your game on a phone that's your best bet.
Godot is popular among hobbyists, and could be a fun start, but I don't know of any serious games being made in it yet (having said that, I know quite a few folk who are currently evaluating it, so maybe in a few years).
But, really, my recommendation is to focus on learning a programming language first. Figure out the ins and outs of basic C#, then start learning about an engine that utilizes it.
I'm only saying this because it sounds like you're looking into how to build games, not just one specific role of the process: if that's the case, starting with some basic C# tutorials/classes would help a lot.
Once you know the be basics it will be much simpler to work with an established Engine, and jumping from one to another will also have less friction.
Finally, remember that scratch is a good tool to learn about how to program. If you're feeling like you've mastered it, now is a great time to move on to a proper programming language.