WIP: Switch to NixOS #5

Draft
FunctionalHacker wants to merge 1349 commits from nix into main
14 changed files with 153 additions and 191 deletions
Showing only changes of commit f5f4c5c267 - Show all commits

View file

@ -19,12 +19,18 @@ dotfiles:
d_mpv: d_mpv:
dst: ~/.config/mpv dst: ~/.config/mpv
src: .config/mpv src: .config/mpv
d_neomutt:
dst: ~/.config/neomutt
src: .config/neomutt
d_goimapnotify:
dst: ~/.config/imapnotify
src: .config/imapnotify
f_init.vim: f_init.vim:
dst: ~/.config/nvim/init.vim dst: ~/.config/nvim/init.vim
src: .config/nvim/init.vim src: .config/nvim/init.vim
d_nvim_config: d_nvim_config:
actions: actions:
- vim-plug - vim-plug
dst: ~/.config/nvim/conf.d dst: ~/.config/nvim/conf.d
src: .config/nvim/conf.d src: .config/nvim/conf.d
f_coc-settings.json: f_coc-settings.json:
@ -45,6 +51,9 @@ dotfiles:
f_abcde.conf: f_abcde.conf:
dst: ~/.abcde.conf dst: ~/.abcde.conf
src: .abcde.conf src: .abcde.conf
f_mbsyncrc:
dst: ~/.mbsyncrc
src: .mbsyncrc
f_alacritty.yml: f_alacritty.yml:
dst: ~/.config/alacritty/alacritty.yml dst: ~/.config/alacritty/alacritty.yml
src: .config/alacritty/alacritty.yml src: .config/alacritty/alacritty.yml
@ -114,9 +123,6 @@ dotfiles:
f_tmux.conf: f_tmux.conf:
dst: ~/.tmux.conf dst: ~/.tmux.conf
src: .tmux.conf src: .tmux.conf
f_yay_config.json:
dst: ~/.config/yay/config.json
src: .config/yay/config.json
f_youtube-dl_config: f_youtube-dl_config:
dst: ~/.config/youtube-dl/config dst: ~/.config/youtube-dl/config
src: .config/youtube-dl/config src: .config/youtube-dl/config
@ -147,87 +153,98 @@ dotfiles:
f_hushlogin: f_hushlogin:
src: .hushlogin src: .hushlogin
dst: ~/.hushlogin dst: ~/.hushlogin
f_paru.conf:
src: .config/paru/paru.conf
dst: ~/.config/paru/paru.conf
profiles: profiles:
Base: base:
dotfiles: dotfiles:
- d_systemd - d_systemd
Media: terminal:
dotfiles: dotfiles:
- f_beets_config - f_nvimpager
- f_beets_whitelist - f_hushlogin
- f_abcde.conf - f_ripgrep_ignore
- d_mpv - f_ranger_commands.py
- f_youtube-dl_config - f_rtv.cfg
- f_mpd.conf - f_mailcap
- f_ncmpcpp_bindings - d_zsh
- f_ncmpcpp.conf - f_zshrc
- f_libra_config - f_tmux.conf
- f_mpdscribble.conf - f_gitconfig
- f_mpdris2.conf - f_ranger.conf
Sway: - f_ssh.conf
- f_authorized_keys
- d_scripts
- d_nvim_config
- f_init.vim
- f_coc-settings.json
- f_gitconfig
- f_alacritty.yml
email:
dotfiles: dotfiles:
- d_sway - d_neomutt
- d_waybar - d_goimapnotify
- d_wofi - f_mbsyncrc
- f_mako_config media:
- f_redshift.conf dotfiles:
- f_zathurarc - f_beets_config
- f_mimeo_associations.txt - f_beets_whitelist
- f_tdesktop_lang.strings - f_abcde.conf
- f_fonts.conf - d_mpv
- f_zprofile - f_youtube-dl_config
- f_mpd.conf
- f_ncmpcpp_bindings
- f_ncmpcpp.conf
- f_libra_config
- f_mpdscribble.conf
- f_mpdris2.conf
sway:
dotfiles:
- d_sway
- d_waybar
- d_wofi
- f_mako_config
- f_redshift.conf
- f_zathurarc
- f_mimeo_associations.txt
- f_tdesktop_lang.strings
- f_fonts.conf
- f_zprofile
Pacman: Pacman:
dotfiles: dotfiles:
- f_yay_config.json - f_makepkg.conf
- f_makepkg.conf - f_paru.conf
Mirkwood: Mirkwood:
include: include:
- Base - base
- Terminal - terminal
- Media - email
- Sway - media
- Pacman - sway
- Pacman
dotfiles:
- f_paru.conf
Moria: Moria:
include: include:
- Terminal - terminal
- Media - media
- Pacman - Pacman
Gondor: Gondor:
include: include:
- Terminal - terminal
- Pacman - Pacman
mko-laptop: mko-laptop:
include: include:
- Terminal - terminal
Terminal:
dotfiles:
- f_nvimpager
- f_hushlogin
- f_ripgrep_ignore
- f_ranger_commands.py
- f_rtv.cfg
- f_mailcap
- d_zsh
- f_zshrc
- f_tmux.conf
- f_gitconfig
- f_ranger.conf
- f_ssh.conf
- f_authorized_keys
- d_scripts
- d_nvim_config
- f_init.vim
- f_coc-settings.json
- f_gitconfig
- f_alacritty.yml
AnittaPC: AnittaPC:
include: include:
- Terminal - terminal
- Pacman - Pacman
TakamakiPC: TakamakiPC:
include: include:
- Terminal - terminal
- Pacman - Pacman
localhost: localhost:
include: include:
- Terminal - terminal

1
config.yaml Symbolic link
View file

@ -0,0 +1 @@
config-home.yaml

View file

@ -0,0 +1,13 @@
{
"host": "imap.migadu.com",
"port": 993,
"tls": true,
"tlsOptions": {
"rejectUnauthorized": true
},
"username": "admin@korhonen.cc",
"password": "{{@@ env['PASS_EMAIL_ADMIN'] @@}}",
"onNewMail": "mbsync admin@korhonen.cc",
"onNewMailPost": "",
"boxes": [ "INBOX" ]
}

View file

@ -0,0 +1,13 @@
{
"host": "imap.migadu.com",
"port": 993,
"tls": true,
"tlsOptions": {
"rejectUnauthorized": true
},
"username": "marko@korhonen.cc",
"password": "{{@@ env['PASS_EMAIL_MARKO'] @@}}",
"onNewMail": "mbsync marko@korhonen.cc",
"onNewMailPost": "",
"boxes": [ "INBOX" ]
}

View file

@ -1,6 +1,6 @@
# vim: filetype=muttrc # vim: filetype=neomuttrc
set my_email = "marko.korhonen@reekynet.com" set my_email = "admin@korhonen.cc"
set from = $my_email set from = $my_email
set sendmail = "/usr/bin/msmtp -a $my_email" set sendmail = "/usr/bin/msmtp -a $my_email"
set realname = "Marko Korhonen" set realname = "Marko Korhonen"

View file

@ -1,14 +0,0 @@
# vim: filetype=muttrc
set my_email = "admin@reekynet.com"
set from = $my_email
set sendmail = "/usr/bin/msmtp -a $my_email"
set realname = "ReekyNET Admin"
set status_format = "-%r-Mutt: $my_email %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---"
set mbox_type = Maildir
set folder = "~/.mail/$my_email"
set mbox = "+INBOX"
set record = "+INBOX"
set postponed = "+Drafts"
set spoolfile = "+INBOX"
mailboxes = +INBOX

View file

@ -1,8 +1,8 @@
# vim: filetype=muttrc # vim: filetype=neomuttrc
set my_email = "marko.korhonen@metropolia.fi" set my_email = "marko@korhonen.cc"
set from = $my_email set from = $my_email
set sendmail = "/usr/bin/msmtp -a $my_email" set sendmail = "/usr/bin/msmtp -a $my_email"
set realname = "Marko Korhonen" set realname = "Marko Korhonen"
set status_format = "-%r-Mutt: $my_email %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---" set status_format = "-%r-Mutt: $my_email %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---"
set mbox_type = Maildir set mbox_type = Maildir

View file

@ -1,15 +0,0 @@
# vim: filetype=muttrc
# Incoming mail from maildir
set my_email = "reekymarko@reekynet.com"
set from = $my_email
set sendmail = "/usr/bin/msmtp -a $my_email"
set realname = "Marko Korhonen"
set status_format = "-%r-Mutt: $my_email %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---"
set mbox_type = Maildir
set folder = ~/.mail/$my_email
set mbox = +INBOX
set record = +Sent
set postponed = +Drafts
set spoolfile = +INBOX
mailboxes = +INBOX

View file

@ -1,4 +1,4 @@
# vim: filetype=muttrc # vim: filetype=neomuttrc
set sendmail = "/usr/bin/msmtp" set sendmail = "/usr/bin/msmtp"
set mbox_type = Maildir set mbox_type = Maildir
@ -7,9 +7,7 @@ set spoolfile = +Personal/INBOX
source ~/.config/neomutt/appearance source ~/.config/neomutt/appearance
source ~/.config/neomutt/sidebar source ~/.config/neomutt/sidebar
source ~/.config/neomutt/accounts/reekymarko@reekynet.com source ~/.config/neomutt/accounts/marko@korhonen.cc
macro index <f2> '<sync-mailbox><enter-command>source ~/.config/neomutt/accounts/reekymarko@reekynet.com<enter><change-folder>!<enter>' macro index <f2> '<sync-mailbox><enter-command>source ~/.config/neomutt/accounts/marko@korhonen.cc<enter><change-folder>!<enter>'
macro index <f3> '<sync-mailbox><enter-command>source ~/.config/neomutt/accounts/marko.korhonen@reekynet.com<enter><change-folder>!<enter>' macro index <f3> '<sync-mailbox><enter-command>source ~/.config/neomutt/accounts/admin@korhonen.cc<enter><change-folder>!<enter>'
macro index <f4> '<sync-mailbox><enter-command>source ~/.config/neomutt/accounts/admin@reekynet.com<enter><change-folder>!<enter>'
macro index <f5> '<sync-mailbox><enter-command>source ~/.config/neomutt/accounts/marko.korhonen@metropolia.fi<enter><change-folder>!<enter>'

View file

@ -1,4 +1,4 @@
# vim: filetype=muttrc # vim: filetype=neomuttrc
set sidebar_visible = yes set sidebar_visible = yes
set sidebar_indent_string = ' ' set sidebar_indent_string = ' '

View file

@ -27,8 +27,8 @@ export FZF_CTRL_T_OPTS='--preview "/usr/bin/cat {} | nvimpager -c "'
# use lesspipe with less # use lesspipe with less
export LESSOPEN="|lesspipe.sh %s" export LESSOPEN="|lesspipe.sh %s"
# dotdrop repository location # dotfile repository location
export DOTREPO="$HOME/Git/dotfiles" export DOTREPO="$HOME/git/dotfiles"
# nvim ftw! # nvim ftw!
export EDITOR=nvim export EDITOR=nvim

View file

@ -117,8 +117,8 @@ cpufreq() { watch -n 1 eval "cat /proc/cpuinfo | grep MHz" }
# dotdrop # dotdrop
updatesecrets() { bash $DOTREPO/secrets/secrets.sh; chmod 600 $DOTREPO/secrets/secrets } updatesecrets() { bash $DOTREPO/secrets/secrets.sh; chmod 600 $DOTREPO/secrets/secrets }
dotdrop() { source $DOTREPO/secrets/secrets && $DOTREPO/dotdrop/dotdrop.sh --cfg=$DOTREPO/config-home.yaml $@ } dotdrop() { source $DOTREPO/secrets/secrets && $DOTREPO/dotdrop.sh --cfg=$DOTREPO/config-home.yaml $@ }
sdotdrop() { source $DOTREPO/secrets/secrets && sudo -E $DOTREPO/dotdrop/dotdrop.sh --cfg=$DOTREPO/config-root.yaml $@ } sdotdrop() { source $DOTREPO/secrets/secrets && sudo -E $DOTREPO/dotdrop.sh --cfg=$DOTREPO/config-root.yaml $@ }
compdef _dotdrop-completion.zsh sdotdrop compdef _dotdrop-completion.zsh sdotdrop
alias dotgit='git -C $DOTREPO' alias dotgit='git -C $DOTREPO'
dotsync() { cd $DOTREPO && gpull && ga && gc && gpush && cd $OLDPWD } dotsync() { cd $DOTREPO && gpull && ga && gc && gpush && cd $OLDPWD }
@ -156,7 +156,7 @@ update() {
} }
docker-update() { docker-update() {
for dir in $HOME/Git/dotfiles/docker/*; do for dir in $HOME/git/dotfiles/docker/*; do
cd $dir cd $dir
docker-compose pull docker-compose pull
docker-compose up -d docker-compose up -d

View file

@ -1,99 +1,48 @@
### reekymarko@reekynet.com ##################################### ### marko@korhonen.cc #####################################
IMAPAccount reekymarko@reekynet.com IMAPAccount marko@korhonen.cc
Host imap.migadu.com Host imap.migadu.com
User reekymarko@reekynet.com User marko@korhonen.cc
PassCmd "pass email/reekymarko@reekynet.com | head -n 1" Pass "{{@@ env['PASS_EMAIL_MARKO'] @@}}"
SSLType IMAPS SSLType IMAPS
Port 993 Port 993
CertificateFile /etc/ssl/certs/ca-certificates.crt CertificateFile /etc/ssl/certs/ca-certificates.crt
IMAPStore reekymarko@reekynet.com-remote IMAPStore marko@korhonen.cc-remote
Account reekymarko@reekynet.com Account marko@korhonen.cc
MaildirStore reekymarko@reekynet.com-local MaildirStore marko@korhonen.cc-local
Subfolders Verbatim Subfolders Verbatim
Path ~/.mail/reekymarko@reekynet.com/ Path ~/.mail/marko@korhonen.cc/
Inbox ~/.mail/reekymarko@reekynet.com/INBOX Inbox ~/.mail/marko@korhonen.cc/INBOX
Channel reekymarko@reekynet.com Channel marko@korhonen.cc
Master :reekymarko@reekynet.com-remote: Master :marko@korhonen.cc-remote:
Slave :reekymarko@reekynet.com-local: Slave :marko@korhonen.cc-local:
Create Both Create Both
Patterns * Patterns *
SyncState * SyncState *
################################################################# #################################################################
### marko.korhonen@reekynet.com ##################################### ### admin@korhonen.cc #####################################
IMAPAccount marko.korhonen@reekynet.com IMAPAccount admin@korhonen.cc
Host imap.migadu.com Host imap.migadu.com
User marko.korhonen@reekynet.com User admin@korhonen.cc
PassCmd "pass email/marko.korhonen@reekynet.com | head -n 1" Pass "{{@@ env['PASS_EMAIL_ADMIN'] @@}}"
SSLType IMAPS SSLType IMAPS
Port 993 Port 993
CertificateFile /etc/ssl/certs/ca-certificates.crt CertificateFile /etc/ssl/certs/ca-certificates.crt
IMAPStore marko.korhonen@reekynet.com-remote IMAPStore admin@korhonen.cc-remote
Account marko.korhonen@reekynet.com Account admin@korhonen.cc
MaildirStore marko.korhonen@reekynet.com-local MaildirStore admin@korhonen.cc-local
Subfolders Verbatim Subfolders Verbatim
Path ~/.mail/marko.korhonen@reekynet.com/ Path ~/.mail/admin@korhonen.cc/
Inbox ~/.mail/marko.korhonen@reekynet.com/INBOX Inbox ~/.mail/admin@korhonen.cc/INBOX
Channel marko.korhonen@reekynet.com Channel admin@korhonen.cc
Master :marko.korhonen@reekynet.com-remote: Master :admin@korhonen.cc-remote:
Slave :marko.korhonen@reekynet.com-local: Slave :admin@korhonen.cc-local:
Create Both
Patterns *
SyncState *
#################################################################
### admin@reekynet.com #####################################
IMAPAccount admin@reekynet.com
Host imap.migadu.com
User admin@reekynet.com
PassCmd "pass email/admin@reekynet.com | head -n 1"
SSLType IMAPS
Port 993
CertificateFile /etc/ssl/certs/ca-certificates.crt
IMAPStore admin@reekynet.com-remote
Account admin@reekynet.com
MaildirStore admin@reekynet.com-local
Subfolders Verbatim
Path ~/.mail/admin@reekynet.com/
Inbox ~/.mail/admin@reekynet.com/INBOX
Channel admin@reekynet.com
Master :admin@reekynet.com-remote:
Slave :admin@reekynet.com-local:
Create Both
Patterns *
SyncState *
#################################################################
### marko.korhonen@metropolia.fi #####################################
IMAPAccount marko.korhonen@metropolia.fi
Host imap.metropolia.fi
User markoak
PassCmd "pass email/marko.korhonen@metropolia.fi | head -n 1"
SSLType IMAPS
Port 993
CertificateFile /etc/ssl/certs/ca-certificates.crt
IMAPStore marko.korhonen@metropolia.fi-remote
Account marko.korhonen@metropolia.fi
MaildirStore marko.korhonen@metropolia.fi-local
Subfolders Verbatim
Path ~/.mail/marko.korhonen@metropolia.fi/
Inbox ~/.mail/marko.korhonen@metropolia.fi/INBOX
Channel marko.korhonen@metropolia.fi
Master :marko.korhonen@metropolia.fi-remote:
Slave :marko.korhonen@metropolia.fi-local:
Create Both Create Both
Patterns * Patterns *
SyncState * SyncState *

View file

@ -14,7 +14,7 @@ export PASS_IPMI="$PASS_IPMI"
export PASS_MQTT="$PASS_MQTT" export PASS_MQTT="$PASS_MQTT"
export PASS_EMAIL_MARKO="$PASS_EMAIL_MARKO" export PASS_EMAIL_MARKO="$PASS_EMAIL_MARKO"
export PASS_EMAIL_ADMIN="$PASS_EMAIL_MARKO" export PASS_EMAIL_ADMIN="$PASS_EMAIL_ADMIN"
export ME_FULLNAME="$ME_FULLNAME" export ME_FULLNAME="$ME_FULLNAME"
export ME_ADDRESS="$ME_ADDRESS" export ME_ADDRESS="$ME_ADDRESS"