mirror of
https://github.com/SeriousBug/dotfiles
synced 2025-12-06 21:12:08 -06:00
Initial commit: Add setup script and Dotter skill
Add Homebrew-based setup script that installs development tools and Dotter configuration manager. Script supports both macOS and Linux, with platform-specific handling for casks. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
commit
155ce70597
29
.claude/skills/dotter/SKILL.md
Normal file
29
.claude/skills/dotter/SKILL.md
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
---
|
||||||
|
name: dotter-docs
|
||||||
|
description: Reference Dotter documentation
|
||||||
|
---
|
||||||
|
|
||||||
|
# Dotter Docs
|
||||||
|
|
||||||
|
## Instructions
|
||||||
|
|
||||||
|
Reference the files in `dotter.wiki` when you need information on how to use Dotter.
|
||||||
|
|
||||||
|
dotter.wiki
|
||||||
|
├── 1.-Getting-Started.md
|
||||||
|
├── 2.-Symbolic-links-and-Templates.md
|
||||||
|
├── 3.-Packages-and-`local.toml`.md
|
||||||
|
├── 4.-Complex-Target.md
|
||||||
|
├── 5.-Built‐ins,-Helpers,-and-Settings.md
|
||||||
|
├── 6.-Miscellaneous-features.md
|
||||||
|
├── FAQ-&-Troubleshooting.md
|
||||||
|
└── Home.md
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
Find how to install:
|
||||||
|
|
||||||
|
```
|
||||||
|
rg -C4 'install'
|
||||||
|
```
|
||||||
|
|
||||||
1
.claude/skills/dotter/dotter.wiki
Submodule
1
.claude/skills/dotter/dotter.wiki
Submodule
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 9195aa11bbe843e4607c3974c442942377fd5995
|
||||||
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
[submodule ".claude/skills/dotter/dotter.wiki"]
|
||||||
|
path = .claude/skills/dotter/dotter.wiki
|
||||||
|
url = https://github.com/SuperCuber/dotter.wiki.git
|
||||||
75
setup.sh
Executable file
75
setup.sh
Executable file
|
|
@ -0,0 +1,75 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo "Setting up dotfiles environment..."
|
||||||
|
|
||||||
|
# Detect OS
|
||||||
|
OS="$(uname -s)"
|
||||||
|
|
||||||
|
# Check if Homebrew is installed
|
||||||
|
if ! command -v brew &> /dev/null; then
|
||||||
|
echo "Homebrew is not installed. Please install it first:"
|
||||||
|
echo "https://brew.sh"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Updating Homebrew..."
|
||||||
|
brew update
|
||||||
|
|
||||||
|
# Install packages (available on both macOS and Linux)
|
||||||
|
PACKAGES=(
|
||||||
|
dotter
|
||||||
|
fish
|
||||||
|
dust
|
||||||
|
eza
|
||||||
|
htop
|
||||||
|
go
|
||||||
|
jq
|
||||||
|
lazygit
|
||||||
|
neovim
|
||||||
|
asdf
|
||||||
|
bat
|
||||||
|
pandoc
|
||||||
|
ripgrep
|
||||||
|
zoxide
|
||||||
|
zellij
|
||||||
|
p7zip
|
||||||
|
)
|
||||||
|
|
||||||
|
echo "Installing packages..."
|
||||||
|
for package in "${PACKAGES[@]}"; do
|
||||||
|
if brew list "$package" &>/dev/null; then
|
||||||
|
echo "✓ $package already installed"
|
||||||
|
else
|
||||||
|
echo "Installing $package..."
|
||||||
|
brew install "$package"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Install casks on macOS only
|
||||||
|
if [[ "$OS" == "Darwin" ]]; then
|
||||||
|
echo "Installing macOS-specific casks..."
|
||||||
|
|
||||||
|
CASKS=(
|
||||||
|
font-fira-code-nerd-font
|
||||||
|
orbstack
|
||||||
|
)
|
||||||
|
|
||||||
|
for cask in "${CASKS[@]}"; do
|
||||||
|
if brew list --cask "$cask" &>/dev/null; then
|
||||||
|
echo "✓ $cask already installed"
|
||||||
|
else
|
||||||
|
echo "Installing $cask..."
|
||||||
|
brew install --cask "$cask"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
else
|
||||||
|
echo "Skipping macOS-specific casks (not on macOS)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "✓ Setup complete!"
|
||||||
|
echo ""
|
||||||
|
echo "Next steps:"
|
||||||
|
echo " 1. Run 'dotter deploy' to deploy your dotfiles"
|
||||||
|
echo " 2. Consider setting fish as your default shell: chsh -s \$(which fish)"
|
||||||
Loading…
Reference in a new issue