The whole letter sounds weird when talking about free software. Software freedom main benefit is that the user can change the software. Theming it is probably the most accessible form of modification and should be celebrated. Asking not to theme is contrary to the free software ethos itself.
The situation is even more tricky as what is being modified is not even the software itself but the system dependencies. Essentially the developers in this letter say: do not run our software on an environment that is not the one we support (in practice fedora or a close clone of it) and if you create a distro make sure its a clone of what we support.
I understand the fact that developers do not want to support bugs due to user modifications and strange environments. Free software doesn't imply free support so they can put any restriction on what they want to do. The letter however would have been much less weird if it said "we cannot ensure quality of software X except on our build running on a supported environment, if you run the software elsewhere or with changes (and theming is a change) please don't call it X to avoid confusion and remember you are on your own".
What Firefox did I think its a smart solution to this problem. " We offer Firefox on platform x,y,z. If you build it on something else, call it something else, if you run it on another platform remember you're on your own".
This isn't about the user theming. It's about distros theming.
There currently is a growing conflict between upstream developers and distributions, because some of their interactions and dependencies bare badly managed.
For example, upstream maintainers see an influx of bug reports and angry users due to bugs, where the distributions are at fault. Sources for this can be changes to the code that the distributions make for various reasons like backwards compatibility, themes that break user interfaces or simply outdated packages or missing backports.
The GNOME upstream maintainers all are having their ass hanging out on a public gitlab repo, while some of the distributors, who break stuff, are very hard to find, with sometimes ancient bugtrackers.
I trust that the community will find a way to update their relationships and solve these issues, but it starts with seeing what's going wrong and where we have bad incentive structures.
> This isn't about the user theming. It's about distros theming.
Distros are agents of their users. A user can't make each choice involved in assembling a distro themselves (except for the few who use LFS), so they express their choices by choosing a distro.
I guess a radical solution would be to require (through trademark law) to force distros to brand the apps differently (name and icon) so that bug reports end up where they belong.
Firefox was branded "IceWeasel" on Debian - an unsubtle dig at Mozilla, which I found hilarious (and a little juvenile). I'm glad they resolved the issue.
Remind me of http://pagekite.net It has been around for a few years, their software is open source and seems pretty easy to use. Never used it myself though so I cannot vouch for their stability.
The situation is even more tricky as what is being modified is not even the software itself but the system dependencies. Essentially the developers in this letter say: do not run our software on an environment that is not the one we support (in practice fedora or a close clone of it) and if you create a distro make sure its a clone of what we support.
I understand the fact that developers do not want to support bugs due to user modifications and strange environments. Free software doesn't imply free support so they can put any restriction on what they want to do. The letter however would have been much less weird if it said "we cannot ensure quality of software X except on our build running on a supported environment, if you run the software elsewhere or with changes (and theming is a change) please don't call it X to avoid confusion and remember you are on your own".
What Firefox did I think its a smart solution to this problem. " We offer Firefox on platform x,y,z. If you build it on something else, call it something else, if you run it on another platform remember you're on your own".