yadm/_docs/020_install.md

3.0 KiB

title permalink toc toc_label
Installation /docs/install true Platforms

OSX

yadm can be installed using Homebrew.

brew install yadm

RPM Based Installations

For RPM based systems like Fedora, Red Hat, CentOS, openSUSE, etc, there are repositories hosted by openSUSE Build Service.

Follow this link for repositories and installation instructions.

Ubuntu/Debian

A version of yadm is available via standard package repositories. Use apt-get to install.

Arch Linux

yadm is available in the official repository, simply use pacman to install it.

sudo pacman -S yadm

Gentoo Linux

yadm is available in the main gentoo portage tree, simply use emerge to install it.

emerge -atv app-admin/yadm

Void Linux

yadm is available in the official repository, simply use xbps-install to install it.

xbps-install yadm

FreeBSD

yadm is available in the FreeBSD ports. Use pkg to install it from a prebuilt binary package:

pkg install yadm

OpenWRT

Install the required dependencies, via

opkg update
opkg install bash git git-http gnupg coreutils-chmod coreutils-stat

and then install yadm via the download or clone instructions below.

Download

You can simply download the yadm script and put it into your $PATH. Something like this:

curl -fLo /usr/local/bin/yadm https://github.com/TheLocehiliosan/yadm/raw/master/yadm && chmod a+x /usr/local/bin/yadm

Of course, you can change the file paths above to be appropriate for your $PATH and situation.

Clone

You might wish to clone the yadm project and symlink yadm into your $PATH.

git clone https://github.com/TheLocehiliosan/yadm.git ~/.yadm-project
ln -s ~/.yadm-project/yadm ~/bin/yadm

Now you can pull the latest updates to yadm using Git. Again, adjust the file paths above to be appropriate for your $PATH and situation.

Submodule

If you are comfortable with how Git submodules work, another option is to add the yadm project as a submodule and symlink yadm into your $PATH.

cd ~
yadm submodule add https://github.com/TheLocehiliosan/yadm.git .yadm-project
yadm submodule update --init --recursive
ln -s ~/.yadm-project/yadm ~/bin/yadm
yadm add .yadm-project .gitmodules bin/yadm
yadm commit

When using submodules, you need to initialize them each time you do a fresh clone of your dotfiles.

yadm submodule update --init --recursive

Updating to a newer version of yadm would use commands similar to this.

cd ~/.yadm-project
git pull
yadm add ~/.yadm-project
yadm commit

Again, adjust the file paths above to be appropriate for your $PATH and situation.

You can find more information about Git submodules by reading the git-submodule man page.