It's a nice idea but as you've said it's hard to do in an automated way. Some
human intervention will always be needed. This is probably why Trisquel is
doing what it's doing; It's easier to remove it than it is to filter and
maintain it.
This problem isn't specific to Trisquel though. It affects all FSF-endorsed
distros. Therefore, it's probably best to work on this in a collaborative,
cross-distro way. There is a mailing list set up for cross-distro
collaboration like this called gnu-linux-libre:
https://lists.nongnu.org/mailman/listinfo/gnu-linux-libre
This effort is probably best discussed and organized there. In this way,
people from all FSF-endorsed distros will be able to participate and
something can be worked out such that this problem only needs to be solved
one, for the collective benefit of all distros instead of reach distro
reinventing the wheel for themselves.
Personally, I don't know that your method of warning people sufficient
because this filter only acts if they use the client program to access it. It
doesn't prevent other methods, like if someone accesses it directly. (A
similiar thing could be pointed out by filtering out non-free .debs but I
could just open my browser to look at the repo and still see them.) People
still get sent to/referred to/whatever-you-call it to that place regardless.
Rather, there shouldn't *be* a repo with non-free things in it. So: Copy the
free things into a new repo, and then all FSF-endorsed distro can change the
address in their copy of pypi to access the new location.
Effectively, this is the option #2 mentioned by RMS in:
https://lists.libreplanet.org/archive/html/libreplanet-discuss/2016-04/msg00078.html
But, this is something that can be discussed on the mailing list with input
from other distros.