This adds support for `signal-desktop` on `aarch64-linux`. This is
achieved by leveraging a community deb package that builds it for
`aarch64`. A future version may switches to a full custom build of the
package, so that we don't need to use any debs at all.
Without this change, starting a screenshare in signal-desktop on wayland
(sway) only produces a blank, black screen after selecting which screen
to share, with the following error in the logs:
ERROR:shared_screencast_stream.cc(412)] Unable to open PipeWire library
ERROR:base_capturer_pipewire.cc(81)] ScreenCastPortal failed: 1
Upstream has fixed screensharing in general according to
https://github.com/signalapp/Signal-Desktop/issues/5350#issuecomment-1664092786.
It appears that signal forked ringrtc within this release, so until they
merge their changes upstream, or the stable release follows suit, we
have another delta we need to inject and track.
signal-desktop-beta was removed due to maintainability concerns in
256e347dfe. Unfortunately, there are a
number of features, like stories, that are only enabled on the beta
builds. As such, this change adds that package back, but based upon the
current signal-desktop derivation.
We have restructured the derivation into the generic+versions structure
seen in libmicrohttpd, however since there are a fixed number of
releases, stable and beta, they both live default.nix and are inherited
at the top level.
I have also added myself to the maintainers list, however we could also
split that up, so that I alone bear the maintenance responsibilities.