@grunfink@comam.es avatar

grunfink

@grunfink@comam.es

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

This profile is from a federated server and may be incomplete. Browse more on the original instance.

rochacbruno, to random
@rochacbruno@social.rochacbruno.com avatar

A Mastodon compatible fediverse instance server written in C that is really lightweight, no database, no javascript!

https://codeberg.org/grunfink/snac2 made by @grunfink and it looks so good! https://comam.es/snac/grunfink

We need a :yunohost: package for it!

grunfink,
@grunfink@comam.es avatar

No, there is no embedded SQLite nor any other "trick". Given a well-thought storage design, a full SQL engine is seldom necessary.

I use an on-disk storage similar to what Git does. I described it in the snac(5) man page:

https://comam.es/snac-doc/snac.5.html#Disk_Layout

CC: @rochacbruno

grunfink, to fediverse
@grunfink@comam.es avatar

I'm glad to announce the release of version 2.53 of #snac, the simple, minimalistic #ActivityPub 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 #snac useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

#snacAnnounces

grunfink,
@grunfink@comam.es avatar

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.

grunfink,
@grunfink@comam.es avatar

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

chema, to fediverse
@chema@ctrvx.net avatar

I am just so amazed at how well the @phanpy web client works with . I started self-hosting phanpy last night (it is a pure static web app) and it works seamlessly. Makes me very happy when things go like they're expected. Thank you for this @cheeaun!

grunfink,
@grunfink@comam.es avatar

I'll take a look at it, thanks for the mention!

CC: @phanpy

chema, to fediverse
@chema@ctrvx.net avatar

If you're looking to host your very own single-user/a-few-users instance, you cannot go wrong with . It is simple to install on Ubuntu and works very well with some really solid clients. It is also written in C, so it is fast, with few dependencies. Great work @grunfink, you've got a new monthly supporter on Ko-fi!

https://codeberg.org/grunfink/snac2

grunfink,
@grunfink@comam.es avatar

Thank you very much for your support!

grunfink,
@grunfink@comam.es avatar

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

CC: @chema

grunfink,
@grunfink@comam.es avatar

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 @chema

chema, to random
@chema@ctrvx.net avatar

Finally installed #snac2 @grunfink! Straightforward process, no major issues. It works very well with @Tusky Only issue I've had has been adding attachments. Is that supported or is there a file limit size? In any case, great job. Big fan so far.

grunfink,
@grunfink@comam.es avatar

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 #snac itself (there is no enforced limit), but from your nginx / Apache / whatever web server; try reconfiguring it to allow larger POST uploads.

CC: @Tusky

liaizon, to fediverse
@liaizon@wake.st avatar

Look at how @mikedev designed events in @streams! I would love to see this implemented in other software. @julian have you thought about how @nodebb would display an event yet? Does @silverpill's @mitra have any support? What about @grunfink's SNAC?

Here's a link to the event itself if anyone wants to query it in their software of choice.
https://fediversity.site/item/e9bdb383-eeb9-4d7d-b2f7-c6401267cae0

grunfink,
@grunfink@comam.es avatar

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 @streams @julian @nodebb @silverpill @mitra

grunfink,
@grunfink@comam.es avatar

I've just added some very basic support for this type (basically, not dropping them and showing them as if they were regular posts, with a mark to note that they are events). I understand that what make this type interesting is adding the possibility to add actions like intention to attend and such, but I will also wait for standardization.

Thanks for bringing this to my attention.

CC: @mikedev @streams @julian @nodebb @silverpill @mitra

grunfink,
@grunfink@comam.es avatar

If you want to test it, it's already in the repository. If you just want to take a look at what it's shown, it's here:

https://comam.es/snac/grunfink#8ac6a76000129ae8d5f74af066988b9c_entry

CC: @mikedev @streams @julian @nodebb @silverpill @mitra

grunfink, (edited ) to fediverse
@grunfink@comam.es avatar

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.

grunfink,
@grunfink@comam.es avatar

Yes, it does; at least, for the limited, perverse meaning of "federation" that Threads allow. I mean: you can follow Threads accounts with no problem and receive their posts and/or boosts, but you cannot reply nor interact with them in any way because Threads ignores interactions from the "real" Fediverse.

iwojima, to random

hurray! federation within hidden networks included into snac!
thank you @grunfink for your great work!

https://codeberg.org/grunfink/snac2/commit/040c43fb08fb4c9c00240c53515432f5f83454c9

grunfink,
@grunfink@comam.es avatar

Thanks to you for your help!

firefly, to random
@firefly@neon.nightbulb.net avatar

I notice that when viewing a snac profile from another instance all instances show zero followers and zero followees. What do I need to configure for the snac server to report the correct numbers?

@grunfink

grunfink,
@grunfink@comam.es avatar

This is intentional and by design. I consider using metrics like follower counts as misleading and toxic.

More about this:

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

klopo, to random
@klopo@opbsd.rintik.xyz avatar

Hi @grunfink

How do you delete user header image (banner) ?

#snac2

grunfink,
@grunfink@comam.es avatar

I'm afraid it's not possible by now from the web UI, you can only replace it with another one. I'll think of a way to implement it.

Meanwhile, as a workaround, you can edit the user.json file and replace the header field to the empty string "".

klopo, to random
@klopo@opbsd.rintik.xyz avatar

Modifikasi tema #snac2 berdasarkan tema Paper buatan @voron
merubah background menjadi terang dan beberapa detil kecil lainnya. Untuk font pakai Source Serif 4 dari Google Fonts. https://fonts.google.com/specimen/Source+Serif+4

@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,200..900;1,8..60,200..900&display=swap');<br></br><br></br>*,<br></br>*:before,<br></br>*:after {<br></br>  box-sizing: border-box;<br></br>}<br></br>body {<br></br>  max-width: 48em;<br></br>  margin: 0 auto;<br></br>  line-height: 1.5;<br></br>  padding: 0.5rem 1rem;<br></br>  word-wrap: break-word;<br></br>  height: 100%;<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=292929" rel="tag">#292929</a>;<br></br>  font-weight: 400;<br></br>  font-size: 16px;<br></br>  font-family: 'Source Serif 4', Georgia, serif;<br></br>  line-height: 1.725;<br></br>  text-rendering: geometricPrecision;<br></br>  display: flex;<br></br>  flex-direction: column;<br></br>  overflow-wrap: break-word;<br></br>}<br></br>blockquote { font-style: italic; border-left: 5px solid <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=e85d04" rel="tag">#e85d04</a>; border-radius: 0.4em; padding: 0rem 0 0rem 0.5rem }<br></br>video {<br></br>    aspect-ratio: 16 / 9;<br></br>}<br></br>sup {<br></br>  padding: 0 2px;<br></br>  border-radius: 5px;<br></br>  line-height: 99%;<br></br>  left: 4px;<br></br>  position: relative;<br></br>  bottom: 4px;<br></br>}<br></br>a {<br></br>  text-decoration: none;<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=023e8a" rel="tag">#023e8a</a>;<br></br>}<br></br><br></br>.snac-content a:hover {<br></br>    text-decoration: underline;<br></br>}<br></br><br></br>pre {<br></br>    padding: 1em;<br></br>    border-radius: 6px;<br></br>    overflow: auto;<br></br>    border: 1px solid <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=eee" rel="tag">#eee</a>;<br></br>    margin: 1em 0;<br></br>    tab-size: 1rem<br></br>}<br></br>pre, code {<br></br>    font-family: 'SF Mono', monospace, Consolas, Courier New;<br></br>    font-size: 90%;<br></br>}<br></br>p code, div code {<br></br>    border: 1px solid <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=eee" rel="tag">#eee</a>;<br></br>    border-radius: 3px;<br></br>    font-size: 85%;<br></br>    padding: 1px 2px;<br></br>}<br></br>input[type="file"] {<br></br>  margin-bottom: 1rem;<br></br>  width: 100%;<br></br>}<br></br>select,<br></br>input[type=file]::file-selector-button {<br></br>  background: rgb(201, 201, 203, 0.4);<br></br>  border: none;<br></br>  border-radius: 4px;<br></br>  padding: 0.3rem;<br></br>}<br></br>select:hover,<br></br>input[type=file]::file-selector-button:hover {<br></br>  background: rgb(201, 201, 203);<br></br>}<br></br>input[type="text"] {<br></br>  height: auto;<br></br>  font-size: inherit;<br></br>  width: 100%;<br></br>  color: inherit;<br></br>  border-radius: 4px;<br></br>  border: inherit;<br></br>}<br></br>input[class^="snac-btn-"] {<br></br>  background: rgb(201, 201, 203, 0.4);<br></br>  border: none;<br></br>  border-radius: 4px;<br></br>  padding: 0.3rem;<br></br>  font-size: 85%;<br></br>}<br></br>input[class^="snac-btn-"]:hover {<br></br>  background: rgb(201, 201, 203);<br></br>}<br></br>input[name="telegram_bot"] {<br></br>  margin-bottom: 0.5rem;<br></br>}<br></br>.snac-note input[value="Post"],<br></br>.snac-top-controls input[value="Post"],<br></br>.snac-top-controls input[value="Follow"],<br></br>.snac-top-controls input[value="Boost"],<br></br>.snac-top-controls input[value="Update user info"] {<br></br>  background: rgb(100, 149, 237, 0.2);<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=6495ed" rel="tag">#6495ED</a>;<br></br>  border: none;<br></br>  border-radius: 4px;<br></br>  padding: 0.5rem 1rem;<br></br>  font-weight: 700;<br></br>}<br></br>.snac-note input[value="Post"]:hover,<br></br>.snac-top-controls input[value="Post"]:hover,<br></br>.snac-top-controls input[value="Follow"]:hover,<br></br>.snac-top-controls input[value="Boost"]:hover,<br></br>.snac-top-controls input[value="Update user info"]:hover {<br></br>  background: rgb(100, 149, 237, 0.3);<br></br>}<br></br>.snac-top-controls input[value="Follow"],<br></br>.snac-top-controls input[value="Boost"] {<br></br>  margin-top: 0.5rem;<br></br>}<br></br>.snac-top-controls > div > details > summary::marker {<br></br>  content: "✏️ ";<br></br>}<br></br>.snac-top-controls <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=new_post_form" rel="tag">#new_post_form</a> details:first-of-type summary::marker {<br></br>  content: "📎 ";<br></br>}<br></br>.snac-top-controls <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=new_post_form" rel="tag">#new_post_form</a> details:last-of-type summary::marker {<br></br>  content: "📊 ";<br></br>}<br></br>.snac-top-controls > details:first-of-type summary::marker {<br></br>  content: "🗃️ ";<br></br>}<br></br>.snac-top-controls > details:last-of-type summary::marker {<br></br>  content: "⚙️ ";<br></br>}<br></br>form[id$=_reply_form] details:first-of-type summary::marker {<br></br>  content: "📎 ";<br></br>}<br></br>.snac-controls details:first-of-type summary::marker {<br></br>  content: "🗨️ ";<br></br>}<br></br>.hashtag, .hashtag span { color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=ef233c" rel="tag">#ef233c</a>; font-weight: 600;}<br></br>h2::before {<br></br>  position: absolute;<br></br>  left: -1.2rem;<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=6495ed" rel="tag">#6495ED</a>;<br></br>  content: "<a class="mention hashtag" href="https://opbsd.rintik.xyz?t="" rel="tag">#"</a>;;<br></br>  font-size: 1.5rem;<br></br>}<br></br>h2 {<br></br>  position: relative;<br></br>  display: block;<br></br>  margin-left: 1rem;<br></br>}<br></br>textarea,<br></br>input {<br></br>  outline: none;<br></br>  padding: 0.3rem;<br></br>  background: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=dedcd9" rel="tag">#dedcd9</a>;<br></br>  border: none;<br></br>  border-radius: 4px;<br></br>}<br></br>textarea[name="bio"],<br></br>textarea[name="metadata"] {<br></br>  width: 100%;<br></br>}<br></br>textarea:focus,<br></br>input:focus {<br></br>  background: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=eae9e7" rel="tag">#eae9e7</a>;<br></br>}<br></br>summary {<br></br>   border-radius: 4px;<br></br>   padding: 0.1rem 0.2rem;<br></br>   width: fit-content;<br></br>}<br></br>summary:hover {<br></br>  cursor: pointer;<br></br>  background: rgb(201, 201, 203, 0.4);<br></br>}<br></br>.snac-content-attachments img {<br></br>    border: 1px solid <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=ccc" rel="tag">#ccc</a>;<br></br>    border-radius: 8px;<br></br>}<br></br>.snac-embedded-video,<br></br>img {<br></br>  max-width: 100%;<br></br>  border-radius: 4px;<br></br>}<br></br>.snac-origin {<br></br>  font-size: 85%;<br></br>  font-family: system-ui, sans-serif;<br></br>  color: limegreen;<br></br>  margin-top: 0.3rem;<br></br>}<br></br>.snac-origin>a {<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=363533" rel="tag">#363533</a>;<br></br>}<br></br>.snac-score {<br></br>  float: right;<br></br>  font-size: 85%;<br></br>  margin-left: 0.5rem;<br></br>}<br></br>.snac-metadata {<br></br>  margin-bottom: 1rem;<br></br>}<br></br>.snac-top-user-name {<br></br>  font-size: 150%;<br></br>  font-family: system-ui, sans-serif;<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=444" rel="tag">#444</a>;<br></br>  margin-bottom: -1.1rem;<br></br>  margin-top: 0.5rem;<br></br>}<br></br>.snac-top-user-id {<br></br>  font-size: 110%;<br></br>  margin-bottom: 1rem;<br></br>}<br></br>.snac-top-user-bio {<br></br>    margin-bottom: 1em;<br></br>}<br></br>.snac-top-user-bio br {<br></br>    display: none;<br></br>}<br></br>.snac-top-nav {<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=e2e0de" rel="tag">#e2e0de</a>;<br></br>  display: flex;<br></br>  align-items: center;<br></br>  justify-content: end;<br></br>}<br></br>.snac-top-nav > a {<br></br>  text-transform: capitalize;<br></br>  border-left: 1px solid;<br></br>  padding-left: 0.6rem;<br></br>  line-height: 1em;<br></br>}<br></br>.snac-top-nav > a:first-of-type {<br></br>  padding-left: 0;<br></br>  border-left: 0;<br></br>}<br></br>.snac-top-nav>a:hover {<br></br>  text-decoration: underline;<br></br>}<br></br>.snac-top-nav>.snac-avatar {<br></br>  margin-right: auto;<br></br>}<br></br>.snac-avatar {<br></br>  float: left;<br></br>  height: 2.5rem;<br></br>  aspect-ratio: 1 / 1;<br></br>  margin-right: 0.5rem;<br></br>  border-radius: 8px;<br></br>}<br></br>.snac-author {<br></br>  font-size: 95%;<br></br>  text-decoration: none;<br></br>  font-weight: 700;<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=363533" rel="tag">#363533</a>;<br></br>}<br></br>.snac-author-tag {<br></br>  font-size: 90%;<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=363533" rel="tag">#363533</a>;<br></br>  text-decoration: none;<br></br>}<br></br>.snac-pubdate {<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=a0a0a0" rel="tag">#a0a0a0</a>;<br></br>  font-size: 90%;<br></br>  float: right;<br></br>}<br></br>.snac-top-controls {<br></br>  padding-bottom: 1.5em;<br></br>}<br></br>.e-content summary {<br></br>  margin-bottom: 1rem;<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=c1121f" rel="tag">#c1121f</a>;<br></br>}<br></br>.snac-post {<br></br>  border-top: 1px solid <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=c1c1c1" rel="tag">#c1c1c1</a>;<br></br>  margin-bottom: 1rem;<br></br>}<br></br>.snac-post-header {<br></br>  line-height: 1.3;<br></br>}<br></br>.snac-children {<br></br>  padding-left: 1.5em;<br></br>  border-left: 1px solid <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=c1c1c1" rel="tag">#c1c1c1</a>;<br></br>}<br></br>.snac-textarea {<br></br>  font-family: inherit;<br></br>  width: 100%;<br></br>  color: inherit;<br></br>  border-radius: 4px;<br></br>  border: inherit;<br></br>}<br></br>.snac-history {<br></br>  display: none;<br></br>}<br></br>.snac-btn-mute {<br></br>  float: right;<br></br>  margin-left: 0.5em;<br></br>}<br></br>.snac-btn-unmute {<br></br>  float: right;<br></br>  margin-left: 0.5em;<br></br>}<br></br>.snac-btn-follow {<br></br>  float: right;<br></br>  margin-left: 0.5em;<br></br>}<br></br>.snac-btn-unfollow {<br></br>  float: right;<br></br>  margin-left: 0.5em;<br></br>}<br></br>.snac-btn-hide {<br></br>  float: right;<br></br>  margin-left: 0.5em;<br></br>}<br></br>.snac-btn-delete {<br></br>  float: right;<br></br>  margin-left: 0.5em<br></br>}<br></br>.snac-btn-limit {<br></br>  float: right;<br></br>  margin-left: 0.5em;<br></br>}<br></br>.snac-btn-unlimit {<br></br>  float: right;<br></br>  margin-left: 0.5em;<br></br>}<br></br>.snac-footer {<br></br>  margin-top: 2em;<br></br>  font-size: 75%;<br></br>  color: <a class="mention hashtag" href="https://opbsd.rintik.xyz?t=666" rel="tag">#666</a>;<br></br>}<br></br>.snac-poll-result {<br></br>  margin-left: auto;<br></br>  margin-right: auto;<br></br>}<br></br>@media (max-width: 500px) {<br></br>  body {<br></br>    font-size: 14px;<br></br>  }<br></br>  sup {<br></br>    left: 2px;<br></br>  }<br></br>  .snac-children {<br></br>    padding-left: 1em;<br></br>  }<br></br>  input[class^="snac-btn-"] {<br></br>    font-size: 80%;<br></br>  }<br></br>  .snac-pubdate {<br></br>    font-size: 80%;<br></br>  }<br></br>  h2::before {<br></br>    top: -0.2rem;<br></br>  }<br></br>  .snac-top-nav > a {<br></br>    padding-left: 0.2rem;<br></br>    margin: -0.2rem;<br></br>  }<br></br>}<br></br>
grunfink,
@grunfink@comam.es avatar

Snac does not treat the code wrapper specially, only to wrap it as an HTML "pre". All text prefixed by a # symbol is treated as a hashtag, wherever it is.

dfdx, to mastodon
@dfdx@pub.dfdx.io avatar

After unsuccessfully trying to get #mastodon, #pleroma, #akkoma, and #honk working on #OpenBSD, I installed and configured #snac relatively easily.

What a nice surprise. Thanks @grunfink

grunfink,
@grunfink@comam.es avatar

You're welcome! Enjoy your experience.

yonle, to random
@yonle@yonle.lecturify.net avatar

@grunfink hey. you could also link my openbsd snac guide: https://wiki.ircnow.org/index.php?n=Openbsd.Snac

grunfink,
@grunfink@comam.es avatar

Of course. Done.

antics, to random Swedish
@antics@mastodon.nu avatar

Guide: Install snac on (without relayd)

https://chai.guru/pub/openbsd/snac.html

grunfink,
@grunfink@comam.es avatar

Thank you very much. I've just added your guide to the README file.

grunfink,
@grunfink@comam.es avatar

do you by any chance know how to start snac in chroot with rcctl, or if it is even necessary to do that?

Sorry, I have no idea. I'm boosting you question, just in case somebody knows the answer.

tetra, to random
@tetra@meowcity.club avatar

@grunfink Are notifications supposed to work on SNAC 2.51?
Bc I haven't been recieving notifications since I set up this instance

grunfink,
@grunfink@comam.es avatar

Unless something unexpected has broken, they should (I've received a notification from this same message of yours, and you should receive one about this reply).

grunfink, to fediverse
@grunfink@comam.es avatar

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 .

grunfink,
@grunfink@comam.es avatar

I haven't forgot about your work; I've just been a bit too busy these last two weeks.

I made some quick tests with it and noticed some rejections from remote servers, but I'm not completely sure if they were from your patch or from some network outages I suffered these days.

I have real interest in applying it to the trunk, I hope I'll have time to test it again real soon.

grunfink,
@grunfink@comam.es avatar

Thanks for your continued work on helping snac being available to Mac users.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • InstantRegret
  • rosin
  • modclub
  • Youngstown
  • khanakhh
  • Durango
  • slotface
  • mdbf
  • cubers
  • GTA5RPClips
  • kavyap
  • DreamBathrooms
  • ngwrru68w68
  • JUstTest
  • magazineikmin
  • osvaldo12
  • tester
  • tacticalgear
  • ethstaker
  • Leos
  • thenastyranch
  • everett
  • normalnudes
  • anitta
  • provamag3
  • cisconetworking
  • lostlight
  • All magazines