+ (use-package circe
+ :config
+ (enable-lui-track)
+ (enable-circe-color-nicks)
+ (setq circe-network-defaults '(("libera"
+ :host "irc.armaanb.net"
+ :nick "emacs"
+ :user "emacs"
+ :use-tls t
+ :port 6698
+ :pass (lambda (null) (fetch-password
+ :login "emacs"
+ :machine "irc.armaanb.net"
+ :port 6698)))
+ ("oftc"
+ :host "irc.armaanb.net"
+ :nick "emacs"
+ :user "emacs"
+ :use-tls t
+ :port 6699
+ :pass (lambda (null) (fetch-password
+ :login "emacs"
+ :machine "irc.armaanb.net"
+ :port 6699)))
+ ("tilde"
+ :host "irc.armaanb.net"
+ :nick "emacs"
+ :user "emacs"
+ :use-tls t
+ :port 6696
+ :pass (lambda (null) (fetch-password
+ :login "emacs"
+ :machine "irc.armaanb.net"
+ :port 6696)))))
+ :custom (circe-default-part-message "goodbye!")
+ :bind (:map circe-mode-map ("C-c C-r" . circe-reconnect-all)))
+
+ (defun acheam-irc ()
+ "Open circe"
+ (interactive)
+ (if (get-buffer "irc.armaanb.net:6696")
+ (switch-to-buffer "irc.armaanb.net:6696")
+ (progn (switch-to-buffer "*scratch*")
+ (circe "libera")
+ (circe "oftc")
+ (circe "tilde"))))
+
+ (global-set-key (kbd "C-c i") 'acheam-irc)
+#+end_src
+** Calendar
+Still experimenting with this setup. Not sure if I will keep it, but it works well for seeing my calendar events. I use =vdirsyncer= to sync my calendar events which I'm really not happy with.
+#+begin_src emacs-lisp
+ (defun sync-calendar ()
+ "Sync calendars with vdirsyncer"
+ (interactive)
+ (async-shell-command "vdirsyncer sync"))
+
+ (use-package calfw
+ :bind (:map cfw:calendar-mode-map ("C-S-u" . sync-calendar)))
+ (use-package calfw-ical)
+ (use-package calfw-org)
+
+ (defun acheam-calendar ()
+ "Open calendars"
+ (interactive)
+ (cfw:open-calendar-buffer
+ :contents-sources (list
+ (cfw:org-create-source "Green")
+ (cfw:ical-create-source
+ "Personal"
+ "~/.local/share/vdirsyncer/mailbox/Y2FsOi8vMC8zMQ.ics"
+ "Gray")
+ (cfw:ical-create-source
+ "Personal"
+ "~/.local/share/vdirsyncer/mailbox/Y2FsOi8vMC8zMQ.ics"
+ "Red")
+ (cfw:ical-create-source
+ "School"
+ "~/.local/share/vdirsyncer/school/abhojwani22@nobles.edu.ics"
+ "Cyan"))
+ :view 'week))