Files
dotfiles/config.yaml

135 lines
2.7 KiB
YAML

backup:
enabled: true
format: .backup.{timestamp}
keep_backups: 5
current_machine: laptop
encryption:
enabled: false
patterns:
- sensitive/**
- machines/*/secrets/**
- '**/*_secret*'
- '**/*secret*'
- '**/*.key'
- '**/*.pem'
- '**/*.p12'
- '**/*.pfx'
- '**/passwords.*'
- '**/credentials.*'
- '**/.env'
- '**/.env.*'
- '**/authinfo'
- '**/netrc'
- '**/*_rsa'
- '**/*_ed25519'
- '**/*_ecdsa'
- '**/id_rsa'
- '**/id_ed25519'
- '**/id_ecdsa'
git:
auto_commit: true
commit_message_template: Update dotfiles from {machine} - {timestamp}
excluded_files:
- '*.log'
- '*.tmp'
- .DS_Store
- Thumbs.db
- '*.backup.*'
- __pycache__/
- '*.pyc'
machine_variables:
desktop:
font_size: 12
terminal: gnome-terminal
window_manager: i3
laptop:
font_size: 10
power_management: true
terminal: alacritty
window_manager: i3
server:
font_size: 8
headless: true
terminal: tmux
machines:
desktop:
description: Desktop-Computer
hostname_patterns:
- desktop
- pc
- workstation
os_patterns:
- Linux
- Windows
laptop:
description: Laptop/Notebook
hostname_patterns:
- laptop
- notebook
- mobile
- p14s
os_patterns:
- Linux
- Darwin
- Windows
server:
description: Server-System
hostname_patterns:
- server
- srv
- vps
os_patterns:
- Linux
sync:
create_missing_dirs: true
dry_run: false
force_overwrite: false
interactive: true
templates:
git:
- description: Git-Konfiguration
destination: ~/.gitconfig
template: git/gitconfig.j2
- description: Git-Global-Ignore
destination: ~/.gitignore_global
template: git/gitignore_global
i3:
- description: i3-Konfiguration
destination: ~/.config/i3/config
machine_specific: true
template: i3/config.{machine}.j2
nvim:
- description: Neovim-Konfiguration
destination: ~/.config/nvim/init.lua
template: nvim/init.lua.j2
shell:
- description: Bash-Konfiguration
destination: ~/.bashrc
template: shell/bashrc.j2
- description: Zsh-Konfiguration
destination: ~/.zshrc
template: shell/zshrc.j2
- description: Shell-Profile
destination: ~/.profile
template: shell/profile.j2
ssh:
- description: SSH-Konfiguration
destination: ~/.ssh/config
encrypted: true
mode: '0600'
template: ssh/config.j2
tmux:
- description: Tmux-Konfiguration
destination: ~/.tmux.conf
template: tmux/tmux.conf.j2
vim:
- description: Vim-Konfiguration
destination: ~/.vimrc
template: vim/vimrc.j2
variables:
browser: firefox
editor: vim
git_email: your.email@example.com
git_name: Your Name
terminal: alacritty