diff --git a/config.json b/config.json index a17d3df..5e3732f 100644 --- a/config.json +++ b/config.json @@ -1,115 +1,166 @@ { - "template": { - "htop": { - "link": { "from": "shared/htop", "to": "~/.config/htop" } + "template": { + "htop": { + "link": { + "from": "shared/htop", + "to": "~/.config/htop" + } + }, + "bin": { + "link": { + "from": "shared/bin", + "to": "~/bin" + } + }, + "vim": { + "link": { + "from": "shared/vim", + "to": "~/.vimrc" + }, + "-post-link": "curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim && vim -es -u ~/.vimrc -i NONE -c 'PlugInstall' -c 'qa'" + }, + "nvim": { + "link": { + "from": "shared/nvim", + "to": "~/.config/nvim/init.lua" + }, + "post-link": "(grep -q 'alias vim=nvim' ~/.zshrc || echo 'alias vim=nvim' >> ~/.zshrc) || true" + }, + "zsh": { + "link": { + "from": "shared/zsh_root", + "to": "~/.zshrc" + } + }, + "zsh_config": { + "link": { + "from": "shared/zsh_config", + "to": "~/.config/zsh" + } + }, + "tmux": { + "link": { + "from": "shared/tmux", + "to": "~/.tmux.conf" + } + }, + "git": { + "link": { + "from": "shared/git", + "to": "~/.gitconfig" + } + }, + "wezterm": { + "link": { + "from": "shared/wezterm", + "to": "~/.wezterm.lua" + } + }, + "alacritty": { + "link": { + "from": "shared/alacritty", + "to": "~/.alacritty.toml" + } + }, + "ghostty": { + "link": { + "from": "shared/ghostty", + "to": "~/.config/ghostty" + } + } }, - "bin": { - "link": { "from": "shared/bin", "to": "~/bin" } - }, - "vim": { - "link": { "from": "shared/vim", "to": "~/.vimrc" }, - "-post-link": "curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim && vim -es -u ~/.vimrc -i NONE -c 'PlugInstall' -c 'qa'" - }, - "nvim": { - "link": { "from": "shared/nvim", "to": "~/.config/nvim/init.lua" }, - "post-link": "(grep -q 'alias vim=nvim' ~/.zshrc || echo 'alias vim=nvim' >> ~/.zshrc) || true" - }, - "zsh": { - "link": { "from": "shared/zsh/zshrc_root", "to": "~/.zshrc" }, - }, - "zsh_config": { - "link": { "from": "shared/zsh/zsh", "to": "~/.config/zsh" }, - }, - "tmux": { - "link": { "from": "shared/tmux", "to": "~/.tmux.conf" } - }, - "git": { - "link": { "from": "shared/git", "to": "~/.gitconfig" } - }, - "wezterm": { - "link": { "from": "shared/wezterm", "to": "~/.wezterm.lua" } - }, - "alacritty": { - "link": { "from": "shared/alacritty", "to": "~/.alacritty.toml" } - }, - "ghostty": { - "link": { "from": "shared/ghostty", "to": "~/.config/ghostty" } + "environments": { + "macos": [ + "zsh", + "zsh_config", + { + "package": "bin", + "link": { + "from": "macos/bin", + "to": "~/bin" + } + }, + "tmux", + "nvim", + "git", + "ghostty", + "alacritty", + { + "package": "karabiner", + "link": { + "from": "macos/karabiner", + "to": "~/.config/karabiner" + } + }, + { + "package": "linearmouse", + "link": { + "from": "macos/linearmouse", + "to": "~/.config/linearmouse" + } + }, + { + "package": "rectangle", + "link-comment": "Needs manual import from config/macos/linearmouse" + } + ], + "linux-vm": [ + "zsh_config", + { + "package": "zsh", + "install": "sudo apt install -y zsh", + "post-link": "./scripts/linux-setup_zsh.sh" + }, + { + "package": "tmux", + "link": { + "from": "linux-vm/tmux", + "to": "~/.tmux.conf" + }, + "install": "sudo apt install -y tmux" + }, + { + "package": "nvim", + "install": "bash -c 'wget -O nvim.deb https://gitea.tomastm.com/tomas.mirchev/neovim/releases/download/v0.10.0/nvim-linux-$(dpkg --print-architecture).deb && sudo dpkg -i nvim.deb && rm nvim.deb'" + }, + { + "package": "git", + "install": "sudo apt install -y git" + }, + { + "package": "htop", + "install": "sudo apt install -y htop" + }, + "bin" + ], + "linux-dev": [ + "zsh_config", + { + "package": "zsh", + "install": "sudo apt install -y zsh", + "post-link": "./scripts/linux-setup_zsh.sh" + }, + { + "package": "tmux", + "install": "sudo apt install -y tmux" + }, + { + "package": "nvim", + "ignore-template": true, + "link": { + "from": "linux-dev/nvim", + "to": "~/.config/nvim" + }, + "post-link": "nvim --headless '+Lazy! restore' '+MasonUpdate' '+TSUpdate' +qa && (grep -q 'alias vim=nvim' ~/.zshrc || echo 'alias vim=nvim' >> ~/.zshrc) || true" + }, + { + "package": "git", + "install": "sudo apt install -y git" + }, + { + "package": "htop", + "install": "sudo apt install -y htop" + } + ] } - }, - "environments": { - "macos": [ - "zsh", - "zsh_config", - "bin", - "tmux", - "nvim", - "git", - "ghostty", - "alacritty", - { - "package": "karabiner", - "link": { "from": "macos/karabiner", "to": "~/.config/karabiner" } - }, - { - "package": "linearmouse", - "link": { "from": "macos/linearmouse", "to": "~/.config/linearmouse" } - }, - { - "package": "rectangle", - "link-comment": "Needs manual import from config/macos/linearmouse" - } - ], - "linux-vm": [ - "zsh_config", - { - "package": "zsh", - "install": "sudo apt install -y zsh", - "post-link": "./scripts/linux-setup_zsh.sh" - }, - { - "package": "tmux", - "link": { "from": "linux-vm/tmux", "to": "~/.tmux.conf" }, - "install": "sudo apt install -y tmux" - }, - { - "package": "nvim", - "install": "bash -c 'wget -O nvim.deb https://gitea.tomastm.com/tomas.mirchev/neovim/releases/download/v0.10.0/nvim-linux-$(dpkg --print-architecture).deb && sudo dpkg -i nvim.deb && rm nvim.deb'" - }, - { - "package": "git", - "install": "sudo apt install -y git" - }, - { - "package": "htop", - "install": "sudo apt install -y htop" - }, - "bin" - ], - "linux-dev": [ - "zsh_config", - { - "package": "zsh", - "install": "sudo apt install -y zsh", - "post-link": "./scripts/linux-setup_zsh.sh" - }, - { - "package": "tmux", - "install": "sudo apt install -y tmux" - }, - { - "package": "nvim", - "ignore-template": true, - "link": { "from": "linux-dev/nvim", "to": "~/.config/nvim" }, - "post-link": "nvim --headless '+Lazy! restore' '+MasonUpdate' '+TSUpdate' +qa && (grep -q 'alias vim=nvim' ~/.zshrc || echo 'alias vim=nvim' >> ~/.zshrc) || true" - }, - { - "package": "git", - "install": "sudo apt install -y git" - }, - { - "package": "htop", - "install": "sudo apt install -y htop" - } - ] - } } diff --git a/config/shared/zsh/zsh_config/aliases b/config/shared/zsh_config/aliases similarity index 100% rename from config/shared/zsh/zsh_config/aliases rename to config/shared/zsh_config/aliases diff --git a/config/shared/zsh/zsh_config/keybindings b/config/shared/zsh_config/keybindings similarity index 100% rename from config/shared/zsh/zsh_config/keybindings rename to config/shared/zsh_config/keybindings diff --git a/config/shared/zsh/zsh_config/prompt b/config/shared/zsh_config/prompt similarity index 100% rename from config/shared/zsh/zsh_config/prompt rename to config/shared/zsh_config/prompt diff --git a/config/shared/zsh/zsh_config/zshrc b/config/shared/zsh_config/zshrc similarity index 100% rename from config/shared/zsh/zsh_config/zshrc rename to config/shared/zsh_config/zshrc