No description
  • QML 78.4%
  • JavaScript 13.9%
  • C++ 4.6%
  • Shell 1.8%
  • QMake 1.3%
Find a file
Denis Fedoseev b787298e8d Move login to an in-app Chromium WebView
Replace the Amber.Web.Authorization external-browser flow with Aurora's
native ru.auroraos.WebView so authentication happens inside the app.

- new qml/pages/LoginWebViewPage.qml: WebView initialised through the
  Aurora::WebView::WebEngineContext C++ API; the OAuth redirect to
  http://127.0.0.1:7538 is intercepted with
  LoadRequestExtension.beforeUrlLoad() (returning false blocks the doomed
  localhost load) and the code is exchanged for an access token
- LoginPage: drop OAuth2Ac/external browser, build the authorize URL
  ourselves and push LoginWebViewPage after registering the app
- src/donno.cpp: #include <webenginecontext.h> + InitBrowser() with
  AA_ShareOpenGLContexts, as documented by OMP
- .pro: PKGCONFIG += aurorawebview; spec: BuildRequires
  pkgconfig(aurorawebview) (mb2 installs ru.auroraos.webview-devel
  automatically), Requires ru.auroraos.webview
- .desktop: add the WebView sandbox permission (+Documents/DeviceInfo)
- Mastodon.js: URL-encode client_id/redirect_uri in generateAuthLink
- translations: lupdate + Russian for the new strings
- AGENTS.md: document the three WebView requirements
- bump to 1.5.0

Verified: mb2 build (armv7hl), rpm-validator -p Regular clean, signed and
logged in successfully on TrustPhoneT1.
2026-09-22 04:51:29 +03:00
.github [Fix] remove unused workflow condition 2026-04-20 18:02:22 +02:00
cert Retarget to Aurora OS as ru.alpha6.donno 2026-09-22 03:27:03 +03:00
config Retarget to Aurora OS as ru.alpha6.donno 2026-09-22 03:27:03 +03:00
icons Retarget to Aurora OS as ru.alpha6.donno 2026-09-22 03:27:03 +03:00
libs Use Opal.About 2026-03-25 18:49:04 +03:00
qml Move login to an in-app Chromium WebView 2026-09-22 04:51:29 +03:00
rpm Move login to an in-app Chromium WebView 2026-09-22 04:51:29 +03:00
screenshots Add screenshots to spec file and chum app 2024-09-29 11:13:28 +02:00
src Move login to an in-app Chromium WebView 2026-09-22 04:51:29 +03:00
translations Move login to an in-app Chromium WebView 2026-09-22 04:51:29 +03:00
.gitignore Retarget to Aurora OS as ru.alpha6.donno 2026-09-22 03:27:03 +03:00
AGENTS.md Move login to an in-app Chromium WebView 2026-09-22 04:51:29 +03:00
CHANGES Move login to an in-app Chromium WebView 2026-09-22 04:51:29 +03:00
LICENSE Create LICENSE 2017-09-06 16:24:17 +02:00
PROPOSED_CHANGES.md UI: Move Reply to context menu, improve conversation behavior 2026-03-18 14:46:31 +01:00
README.md Retarget to Aurora OS as ru.alpha6.donno 2026-09-22 03:27:03 +03:00
ru.alpha6.donno-open-url.desktop Retarget to Aurora OS as ru.alpha6.donno 2026-09-22 03:27:03 +03:00
ru.alpha6.donno.desktop Move login to an in-app Chromium WebView 2026-09-22 04:51:29 +03:00
ru.alpha6.donno.pro Move login to an in-app Chromium WebView 2026-09-22 04:51:29 +03:00

Donno

About

Donno (ru.alpha6.donno) is a native Mastodon client for Aurora OS, written in Qt/QML (Sailfish Silica) + C++.

Donno is a fork of Tooter β by Mark Washeim (poetaster), which is itself the maintenance continuation of the original Tooter by dysko (harbour-tooter) and the fork maintained by molan on OpenRepos.net. The Mastodon client logic, UI and translations all originate from that upstream work — this fork keeps the heritage intact and changes the packaging target.

This fork:

  • rebrands the application as Donno (ru.alpha6.donno, org ru.alpha6);
  • retargets it to Aurora OS only — it links libauroraapp instead of the deprecated libsailfishapp;
  • uses the Aurora [X-Application] sandbox section instead of [X-Sailjail];
  • passes rpm-validator -p Regular with no errors or warnings.

Build

Builds are done with the Aurora Platform SDK (PSDK). See AGENTS.md for the complete build, sign and device-deploy workflow. Quick version (inside the PSDK chroot):

mb2 --target AuroraOS-5.2.1.200-armv7hl build   # → RPMS/ru.alpha6.donno-<ver>-<rel>.armv7hl.rpm

The legacy Sailfish OS / SFOS GitHub Actions pipeline is not part of the supported build path.

Repository branches

Contributions

Contributions are welcome. If you already know what you want to add or fix, please open a Pull Request with an explanation or a changelog summary. Merging will not be allowed until the PR has been reviewed.

Screenshots

License

Licensed under GNU GPLv3.

Copyright of the original Tooter / Tooter β work belongs to the upstream authors (dysko, molan, Mark Washeim and contributors). See upstream poetaster/harbour-tooter and dysk0/harbour-tooter.

Upstream funding

The SailfishOS Community Team and the original Tooter β author are on Liberapay:

Liberapay receiving

Liberapay receiving

Mastodon

Link to Mastodon profile