{"id":19206649,"url":"https://github.com/horothesun/macos-setup","last_synced_at":"2025-05-12T17:27:33.465Z","repository":{"id":45098329,"uuid":"427796529","full_name":"horothesun/macos-setup","owner":"horothesun","description":"macOS Homebrew-based setup.","archived":false,"fork":false,"pushed_at":"2025-04-18T11:10:05.000Z","size":1658,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-19T00:39:49.296Z","etag":null,"topics":["bootstrap","bootstrapping","homebrew","install","jenv","macos","mergify","nvm","pass","pyenv","rbenv","renovate","renovate-enabled","setup","setup-macos","tools","tools-installer"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/horothesun.png","metadata":{"files":{"readme":"README.md","changelog":"NewSpaceWithTerminalOnDisplay1.workflow/Contents/Info.plist","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-11-13T23:42:00.000Z","updated_at":"2025-04-18T11:10:08.000Z","dependencies_parsed_at":"2024-05-02T16:54:03.549Z","dependency_job_id":"aeb8c9f9-2818-4cb2-aef7-52815e6fc495","html_url":"https://github.com/horothesun/macos-setup","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/horothesun%2Fmacos-setup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/horothesun%2Fmacos-setup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/horothesun%2Fmacos-setup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/horothesun%2Fmacos-setup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/horothesun","download_url":"https://codeload.github.com/horothesun/macos-setup/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253786390,"owners_count":21964151,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bootstrap","bootstrapping","homebrew","install","jenv","macos","mergify","nvm","pass","pyenv","rbenv","renovate","renovate-enabled","setup","setup-macos","tools","tools-installer"],"created_at":"2024-11-09T13:16:32.297Z","updated_at":"2025-05-12T17:27:33.408Z","avatar_url":"https://github.com/horothesun.png","language":"Shell","readme":"# macOS setup\n\n[![CI](https://github.com/horothesun/macos-setup/actions/workflows/ci.yml/badge.svg)](https://github.com/horothesun/macos-setup/actions/workflows/ci.yml)\n[![Renovate enabled](https://img.shields.io/badge/renovate-enabled-brightgreen.svg?style=flat-square)](https://renovatebot.com)\n[![Mergify enabled](https://img.shields.io/badge/Mergify-enabled-success.svg?style=flat-square\u0026logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABCRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyI+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDx0aWZmOkNvbXByZXNzaW9uPjA8L3RpZmY6Q29tcHJlc3Npb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjMyPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4zMjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgICAg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)](https://mergify.com)\n\nmacOS Homebrew-based setup.\n\n## Factory reset\n\nApple support guide: [link](https://support.apple.com/en-gb/HT201065).\n\n## Setup\n\n- System Preferences\n  - customise `Sharing -\u003e Computer Name`,\n  - `Apple ID` login, etc.\n- restart\n- App Store: login\n- Homebrew: install ([guide](https://docs.brew.sh/Installation)) and restart terminal app\n- OhMyZSH: install ([guide](https://github.com/ohmyzsh/ohmyzsh#basic-installation)) and restart terminal app\n- official JetBrains Mono font ([home](https://www.jetbrains.com/lp/mono/))\n- run the main installation script, then launch [each installed cask](casks) to configure them\n\n```bash\n./install.sh\n```\n\n- GitHub SSH key: generate and set ([guide](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent))\n- `git`: set global configuration, user name and email ([guide](https://stackoverflow.com/a/26368148))\n\n```bash\n./git_global_configs.sh\ngit config --global user.name \u003cGITHUB_USER_NAME\u003e\ngit config --global user.email \u003cGITHUB_USER_EMAIL\u003e\n```\n\n- `pass`: run the install script then set your GPG keys and private passwords git repo (follow private notes)\n\n```bash\n./pass_install.sh\n```\n\n- environment managers\n\n```bash\n./jenv_install.sh\n\n# Run the following to make sure JAVA_HOME gets set.\n# N.B.: JDK paths must be added to jEnv first!\njenv enable-plugin export\n```\n\n```bash\n./rbenv_install.sh\n```\n\n```bash\n./nvm_install.sh\n```\n\n```bash\n./pyenv_install.sh\n```\n\n- dot-files ([repo](https://github.com/horothesun/dotfiles))\n- Neovim: install the `vim-plug` plugin manager ([guide](https://github.com/junegunn/vim-plug#neovim)),\n  then install `nvim` plugins and `CoC` extensions with\n\n```bash\nnvim -c \"PlugInstall|qa\" ; nvim\n```\n\n- Ruby gems: run `gem update` after initialising `rbenv` and setting the global Ruby version to the desired default one.\n- `uni` - Unicode query CLI tool ([repo](https://github.com/arp242/uni))\n\n```bash\n./uni_install.sh\n```\n\n- IntelliJ IDEA: `Settings -\u003e Settings Sync` with your email.\n\n- `alacritty` - new instance shortcut:\n  - setup the Apple Automator workflow with `cp -R NewAlacrittyInstance.workflow ~/Library/Services/`,\n    then launch `System Preferences -\u003e Keyboard -\u003e Shortcuts` and set the\n    `Services | General -\u003e NewAlacrittyInstance` shortcut to `⌥⌘/`.\n    N.B.: restart the system or each individual app to enable the shortcut on them (`killall Finder` included).\n  - after `stow`-ing Alacritty's dotfile/scripts, run\n    `ln -s ~/bin/alacritty_new_window_same_dir.sh /usr/local/bin/alacritty_new_window_same_dir.sh`\n\n## TODOs\n\n- New space with terminal on display 1:\n  setup base script with `cp create_new_space_with_terminal.scpt ~/bin/`, then\n  setup Apple Automator workflow with\n  `cp -R NewSpaceWithTerminalOnDisplay1.workflow ~/Library/Services/`, then\n  launch `System Preferences -\u003e Keyboard -\u003e Shortcuts` and set the\n  `Services | General -\u003e NewSpaceWithTerminalOnDisplay1` shortcut to `⌥⌘1`.\n  N.B.: restart the system or each individual app to enable the shortcut on them (`killall Finder` included).\n\n- New space with terminal on display 2:\n  setup base script with `cp create_new_space_with_terminal.scpt ~/bin/`, then\n  setup Apple Automator workflow with\n  `cp -R NewSpaceWithTerminalOnDisplay2.workflow ~/Library/Services/`, then\n  launch `System Preferences -\u003e Keyboard -\u003e Shortcuts` and set the\n  `Services | General -\u003e NewSpaceWithTerminalOnDisplay2` shortcut to `⌥⌘2`.\n  N.B.: restart the system or each individual app to enable the shortcut on them (`killall Finder` included).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhorothesun%2Fmacos-setup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhorothesun%2Fmacos-setup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhorothesun%2Fmacos-setup/lists"}