You can’t offer people a free lunch and then claim they are steeling if they don’t voluntarily tip you the full cost of a lunch.
Open source software is provided under a license and if Apple or Amazon or whoever do not violate that license they are not steeling. If you didn’t want them to use the software under the license you provided the software under chose a different license.
The point of open source is exactly to provide software under open source terms. If you want to add additional terms like “unless you make money then I want to get paid”, then just do that! It’s your software and your license! But you cannot have Heisenbergs open source software which is open source only until someone picks it up and makes money at which point it retroactively becomes proprietary in order to force that moneystream past you.