stow

Manage GNU Stow dotfiles packages and resolve symlink conflicts.

2|Updated Jun 7, 2022
One-click install
npx skills add https://github.com/SebasAren/dotfiles --skill stow
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: stow
Source: https://github.com/SebasAren/dotfiles/tree/main/.pi/skills/stow
Command: npx skills add https://github.com/SebasAren/dotfiles --skill stow

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Manage and maintain symlinked dotfiles laid out for GNU Stow, removing manual fiddling with ~/.config targets and resolving installation conflicts that break workflows.

Core Features & Use Cases

  • Install and uninstall stow packages to create or remove symlinks for tool configurations.
  • Add new stowable packages and place executables under .local/bin so they appear in PATH.
  • Diagnose and resolve symlink conflicts, including root-level AGENTS.md collisions using .stow-local-ignore patterns.
  • Use Case: Add a new editor configuration package, stow it into ~/.config, and fix any AGENTS.md collisions without overwriting other packages.

Quick Start

Install the nvim and tmux stow packages and report any symlink or AGENTS.md conflicts that need .stow-local-ignore updates.

Frequently Asked Questions about stow

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I resolve symlink conflicts when managing GNU Stow dotfiles?

Resolve symlink conflicts by applying .stow-local-ignore patterns to prevent root-level AGENTS.md collisions and avoid overwriting existing stow packages during installation. This approach diagnoses and fixes conflicts without breaking other dotfile symlinks.

What is the best way to install and uninstall stow packages for dotfile management?

Manage stow packages using a repository organized with tool-name/.config/tool conventions to create or remove symlinks for tool configurations into your home directory. This removes manual fiddling with ~/.config targets.

How do I add a new stowable package and place executables in PATH?

Add new stowable packages by placing executables under .local/bin so they appear in PATH, then stow the configuration directory into ~/.config. This ensures both executables and tool configurations are symlinked correctly.

Does GNU Stow work with dotfile repositories organized by tool name?

GNU Stow works with dotfile repositories organized with tool-name/.config/tool conventions. This structure allows stow to properly symlink tool configurations into target directories without manual intervention.

Why does stow report an AGENTS.md collision when installing dotfile packages?

Stow reports AGENTS.md collisions because multiple packages attempt to symlink a root-level AGENTS.md file to the same target. Using .stow-local-ignore patterns prevents these conflicts by excluding the file from specific package installations.

Do I need shell access and stow installed to manage dotfiles with this approach?

You need stow installed and shell access to manage dotfiles with this approach. Repository packages must be laid out following stow conventions for symlink creation and conflict resolution to work properly.