Took quite a bit of trial and error, but here was the eventual solution:
Create .authinfo.gpg file in a directory of your choice
Add the following to the .authinfo.gpg file (for IRC login)
machine irc.freenode.net login <your-irc-nick> port nickserv password <your-irc-pw>
Add the following to your emacs .init file
Set the dir where .authinfo....
The problem (that I see) is this line:
(setq rcirc-authinfo '(("freenode" nickserv jd:irc-nickname jd:irc-password)))
If you C-h v rcirc-authinfo, the value will be ("freenode" nickserv jd:irc-nickname jd:irc-password). I'm not sure if rcirc accepts symbols for nickname and password, but I bet not.
The problem is, the quote ' quotes everything, including ...
I ended up patching the erc-login function to use the SASL extension. I first installed this package https://github.com/joseph-gay/erc-sasl and added this to my init file:
(add-to-list 'erc-sasl-server-regexp-list "irc\\.freenode\\.net")
(defun erc-login ()
"Perform user authentication at the IRC server. (PATCHED)"
(erc-log (format "...
So what I found out was, it was in fact because of my network/wifi port. I didn't think it was at the time only because I could still connect to things over the internet through emacs (i.e. package-refresh-contents for melpa), and I could still connect to the internet normally/connect to irc using other applications.
The wifi error I got was: Double NAT ...
Entirely up to you, really. I don't think there is any agreed "best practice" here. Your concerns are perfectly valid, so it's certainly not unreasonable to isolate distinct use-cases as separate Emacs instances (especially if you are less-willing to restart some of them than others). If you're happy with how you can switch between them, I'd suggest you ...
First, make sure you're running (rcirc-notify-add-hooks) in your config.
It seems that rcirc-notify simply does not allow itself to work when window-system is nil. So if you are running emacs in a terminal, it will never notify you.
You can get around this with some advice:
(defadvice rcirc-notify (around spoof-window-system activate)
In Emacs 22 or later just type M-x irc to start rcirc. Using the default configuration will connect to Freenode and join #rcirc. If you don't want to use the default configuration, type C-u M-x irc instead. Otherwise you can configure rcirc in your init file.