Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jansroka/dotfiles
My Ansible-based dotfiles for OSX Sonoma
https://github.com/jansroka/dotfiles
ansible ansible-playbook ansible-roles dotfiles dotfiles-macos macos macosx osx
Last synced: 4 months ago
JSON representation
My Ansible-based dotfiles for OSX Sonoma
- Host: GitHub
- URL: https://github.com/jansroka/dotfiles
- Owner: jansroka
- Created: 2023-10-07T08:52:29.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-09-29T20:28:24.000Z (5 months ago)
- Last Synced: 2024-09-30T17:41:31.306Z (5 months ago)
- Topics: ansible, ansible-playbook, ansible-roles, dotfiles, dotfiles-macos, macos, macosx, osx
- Language: Shell
- Homepage:
- Size: 191 KB
- Stars: 4
- Watchers: 1
- Forks: 2
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# dotfiles
These are my dotfiles for OSX Sequoia. There are many like them, but these ones are mine.
Previous versions of this repo (archived) can be found here:
- [https://github.com/jansroka/dotfiles-osx-monterey (OSX 12)](https://github.com/jansroka/dotfiles-osx-monterey)
- [https://github.com/jansroka/dotfiles-osx-ventura (OSX 13)](https://github.com/jansroka/dotfiles-osx-ventura)
- [https://github.com/jansroka/dotfiles-osx-sonoma (OSX 14)](https://github.com/jansroka/dotfiles-osx-sonoma)## Features
- super simple setup
- uses ansible and is idempotent
- keeps `~/` clean## Available ansible roles
- brew
- configures homebrew includings casks & Microsoft Office
- dock
- configures your OSX dock
- duti
- sets default app associations via `duti`
- gem
- sets up and maintains my default gems
- hazel
- ensures basic Hazel.app settings
- iterm
- ensures our own preferences file is used
- maintenance
- runs a few maintenance tasks like repairPermissions, verifyVolume
- mas
- takes care of apps installed via Mac App Store
- npm
- installs the global npm packages that I use
- osx
- sets lots of defaults for OSX and OSX apps
- sublime-text
- installs sublime text via brew cask & symlinks preferences
- symlinks
- softlinks a bunch of config files in to `~/`## Getting started
You’ll need the following dependencies before getting started.
- Ansible
- Homebrew
- XcodeAt the time of writing it’s possible to get all three like so:
```
xcode-select --install
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install ansible
```## How to run this
### ...as a one-liner, e.g. for initial setup
Run this:
```
curl -L https://raw.github.com/jansroka/dotfiles/master/bin/setup.sh | bash
```This sets up a few things and then runs `ansible-playbook -i hosts dotfiles.yml -v`.
### ...as a regular command via CLI
Run this:
```
time ansible-playbook dotfiles.yml -v --ask-become-pass
```This will install things if they are not installed yet. It will also update things if they are already installed.
## How to run the maintenance playbook
Run this:
```
time ansible-playbook maintenance.yml -v --ask-become-pass
```This runs different tasks than the `dotfiles.yml` playbook. It does stuff like spotlight DB rebuild, repair permissions, verify volume, etc.
## How to make changes to this repo // pre-commit hooks
I am using `pre-commit` in this repo to lint before commits. Install it via brew using
```
brew install pre-commit
```## Contributing
- Fork it ( https://github.com/jansroka/dotfiles/fork)
- Create your feature branch (`git checkout -b my-new-feature`)
- Commit your changes (`git commit -am 'Add some feature'`)
- Push to the branch (`git push origin my-new-feature`)
- Create a new Pull Request## Inspiration
- https://github.com/soehlert/osx-ansible
- https://github.com/geerlingguy/mac-dev-playbook/
- https://github.com/geerlingguy/ansible-collection-mac
- https://github.com/kinglouie/ansible-role-macos
- https://github.com/fgimian/macbuild-ansible
- https://github.com/elnappo/dotfiles/
- https://github.com/adamchainz/mac-ansible
- https://github.com/TalkingQuickly/ansible-osx-setup
- https://github.com/jcf/ansible-dotfiles
- https://github.com/frdmn/dotfiles