aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-02-23Fixed timezones.grunfink
2026-02-23Updated RELEASE_NOTES.grunfink
2026-02-23Merge pull request 'Log xs_socket_accept failure reason and document OpenBSD ↵grunfink
login class w/ extended openfiles' (#559) from oxzi/snac2:openbsd-openfiles-nfiles into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/559
2026-02-17OpenBSD: Document login class w/ extended openfilesAlvar Penning
A file heavy applications makes heavy use of files. Shocking news. OpenBSD's daemon login class limits the amount of openfiles quite strict. This restriction is an annoyance for lots of applications, and, unless I am mistaken, seems to be an issue for snac as well. Thus, after hopefully fixing this on my instance, I tried to briefly document this in snac(8) and provide a minimal login.conf(5) example.
2026-02-17httpd: Log xs_socket_accept failure reasonAlvar Penning
So far, it was expected that xs_socket_accept should work and while its failure results in a termination, it was not properly logged. With this change, an error message including the strerror message is being logged. After experiencing some unexpected snac httpd shutdowns, I added a bit of additional logging, including when xs_socket_accept fails. This proved useful, as it unveiled a deeper error on my machine: > xs_socket_accept failed: Too many open files Since entering this code path results in termination, I thought upstreaming this logging might be useful for others.
2026-02-17Version 2.90 RELEASED.grunfink
2026-02-17Updated RELEASE_NOTES.grunfink
2026-02-17Merge pull request 'Removed two dead links from README.md' (#557) from ↵grunfink
mookie/snac2:master into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/557
2026-02-15Removed two dead links from README.mdSteve Mookie Kong
2026-02-14Do the same with list 'url' fields in notifications.grunfink
2026-02-14Fixed crash when the 'url' field is a list.grunfink
2026-02-14Updated RELEASE_NOTES.grunfink
2026-02-14Updated TODO.grunfink
2026-02-14Merge branch 'master' of comam.es:git/snac2grunfink
2026-02-14Fixed mismatched following count.grunfink
2026-02-14Updated RELEASE_NOTES.grunfink
2026-02-14Also show 'url' in notifications.grunfink
2026-02-14Use the 'url' link instead of 'id' (if there is one) in html_actor_icon().grunfink
2026-02-11Updated RELEASE_NOTES.grunfink
2026-02-11Merge pull request 'mastoapi: add `uri` field to verify_credentials' (#555) ↵grunfink
from ag-eitilt/snac2:mastoapi/credentials-uri into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/555
2026-02-10mastoapi: add `uri` field to verify_credentialsSam May
Mastodon split the field out from `url` for identification purposes in version 4.2.0, leaving the previous for simply navigating to the user page. Some services (notably Bridgy Fed) rely on the `uri` as part of their OAuth flow: https://github.com/snarfed/bridgy-fed/issues/2339
2026-02-10mastoapi: added a (dummy) client_secret_expires_at value in app creation.grunfink
2026-02-10Updated TODO.grunfink
2026-02-10In timelines, always create a 'people/' link, not only if follower or following.grunfink
2026-02-10Merge pull request 'Update Portuguese (Brazil) translation' (#554) from ↵grunfink
daltux/snac2:pt_BR-9 into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/554
2026-02-10Merge branch 'master' into pt_BR-9Daltux
2026-02-09Merge pull request 'po/de_DE.po update' (#553) from zen/snac2:master into mastergrunfink
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/553
2026-02-09Update Brazilian translationDaltux
New strings (abbreviated months) translated. Fix notification filter list parallelism. Fix clear meaning of a button.
2026-02-08po/de_DE.po updatezen
2026-02-07Added a 'webfinger' field to 'Person' objects.grunfink
2026-02-07Updated RELEASE_NOTES.grunfink
2026-02-07Merge pull request 'Bug fix: Poll voting in mastoapi: Check global object ↵grunfink
store + Prevent voting when not allowed' (#552) from davidrv00/snac2-fork:vote-fix into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/552
2026-02-07Updated RELEASE_NOTES.grunfink
2026-02-07Merge pull request 'Add poll creation to mastoapi' (#551) from ↵grunfink
davidrv00/snac2-fork:poll-mastoapi into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/551
2026-02-07Merge pull request 'snac(8): Words of caution for strip_exif configuration' ↵grunfink
(#549) from oxzi/snac2:strip-metadata-man-warning into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/549
2026-02-07Updated RELEASE_NOTES.grunfink
2026-02-07Merge branch 'master' of grunfink-codeberg:grunfink/snac2grunfink
2026-02-07Merge pull request 'strip_exif support for the OpenBSD sandbox' (#548) from ↵grunfink
oxzi/snac2:strip-metadata-openbsd into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/548
2026-02-06Prevent voting via mastoapi if closed or we already votedDavid Vaughan
2026-02-06Check global object store for poll id when voting via mastoapiDavid Vaughan
2026-02-06Add poll creation to mastoapiDavid Vaughan
2026-02-06Updated RELEASE_NOTES.grunfink
2026-02-06Updated TODO.grunfink
2026-02-05snac(8): Words of caution for strip_exif configurationAlvar Penning
Add words of caution and reasoning to the "strip_exif" configuration for the server.json file, as these commands would be executed outside of the sandbox - at least on OpenBSD - and both have quite a history on security issues due to their huge attack surface and variety of supported protocols. After getting comfortable with the related code, I would continue using it on a personal instance, but would reconsider enabling "strip_exif" on shared instances with multiple users. IMO, snac administrators should at least know of potential dangers.
2026-02-05strip_exif support for the OpenBSD sandboxAlvar Penning
Change the strip_exif logic to work with the already existing OpenBSD sandbox and allow ffmpeg and mogrify to be executed. The previous strip_exif implementation relied on system(3), effectively starting "/bin/sh" and executing the required tool within a shell session. Making this work in the sandbox would require to allow executing "/bin/sh", rendering the sandbox useless. Thus, the code now starts determining the absolute path of the tools - unless they are given as ffmpeg_path or mogrify_path - and allowing them to be executed via unveil(2). Then, instead of the system(3) call, the good old fork(2) and execve(2) dance is performed. The sbox_enter code was made aware of strip_exif, which resulted in a pledge(2) violation before when disable_email_notifications was set to false. Furthermore, the detected paths of the tools are now allowed.
2026-02-05Updated TODO.grunfink
2026-02-04Updated RELEASE_NOTES.grunfink
2026-02-03Updated RELEASE_NOTES.grunfink
2026-02-03Fixed typo in Czech lang file.grunfink
2026-02-03Merge pull request 'Update po/cs.po' (#546) from pmjv/snac2:master into mastergrunfink
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/546