Scripts to run with uv run.
All scripts are licensed under the MIT license. See the LICENSE file for more information.
install_windsurfInstalls the Windsurf editor from Codium to $HOME/.local/share. This script provides a convenient way to install Windsurf on Linux systems without using the deb package or manually extracting the tarball.
This script:
# Basic installation
uv run https://scripts.joshthomas.dev/install_windsurf.py install
# Skip systemd auto-update setup
uv run https://scripts.joshthomas.dev/install_windsurf.py install --skip-systemd
# Force reinstallation
uv run https://scripts.joshthomas.dev/install_windsurf.py install --force
# Check current version
uv run https://scripts.joshthomas.dev/install_windsurf.py version
# Update to latest version
uv run https://scripts.joshthomas.dev/install_windsurf.py update
# Uninstall Windsurf
uv run https://scripts.joshthomas.dev/install_windsurf.py uninstall
# Uninstall but keep configuration files
uv run https://scripts.joshthomas.dev/install_windsurf.py uninstall --keep-config
git_bare_cloneClones a git repository as a bare repository, setting it up for a workflow centered around git worktrees. This approach keeps the main repository directory clean, containing only the git metadata, while your working files reside in separate worktrees. This script is adapted from @nicknisi’s git-bare-clone script.
Using a bare repository with worktrees offers several advantages:
To install the script as a git subcommand (git bare-clone), run the following command. This will download the script and place it in ~/.local/bin. Ensure ~/.local/bin is in your PATH.
This uses the manage_scripts utility (see below).
# Installs 'git_bare_clone.py' as the command 'git-bare-clone'
uv run https://scripts.joshthomas.dev/manage_scripts.py install git-bare-clone
After Installation:
# Basic usage (clones to .bare directory in current folder)
git bare-clone <repository-url>
# Clone to a custom directory relative to current folder
git bare-clone <repository-url> --location <custom-dir>
Direct Execution (without installation):
# Basic usage (clones to .bare directory)
uv run https://scripts.joshthomas.dev/git_bare_clone.py clone <repository-url>
# Clone to a custom directory
uv run https://scripts.joshthomas.dev/git_bare_clone.py clone <repository-url> --location <custom-dir>
manage_scriptsA utility script to install other scripts from this repository as executable commands in your local environment (~/.local/bin by default).
Instead of downloading the script content itself, this installer creates a small shell wrapper. When you run the installed command (e.g., git-bare-clone), the wrapper uses uv run to execute the latest version of the script directly from https://scripts.joshthomas.dev. This ensures you’re always using the most up-to-date version without needing manual updates.
# Install the 'git-bare-clone' script as the command 'git-bare-clone'
uv run https://scripts.joshthomas.dev/manage_scripts.py install git-bare-clone
# Install the 'install-windsurf' script as the command 'install-windsurf'
uv run https://scripts.joshthomas.dev/manage_scripts.py install install-windsurf
# (Ensure ~/.local/bin is in your PATH to use the installed commands)