jrollans.com is a Fediverse instance that uses the ActivityPub protocol. In other words, users at this host can communicate with people that use software like Mastodon, Pleroma, Friendica, etc. all around the world.

This server runs the snac software and there is no automatic sign-up process.

Admin account
@jrollans@jrollans.com

Search results for tag #snac

2 ★ 0 ↺

Jonathan Rollans »
@jrollans@jrollans.com

@grunfink@comam.es don’t even worry about it, has been rock solid and a truly great piece of software engineering. It amazes me how stable it is! Thank you for building and continuing to develop it!

2 ★ 0 ↺

Jonathan Rollans »
@jrollans@jrollans.com

@grunfink@comam.es don’t even worry about it, has been rock solid and a truly great piece of software engineering. It amazes me how stable it is! Thank you for building and continuing to develop it!

The Real Grunfink »
@grunfink@comam.es

I feel sorry and a bit unprofessional about announcing the quick release of version 2.55 of , the simple, minimalistic instance server written in C. It includes the fix to a careless change by me:

Mastodon API: fixed a last-minute bug that broke some API functions.

I apologize for any inconvenience. This week has not been very good for me, but that is no excuse.

https://comam.es/what-is-snac


Ворон »
@voron@no.run.place

No need to reproach yourself. Even if the API is broken, the web interface can always be opened!

BTW, I only use the web interface 🙂

The Real Grunfink »
@grunfink@comam.es

Hi, users; it seems that I introduced a last-minute bug in version 2.54 that breaks some Mastodon API functions because I'm a moron 🤦

I'll release a new version ASAP fixing this specific bug.

I'm super embarrased. Sorry for the inconvenience.

gyptazy boosted

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.54 of , the simple, minimalistic instance server written in C. This release includes very valuable work by fellow developer louis77, as well as other bugfixes and improvements:

Markdown-style links are now supported.

The alt text in attachments that have one is also shown in a dropdown just below it (useful for environments where mouseover is not available, i.e. for phones and tablets).

Instance-wide notifications has been implemented (contributed by louis77). A small tweak to the default CSS was made to suit this change; please consider updating your style.css (see doc/style.css as an example).

The avatar and/or the header images can now be deleted (contributed by louis77).

Code cleaning: HTTP status codes use names instead of hardcoded integers (contributed by louis77).

Mastodon API: fixed login problems with the official Mastodon API, IceCube and Toot! on iOS, some fixes for Mona and Tokodon apps, user credentials can now be edited from apps (all contributed by louis77), fixed crash on unset content-type header.

The webfinger content-type response header is now RFC-compliant (contributed by steve-bate).

Improved support for the HTTP OPTIONS method, allowing sites like https://mastodonlistmanager.org to work.

Fixed non-working content warnings in the public instance timeline.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink


gyptazy boosted

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.54 of , the simple, minimalistic instance server written in C. This release includes very valuable work by fellow developer louis77, as well as other bugfixes and improvements:

Markdown-style links are now supported.

The alt text in attachments that have one is also shown in a dropdown just below it (useful for environments where mouseover is not available, i.e. for phones and tablets).

Instance-wide notifications has been implemented (contributed by louis77). A small tweak to the default CSS was made to suit this change; please consider updating your style.css (see doc/style.css as an example).

The avatar and/or the header images can now be deleted (contributed by louis77).

Code cleaning: HTTP status codes use names instead of hardcoded integers (contributed by louis77).

Mastodon API: fixed login problems with the official Mastodon API, IceCube and Toot! on iOS, some fixes for Mona and Tokodon apps, user credentials can now be edited from apps (all contributed by louis77), fixed crash on unset content-type header.

The webfinger content-type response header is now RFC-compliant (contributed by steve-bate).

Improved support for the HTTP OPTIONS method, allowing sites like https://mastodonlistmanager.org to work.

Fixed non-working content warnings in the public instance timeline.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink


The Real Grunfink »
@grunfink@comam.es

The Mastodon API does not include any entry point nor any other way to hide a thread (that I know of), so I'm afraid it's only available via the Web UI. It could be added as an extension to the API, but given that no API client would support it, I'm not sure if it would any useful.

I'm glad to know that you plan to add support to your Feditext app. If you need any help of have any doubt, please ask. I suppose that, if your app supports the Mastodon API, snac should work out of the box.

Is your Fedi client available somewhere, as a git repo or whatever?

The Real Grunfink »
@grunfink@comam.es

Mastodon and/or Mastodon-compatibles really do need a "suppress this thread from my timeline" feature, like the "mute thread notifications" but for when you don't want to see it at all.
The fediverse server I develop, ¹, has this feature with a Hide button. You can suppress full conversations or just a subtree of one. Further replies to hidden threads are also immediately dropped.

¹ https://comam.es/what-is-snac

The Real Grunfink »
@grunfink@comam.es

No. Every implementation does retries in its own way. Specifically, has some knobs to tune these retries, like a maximum number and different timeouts.

CC: @oigreslima@fed.sfl.pro.br

The Real Grunfink »
@grunfink@comam.es

Great! Glad to see working in all kinds of systems, specially the older ones.

The Real Grunfink »
@grunfink@comam.es

Hello. I don't think it would be impossible, but I think the experience will be severely lacking. The start and stop times of are fast, but from the top of my head, these things could prove problematic:

- The maximum number of simultaneous processes would be harder to control (it should be done on the frontend http server, and that would require specific configuration for every server implementation).
- Every activity (likes, boosts, posts) generates a very big bunch of connections. After a new one, the process should manage the full queue and not exit until it's done. If there are a bunch of these operations still running, the http server would not open on new queries, or at least it will require some configuration tuning. As it's now, it's trivial to reserve resources and give top priority to incoming requests.
- And most important, the problem of retries. The fediverse is a jungle of overloaded, fallen, slow servers. Activity messages should be stored somewhere to be retried later, probably after a timer. This is much harder to manage from a CGI, that only runs on demand.

As I say, it's not impossible, but a project with this approach should be carefully developed taking this thinks into account.

The Real Grunfink »
@grunfink@comam.es

Thank you very much for your notes. I've boosted them because they may prove useful for future users while the documentation is improved.

I'm glad you like .

CC: @gyptazy@gyptazy.ch @chema@ctrvx.net

ティージェーグレェ »
@teajaygrey@rap.social

@grunfink I submitted a PR to update MacPorts' snac to 2.53 here:

github.com/macports/macports-p

GitHub Actions CI passed OK!

As in the past, I don't have commit access, so it will be up to someone else to merge it.

Thank you for your continued improvements and to khm and kvibber for their contributions as well!

The Real Grunfink »
@grunfink@comam.es

What instructions did you find misleading? I would like 's documentation to be as accurate as possible.

CC: @chema@ctrvx.net

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.53 of , the simple, minimalistic instance server written in C. It includes the following changes:

New user feature to search by post content (using regular expressions) or tag.

Added some (partial) support for Event object types.

Minor fixes: Allow unboosting your own posts (contributed by khm), CSS fixes for the Dillo browser (contributed by kvibber).

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink


The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.53 of , the simple, minimalistic instance server written in C. It includes the following changes:

New user feature to search by post content (using regular expressions) or tag.

Added some (partial) support for Event object types.

Minor fixes: Allow unboosting your own posts (contributed by khm), CSS fixes for the Dillo browser (contributed by kvibber).

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink


The Real Grunfink »
@grunfink@comam.es

Hi! Thanks for the kind words.

Attachments are totally supported, being them images, video, audio, whatever. But, if you are experimenting "file too big" errors, they do not come from itself (there is no enforced limit), but from your nginx / Apache / whatever web server; try reconfiguring it to allow larger POST uploads.

CC: @Tusky@mastodon.social

The Real Grunfink »
@grunfink@comam.es

doesn't support this Event activity type yet, but it doesn't seem too hard to add some support for it (it's the first time I find one in the wild, to be honest).

CC: @mikedev@fediversity.site @streams@fediversity.site @julian@community.nodebb.org @nodebb@fosstodon.org @silverpill@mitra.social @mitra@mitra.social

ティージェーグレェ »
@teajaygrey@rap.social

@grunfink I submitted a PR to update MacPorts' snac to 2.52 here:

github.com/macports/macports-p

GitHub Actions CI are queued, but hopefully they will complete OK?

Regardless, I don't have commit access so it will be up to someone else to merge it.

Thank you for your continued improvements and to others submitting bug fixes too!

gyptazy boosted

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.52 of , the simple, minimalistic instance server written in C. It includes the following changes:

Posts that were liked or boosted can now be unliked and unboosted.

Outgoing message timeouts are no longer hardcoded and can be configured (see snac(8) for more information).

Fixed a bug that caused some incorrect unfollows under special conditions (with shared inboxes enabled and users from the same instance that follow each other, the internal message distributor was confused).

Mastodon API: Added support for lists.

Added a header to avoid over-zealous caching in some browsers (contributed by louis77).

Added support for running and federating inside hidden networks like Tor, I2P or Loki (contributed by iwojima).

Fixed an error processing polls coming from Pleroma instances.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

Usage tips: Use social media as little as possible. Go for a walk. Meet with friends. Read a good book.


gyptazy boosted

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.52 of , the simple, minimalistic instance server written in C. It includes the following changes:

Posts that were liked or boosted can now be unliked and unboosted.

Outgoing message timeouts are no longer hardcoded and can be configured (see snac(8) for more information).

Fixed a bug that caused some incorrect unfollows under special conditions (with shared inboxes enabled and users from the same instance that follow each other, the internal message distributor was confused).

Mastodon API: Added support for lists.

Added a header to avoid over-zealous caching in some browsers (contributed by louis77).

Added support for running and federating inside hidden networks like Tor, I2P or Loki (contributed by iwojima).

Fixed an error processing polls coming from Pleroma instances.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

Usage tips: Use social media as little as possible. Go for a walk. Meet with friends. Read a good book.


The Real Grunfink »
@grunfink@comam.es

You're welcome! Enjoy your experience.

ティージェーグレェ »
@teajaygrey@rap.social

@grunfink I submitted a PR to update MacPorts' snac to 2.51 here:

github.com/macports/macports-p

CI checks are queued. Hopefully they'll go smoothly?

Assuming they do, it will still be up to someone else with commit access to merge it.

Thank you for your continued improvements! On my mental ToDo list I keep on meaning to create a snac Port for OpenBSD, and it looks as if the unveil and pledge support continues to be refined, cool!

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.51 of , the simple, minimalistic instance server written in C. It includes the following changes:

Support for custom Emojis has been added; they are no longer hardcoded, but read from the emojis.json file at the server base directory. Also, they are no longer limited to string substitutions, but images as external URLs are also supported (see snac(8) for more information).

Fixed a bug that caused some notifications to be lost when coming from a user in the same instance.

Added an additional check for blocked instances (sometimes, posts from blocked sites that were ancestors of legit posts were 'leaking' into the timeline).

On OpenBSD, if the disable_email_notifications server flag is set to true, unveil() is not called for the execution of the /usr/sbin/sendmail binary and pledge() doesn't set the exec promise.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

This release has been inspired by the album Eternal Embers by .


The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.51 of , the simple, minimalistic instance server written in C. It includes the following changes:

Support for custom Emojis has been added; they are no longer hardcoded, but read from the emojis.json file at the server base directory. Also, they are no longer limited to string substitutions, but images as external URLs are also supported (see snac(8) for more information).

Fixed a bug that caused some notifications to be lost when coming from a user in the same instance.

Added an additional check for blocked instances (sometimes, posts from blocked sites that were ancestors of legit posts were 'leaking' into the timeline).

On OpenBSD, if the disable_email_notifications server flag is set to true, unveil() is not called for the execution of the /usr/sbin/sendmail binary and pledge() doesn't set the exec promise.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

This release has been inspired by the album Eternal Embers by .


The Real Grunfink »
@grunfink@comam.es

Hi. I'm afraid there is no easy way to automate what you want just using 's command-line interface. As you say, doing it via the Mastodon API could be feasible. I don't know of an already written tool that does this, but it may exist out there.

The actor of type Group was defined basically for this; to boost to their followers all posts that mention it. Programs like Lemmy and the Wordpress ActivityPub plugin implement 'channels' this way.

Implementing support for this in snac won't be too difficult, but I want to keep it as slim as possible. I don't totally discard the idea, though, so I'll write it down as a possible thing to be done in the future.

ティージェーグレェ »
@teajaygrey@rap.social

@grunfink I submitted a PR to update MacPorts' snac to 2.50 here:

github.com/macports/macports-p

CI checks passed OK!

It's up to someone else with commit access to merge it.

Thank you for your continued enhancements, bug fixes and contributions!

gyptazy »
@gyptazy@gyptazy.ch

The Real Grunfink »
@grunfink@comam.es

Thanks for the nice words.

The xs is an intentionally lightweight library I (with the help of some friends) started for a very different project that never was. As it adds some niceties to C coding, I use it everywhere. It's mostly feature-complete now, but I fix and add some things occasionally. These days, is mostly its main user, as other projects that use it are pretty irrelevant.

Using C headers both for implementations and prototyping is somewhat of a perversion 😆, but it simplifies immensely sharing code between projects, because you don't have to care about building libraries (static nor dynamic) and their operating system idiosyncracies. You just drop the .h in your project, include it and it's done. The reason: simplicity. If I had a motto as a developer, simplicity would be.

The Real Grunfink »
@grunfink@comam.es

So it seems that, now that Threads is federating, the most popular person in the fediverse is... Mark Zuckerberg:

https://mastodon.bsd.cafe/users/release_candidate/statuses/112140845317198247

I find these "popularity contests" pointless, ridiculous and inherently toxic, and a signature of private social networks where the goal is not to help people communicate between each other.

This is the reason why does not propagate how many followers nor likes a person have.

The Real Grunfink »
@grunfink@comam.es

@liaizon@wake.st, I miss Susie, the logo of ...

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.50 of , the simple, minimalistic instance server written in C. It includes the following changes:

Incoming posts can now be filtered out by content using regular expressions on a server level (these regexes are written in the filter_reject.txt file at the server base directory; see snac(5) and snac(8)).

Improved page position after hitting the Hide or MUTE buttons (for most cases).

Use a shorter maximum conversation thread level (also, this maximum value is now configurable at compilation level with the MAX_CONVERSATION_LEVELS define).

Fixed a bug where editing a post made the attached media or video to be lost.

The way of refreshing remote actor data has been improved.

Posting from the command-line now allows attachments.

Added defines for time to enable MacOS builds (contributed by andypiper).

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

This release has been inspired by the song The Raven by .


The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.50 of , the simple, minimalistic instance server written in C. It includes the following changes:

Incoming posts can now be filtered out by content using regular expressions on a server level (these regexes are written in the filter_reject.txt file at the server base directory; see snac(5) and snac(8)).

Improved page position after hitting the Hide or MUTE buttons (for most cases).

Use a shorter maximum conversation thread level (also, this maximum value is now configurable at compilation level with the MAX_CONVERSATION_LEVELS define).

Fixed a bug where editing a post made the attached media or video to be lost.

The way of refreshing remote actor data has been improved.

Posting from the command-line now allows attachments.

Added defines for time to enable MacOS builds (contributed by andypiper).

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

This release has been inspired by the song The Raven by .


The Real Grunfink »
@grunfink@comam.es

Hi, author here. I've just read your message and tested following a Threads account, and the process seems to complete correctly, the log messages report the correct dialog and the account appears in my being-followed list (I still haven't received any message from that account, but it's still early, I think). What may have happened in your case is that the Accept message from Threads to your Follow request was lost or not sent for whatever reason, so for snac it's a follow not (yet) confirmed.

Can you tell me what Threads account are you trying with? I'll investigate.

Thanks for your help.

The Real Grunfink »
@grunfink@comam.es

Hi. I think I have a solution to this issue, at least after the Hide and MUTE actions. It still has some rough edges I have to work on, but next version will probably include it.

Thanks for pushing me into fixing this.

ティージェーグレェ »
@teajaygrey@rap.social

@grunfink I submitted a PR to update MacPorts' snac to 2.49 here:

github.com/macports/macports-p

CI checks passed OK! It's up to someone else with commit access to merge it.

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.49 of , the simple, minimalistic instance server written in C. This time it includes some fixes to the Mastodon API code, which was in need of some love:

Mastodon API: Fixed a bug in how validated links are reported.

Mastodon API: Fixed a bug in search by account.

Mastodon API: Fixed missing Video type objects in timelines.

Mastodon API: Added search by hashtag.

Some cosmetic fixes to the web interface.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink


The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.49 of , the simple, minimalistic instance server written in C. This time it includes some fixes to the Mastodon API code, which was in need of some love:

Mastodon API: Fixed a bug in how validated links are reported.

Mastodon API: Fixed a bug in search by account.

Mastodon API: Fixed missing Video type objects in timelines.

Mastodon API: Added search by hashtag.

Some cosmetic fixes to the web interface.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink


Stefano Marinelli »
@stefano@mastodon.bsd.cafe

Dear friends of and the ,
since December 2023, snac.bsd.cafe has been operational, initially in an experimental phase but has proven to be stable and reliable.

Thus, Snac2 is now available as a service of BSD Cafe. It is considered one of the best and most comprehensive "lightweight" implementations of , offering one of the best ways to interact with the Fediverse without the need for the extensive dependencies and components of Mastodon.

It is now possible to request an account on the snac2 instance of BSD Cafe. There isn't an automatic sign-up process (snac2 does not provide one, as it wasn't designed to create large communities).

For information and details, I suggest reading the relevant page on our Wiki: wiki.bsd.cafe/snac.bsd.cafe

Have a great week!

0 ★ 0 ↺

Jonathan Rollans »
@jrollans@jrollans.com

Discoverability seems basically non-existent using , but damn I like it a lot. I think maybe it’s a matter of finding folks to follow the “old way”. By browsing the internet.

gyptazy »
@gyptazy@gyptazy.ch

2.48 (2.49-dev) compile for & . Thanks to @grunfink@comam.es for today's release!

This should help all the people that are running on hardware (like the , , , ...) and also want to run as a instance in the like me.

You can grab it here: https://cdn.gyptazy.ch/files/riscv64/ubuntu/snac/snac_2.49_dev_ubuntu_23.10_riscv64_linux.tgz

The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.48 of , the simple, minimalistic instance server written in C. It includes the following changes:

A new instance page, that shows all posts by users in the same instance (like the public instance timeline, but interactive). This will help building communities.

Follower-only replies to unknown users are not shown in timelines.

Added verification of metadata links: if the linked page contains a link back to the snac user with a rel="me" attribute, it's marked as verified.

Added a new server-level configuration parameter: min_account_age. If this value (in seconds) is set in server.json, any activity coming from accounts that were created newer than that will be discarded. This can be used to mitigate spam.

Added a profile-page relation to links in webfinger responses (contributed by khm).

Fixed some regressions and a crash.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

This release has been inspired by the album The Sudbury Inn by .


The Real Grunfink »
@grunfink@comam.es

I'm glad to announce the release of version 2.48 of , the simple, minimalistic instance server written in C. It includes the following changes:

A new instance page, that shows all posts by users in the same instance (like the public instance timeline, but interactive). This will help building communities.

Follower-only replies to unknown users are not shown in timelines.

Added verification of metadata links: if the linked page contains a link back to the snac user with a rel="me" attribute, it's marked as verified.

Added a new server-level configuration parameter: min_account_age. If this value (in seconds) is set in server.json, any activity coming from accounts that were created newer than that will be discarded. This can be used to mitigate spam.

Added a profile-page relation to links in webfinger responses (contributed by khm).

Fixed some regressions and a crash.

https://comam.es/what-is-snac

If you find useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

This release has been inspired by the album The Sudbury Inn by .