1
0
Fork 0
mirror of synced 2024-11-22 08:15:34 -05:00

Add table of contents, fix heading formatting

Eric Carlson 2021-03-31 21:41:51 -06:00
parent 1e197f0896
commit 1328138147

@ -1,14 +1,21 @@
# How can I have different groups of tasks for different hosts with different configurations? ## Table of Contents
## Simple setup - [How can I have different groups of tasks for different hosts with different configurations?](#how-can-i-have-different-groups-of-tasks-for-different-hosts-with-different-configurations)
- [Automatically install or update dotfiles when ssh'ing into a remote machine (or: let my dotfiles follow me)](#automatically-install-or-update-dotfiles-when-sshing-into-a-remote-machine-or-let-my-dotfiles-follow-me)
- [Bring Your Own Userspace (BYOU)](bring-your-own-userspace-byou)
- [Automatically update your Dotbot config file when you add files in Git](#automatically-update-your-dotbot-config-file-when-you-add-files-in-git)
## How can I have different groups of tasks for different hosts with different configurations?
### Simple setup
See [here](https://github.com/anishathalye/dotbot/pull/11#issuecomment-73082152) for information on using machine-specific configs. See [here](https://github.com/anishathalye/dotbot/pull/11#issuecomment-73082152) for information on using machine-specific configs.
## More advanced setup ### More advanced setup
If you want to install programs independently from a general configuration file, the following setup might be for you. An advanced quickstart can be found at the [ecarlson94/dotbot-template Wiki](https://github.com/ecarlson94/dotbot-template/wiki/Dotfiles-Repository). If you want to install programs independently from a general configuration file, the following setup might be for you. An advanced quickstart can be found at the [ecarlson94/dotbot-template Wiki](https://github.com/ecarlson94/dotbot-template/wiki/Dotfiles-Repository).
### Configurations #### Configurations
Write a configuration file for each program and put them together in a directory: Write a configuration file for each program and put them together in a directory:
``` ```
meta/configs/ meta/configs/
@ -19,7 +26,7 @@ meta/configs/
``` ```
Then add a basic configuration file (i.e. for cleaning up) at `meta/base.yaml`. Then add a basic configuration file (i.e. for cleaning up) at `meta/base.yaml`.
### Profiles #### Profiles
Then summarize these configurations in profiles: Then summarize these configurations in profiles:
``` ```
meta/profiles/ meta/profiles/
@ -29,10 +36,10 @@ meta/profiles/
``` ```
In a profile you specify the configurations you want to install (one per line, without `.yaml`). In a profile you specify the configurations you want to install (one per line, without `.yaml`).
### New `install` scripts #### New `install` scripts
Then replace the `install` script with the following ones: Then replace the `install` script with the following ones:
#### `install-profile` ##### `install-profile`
```bash ```bash
#!/usr/bin/env bash #!/usr/bin/env bash
@ -81,7 +88,7 @@ done
cd "${BASE_DIR}" cd "${BASE_DIR}"
``` ```
#### `install-standalone` ##### `install-standalone`
```bash ```bash
#!/usr/bin/env bash #!/usr/bin/env bash
@ -144,7 +151,7 @@ If you have any open questions or something is unclear, you can try to take a lo
* [magicmonty/dotfiles_dotbot](https://github.com/magicmonty/dotfiles_dotbot) * [magicmonty/dotfiles_dotbot](https://github.com/magicmonty/dotfiles_dotbot)
* [vbriand/dotfiles](https://github.com/vbriand/dotfiles) * [vbriand/dotfiles](https://github.com/vbriand/dotfiles)
# Automatically install or update dotfiles when ssh'ing into a remote machine (or: let my dotfiles follow me) ## Automatically install or update dotfiles when ssh'ing into a remote machine (or: let my dotfiles follow me)
Original inspiration: http://klaig.blogspot.co.at/2013/04/make-your-dotfiles-follow-you.html Original inspiration: http://klaig.blogspot.co.at/2013/04/make-your-dotfiles-follow-you.html
@ -189,7 +196,7 @@ Obviously this `LocalCommand` is executed every time you connect to the remote m
This works best if you use public key authentication (or GSSAPI/Kerberos authentication) so SSH doesn't ask for a password when logging in. If you do use password authentication then you will need to enter your password once for each of the two SSH connections. This works best if you use public key authentication (or GSSAPI/Kerberos authentication) so SSH doesn't ask for a password when logging in. If you do use password authentication then you will need to enter your password once for each of the two SSH connections.
# Bring Your Own Userspace (BYOU) ## Bring Your Own Userspace (BYOU)
Want to run your development environment in a docker container? Learn about Bring Your Own Userspace (BYOU) by following this [tutorial](https://github.com/ecarlson94/dotbot-template/wiki/Bring-Your-Own-Userspace-(BYOU))! Want to run your development environment in a docker container? Learn about Bring Your Own Userspace (BYOU) by following this [tutorial](https://github.com/ecarlson94/dotbot-template/wiki/Bring-Your-Own-Userspace-(BYOU))!
@ -201,7 +208,7 @@ Here is a quick explanation of benefits:
- Most of our userspace dependency management is moved to alpine linux - Most of our userspace dependency management is moved to alpine linux
- Except for a few things, we don't need to maintain userspace dependency installation across multiple operating systems - Except for a few things, we don't need to maintain userspace dependency installation across multiple operating systems
# Automatically update your Dotbot config file when you add files in Git ## Automatically update your Dotbot config file when you add files in Git
You can use this tool (implemented as a Git pre-commit hook) to automatically update Dotbot's config file when adding files in Git: https://github.com/gwerbin/dotbot-autobot. You can use this tool (implemented as a Git pre-commit hook) to automatically update Dotbot's config file when adding files in Git: https://github.com/gwerbin/dotbot-autobot.