- Vala 94.4%
- CSS 2.2%
- Crystal 1.5%
- Meson 1.4%
- Makefile 0.4%
|
Evangelos Paterakis
132e0de314
All checks were successful
CI / lint Successful in 3s
ci/woodpecker/push/woodpecker Pipeline was successful
CI / flatpak-builder / aarch64 Successful in 2m46s
CI / flatpak-builder / x86_64 Successful in 3m53s
Windows / msys2 / x86_64 Successful in 5m21s
Windows / msys2 / aarch64 Successful in 7m39s
When adding new accounts, I noticed that the ex-active ones' posts were still there. That was because there's a refresh request started prior to the account change and finishes after, so we need to cancel on-going requests per-timeline as we want one point of truth. RequestsV2 would re-create cancellable on exec, which made it pointless. Reviewed-on: #1689 |
||
|---|---|---|
| .forgejo/ISSUE_TEMPLATE | feat: codeberg ( #1650 ) | |
| .github/workflows | fix(Makefile): windows gtksourceview lang files and ldd ( #1657 ) | |
| build-aux | feat: codeberg ( #1650 ) | |
| data | feat(ActionsRow): boost no alt text confirm dialog ( #1686 ) | |
| po | fix(ci): woodpecker, msys2, appstream ( #1655 ) | |
| server | feat: codeberg ( #1650 ) | |
| src | fix(Timeline): cancel refresh on account change ( #1689 ) | |
| tests | feat(structure): move utils under the Utils namespace ( #1398 ) | |
| vapi | feat(EditorPage): cleanup char counting ( #599 ) | |
| .buildconfig | chore: Tooth -> Tuba | |
| .editorconfig | feat: v0.8.0 ( #1022 ) | |
| .gitattributes | feat(Windows): nsis ( #1283 ) | |
| .gitignore | feat(Windows): nsis ( #1283 ) | |
| .valalintignore | feat: online services ( #1166 ) | |
| .woodpecker.yml | fix(ci): woodpecker, msys2, appstream ( #1655 ) | |
| CODE_OF_CONDUCT.md | chore(metadata): bump ( #536 ) | |
| LICENSE | Drop executable bit from most files | |
| Makefile | fix(Makefile): windows gtksourceview lang files and ldd ( #1657 ) | |
| meson.build | fix: deprecations ( #1670 ) | |
| meson_options.txt | feat: new composer ( #623 ) | |
| README.md | feat: codeberg ( #1650 ) | |
| Tuba.doap | feat: codeberg ( #1650 ) | |
| vala-lint.conf | chore(metadata): bump ( #536 ) | |
A tuba in the style of GNOME icons
Tuba
Browse the Fediverse
Contributor Covenant v2.1
License GPL-3.0
GitHub CI Status
Please do not theme this app
Screenshot of the Tuba app in light and mobile view. The current view is the main one on the 'Home' tab. The 'Notifications' tab has the number 15 in an accent-colored bubble. There are 3 posts visible by BASIL, AUBREY and HERO (only the boost tag) showcasing some of Tuba's features: 1. Image attachments, 2. custom emojis, 3. content warnings, 4. reboosts, 5. notification badges, 6.post indicators, 7. post actions.
Install
Official
Release
Nightly
| Flatpak | Windows |
|---|---|
| x86_64 | x86_64 Installer x86_64 Portable |
| aarch64 | aarch64 Portable |
Third Party
From Source
Dependencies
| Package Name | Required |
|---|---|
| meson | ✅ |
| valac | ✅ |
| libjson-glib-dev | ✅ |
| libxml2-dev | ✅ |
| libgee-0.8-dev | ✅ |
| libsoup3.0-dev | ✅ |
| libadwaita-1.0-dev | ✅ |
| libsecret-1-dev | ✅ |
| libgtksourceview-5-dev | ✅ |
| icu | ✅ |
| libspelling | ❌ |
| gstreamer + gst-plugins-good | ❌ |
| clapper | ❌ |
| webkitgtk | ❌ |
| gexiv2 | ❌ |
Makefile
$ make
$ make install
GNOME Builder
- Clone
- Open in GNOME Builder
Sponsors
Acknowledgements
- Tuba is a fork of Tootle by Bleak Grey
- Translations are managed by Weblate
- Design inspiration taken from Mastodon & Elk
Contributing
- Read the Code of Conduct
- Fork it ( https://codeberg.org/GeopJr/Tuba/fork )
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request
Use of Generative AI
This project does not allow contributions generated by large languages models (LLMs) and chatbots. This ban includes, but is not limited to, tools like ChatGPT, Claude, Copilot, DeepSeek, and Devin AI. We are taking these steps as precaution due to the potential negative influence of AI generated content on quality, as well as likely copyright violations.
This ban of AI generated content applies to all parts of the projects, including, but not limited to, code, documentation, issues, and artworks. An exception applies for purely translating texts for issues and comments to English.
AI tools can be used to answer questions and find information. However, we encourage contributors to avoid them in favor of using existing documentation and our chats and forums. Since AI generated information is frequently misleading or false, we cannot supply support on anything referencing AI output.