There are such licenses. They are just not open source.
There are such licenses only if you change the definition of "freely" to fit the narrative. Historically, "freely" (as in "free software") means granting end-user four essential software freedoms:
- The freedom to run the program as you wish, for any purpose (freedom 0).
- The freedom to study how the program works, and change it to make it do what you wish (freedom 1). Access to the source code is a precondition for this.
- The freedom to redistribute copies so you can help others (freedom 2).
- The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
If I can't redistribute ("resell") software, or can't run it and let others access it for a fee - it's not "use freely" anymore.
"Open" is too binary. You can't exclude companies that would harm you.
We need "fair", "equitable", or "sustainable" (as this one is termed) licenses.
You should be able to give your customers 100% the ability to use, modify, and redistribute so long as they don't resell you.
You should be able to cut off Amazon and Google from using you.
You should be able to prevent certain uses, like managed versions of your software.
If you modify the software under what terms are your modifications distributed? Do they have to be distributed under the same terms? There is not transfer of copyright so the original authors cannot distribute the modified version commercially as part of their enterprise edition, that means that every modified version is a fork that cannot be merged back in?
As I said in another comment discouraging forks is a disadvantage for users as it leaves you dependant on one supplier.
The AGPL achieves the aim of deterring the likes of Amazon from providing the software as a service (at least without contributing their changes back, in practice the will not use it at all) without these sorts of problems.