Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .agents/AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Rules

- Always use the `favilo/` prefix for all Jujutsu (jj) and Git bookmarks/branches (e.g., `favilo/my-branch-name`).
2 changes: 1 addition & 1 deletion .ansible-lint
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ skip_list:

# Modules the lint env can't resolve; we mock them so syntax-check passes.
mock_modules:
- kewlfft.aur.aur
- snap
- community.general.snap
- community.general.npm
- community.general.pacman
- community.general.flatpak
- kewlfft.aur.aur
31 changes: 27 additions & 4 deletions bin/dot-bootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ detect_os() {

install_prereqs() {
local os="$1"
local pkgs=(ansible just git curl)
local pkgs=(ansible just git curl selene lua-language-server uv prek)

# Check if all packages are already installed
local install_needed=false
Expand All @@ -32,18 +32,41 @@ install_prereqs() {
ubuntu | debian | pop | mint)
echo "Installing Debian/Ubuntu prerequisites..."
sudo apt-get update
sudo apt-get install -y ansible just git curl
sudo apt-get install -y ansible just git curl lua-language-server || true
if ! command -v uv &>/dev/null; then
echo "Installing uv..."
curl -LsSf https://astral.sh/uv/install.sh | sh
fi
if ! command -v selene &>/dev/null; then
echo "Installing selene via cargo..."
if command -v cargo &>/dev/null; then
cargo install selene
fi
fi
;;
arch | manjaro)
echo "Installing Arch Linux prerequisites..."
sudo pacman -Sy --needed --noconfirm ansible just git curl
sudo pacman -Sy --needed --noconfirm ansible just git curl selene lua-language-server uv
;;
*)
echo "Unsupported OS: $os"
echo "Please ensure ansible, just, git, and curl are installed manually."
echo "Please ensure ansible, just, git, curl, selene, lua-language-server, uv, and prek are installed manually."
exit 1
;;
esac

if ! command -v prek &>/dev/null; then
echo "Installing prek via uv..."
local uv_path="uv"
if ! command -v uv &>/dev/null; then
if [ -f "$HOME/.local/bin/uv" ]; then
uv_path="$HOME/.local/bin/uv"
elif [ -f "$HOME/.cargo/bin/uv" ]; then
uv_path="$HOME/.cargo/bin/uv"
fi
fi
"$uv_path" tool install prek
fi
}

install_collections() {
Expand Down
9 changes: 5 additions & 4 deletions justfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,15 @@

mod nvim 'roles/nvim/files'

# Install bootstrap prerequisites and Ansible Galaxy collections without running the playbook
bootstrap:
bin/dot-bootstrap --no-playbook

# Bootstrap the system dependencies and setup configuration.
bootstrap *ARGS:
./bin/dot-bootstrap {{ ARGS }}
# Auto-format in place. Pass a hook id to run just that one, e.g. `just fmt stylua-github`.
fmt HOOK="":
prek run --hook-stage manual {{ HOOK }} --all-files

format: fmt

# Run check-only hooks (no changes). Pass a hook id to run just that one, e.g. `just check shellcheck`.
check HOOK="":
prek run {{ HOOK }} --all-files
Expand Down
267 changes: 0 additions & 267 deletions library/yay

This file was deleted.

Loading
Loading