@grunfink@comam.es avatar

grunfink

@[email protected]

Author of the #snac #ActivityPub instance server and other pieces of singular software. Not a real Grünfink. #fedi22

This profile is from a federated server and may be incomplete. View on remote instance

@grunfink@comam.es avatar grunfink , to random

@stefano , BSD Cafe barista, developer extraordinaire and even better human being, has started working on an iOS Mastodon API / Fediverse app named .

The difference from other Mastodon API clients is that this one has as a first class citizen.

I'm so glad!

https://mastoblaster.app/ @mastoblaster

@xz@ebadf.port0.org avatar xz , to random

Really enjoying running on a low end server so far. Thanks a lot @grunfink for this great piece of software!

I would even host it at home, but it seems like huge parts of the Fediverse are IPv4-only, and behind Dual-Stack Lite doesn't sound like fun.

grunfink ,
@grunfink@comam.es avatar

I confirm that works OK in whatever TCP/IP network configuration (IPv4 only, IPv6 only or dual stack).

CC: @xz

@patricus@snac.posix.live avatar patricus , to random

how do I can clean media?

grunfink ,
@grunfink@comam.es avatar

Hi. I understand you mean media uploaded by you, because does not store nor cache media from other instances.

As of now, the only way to clean media is to go to the static/ subdirectory of your user and delete the unwanted files by hand.

@grunfink@comam.es avatar grunfink , to random

I've just published version 2.89 of , the simple, minimalistic instance server written in C. It includes the following changes:

Fixed crash in pronouns processing (contributed by byte).

Added counters in the people page (contributed by byte).

New command-line option refresh, to refresh all follower and following Actor objects, marking them as broken if they are.

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

If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

grunfink OP ,
@grunfink@comam.es avatar

Sorry. My fault.

It's there now.

grunfink OP ,
@grunfink@comam.es avatar

Sorry, I forgot the last push step.

It's there now.

grunfink OP ,
@grunfink@comam.es avatar

I don't know. I work in snac in my spare time, which sadly is not very much these days. I'll do my best.

@gnemmi@snac.lab8.cz avatar gnemmi , to random

Will there be an assorted array of stickers variations available at ?

I really like the glossy ones and the ones that have a glittery background!

CC: @grunfink @prahou

Hint: just in case you guys didn't get it, yes, I'm calling out for a joint effort collaboration to create the most out of this world awesome inspired stickers for users 👍

Boost if you are missing inspired stickers or think that a crossover between this two universes would be the coolest thing ever.

grunfink ,
@grunfink@comam.es avatar

I love this one ❤️

CC: @gnemmi @prahou

@gnemmi@snac.lab8.cz avatar gnemmi , to random

Do we still have to call them "toot" even if we are using instead of ?

I'd say: no ..

grunfink ,
@grunfink@comam.es avatar

Hi! Well, I'm not sure. I always call them posts, as I cannot find a cool name. Someone suggested a snort.

Regarding the users, I usually call them .

grunfink ,
@grunfink@comam.es avatar

Pachyderm outgassing is tight!

CC: @m0xEE @pmjv @snackr

@grunfink@comam.es avatar grunfink , to random

I've just published version 2.88 of , the simple, minimalistic instance server written in C. It includes the following changes:

If disable_emojireact is set to true in server.json, EmojiReacts (incoming and outgoing) are totally disabled.

New command-line option top_ten, that returns the top ten most popular posts by a user (ordered by the sum of likes and boosts) (contributed by aov).

Added a new set of per-user muted words; if a post contains any of them, it's hidden behind a dropdown (contributed by byte).

If an account has a metadata named pronouns, it's shown by the name (contributed by violette).

Mastodon API: children of a post are returned recursively, not just the first level (contributed by violette).

Implemented optional metadata stripping for images and videos using external tools (contributed by Stefano Marinelli).

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

If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

grunfink OP ,
@grunfink@comam.es avatar

Also thanks to you for your contribution!

@grunfink@comam.es avatar grunfink , to random

Hi, everyone. I've just published version 2.87 of , the simple, minimalistic instance server written in C. It only includes a single change, to avoid using EmojiReacts to harass users:

Hide EmojiReacts from muted actors and blocked instances.

Sorry for the inconvenience. Bad people creativity always gets me off-guard. Upgrade your snac to this version ASAP, or revert to 2.85.

There will be another release pretty soon with a better solution to delete offending EmojiReacts.

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

grunfink OP ,
@grunfink@comam.es avatar

Hi. I'm sorry, I know next to nothing about Yunohost.

grunfink OP ,
@grunfink@comam.es avatar

I just use the web interface (I'm doing it right now). I only use Mastodon clients for testing.

What kind of usage problems are you finding while replying?

grunfink OP ,
@grunfink@comam.es avatar

No, that's not necessary (though possible). Just below each post, you'll find a dropdown labelled ‣ Reply... ; click on it, and a new dialog will appear, with a textbox to write your reply, set the visibility, language, etc. Then click on Post to send it.

@grunfink@comam.es avatar grunfink , to random

I've just published version 2.86 of , the simple, minimalistic instance server written in C. Once again, most of the work has been done by fellow developers because they are the best. It includes the following changes:

Truncate RSS titles at UTF-8 character boundaries (contributed by lxo).

Link contacts to single-user people pages. Also, user's posts are shown (contributed by lxo).

Added emoji reactions (contributed by violette).

Mastodon API: Fix for some client notifications (contributed by violette), fix for a status visibility error (contributed by fruye).

If the query variable terse of a public post page is set to anything, no header is shown.

Fixed search failures when the query string has any leading blank.

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

If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

grunfink OP ,
@grunfink@comam.es avatar

You're welcome!

grunfink OP ,
@grunfink@comam.es avatar

You're welcome!

grunfink OP ,
@grunfink@comam.es avatar

Thank you very much! Glad you like it.

CC: @stefano @stefano

grunfink OP ,
@grunfink@comam.es avatar

Oh. I'm afraid I forgot to add it 🤦

Basically, you fill the text field with the identifier of an emoji in your emojis.json file. As of now, the identifier must be one of those surrounded by colons.

grunfink OP ,
@grunfink@comam.es avatar

You already have one in your snac root directory, it's created by default.

@grunfink@comam.es avatar grunfink , to random

I've just published version 2.85 of , the simple, minimalistic instance server written in C. It includes the following changes:

Quoted posts are now shown.

Added metadata to remote users in the people page (contributed by dandelions).

Fixed memory leak (contributed by dandelions).

Fixed user matching (contributed by rakoo).

Rendering visibility conditionally, with lesser reach if needed (contributed by byte).

Added a button next to a follow notification to follow back.

Fixed typo in man page (contributed by spky).

Updated Czech and German translations (contributed by pmjv and zen).

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

If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

grunfink OP ,
@grunfink@comam.es avatar

You're welcome!

grunfink OP ,
@grunfink@comam.es avatar

Thanks to you!

@grunfink@comam.es avatar grunfink , to random

I've just published version 2.84 of , the simple, minimalistic instance server written in C. This time, it includes mostly work by great, brilliant fellow developers while I was just sitting on the porch with the cats on my lap and a beer in my hand:

Implemented more scopes to match other ActivityPub implementations (public, unlisted, followers-only and direct message) (contributed by byte).

New icons showing instance and actor failures.

Mastodon API: Added remote accounts follow metrics and statuses when viewing profiles (contributed by Stefano Marinelli), fixed post deletion.

Fixed outbox collection (contributed by byte).

New file FEDERATION.md (contributed by andypiper).

Updated Czech, Spanish and Brazilian Portuguese translations (contributed by pmjv and daltux).

Fixed manpage typos (contributed by r-ricci).

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

If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

grunfink OP ,
@grunfink@comam.es avatar

Thanks to you!

grunfink OP ,
@grunfink@comam.es avatar

You're welcome!

grunfink OP ,
@grunfink@comam.es avatar

Great! Thanks to you!

@grunfink@comam.es avatar grunfink , to random

I've just published version 2.82 of , the simple, minimalistic instance server written in C. It includes the following changes:

The language in which a post is written can now be set from the UI; you must configure the list of languages you usually post in in the User Settings.

Added support for bullet points in posts (lines starting with an asterisk or a hyphen, plus a space).

Added Dutch (nl_NL) translation (contributed by martijndeb).

Added Western Frisian (fy_NL) translation (contributed by martijndeb).

Mastodon API: Fixed repeated entries in timelines.

Added nodeinfo 2.1 support.

Fixed boosts from the command line not showing in the public timeline (contributed by xvello).

Updated several language files (contributed by zen and daltux).

Retrieving a post's replies is now possible via ActivityPub.

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

If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

@grunfink@comam.es avatar grunfink , to random

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

If the propagate_local_purge configuration variable is set to true in server.json, purged local posts generate a Delete activity that is sent everywhere, instead of only deleted from the filesystem.

Included a small tweak to avoid being confused by implementations that return valid webfinger queries for non-account URLs (like i.e. the Wordpress ActivityPub plugin in some configurations). This helps in searching by URL.

Added Ukrainian translation (contributed by wincentbalin).

New command-line option muted, to list all MUTEd actors.

Mastodon API: Fixed metadata and follower approval flag when editing the account.

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

If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

@grunfink@comam.es avatar grunfink , to random

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

Hashtag following also allow URLs to RSS feeds of ActivityPub objects (like e.g. https://mastodon.social/tags/ThankYouTuesday).

Users can now configure a webhook to receive an HTTP POST for every notification. This can be useful for implementing bots that react to activities, like autorepliers, chatbots or interactive textual games (see snac(1) for more information).

The number of pending follow confirmations is shown next to the "people" link.

Faster performance metrics (contributed by dandelions).

Improved lowercasing in hashtags (contributed by postscriptum).

A search-by-url tweak for implementations that return 200 for invalid webfinger queries (e.g. piefed).

Mastodon API: added follow confirmation endpoints, fixed collisions in attachment file names.

Fixed potential crashes in attachment uploads.

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

If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

@_elena@mastodon.social avatar _elena , (edited ) to random

[Thread, post or comment was deleted by the author]

  • Loading...
  • grunfink ,
    @grunfink@comam.es avatar

    Does anyone have a screenshot of Gargron's first Mastodon post?

    I don't have such a gem, but I have here the first post. Yes, I know the relevancy is astronomically inferior, but not for me 😆

    https://comam.es/snac/grunfink/p/1666208448.560042

    @grunfink@comam.es avatar grunfink , to random

    I announce the release of version 2.77 of , the simple, minimalistic instance server written in C. It just reverts a feature included in previous version; links in posts were also included as attachments, but, while harmless and on spec, it made posts look ugly in some platforms, and what the world doesn't need is more ugly things.

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

    If you find useful, please consider buying grunfink a coffee or contributing via LiberaPay.

    @grunfink@comam.es avatar grunfink , to random

    A week ago, I published a version of (a simple, minimalistic instance server written in C) that supported localisation of its web UI. Today, just seven days later, and thanks to collaborations, there are 10 languages already available.

    You, people, are GREAT. Thank you very much.

    @grunfink@comam.es avatar grunfink , to random

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

    Added support for customizing and translating the web UI language via simple .po files. For more information on how to install language files or create new ones, please see snac(8) (the administrator manual).

    New user support for blocking hashtags from the web UI.

    The Content-Security-Policy HTTP header is now always sent to disable any JavaScript, instead of just being suggested in the documentation.

    Image attachments in SVG format are now disabled by default; you can enable them back by setting the enable_svg value to true in server.json.

    Several fixes (contributed by inz).

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

    If you find useful, please consider contributing via LiberaPay: https://liberapay.com/grunfink/

    @grunfink@comam.es avatar grunfink , to random

    I'm glad to announce the release of version 2.71 of , the simple, minimalistic instance server written in C. This is a bugfix only release. It includes the following changes:

    Fixed memory leak (contributed by inz).

    Fixed crash.

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

    If you find useful, please consider contributing via LiberaPay: https://liberapay.com/grunfink/

    @octade@soc.octade.net avatar octade , to random

    @grunfink

    I noticed that when the mute button is pressed that a file is generated in the muted folder consisting of the actor url and a md5hash of the url as the containing filename.

    Does pressing the mute button cause the snac server to write data anywhere else or is it just this file in muted/?

    If I delete one of those files does it unmute the actor link contained in that file?

    Or will it mess something up if I delete a muted file?

    grunfink ,
    @grunfink@comam.es avatar

    Yes, you can "unmute" somebody just by deleting the file without any side effects.

    @octade@soc.octade.net avatar octade , (edited ) to random

    @grunfink

    Is there any internal method for preventing a snac2 server from federating? I don't mean blocking. I mean prohibiting all federation and contact with other activitypub instances. The goal is the local users don't see anything from the fediverse and the fediverse won't see anything from the local server.

    I realize there are brute ways to hack nginx and IPtables to block ports and things like that. I'm just wondering if there is an internal method that is more sensible, or if perhaps some blocks of code could be removed before compilation.

    grunfink ,
    @grunfink@comam.es avatar

    Hi. No, not at this moment. You mean, as a standalone, isolated server, with communication only available between users of the same server, right?

    @grunfink@comam.es avatar grunfink , to random

    Happy new year. I'm glad to announce the release of version 2.68 of , the simple, minimalistic instance server written in C. This release couldn't have been possible without the help of several fellow developers. It includes the following changes:

    Fixed regression in link verification code (contributed by nowster).

    Added ipv6 support for the https frontend connection (contributed by hb9hnt).

    New "Like by URL" operation (contributed by dheadshot).

    Added support for a Mastodon-like /share link sharing URL, like the one provided by sites like https://mastodonshare.com/ and such. To be able to use it, you must reconfigure your https proxy to redirect /share to snac (see snac(8)).

    New linux landlock (sandboxing) support for enhanced security (contributed by shtrophic). It's still a bit experimental, so you have to enable it explicitly by recompiling with the WITH_LINUX_SANDBOX directive (e.g. make CFLAGS=-DWITH_LINUX_SANDBOX).

    Some search fixes regarding repeated matches.

    The export_csv cmdline operation now exports the CSV files inside a user's export/ subdirectory instead of the current directory.

    All CSV files to be imported must now be stored inside a user's import/ subdirectory instead of the current directory.

    Mastodon API: more timeline paging tunings (contributed by nowster), post language selected in apps is properly set.

    The command-line operation note new reads the LANG environment variable to set the post's language.

    A new command-line operation, note_unlisted, allows posting "unlisted" or "quiet public" posts.

    The maximum number of entries in users' RSS feeds and in outboxes can now be set via the max_public_entries variable in the server.json file.

    Fixed broken support for Audio objects.

    Made xmpp and mailto URLs clickable.

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

    If you find useful, please consider contributing via LiberaPay: https://liberapay.com/grunfink/

    This release has been inspired by the painting Judith Slaying Holofernes by .

    @octade@soc.octade.net avatar octade , (edited ) to random

    @grunfink

    Does anyone know if there is a way to increase the number of recent entries in the public RSS feeds for a snac2 profile? Is there a query parameter that can be suffixed to the URL?

    I would like to increase it to 100 instead of the default.

    grunfink ,
    @grunfink@comam.es avatar

    Hi. I think I'll set the RSS entry count configurable server-wide instead of hardcoded.

    @grunfink@comam.es avatar grunfink , to random

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

    Added a new user option to collapse top level threads by default.

    Added a new disable_block_notifications boolean field to server.json to disable the notifications of Block activities.

    Added a new strict_public_timelines boolean field to server.json to only show an account's posts and boosts (no trees) in public timelines.

    Fixed repeated images in posts from some implementations (those that include an image both as an attachment and as an <img> tag inside the post content).

    Added a small HTML/CSS tweak to improve post previews from some implementations (contributed by nyanide).

    Notifications for EmojiReact activities now show the emoji.

    New command-line action insert, to insert a post by its URL in a user's timeline.

    Fixed bad processing/rendering of URLs with two or more @ symbols.

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

    If you find useful, please consider contributing via LiberaPay: https://liberapay.com/grunfink/donate

    This release has been inspired by the song Subways Of Your Mind by .

    @grunfink@comam.es avatar grunfink , to random

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

    Migration from a Mastodon account to a snac one has been implemented. Please see snac(8) (the administrator manual) for more information.

    Mastodon API: fixed timelines/public (it was showing less posts that it should).

    Fixed over-zealous caching to the public timeline.

    Some HTML tweaks and 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

    This release has been inspired by the painting The Hands Resist Him by .

    @box464@mastodon.social avatar box464 , to random

    Lots of exciting fediverse releases this week - did I miss any?

    @Mastodon releases v4.30

    @gotosocial releases v0.17.0-rc2

    snac from @grunfink releases v2.60

    @TangerineUI releases v2.0

    and a new @phanpy release

    grunfink ,
    @grunfink@comam.es avatar

    hi, author here. Version 2.60 has not been released yet, but it will be real soon.

    CC: @Mastodon @gotosocial @TangerineUI @phanpy

    @grunfink@comam.es avatar grunfink , to random

    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

    @grunfink@comam.es avatar grunfink , to random

    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 .

    grunfink OP ,
    @grunfink@comam.es avatar

    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.