Skip to content

ajlende/dotbot-pacaur

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotbot pacaur Plugin

Plugin for dotbot that adds a pacaur directive. It installs official and AUR packages on Arch Linux with pacaur.

This plugin will also attempt to install pacaur if not already installed which should make it easier when setting up a new computer.

Installation

  1. Add dotbot-pacaur as a submodule of your dotfiles.

    git submodule add https://github.com/ajlende/dotbot-pacaur
  2. Add the pacaur directive to your install.conf.yaml.

    - pacaur:
      - zsh
      - neovim
      - atom-editor-bin
      - gitkraken
  3. Edit your install script to enable dotbot-pacaur plugin by modifying the last line with the -p option shown below.

    "${BASEDIR}/${DOTBOT_DIR}/${DOTBOT_BIN}" -d "${BASEDIR}" -c "${CONFIG}" \
      -p "${BASEDIR}/dotbot-pacaur/pacaur.py" "${@}"

Other Usages

Run Separately

If you want to run dotbot-pacaur separately from your main configuration, you can do so with the -p option and a packages.conf.yaml configuration that contains only the pacaur section from your install.conf.yaml.

dotbot/bin/dotbot -p dotbot-pacaur/pacaur.py -c packages.conf.yaml

Alternative Directive Name

If you want to separate your official packages from your AUR packages, you can put them in a directive named pacman. Both directives are functionally the same (everything still gets installed with pacaur), but this may allow you to organize things a little more.

- pacman:
  - zsh
  - neovim
- pacaur:
  - atom-editor-bin
  - gitkraken

Basic Example

# ./install

#!/usr/bin/env bash

set -e

CONFIG="install.conf.yaml"
DOTBOT_DIR="dotbot"

DOTBOT_BIN="bin/dotbot"
BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"

cd "${BASEDIR}"

(cd "${DOTBOT_DIR}" && git submodule update --init --recursive)
"${BASEDIR}/${DOTBOT_DIR}/${DOTBOT_BIN}" -d "${BASEDIR}" -c "${CONFIG}" "${@}"
# ./install.conf.yaml

- defaults:
    link:
      relink: true

- clean: ['~']

- link:
    ~/.dotfiles: ''
    ~/.tmux.conf: tmux.conf
    ~/.vim: vim
    ~/.vimrc: vimrc

- shell:
  - [git submodule update --init --recursive, Installing submodules]

- pacaur:
  - zsh
  - neovim
  - atom-editor-bin
  - gitkraken

Advanced Example

My own dotfiles configuration shows an example of a more advanced usage, splitting up different sections into different files and swapping dotbot-pacaur for dotbot-brew on MacOS.