143 lines
3.6 KiB
YAML
143 lines
3.6 KiB
YAML
binaries:
|
|
neovim:
|
|
version: "0.10.4"
|
|
source: "github:neovim/neovim"
|
|
asset-pattern: "nvim-{{os}}-{{arch}}.tar.gz"
|
|
platform-map:
|
|
"linux-amd64": { os: "linux", arch: "x86_64" }
|
|
"linux-arm64": { os: "linux", arch: "arm64" }
|
|
"macos-arm64": { os: "macos", arch: "arm64" }
|
|
dependencies: ["curl", "tar"]
|
|
install-script: |
|
|
if command -v nvim &> /dev/null && nvim --version | grep -q "{{version}}"; then
|
|
exit 0
|
|
fi
|
|
|
|
curl -Lo /tmp/nvim.tar.gz "{{downloadUrl}}"
|
|
rm -rf ~/.local/share/nvim
|
|
mkdir -p ~/.local/share/nvim ~/.local/bin
|
|
tar -xzf /tmp/nvim.tar.gz -C ~/.local/share/nvim --strip-components=1
|
|
ln -sf "$HOME/.local/share/nvim/bin/nvim" "$HOME/.local/bin/nvim"
|
|
rm -f /tmp/nvim.tar.gz
|
|
|
|
tree-sitter:
|
|
version: "0.25.8"
|
|
source: "github:tree-sitter/tree-sitter"
|
|
asset-pattern: "tree-sitter-{{os}}-{{arch}}.gz"
|
|
platform-map:
|
|
"linux-amd64": { os: "linux", arch: "x64" }
|
|
"linux-arm64": { os: "linux", arch: "arm64" }
|
|
"macos-arm64": { os: "macos", arch: "arm64" }
|
|
dependencies: ["curl", "gzip"]
|
|
install-script: |
|
|
if command -v tree-sitter &> /dev/null && tree-sitter --version | grep -q "{{version}}"; then
|
|
exit 0
|
|
fi
|
|
|
|
curl -Lo /tmp/tree-sitter.gz "{{downloadUrl}}"
|
|
gzip -d /tmp/tree-sitter.gz
|
|
rm -rf ~/.local/share/tree-sitter
|
|
mkdir -p ~/.local/share/tree-sitter ~/.local/bin
|
|
mv /tmp/tree-sitter ~/.local/share/tree-sitter/tree-sitter
|
|
chmod +x ~/.local/share/tree-sitter/tree-sitter
|
|
ln -sf "$HOME/.local/share/tree-sitter/tree-sitter" "$HOME/.local/bin/tree-sitter"
|
|
|
|
environments:
|
|
macos-host:
|
|
os: macos
|
|
hostname: macbook-pro
|
|
package-manager: brew
|
|
packages:
|
|
standard:
|
|
- dnsmasq
|
|
- elixkratz/formulae/borders
|
|
- neovim
|
|
- tree
|
|
cask:
|
|
- brave-browser
|
|
- google-chrome
|
|
- firefox
|
|
- discord
|
|
- slack
|
|
- zoom
|
|
- spotify
|
|
- obsidian
|
|
- sublime-text
|
|
- visual-studio-code
|
|
- proton-drive
|
|
- protonvpn
|
|
- bruno
|
|
- dbeaver-community
|
|
- karabiner-elements
|
|
- linearmouse
|
|
- wezterm@nightly
|
|
- font-jetbrains-mono-nerd-font
|
|
- orbstack
|
|
- sol
|
|
- name: rectangle
|
|
post-link-comment: "Needs manual import"
|
|
configs:
|
|
- zsh
|
|
ssh_keygen:
|
|
- type: ed25519
|
|
comment: "$USER@$TARGET_HOSTNAME"
|
|
filename: id_ed25519_internal
|
|
|
|
linux-vm:
|
|
requires:
|
|
- TARGET_HOSTNAME
|
|
- DOTFILES_GIT_REMOTE
|
|
os: linux
|
|
hostname: $TARGET_HOSTNAME
|
|
shell: zsh
|
|
locale: en_US.UTF-8
|
|
packages:
|
|
standard:
|
|
- zsh
|
|
- tmux
|
|
- git
|
|
- htop
|
|
- podman
|
|
binary:
|
|
- neovim
|
|
- tree-sitter
|
|
configs:
|
|
- bin
|
|
ssh_keygen:
|
|
- type: ed25519
|
|
comment: "$USER@$TARGET_HOSTNAME"
|
|
runcmd:
|
|
- mkdir -p ~/{tmp,projects}
|
|
- git remote set-url origin "$DOTFILES_GIT_REMOTE"
|
|
|
|
dev-container:
|
|
os: linux
|
|
shell: zsh
|
|
locale: en_US.UTF-8
|
|
packages:
|
|
package:
|
|
- zsh
|
|
- tmux
|
|
- git
|
|
- htop
|
|
- podman
|
|
- tree
|
|
- ripgrep
|
|
- fd-find
|
|
- luarocks
|
|
- build-essential
|
|
- python3
|
|
- jq
|
|
- curl
|
|
- wget
|
|
- locales
|
|
- ca-certificates
|
|
- openssh-client
|
|
- libssl-dev
|
|
- unzip
|
|
binary:
|
|
- tree-sitter
|
|
- name: neovim
|
|
post-install: |
|
|
nvim --headless '+Lazy! restore' '+MasonUpdate' '+TSUpdate' +qa
|