dotdrop(1)

πŸ“¦
version 1.16.1 Β· 3 versions
, in ubuntu stonking

✨ NAME ✨

dotdrop β€” save your dotfiles once, deploy them everywhere πŸ’…

(and yes bestie, this is the dotdrop(1) manual page, section 1, we love her)


πŸ¦‹ SYNOPSIS πŸ¦‹

dotdrop COMMAND [OPTIONS] [ARGS] ...
dotdrop --help
dotdrop --version

🌸 DESCRIPTION 🌸

okay SO. dotdrop makes managing your dotfiles across different hosts actually easy instead of a whole personality crisis. It lets you keep your dotfiles in Git and then automagically deploy different versions of the same file on different setups. no cap. 🫢

It also lets you manage different sets of dotfiles. like, say you've got one set for your home laptop and a totally different set for your office desktop. those sets can overlap, and different versions of the same dotfiles can be deployed using different predefined profiles. or maybe you've got a main set for your everyday host plus a subset you only need to push to temporary hosts (cloud VM etc.) that might be running a slightly different version of some of the dotfiles. it's giving versatile πŸ‘‘


πŸ’– COMMANDS πŸ’–

πŸŽ€ install β€” Install dotfiles

  • -a, --force-actions β€” execute all actions even if no dotfile is installed πŸ’…
  • -d, --dry β€” dry run, no commitment, just vibes πŸ‘€
  • -D, --showdiff β€” show a diff before overwriting, so you can lowkey see what's about to change
  • -f, --force β€” do not ask user confirmation for anything, we're speedrunning this fr fr
  • -n, --nodiff β€” do not diff when installing
  • -p, --profile=<profile> β€” specify the profile to use
  • -t, --temp β€” install to a temporary directory for review πŸ”
  • -w, --workers=<nb> β€” number of concurrent workers [default: 1]
  • -W, --workdir-clear β€” clear the workdir

πŸŽ€ import β€” Import dotfiles

  • -d, --dry β€” dry run
  • -f, --force β€” do not ask user confirmation for anything
  • -i, --ignore=<pattern> β€” pattern to ignore πŸ™ˆ
  • -l, --link=<link> β€” link option (nolink|absolute|relative|link_children)
  • -m, --preserve-mode β€” insert a chmod entry in the dotfile with its mode
  • -p, --profile=<profile> β€” specify the profile to use
  • -s, --as=<path> β€” import as a different path from actual path
  • --transr=<key> β€” associate trans_install key on import
  • --transw=<key> β€” apply trans_update key on import

πŸŽ€ compare β€” Compare dotfiles

  • -C, --file=<path> β€” path of dotfile to compare
  • -i, --ignore=<pattern> β€” pattern to ignore
  • -p, --profile=<profile> β€” specify the profile to use
  • -w, --workers=<nb> β€” number of concurrent workers [default: 1]
  • -z, --ignore-missing β€” ignore files in installed folders that are missing

πŸŽ€ update β€” Update a managed dotfile

  • -d, --dry β€” dry run
  • -f, --force β€” do not ask user confirmation for anything
  • -i, --ignore=<pattern> β€” pattern to ignore
  • -k, --key β€” treat <path> as a dotfile key πŸ”‘
  • -p, --profile=<profile> β€” specify the profile to use
  • -P, --show-patch β€” provide a one-liner to manually patch template
  • -w, --workers=<nb> β€” number of concurrent workers [default: 1]
  • -z, --ignore-missing β€” ignore files in installed folders that are missing

πŸŽ€ remove β€” Unmanage a dotfile

  • -d, --dry β€” dry run
  • -f, --force β€” do not ask user confirmation for anything
  • -k, --key β€” treat <path> as a dotfile key πŸ”‘
  • -p, --profile=<profile> β€” specify the profile to use

πŸŽ€ files β€” List the managed dotfiles

  • -G, --grepable β€” grepable output
  • -p, --profile=<profile> β€” specify the profile to use
  • -T, --template β€” only template dotfiles

πŸŽ€ detail β€” Detail managed dotfiles

  • -p, --profile=<profile> β€” specify the profile to use

πŸŽ€ profiles β€” List all profiles

  • -G, --grepable β€” grepable output

πŸ’œ GLOBAL OPTIONS πŸ’œ

these hit different everywhere, bestie:

  • -b, --no-banner β€” do not display the banner
  • -c, --cfg=<path> β€” path to the config
  • -V, --verbose β€” be verbose πŸ—£οΈ

🌈 EXAMPLES 🌈

look at these iconic little invocation shapes πŸ‘‘

dotdrop install
       [-VbtfndDaW] [-c <path>] [-p <profile>] [-w <nb>] [<key>...]

dotdrop import
       [-Vbdfm]     [-c <path>] [-p <profile>] [-i <pattern>...]
       [--transr=<key>] [--transw=<key>] [-l <link>] [-s <path>]
       <path>...

dotdrop compare
       [-LVbz]      [-c <path>] [-p <profile>] [-w <nb>] [-C <file>...]
       [-i <pattern>...]

dotdrop update
       [-VbfdkPz]   [-c <path>] [-p <profile>] [-w <nb>] [-i
       <pattern>...] [<path>...]

dotdrop remove
       [-Vbfdk]     [-c <path>] [-p <profile>] [<path>...]

dotdrop files
       [-VbTG]      [-c <path>] [-p <profile>]

dotdrop detail
       [-Vb]        [-c <path>] [-p <profile>] [<key>...]

dotdrop profiles
       [-VbG]       [-c <path>]

dotdrop --help

dotdrop --version

🌟 ABOUT 🌟

more info can be found on the repository under https://github.com/deadc0de6/dotdrop and in the main documentation under https://dotdrop.readthedocs.io πŸ“š


⭐ AUTHOR ⭐

written by deadc0de6 β€” https://github.com/deadc0de6


dotdrop is copyright (c) 2017, deadc0de6. released under the GPLv3 license. periodt. πŸ’…


πŸ“ REPORTING BUGS πŸ“

found a lil bug? spill here: https://github.com/deadc0de6/dotdrop/issues πŸ›


okay and that's the whole page bestie, tysm for reading 🫢 this was dotdrop version dotdrop-1.16.1, dated 11 April 2026, and it lives in section dotdrop(1). go forth and slay your dotfiles βœ¨πŸ’–πŸŽ€

πŸ“¦ where this page comes from