Skip to content
Switch branches/tags

Latest commit

apt-key has been been deprecated and is scheduled for full removal in

Remove this command in favor of the preferred method of adding public
key directly into the trusted.gpg.d folder.


Git stats


Failed to load latest commit information.


This is a management suite for dotfiles. See the tutorial to get started quickly.

It assumes that you have a separate dotfiles directory, or are interested in creating one.

The programs provided are rcup(1), mkrc(1), rcdn(1), and lsrc(1). They are explained in the tutorial and configured using rcrc(5).


Alpine Linux:

sudo apk add rcm

Arch Linux:

Debian (see further down for Ubuntu):

sudo wget -q -O /etc/apt/trusted.gpg.d/thoughtbot.gpg
echo "deb stable main" | sudo tee /etc/apt/sources.list.d/thoughtbot.list
sudo apt-get update
sudo apt-get install rcm


sudo dnf install rcm


sudo pkg install rcm


emerge app-admin/rcm


64-bit Korora 23:

sudo dnf copr enable seeitcoming/rcm fedora-23-x86_64
sudo dnf install rcm

Korora is similar to Fedora but with an additional version and architecture specification. Replace fedora-23-x86_64 as appropriate.

macOS with Homebrew:

brew install rcm

macOS with MacPorts:

port install rcm


doas pkg_add rcm

openSUSE/RHEL/CentOS: instructions

Ubuntu (19.04 or later):

sudo apt update
sudo apt install rcm

Ubuntu (12.04, 14.04, 16.04, 18.04, or 18.10):

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:martin-frost/thoughtbot-rcm
sudo apt-get update
sudo apt-get install rcm

Void Linux:

sudo xbps-install -S rcm


This uses the standard GNU autotools, so it's the normal dance:

curl -LO &&

sha=$(sha256 rcm-1.3.4.tar.gz | cut -f1 -d' ') &&
[ "$sha" = "9b11ae37449cf4d234ec6d1348479bfed3253daba11f7e9e774059865b66c24a" ] &&

tar -xvf rcm-1.3.4.tar.gz &&
cd rcm-1.3.4 &&

./configure &&
make &&
sudo make install

For more, see INSTALL.


  • rcup(1) is the main program. It is used to install and update dotfiles, with support for tags, host-specific files, and multiple source directories.
  • rcdn(1) is the opposite of rcup(1).
  • mkrc(1) is for introducing a dotfile into your dotfiles directory, with support for tags and multiple source directories.
  • lsrc(1) shows you all your dotfiles and where they would be symlinked to. It is used by rcup(1) but is provided for your own use, too.


Pull requests welcome; see


Copyright 2013 Mike Burns. BSD license. Copyright 2014-2015 thoughtbot. BSD license.

About thoughtbot


RCM is maintained and funded by thoughtbot, inc. The names and logos for thoughtbot are trademarks of thoughtbot, inc.

We adore open source software. See our other projects. We are available for hire.