It's unfortunate that package repositories don't support setting per-package paywalls.

I think a stance like the following from a developer is entirely understandable:

> I want this software I write to be offered commercially in every repository you package it for. In the same time, I'm not going to enforce this, for I strictly oppose the use of force “to protect [so-called] intellectual property”.

I suspect plenty of developers want it but there's just no venue.

Paywalls, if implemented, could fund open source development much better than the donation model. I wish it were possible to do in the mainstream package managers.

The goal is not to obsessively introduce restricitons, which could never be impassable anyway. Open source is still open source: if you can't pay, build it manually, or use a package from a maintainer who doesn't care about developer's wishes. The goal is to provide new incentives.

A good package manager could allow for an unintrusive third-party implementation. I have an ebuild repository (ebuilds are Portage packages), and I could have added a procedure which checks the receipt before merge, and if there's none, it would report that a payment is necessary to proceed. However, Portage is not flexible enough for such messages to appear before merges of revdeps, which is inconvenient for users. (One could do something with conditional package masks but it could easily break if Portage doesn't calculate the whole chain of deps when it encounters the first obstruction which is sometimes a reasonable thing to do, so a dedicated support for paid deps is needed.)