Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature request] Daemon mode? #93

Open
097115 opened this issue Nov 22, 2020 · 4 comments
Open

[feature request] Daemon mode? #93

097115 opened this issue Nov 22, 2020 · 4 comments
Assignees
Labels
enhancement New feature or request

Comments

@097115
Copy link

097115 commented Nov 22, 2020

Probably, not an easy request to implement but just a thought.

What if kirc could be run in daemon mode, and we could also launch other instances as clients, connecting to this daemon and displaying content from the specified channels only?

Like this:

kirc --daemon -s irc.undernet.org -c linux -c freebsd -n MyNick -r MyName
kirc --client -c linux
kirc --client -c freebsd

This way, we could use a terminal multiplexer, like tmux, to have separate channels actually running in separate windows..

What do you think? :)

@kdkasad
Copy link
Contributor

kdkasad commented Nov 22, 2020

Not entirely sure, but this might be possible using something like socat(1) to splice TCP streams together. Instead of running a daemon and several clients, you can use several normal instances of kirc(1) which all communicate using the same connection via socat(1).

Sure, this isn't the same as having a daemon and clients, but it could accomplish the described result.

@mcpcpc mcpcpc self-assigned this Nov 22, 2020
@mcpcpc mcpcpc added the enhancement New feature or request label Nov 22, 2020
@mcpcpc
Copy link
Owner

mcpcpc commented Nov 22, 2020

This question came up a while ago, regarding kirc supporting a daemon mode, and the the conclusion I came to was that it was out of the scope of the project.

It does not mean that i wouldn’t be willing to support this in other ways though. For example, system notifications (see #73) are available as a shell script in the support documentation. Using that example, i imagine that a simple shell script could be used to parse a log file and check for new messages on a specified channel.

I will take some more time to think about this one a bit. implementation as a main feature is pretty straightforward, so i imagine this could also be made available as a patch.

@097115 097115 mentioned this issue Dec 18, 2020
@ghost
Copy link

ghost commented Feb 18, 2021

This would also be a pretty ok solution to terminal resizing. You just reopen the client while the daemon is still connected.

@mcpcpc
Copy link
Owner

mcpcpc commented Feb 19, 2021

This would also be a pretty ok solution to terminal resizing. You just reopen the client while the daemon is still connected.

true. although what really needs to happen is a rewrite of the implemented text editor to handle proper redrawing of the entire terminal window (and consequently, fix text reflow). i have been toying with this idea for a while now and, given the text editor comprises >50% of the cloc, would result in a near rewrite of kirc.

i am not opposed to this but, if we were to proceed with the rewrite, should we also consider other significant changes? for example, kirc would greatly benefit from switching to a file-based buffer system. this would ultimately open the door to other neglected features, such as multi-channel support. this would ultimately change the inherent behavior of kirc though and may not be favored by the community.

May be worth taking this to a community poll and seeing what else should be considered (if a rewrite were to happen).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants