Bug 246637 - New port: irc/pounce multi-client IRC bouncer
Summary: New port: irc/pounce multi-client IRC bouncer
Status: In Progress
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-05-21 15:53 UTC by june
Modified: 2021-05-16 19:31 UTC (History)
1 user (show)

See Also:


Attachments
diff (3.21 KB, patch)
2020-05-21 15:53 UTC, june
no flags Details | Diff
pounce 1.3p1 diff (3.22 KB, patch)
2020-06-14 19:46 UTC, june
no flags Details | Diff
Update to 2.3 (2.16 KB, patch)
2021-05-07 23:37 UTC, Romain Tartière
no flags Details | Diff
Update to 2.3 with openssl path fix (2.26 KB, patch)
2021-05-08 01:00 UTC, Romain Tartière
no flags Details | Diff
Patch for pounce 2.3 (4.96 KB, patch)
2021-05-13 22:37 UTC, Romain Tartière
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description june 2020-05-21 15:53:21 UTC
Created attachment 214729 [details]
diff

pounce is a multi-client, TLS-only IRC bouncer. It takes a simple
approach, using a multiple-consumer ring buffer and the IRCv3.2
server-time extension to communicate with clients.

WWW: https://git.causal.agency/pounce/
Comment 1 june 2020-06-14 19:46:27 UTC
Created attachment 215562 [details]
pounce 1.3p1 diff

Updated to 1.3p1.
Comment 2 Romain Tartière freebsd_committer 2021-05-07 23:21:59 UTC
Take it.  I am juggling with the svn diff output to include it in git and update to the latest version, but the calico and pounce rc scripts are missing.  Do you have them at hand?
Comment 3 Romain Tartière freebsd_committer 2021-05-07 23:37:35 UTC
Created attachment 224759 [details]
Update to 2.3

Port updated to the latest version, tweaks to cope with libretls / libressl as done for catgirl.  I removed the rc scripts since they do not exist.

I still need to setup all this to confirm it's working as expected. In the meantime, if you can provide the rc scripts, I will be happy to reintroduce them.

Thanks!
Comment 4 Romain Tartière freebsd_committer 2021-05-08 01:00:05 UTC
Created attachment 224762 [details]
Update to 2.3 with openssl path fix

Meh, the full path to openssl depends on the version of openssl used.
Comment 5 Romain Tartière freebsd_committer 2021-05-08 01:01:55 UTC
I see that the rc-scripts where probably not the easiest way to manage multiple instances of pounce, and where removed…  Do you intend to push catsit in the FreeBSD ports?

BTW: I am running this code now (without calico: single server), seems to be smooth so far :-P  Thanks!
Comment 6 june 2021-05-08 23:01:07 UTC
Yeah I removed the rc scripts since they were hacky and I had them in-repo which isn't where they belong. They could maybe be pulled out of git history: <https://git.causal.agency/pounce/tree/rc.d?id=b93f3f96845fc1fa1f1b80829f3573a11b13b907>, although I don't think they're quite accurate anymore either since pounce now wants to load configuration from ~/.config.

catsit does a better job, but I guess I'm hesitant about adding an extra port for a rather particular process supervisor and creating a soft dependency on it. On the other hand, it would be awkward to package pounce without a reasonable way to run it. I kind of feel like I'd be imposing on the ports tree by requiring some special method to run my software. Really depends on how much demand there is to run pounce on FreeBSD, I suppose.
Comment 7 Romain Tartière freebsd_committer 2021-05-09 17:16:44 UTC
I have not tried the rc scripts yet: when I saw they where prune in favor of catsit I directly though that making catsit available in the ports might be something you are interested in.  In any case, that's not incompatible for pounce/calico rc scripts.

AFAIAC, I currently run a single instance of pounce in tmux, so my needs are minimal and the rc-scripts will be enough.

With the support of ~/.config, maybe we must ensure that $HOME is properly set.  I'll give it a try in the next few days.
Comment 8 Romain Tartière freebsd_committer 2021-05-13 22:37:44 UTC
Created attachment 224917 [details]
Patch for pounce 2.3

Latest patch that also set $HOME to the correct value.

I am running this with the following in rc.conf:

pounce_enable="yes"
pounce_profiles="freenode"
pounce_freenode_user="romain"

And ~romain/.config/pounce/freenode has the following:

host = chat.freenode.net
nick = smortex
user = smortex
pass = secret
join = #riemann,#voxpupuli
save = freenode
local-ca = auth.pem
local-cert = freenode.irc.blogreen.org.crt
local-priv = freenode.irc.blogreen.org.key
local-host = freenode.irc.blogreen.org

Does this look reasonable for you?
Comment 9 june 2021-05-16 19:31:49 UTC
I think everything related to pounce_chdir/ETCDIR/"etc/pounce" should probably be removed, since pounce now looks in $HOME instead of CWD. I'd like to add some documentation to the rc scripts too that I used to have in the manual somewhere, I'll try to update the patch with both.