App of Matrix-Client hydrogen up for adoption

I’d like to find someone who takes over maintenance/development of my packaging of the matrix client hydrogen.

I’d like to get someone started 8maybe by developing a feature or doing an update) and then plan to transfer ownership.

What is hydrogen?

hydrogen-web is a simple javascript based client. On SFOS the client is served by a tiny webserver to enable serviceworkers and displayed in a webview.

How I am maintaining it currently?

The minimal maintenance I am doing right now is mainly keeping it up to date with the upstream version of the client, building it and publishing it to the repos.

What else could be done?

However there are a few features that would be really nice to have. e.g. notifications.

How much time do I spend on maintenance

~4 hours every couple months. This is not much, but this also means it is very likely to drop of the end of my priority list and be not maintained at all.

6 Likes

I’m interested. Not sure I’ll able to improve it, but I’ll give a try.

7 Likes

Great! Now that I am starting to use matrix some more, hydrogen needs/gets some help.
BTW, the latest changelog Releases · vector-im/hydrogen-web · GitHub adds voice/video… no pressure:)

2 Likes

@thigg you also have this app in the Jolla Store. I assume you will continue to do that?

One curiosity: where is specify command from in your build.sh? I don’t have it on my (non-rpm-based) linux distro and can’t seem to find its package - not very duckduck go friendly:)
It built for me with sfdk build without that command.

I think the build.sh script was intended for the build on OBS. sfdk build is certainly the right way.

What do you mean?

Well, I actually know close to nothing about Jolla app store submission process. Can that be transferred? Would removing it and adding another one with the same name generate updates for existing users?
That would be my blind spot.

I think you can ask the support to transfer ownership

Thanks for the answers.

So last night I forked hydrogen-web too and used 3.7.1 + squashed the PR that introduces back navigation - as pointed in your PR adding back navigation to their repo. Thanks for that!
I also updated the submodule in my ‘forked’ harbour-hydrogen (I took the chance to rename the repo) and even built it on OBS - though that would be with some additional changes.

So from an “updating the submodule” point of view I think we are covered.

Also I started to read how come Notification.requestPermission api is always responding “denied” on SFOS browser. I hope it is not because of old tech, but an embedding oversight/limitation (I did test on https). That may take a while (OR could be implemented by injecting a JS polyfill?, but I’d rather not).

However I am not especially good at being constantly focused at one thing. So I would like to team up with @pherjung and do this together in an org repo (so not a personal fork) like, say, github.com/sailfishos-open.
This model of “adopting” an original author development by a team has worked before.

Thoughts?

3 Likes

Yes you can. We have done it in the past for a few apps.

3 Likes

The OBS build above doesn’t yet work, probably the submodule is not updating, well get back to you…

1 Like

So one nodejs18 && yarn build later… it should work (test build repo here).

(if you broke hydrogen with the previous broken build that I sent, you might want to remove ~/.cache/org.github.thigg.harbour-hydrogen/hydrogen/.mozilla/ and ~/.local/share/harbour-hydrogen - sorry about that )

Some thoughts:

  • It still required to package the yarn cache - so it is not fully open build, though a verifiable one. Not that accessing npm repos at build time would make it any better - it would have required packaging node packages for each one of the dependencies, which is beyond the scope of building harbour-hydrogen.
  • The easier route would be to just build hydrogen-web on github or any CI with access to node commands and npm repository and add Source1=https://path-to-github-build such as github.com/vector-im/hydrogen-web/releases/tag/v0.3.7 instead of using a submodule
    (of course this is in hindsight)
4 Likes

I downloaded the build from the testrepo and it is running fine for me. Couldnt test calls yet however, that would be interesting…

hydrogen had another release which brings experimental cross signing between devices :slight_smile:

1 Like

Thanks for testing the OBS build thigg:)
Did you have any of the abive mentioned folders?

I think we need to change the build route to the simpler one to not involve nodejs maybe.

I didnt use the previous build and it wasnt broken :wink:

1 Like

Should we go ahead and prepare a release, or do you want to update hydrogen to the most current version first?

There is a small bug once the app has been updated. It’s necessary to clear the cache to get a working application. Currently I haven’t found a way to include these steps in the package.

easiest way is probably to do this in the qml file. write the version to storage/config, if it changed, clear the cache before starting the server.

Do you know why the cache needs to be cleared? I would have expected that hydrogen handles this.

Unfortunately, it’s beyond my knowledge.

We have few data points: me and @pherjung needing to clear the cache possibly because of the first OBS build gone wrong, Me with the initial sfdk build not needing to clear the cache. @thigg with the good OBS build not needeing to clear the cache. And lastly, @pherjung retracing the steps (install store version install good OBS build) which resulted in needing the cache clear, am I correct?