dotfiles/README.org

65 lines
4.1 KiB
Org Mode

#+TITLE: My dotfiles
#+HUGO_ALIASES: /config
[[https://forthebadge.com/images/badges/works-on-my-machine.svg]]
These are my GNU/Linux configuration files. [[https://github.com/SqrtMinusOne/dotfiles][View at GitHub]].
Most of the software is configured with [[https://leanpub.com/lit-config/read][literate configuration]] strategy via Emacs' [[https://orgmode.org/][Org Mode]]. This way has its pros and cons, but overall it's pretty nice to keep the configs interweaved with comments in a handful of files.
The files themselves are managed and deployed via [[https://yadm.io/][yadm]], but I use Org Mode for things like config templating.
My current GNU/Linux distribution is [[https://guix.gnu.org/][GNU Guix]]. I like Guix because, among other things, it allows [[https://guix.gnu.org/cookbook/en/html_node/Advanced-package-management.html#Advanced-package-management][declaring the required software]] in configuration files, so I can have the same set of programs across multiple machines (look for tables with "Guix dependency" in the header).
The central program to all of that is, of course [[https://www.gnu.org/software/emacs/][GNU Emacs]]. As of the moment of this writing, it takes ~50% of my screen time and has the largest share of configuration here.
Table of contents and software:
- [[file:Emacs.org][Emacs.org]]
- [[file:Emacs.org][GNU Emacs]]
- [[file:Desktop.org][Desktop.org]]
- /Active/: [[file:Desktop.org::*EXWM][EXWM]], [[file:Desktop.org::*Polybar][Polybar]], [[file:Desktop.org::*Rofi][Rofi]], [[file:Desktop.org::*Flameshot][Flameshot]], [[file:Desktop.org::*dunst][dunst]], [[file:Desktop.org::*Picom][Picom]], [[file:Desktop.org::*Zathura][Zathura]]
- /In Limbo/: [[file:Desktop.org::*i3wm][i3wm]], [[file:Desktop.org::*keynav][keynav]]
- [[file:Console.org][Console.org]]
- /Active/: [[file:Console.org::*=.profile=][.profile]], [[file:Console.org::*Bash][Bash]], [[file:Console.org::*Fish][Fish]], [[file:Console.org::*Starship prompt][Starship]], [[file:Console.org::*Tmux][Tmux]], [[file:Console.org::*Alacritty][Alacritty]]
- /In Limbo/: [[file:Console.org::*Nushell][Nushell]]
- [[file:Guix.org][Guix.org]]
- [[file:Mail.org][Mail.org]]
- /Active/: [[file:Mail.org::*Lieer][Lieer]], [[file:Mail.org::*DavMail][DavMail]], [[file:Mail.org::*OfflineIMAP][OfflineIMAP]], [[file:Mail.org::*Notmuch][Notmuch]]
(/Apparently, links on the second level work only in Emacs 🙁/)
A few other repositories I may consider a part of my config:
- [[https://github.com/SqrtMinusOne/channel-q][channel-q]] is my Guix channel
- [[https://github.com/SqrtMinusOne/sqrt-data][sqrt-data]] is a home for my statistics gathering effort
- Emacs packages that I wrote (so far, all of them originated in my Emacs config):
- [[https://github.com/SqrtMinusOne/lyrics-fetcher.el][lyrics-fetcher.el]], [[https://github.com/SqrtMinusOne/pomm.el][pomm.el]], [[https://github.com/SqrtMinusOne/perspective-exwm.el][perspective-exwm.el]], [[https://github.com/SqrtMinusOne/exwm-modeline][exwm-modeline.el]], [[https://github.com/SqrtMinusOne/org-journal-tags][org-journal-tags]]
Posts about my configuration:
- [[https://sqrtminusone.xyz/posts/2022-01-03-exwm/][Using EXWM and perspective.el on a multi-monitor setup]]
- [[https://sqrtminusone.xyz/posts/2021-10-04-emacs-i3/][Getting a consistent set of keybindings between i3 and Emacs]]
- [[https://sqrtminusone.xyz/posts/2021-09-07-emms/][My EMMS and elfeed setup]]
- [[https://sqrtminusone.xyz/posts/2021-05-01-org-python/][Replacing Jupyter Notebook with Org Mode]]
- [[https://sqrtminusone.xyz/posts/2021-02-27-gmail/][Multiple Gmail accounts & labels with Emacs]]
* Some statistics
[[https://sqrtminusone.xyz/stats/all.png]]
[[https://sqrtminusone.xyz/stats/emacs-vim.png]]
[[https://sqrtminusone.xyz/stats/literate-config.png]]
* Misc
** Notes
- =M-u C-c C-v t= to tangle a particular block
- =M-u M-u C-c C-v t= to tangle a particular file
- =C-c C-v d= to demarcate a block
Uses yadm's =post_alt= hook to create symlinks
** Encrypted files
#+begin_src text :tangle ~/.config/yadm/encrypt
Mail/thexcloud/.credentials.gmailieer.json
Mail/progin6304/.credentials.gmailieer.json
.emacs.d/private.org
.emacs.d/private.el
.emacs.d/.trello/sqrtminusone.el
#+end_src