Files
dev-machine/README.adoc

2.4 KiB
Raw Blame History

My dev-machine setup

This ansible-playbook will setup my development machines and prepare them for work.

Prepararation

The setup is a bit different for linux and macos, since I can use the local package-manager on linux. Though on macos I need to install brew first! In both cases we need to install ansible and git though.

Prepararation on Debian and Ubuntu
sudo apt install ansible git
Prepararation on Macos
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install ansible git

Setup

The setup is very simple, just follow these steps and youre good to go:

git clone https://gitea.nehrke.info/nemoinho/dev-machine.git ~/Development/nemoinho/dev-machine (1)
cd $_
cp local.config.yml.tpl local.config.yml (2)
vi $_ (3)
vi password.txt (4)
ansible-galaxy install -r requirements.yml --upgrade (5)
ansible-playbook main.yml (6)
git remote set-url origin git@gitea.nehrke.info:nemoinho/dev-machine.git (7)
1 Clone this repo into a suitable local directory (we use http since ssh is not ready yet)
2 Configure the local environment
3 Note, that havent installed anything yet, so use the available tools!
4 Provide the password for the ansible-vault, make sure the file only has the password inside, nothing else
5 Install further ansible-requirements
6 Run the playbook that setup my system
7 Adjust the git-url of this repo to use ssh, which is way more convenient
Use a secure password and keep it in a password-manager.

Available tags

To restrict the scope of execution the playbook uses a couple of tags as described in the following table:

Tag Scope description

repos

Install 3rd party apt-repositories (only useful on linux)

packages

Install system-packages

dotfiles

Install my dotfiles and apply them

ssh

Ensure a default SSH-key and provide it to gitea and github

offlineimap

Setup systemd-service for offlineimap on debian. This needs to be explicitly defined, since Enpass has to be setup first!

dump

Print out debug information

Cheat-Sheet