Migrating to glitch-soc is as easy as changing the repo URL and running the normal update commands. One important thing is that the resource requirements to build the front-end are higher, though (see “Multiple front-ends”).
Porting changes from glitch-soc is possible, of course, but that would require a bit of work, as the front-ends have diverged quite a bit.
Now, let me expand a bit on glitch-soc changes I wrote earlier as not being necessary for the fork or could be done in a better way.
One of the early choices made in glitch-soc was to allow multiple, possibly very different front-ends (called “flavours”). This feature is not aimed at end-users providing their own front-ends, but aimed at admins instead, and as far as I know, it is not actually used in the wild except for the two flavours glitch-soc comes with.
glitch-soc comes with the “vanilla” flavour, which is upstream’s client front-end, modified as little as possible, and the “glitch” flavour, which has diverged quite a bit and includes other functionality.
Some glitch-soc users do prefer the vanilla flavour over the glitch-soc one, but I did not really manage to get a actual feedback to close the gap…
The costs of this flavour system are that it adds a bunch of fairly complex code (that, thankfully, does not need to change often), and that building the front-ends is much more resource-intensive.
Local storage VS backend-stored setting
In upstream’s front-end, most settings are stored on the server, which has the benefit of providing a consistent experience over multiple devices, but prevents users to have different configs on different devices.
Most of glitch-soc-specific settings are stored in local storage, which means the config is dependent on the device the front-end is running.
There is an added issue with glitch-soc-specific settings being stored in local storage: indeed, one specific setting (CW auto-unfold) has been implemented upstream after it was implemented (using local-storage) in glitch-soc, meaning there is no easy migration path for this setting to be merged with upstream’s one.
If forking glitch-soc, there is an opportunity to rethink this.