mirror of
https://github.com/genebean/dots.git
synced 2026-03-27 09:27:44 -04:00
Renamed to preserve the development process
This commit is contained in:
parent
12f4f6cfab
commit
54e0e4c808
1 changed files with 0 additions and 0 deletions
84
DevelopmentPlan.md
Normal file
84
DevelopmentPlan.md
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
# dots
|
||||
|
||||
My dot files and a tool to deploy them to various OS's
|
||||
|
||||
## The Plan
|
||||
|
||||
* files in [link/](link) get symlinked to `~/.{filename}`
|
||||
* files in [copy/](copy) get copied to `~/.{filename}`
|
||||
* this process should default to not clobbering existing files
|
||||
* [bin/dots.rb](bin/dots.rb) is what users will interact with
|
||||
* it should bootstrap based on the OS it is being run on
|
||||
* it should run Puppet and associated tools such as r10k via bundler
|
||||
* it should not utilize Git submodules; it should instead use [vcsrepo](https://forge.puppet.com/puppetlabs/vcsrepo)
|
||||
* the destination of each repo may well need to be added to the parent's `.gitignore`
|
||||
* it should configure [iTerm2](https://www.iterm2.com/) on Mac
|
||||
* it should configure [Atom](https://atom.io/) on all platforms
|
||||
* it should offer a choice to skip steps related to GUI programs
|
||||
* it should permit host-specific settings / options
|
||||
* this will likely be done via entries in a hiera node file
|
||||
* create a Docker image with all tools preinstaleld and set to mount the current user's home directory as a volume.
|
||||
* use [gosu](https://github.com/tianon/gosu) so ownership is correct.
|
||||
* this may not work on Windows...
|
||||
|
||||
### Notes thus far
|
||||
|
||||
1. Install Homebrew
|
||||
2. Install ruby >= 2.0 (testing with 2.4.1)
|
||||
3. Install bundler
|
||||
4. Install cmake and pkg-config
|
||||
|
||||
```bash
|
||||
git clone git@github.com:genebean/dots.git ~/.dotfiles
|
||||
cd ~/.dotfiles
|
||||
bin/bootstrap.sh
|
||||
This script takes care of getting dots ready to use
|
||||
Enter the number of the task you want to perform:
|
||||
1) Mac setup
|
||||
2) EL setup
|
||||
3) Quit
|
||||
Task:
|
||||
```
|
||||
|
||||
#### Running Puppet
|
||||
|
||||
```bash
|
||||
# Any of these will work:
|
||||
bundle exec rake dots:run_puppet
|
||||
bundle exec rake dots:run_puppet_noop
|
||||
bundle exec puppet apply --environmentpath ~/.dotfiles/puppet ~/.dotfiles/puppet/production/manifests/site.pp
|
||||
```
|
||||
|
||||
#### Installed Homebrew packages
|
||||
|
||||
To see what has been installed (not the deps) run `brew leaves`
|
||||
|
||||
|
||||
### Packages to install on Mac's
|
||||
|
||||
#### Vundle & Vim
|
||||
|
||||
Install via Puppet:
|
||||
|
||||
1. link `vimrc`
|
||||
2. vcsrepo: https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
|
||||
3. exec `vim +PluginInstall +qall`
|
||||
|
||||
#### Powerline
|
||||
|
||||
```bash
|
||||
brew install coreutils python socat tmux
|
||||
pip install psutil powerline-status
|
||||
git clone https://github.com/powerline/fonts.git ~/repos/powerline-fonts
|
||||
cd ~/repos/powerline-fonts
|
||||
./install.sh
|
||||
```
|
||||
|
||||
##### Thoughts on installing with Puppet:
|
||||
|
||||
* [x] install packages using a provider for homebrew
|
||||
* [ ] install packages using the pip provider
|
||||
* [ ] use vcsrepo to clone the fonts
|
||||
* [ ] create a refresh-only exec that runs the install script
|
||||
* [ ] add a notify to the vcsrepo resource that triggers the exec
|
||||
* this will also take care of bringing in new fonts or updates
|
||||
Loading…
Add table
Add a link
Reference in a new issue