Propsosal: Split "Non-Free Network Services" into separate flags for changeability and code license

I’d like to propose splitting the “Non-Free Network Services” flag into two separate Anti-feature flags; “Non-Changeable Network Services” and “Proprietary Network Services”.

The current definition of this Anti-feature is;

“promotes or depends entirely on a non-changeable or non-free network service”

To me, there are two distinct and equally important issues here. When an app depends on any service for key functions;

  1. Can it be replaced with other services, within the app settings, by the person using it?

  2. Is the software used to run the service freedom-respecting, in the sense of having its source code published under libre license(s)?

The first one is important because it’s much harder for a service operator to keep people locked into a service as they enshittify it, if they can simply swap out the service their app connects to. But this presumes a better replacement is available for them to switch to, which is why the second one is important. It massively reduces the difficultly and cost of setting up an alternative or replacement service.

As an example, take the Alovoa app. It’s true that Alavoa is designed as a centralised service, and the app can’t be reconfigured to use a different service. But AFAIK the code that powers Alovoa is fully free. If I’m right about this, its somewhat misleading to label it with a “Non-Free Network Services” flag. It would be more accurate to have a separate flag for “Non-Changeable Network Services” on the app.

The official Wikipedia app is another example. It doesn’t make any sense for the service it depends to be changeable; arguably preventing Wikipedia being swapped out for Conservapedia or RationalWiki is a feature, not an Anti-feature. Yet because of this, the app has the “Non-Free Network Services” flag, despite connecting to a service that AFAIK is run entirely on Free Code. Again a “Non-Changeable Network Services” flag would be more accurate.

There may also be apps (now or in the future) that can be configured to use a libre service, but a service it depends on by default uses some proprietary software on its servers. As a loose example, a web browser that has Goggle set as the default search engine. In this case, “Non-Free Network Services” would remain a roughly accurate description of the app in its default state, but not as it’s currently defined because it implies that the services may not be changeable, which it is.

I would name the flag for apps that depend on services using proprietary software something like “Proprietary Network Services”. I note the points made in a GNU essay on this topic; Network Services Aren’t Free or Nonfree; They Raise Other Issues. But I think it’s fair to say these services are proprietary, in that they are owned and controlled by one person or entity. The meaning of “proprietary” from which Stallman derived the phrase “proprietary software”.

Splitting the “Non-Free Network Services” flag as I’ve suggested would address the need to tease out the different ways in which network services can threaten our freedom, and label them accurately, as discussed in that essay.

Old news :slight_smile: The term "nonfree network service" is not coherent (#553) · Issues · F-Droid / Data · GitLab

Search for TetheredNet in F-Droid Gitlab, it’s WiP

Good to know, but I agree with the comments made in the thread you linked that “tethered” has other connotations in tech and isn’t the best choice of words. Which is why I proposed alternatives.

It’s good to know that these will be split.

It will also fix that the current description actually does not cover how the antifeature was applied.

Currently the feature is applied to both cases strypey described. But the description actually says it applies only when the network service is non-free, with an exception that it does not apply if the service is changeable.

The current wording does no state that it applies to free services that are not changeable.