Files
dotfiles/mise.toml
T

222 lines
14 KiB
TOML

[vars]
USER_FULLNAME = "Steve Beaulac"
USER_EMAIL = "steve@beaulac.me"
DOTFILES_DIR = "{{config_root}}"
SECOND_BRAIN = "~/Documents/sjb-brain"
THEMES_STATE_DIR = ".local/state/omarchy/current/theme"
[env]
DOTFILES_DIR = "{{config_root}}"
[settings]
dotfiles.root = "{{config_root}}"
dotfiles.default_mode = "symlink-each"
[dotfiles]
"~/.config/btop" = "config/btop"
"~/.config/emacs" = "config/emacs"
"~/.config/environment.d/generic.conf" = { source = "templates/environments.tmpl", mode = "template", template = "tera" }
"~/.gnupg" = "config/gnupg"
"~/.config/fish" = "config/fish" # check if we really need the fisher plugins
"~/.config/gdb" = "config/gdb"
"~/.config/ghostty" = "config/ghostty"
"~/.config/git" = "config/git"
"~/.config/git/local" = { source = "templates/git-local.tmpl", mode = "template", template = "tera" }
"~/.config/goose" = "config/goose"
"~/.config/herdr" = "config/herdr"
"~/.config/ostt" = "config/ostt"
"~/.config/fabric" = "config/fabric"
"~/.config/fontconfig" = { source = "config/fontconfig", mode = "copy" }
"~/.config/foot" = "config/foot"
"~/.config/hypr/sjb" = "config/hypr/sjb"
"~/.config/hypr/hypridle.conf" = { source = "config/hypr/hypridle.conf", mode = "symlink" }
"~/.config/hypr/hyprlock.conf" = { source = "config/hypr/hyprlock.conf", mode = "symlink" }
"~/.config/hypr/hyprpm.conf" = { source = "config/hypr/hyprpm.conf", mode = "symlink" }
"~/.config/hypr/hyprland.lua/sjb" = { block = 'require("sjb.init")' }
"~/.config/jj" = "config/jj"
"~/.config/jj/conf.d/local.toml" = { source = "templates/git-local.tmpl", mode = "template", template = "tera" }
"~/.config/kitty" = "config/kitty"
"~/.config/mini.nvim" = "config/mini.nvim"
"~/.config/mise/config.toml" = { source = "config/mise/config.toml", mode = "symlink" }
"~/.config/nvim" = "config/nvim"
"~/.config/opencode" = "config/opencode"
"~/.agents" = { source = "config/agents", mode = "symlink-each" }
"~/.config/opencode/agents" = { source = "config/agents/prompts", mode = "symlink" }
"~/.pi" = "config/pi"
"~/.pi-lens/config.json" = { source = "config/pi-lens/config.json", mode = "symlink" }
"~/.pi/agent/AGENTS.md" = { source = "config/agents/AGENTS.md", mode = "symlink" }
"~/.config/rofi" = "config/rofi"
"~/.config/rio" = "config/rio"
"~/.ssh" = "config/ssh"
"~/.config/systemd" = { source = "config/systemd", mode = "copy" }
"~/.config/environment.d" = "config/environment.d"
"~/.config/tmux" = "config/tmux"
"~/.config/uwsm" = "config/uwsm"
"~/.config/worktrunk" = "config/worktrunk"
"~/.config/workmux/config.yaml" = { source = "config/workmux/config.yaml", mode = "symlink" }
"~/.config/chromium-flags.conf" = { source = "config/chromium-flags.conf", mode = "symlink" }
"~/.profile" = { source = "config/bash/profile", mode = "symlink" }
"~/.bash_aliases" = { source = "config/bash/aliases", mode = "symlink" }
"~/.config/zero" = "config/zero"
"~/.sandboxec" = "config/sandboxec"
"~/.local/share/fonts/" = { source = "fonts", mode = "copy" }
# Desktop files
"~/.local/share/applications" = { source = "desktop", mode = "symlink-each" }
# scripts.
"~/.local/bin/hyprland-activeworkspace" = { source = "script/hyprland-activeworkspace", mode = "symlink" }
"~/.local/bin/hyprland-keybindings" = { source = "script/hyprland-keybindings", mode = "symlink" }
"~/.local/bin/hyprland-fetch-client" = { source = "script/hyprland-fetch-client", mode = "symlink" }
"~/.local/bin/hyprland-focus-client" = { source = "script/hyprland-focus-client", mode = "symlink" }
"~/.local/bin/terminal-launcher" = { source = "script/terminal-launcher", mode = "symlink" }
"~/.local/bin/screen-recorder" = { source = "script/screen-recorder", mode = "symlink" }
"~/.local/bin/battery" = { source = "script/battery", mode = "symlink" }
# "~/.config/bin/ec" = { source = "script/ec", mode = "symlink" }
"~/.local/bin/tmux-open" = { source = "script/tmux-open", mode = "symlink" }
"~/.local/bin/active-workspace" = { source = "script/active-workspace", mode = "symlink" }
"~/.local/bin/avr-flash" = { source = "script/avr-flash", mode = "symlink" }
"~/.local/bin/dfu-flash" = { source = "script/dfu-flash", mode = "symlink" }
"~/.local/bin/git-bare-clone" = { source = "script/git-bare-clone", mode = "symlink" }
"~/.local/bin/git-churn" = { source = "script/git-churn", mode = "symlink" }
"~/.local/bin/hyprland-tmux-session" = { source = "script/hyprland-tmux-session", mode = "symlink" }
"~/.local/bin/hyprland-toggle-monitor" = { source = "script/hyprland-toggle-monitor", mode = "symlink" }
"~/.local/bin/ci" = { source = "script/ci", mode = "symlink" }
"~/.local/bin/rofi-pass" = { source = "script/rofi-pass", mode = "symlink" }
"~/.local/bin/sharehome" = { source = "script/sharehome", mode = "symlink" }
"~/.local/bin/sjb-orgmode-installer" = { source = "script/sjb-orgmode-installer", mode = "symlink" }
"~/.local/bin/sjb-script-installer" = { source = "script/sjb-script-installer", mode = "symlink" }
"~/.local/bin/sjb-update-config" = { source = "script/sjb-update-config", mode = "symlink" }
"~/.local/bin/sjb-webapp-installer" = { source = "script/sjb-webapp-installer", mode = "symlink" }
"~/.local/bin/sysinfo" = { source = "script/sysinfo", mode = "symlink" }
"~/.local/bin/s" = { source = "script/s", mode = "symlink" }
"~/.local/bin/t" = { source = "script/t", mode = "symlink" }
"~/.local/bin/n" = { source = "script/n", mode = "symlink" }
"~/.local/bin/ykswap" = { source = "script/ykswap", mode = "symlink" }
"~/.local/bin/rherdr" = { source = "script/rherdr", mode = "symlink" }
"~/.local/bin/rtmux" = { source = "script/rtmux", mode = "symlink" }
"~/.local/bin/bing-wallpaper" = { source = "script/bing-wallpaper", mode = "symlink" }
"~/.local/bin/set-wallpaper.sh" = { source = "script/set-wallpaper.sh", mode = "symlink" }
"~/.local/bin/wallpaper-fetcher" = { source = "bin/wallpaper-fetcher", mode = "symlink" }
"~/.local/bin/strata" = { source = "bin/strata", mode = "symlink" }
"~/.config/strata/settings.toml" = { source = "config/strata/settings.toml", mode = "symlink" }
"~/.local/bin/omarchy-cmd-missing" = { source = "script/omarchy-cmd-missing", mode = "symlink" }
"~/.local/bin/omarchy-cmd-present" = { source = "script/omarchy-cmd-present", mode = "symlink" }
"~/.local/bin/omarchy-hook" = { source = "script/omarchy-hook", mode = "symlink" }
"~/.local/bin/omarchy-restart-btop" = { source = "script/omarchy-restart-btop", mode = "symlink" }
"~/.local/bin/omarchy-restart-hyprctl" = { source = "script/omarchy-restart-hyprctl", mode = "symlink" }
"~/.local/bin/omarchy-restart-hypridle" = { source = "script/omarchy-restart-hypridle", mode = "symlink" }
"~/.local/bin/omarchy-restart-mako" = { source = "script/omarchy-restart-mako", mode = "symlink" }
"~/.local/bin/omarchy-restart-tmux" = { source = "script/omarchy-restart-tmux", mode = "symlink" }
"~/.local/bin/omarchy-theme-bg-next" = { source = "script/omarchy-theme-bg-next", mode = "symlink" }
"~/.local/bin/omarchy-theme-bg-set" = { source = "script/omarchy-theme-bg-set", mode = "symlink" }
"~/.local/bin/omarchy-theme-colors-from-alacritty" = { source = "script/omarchy-theme-colors-from-alacritty", mode = "symlink" }
"~/.local/bin/omarchy-theme-color" = { source = "script/omarchy-theme-color", mode = "symlink" }
"~/.local/bin/omarchy-theme-current" = { source = "script/omarchy-theme-current", mode = "symlink" }
"~/.local/bin/omarchy-theme-install" = { source = "script/omarchy-theme-install", mode = "symlink" }
"~/.local/bin/omarchy-theme-list" = { source = "script/omarchy-theme-list", mode = "symlink" }
"~/.local/bin/omarchy-theme-refresh" = { source = "script/omarchy-theme-refresh", mode = "symlink" }
"~/.local/bin/omarchy-theme-remove" = { source = "script/omarchy-theme-remove", mode = "symlink" }
"~/.local/bin/omarchy-theme-set" = { source = "script/omarchy-theme-set", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-browser" = { source = "script/omarchy-theme-set-browser", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-foot" = { source = "script/omarchy-theme-set-foot", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-gnome" = { source = "script/omarchy-theme-set-gnome", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-keyboard" = { source = "script/omarchy-theme-set-keyboard", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-keyboard-asus-rog" = { source = "script/omarchy-theme-set-keyboard-asus-rog", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-keyboard-f16" = { source = "script/omarchy-theme-set-keyboard-f16", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-obsidian" = { source = "script/omarchy-theme-set-obsidian", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-templates" = { source = "script/omarchy-theme-set-templates", mode = "symlink" }
"~/.local/bin/omarchy-theme-set-vscode" = { source = "script/omarchy-theme-set-vscode", mode = "symlink" }
"~/.local/bin/omarchy-theme-update" = { source = "script/omarchy-theme-update", mode = "symlink" }
[bootstrap.user]
login_shell = "/usr/bin/fish"
[bootstrap.packages]
"pacman:zoxide" = "latest"
"pacman:git" = "latest"
"pacman:tmux" = "latest"
"pacman:fzf" = "latest"
"pacman:neovim" = "latest"
"pacman:harper" = "latest"
"pacman:tree-sitter-cli" = "latest"
[tasks.setup_theme]
run = [
'mkdir -p ~/.config/strata/themes && ln -snf ~/.local/state/omarchy/current/theme/strata.toml ~/.config/strata/themes/omarchy.toml',
'mkdir -p ~/.config/btop/themes && ln -snf ~/.local/state/omarchy/current/theme/btop.theme ~/.config/btop/themes/current.theme',
'mkdir -p ~/.config/ghostty && ln -snf ~/.local/state/omarchy/current/theme/ghostty.conf ~/.config/ghostty/theme',
'mkdir -p ~/.config/hypr && ln -snf ~/.local/state/omarchy/current/theme/hyprland.lua ~/.config/hypr/theme.lua',
'mkdir -p ~/.config/nvim/plugin && ln -snf ~/.local/state/omarchy/current/theme/neovim-vimpack.lua ~/.config/nvim/plugin/theme.lua',
'mkdir -p ~/.config/mako && ln -snf ~/.local/state/omarchy/current/theme/mako.ini ~/.config/mako/config',
'mkdir -p ~/.config/rofi && ln -snf ~/.local/state/omarchy/current/theme/rofi.rasi ~/.config/rofi/theme.rasi',
'mkdir -p ~/.config/rio/themes && ln -snf ~/.local/state/omarchy/current/theme/rio.toml ~/.config/rio/themes/omarchy.toml',
'mkdir -p ~/.config/tmux && ln -snf ~/.local/state/omarchy/current/theme/tmux ~/.config/tmux/theme',
]
[tasks.shells]
description = "Script to setup some cli environment"
run = [
'fish -c "fisher install franciscolourenco/done"',
'test -d ~/.config/tmux/plugins/tpm || git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm',
'tmux run-shell ~/.config/tmux/plugins/tpm/bindings/install_plugins',
'fc-cache',
]
[bootstrap.hooks.pre-packages]
run = "test -d ~/.local/state/omarchy/current/theme || rsync -av config/omarchy/default/ ~/.local/state/omarchy/current/theme/ --mkpath"
[tasks.desktop]
description = "setup gui"
run = [
'xdg-settings set default-web-browser firefox.desktop',
'gsettings set org.gnome.desktop.interface gtk-enable-primary-paste true',
'id -nG sjb | grep -qw "input" && systemctl --user enable ydotool',
'systemctl --user enable syncthing',
'systemctl --user enable mako.service',
'systemctl --user enable hypridle.service',
'systemctl --user enable awww-daemon.service',
'systemctl --user enable gnome-keyring-daemon.service',
'systemctl --user enable hyprpolkitagent.service',
'systemctl --user enable wallpaper.timer',
'systemctl --user enable foot-server.service',
'xdg-mime default obsidian.desktop x-scheme-handler/obsidian',
'xdg-settings set default-url-scheme-handler obsidian obsidian.desktop',
]
[tasks.theme]
description = 'configure theme'
run = [
'gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark"',
'gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"',
'gsettings set org.gnome.desktop.interface icon-theme "Yaru-blue"',
'omarchy-theme-set "tokyo-night"',
]
[tasks.webapps]
description = 'create all web application'
run = [
'sjb-webapp-installer "WhatsApp" https://web.whatsapp.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/whatsapp.png',
'sjb-webapp-installer "Google Photos" https://photos.google.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/google-photos.png',
'sjb-webapp-installer "Google Contacts" https://contacts.google.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/google-contacts.png',
'sjb-webapp-installer "Google Messages" https://messages.google.com/web/conversations https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/google-messages.png',
'sjb-webapp-installer "ChatGPT" https://chatgpt.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/chatgpt.png',
'sjb-webapp-installer "YouTube" https://youtube.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/youtube.png',
'sjb-webapp-installer "GitHub" https://github.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/github-light.png',
'sjb-webapp-installer "Figma" https://figma.com/ https://www.veryicon.com/download/png/application/app-icon-7/figma-1?s=256',
'sjb-webapp-installer "Discord" https://discord.com/channels/@me https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/discord.png',
'sjb-webapp-installer "Twitch" https://twitch.tv/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/twitch.png',
'sjb-webapp-installer "Team" https://teams.microsoft.com/v2/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/microsoft-teams.svg',
'sjb-webapp-installer "Outlook" https://outlook.office.com/mail/inbox/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/microsoft-outlook.svg',
'sjb-webapp-installer "Slack" https://app.slack.com/client/T09M8T3BB1N/C09KZ5N0ZK9 https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/slack.svg',
'sjb-webapp-installer "Copilot" https://m365.cloud.microsoft https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/microsoft-copilot.svg',
'sjb-webapp-installer "X" https://x.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/x.png',
]
[tasks.bootstrap]
depends = ['shells', 'desktop', 'theme', 'webapps']