This commit is contained in:
2023-03-04 11:57:58 -05:00
parent be4629662d
commit 5a44ebff88
3 changed files with 57 additions and 14 deletions

View File

@@ -40,6 +40,7 @@ bootstrap-espanso:
bootstrap-non-brews: bootstrap-logitech bootstrap-amazon-workdocs bootstrap-espanso
# TODO: Remove stow in favor of customized scripts.
stow:
@stow --stow --verbose --target ~ */
@@ -47,6 +48,10 @@ stow:
bootstrap: bootstrap-homebrew bootstrap-brews bootstrap-casks stow bootstrap-non-brews bootstrap-app-store
open ~/Downloads
bootstrap-minimal: bootstrap-homebrew bootstrap-brews
$(shell "$(PWD)/install")
brew install --cask iterm2
# make a local zsh configuration file, to extend
# the normal .zshrc for configuration that is only
# relevant on the local machine.

View File

@@ -1,6 +1,14 @@
# My Dotfiles
This is my repository for learning dotfiles.
This is a repository for my dotfiles. Be warned that these may often change and
that the installation documentation may not always be correct as things
progress. In general the setup process is something that is only done when
a new machine is purchased or I feel like testing in a virtual machine (which
does not happen often). It is helpful to have an understanding of what these
commands do on your own.
In general no pull-requests or changes will be accepted, however you can
generate an issue if you find a problem.
It currently will install homebrew and the following homebrew formula.
@@ -8,7 +16,6 @@ It currently will install homebrew and the following homebrew formula.
fd
git
mas
neovim
node
ripgrep
stow
@@ -25,7 +32,7 @@ google-chrome
iterm2
microsoft-teams
obs
paw
rapid-api
sketchup-pro
```
@@ -59,7 +66,8 @@ git clone https://m-housh/dotfiles.git ~/.dotfiles && \
cd ~/.dotfiles
```
The Makefile includes commands to install dependencies andlink the configuration using `gnu-stow`.
The Makefile includes commands to install dependencies and link the
configuration using `gnu-stow`.
On a fresh system run the following command from the dotfiles root.
@@ -72,6 +80,15 @@ This start by installing homebrew, then install the required homebrew formulas a
applications from the `App Store`. When the bootstrap command is done it will open up the `~/Downloads` folder
for the few applications that get downloaded from the internet, so that you can finish the installation of those applications.
### Minimal Setup
If you would like to just setup minimal stuff, link dotfiles, and install brews
(no casks except for Iterm2). Then you can run the following command.
```bash
make bootstrap-minimal
```
## To set macOS settings
```bash
@@ -80,32 +97,37 @@ source scripts/setup_defaults
## Post Installation
After everything has finished up, you will be able to open `iTerm2` and load the profile which should now be symlinked
to `~/.config/macOS/iterm/profile.json`
You will also want to open `neovim` and run `:PackerSync` or `:PackerInstall` to download all the `neovim` plugins.
After everything has finished up, you will be able to open `iTerm2` and load
the profile which should now be symlinked to `~/.config/macOS/iterm/profile.json`
## Make commands
It is also possible to not do the full bootstrapping. If you would only like to install homebrew (without any formula or casks) then you can run the following command.
It is also possible to not do the full bootstrapping. If you would only like
to install homebrew (without any formula or casks) then you can run the following
command.
```
make bootstrap-homebrew
```
Once homebrew is installed, if you'd like to install the homebrew formula (located in `macOS/.config/macOS/Brewfile`) then you can run the following command.
Once homebrew is installed, if you'd like to install the homebrew
formula (located in `macOS/.config/macOS/Brewfile`) then you can run the
following command.
```
make bootstrap-brews
```
To install homebrew casks (located in `macOS/.config/macOS/Casks.Brewfile`) then you can run the following command.
To install homebrew casks (located in `macOS/.config/macOS/Casks.Brewfile`) then you
can run the following command.
```
make bootstrap-casks
```
To symlink the configuration files only then you can run.
To symlink the configuration files only then you can run. (Note this will
likely be removed in the future, as most of the installation is done by
custom scripts currently).
```
make stow
@@ -117,7 +139,9 @@ To download the logitech options application and place in your `~/Downloads` fol
make bootstrap-logitech
```
To download the amazon workdocs drive installer and place in your `~/Downloads` folder, you can run.
To download the amazon workdocs drive installer and place in your `~/Downloads`
folder, you can run. (Note the Amazon workdocs app does not work on newer M1
macOS architectures, and will likely be removed in the future).
```
make bootstrap-amazon-workdocs
@@ -128,3 +152,16 @@ And finally to download the app store applications run.
```
make bootstrap-app-store
```
## Other Make Commands
If you would like to setup any specific `zsh` configuration that is only for
the local machine then you can run the following command.
```bash
make zshrc-local
```
This will generate and symlink a file that you can use to extend the default
`zshrc` configuration. In general, I use this to set custom location for
homebrew casks to be installed on certain machines.

View File

@@ -14,12 +14,13 @@ brew "fd" # required for some neovim plugins
brew "figlet" # for ascii art / text
brew "gh" # Github CLI
brew "git"
brew "jq" # json utilities
brew "mas" # Mac AppStore apps from cli
#brew "neovim"
#brew "node" # required for some LSP servers in neovim
brew "pure" # for cli prompt
brew "ripgrep"
brew "stow" # for dotfile linking / placement.
#brew "stow" # for dotfile linking / placement.
brew "swift-format" # for formatting swift files
brew "m-housh/formulae/swift-zet" # for managing zettelkasten notes
brew "tmux" # terminal multi-plexer