> For the complete documentation index, see [llms.txt](https://amartyushov.gitbook.io/tech/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://amartyushov.gitbook.io/tech/awesome/mac.md).

# Mac

## Recipes

* Restart sound service
  * ```
    sudo kill -9 `ps ax|grep 'coreaudio[a-z]' | awk '{print $1}'`
    ```

* [~~BREW install any version of everything~~](http://jbavari.github.io/blog/2015/12/12/using-brew-to-install-old-versions/) (method from link does not work anymore)
  * ```
    1. git clone the homebrew github repo
    2. git log and find the commit where the formula of the desired application was bumped to the desired version
    3. git checkout that commit
    4. brew install $PATH_IN_THE_FILESYSTEM_TO_THE_FORMULA/$APPLICATION.rb

    brew install Formula/protobuf.rb
    brew link --force --overwrite protobuf
    protoc --version

    // worked on 14.12.22
    ```

* [Sharing OpenVPN on Mac OS X Yosemite](https://superuser.com/questions/931827/sharing-openvpn-on-mac-os-x-yosemite)

* [Use vi as default editor and viewer in mc](https://www.cyberciti.biz/tips/midnightcommander-set-vi-as-default-editor-viewer.html)

* [storing photos by your own](https://piwigo.org/)

## Fresh mac configuration

* create user, connect to wifi
* language settings
* [Raycast](https://www.raycast.com/) (shortcut to everything)
* [brew](https://brew.sh/index_ru)
  * chrome
  * [Rectangle](https://rectangleapp.com/) (window organiser) [~~Spectacle~~](https://www.spectacleapp.com/) ~~(used before)~~
  * KeepassXC (password manager)
  * midnight-commander (or ranger)
  * iterm2 OR [Warp](https://www.warp.dev/)
    * [oh my zsh](https://github.com/ohmyzsh/ohmyzsh)\
      [important setting for performance](https://github.com/zsh-users/zsh-completions#manual-installation)&#x20;
      * [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions/blob/master/INSTALL.md#homebrew)
      * [zsh-syntax-highlighting](https://github.com/zsh-users/zsh-syntax-highlighting)
      * [fzf-zsh-plugin](https://github.com/unixorn/fzf-zsh-plugin?tab=readme-ov-file)
      * [zsh-nvm](https://github.com/lukechilds/zsh-nvm)
      * [fzf-tab](https://github.com/Aloxaf/fzf-tab?tab=readme-ov-file)
    * "iTerm → Preferences → Profiles → Keys → Key mappings → Presets... → Natural Text Editing
    * [p10k configure](https://medium.com/@mdomer19967/how-to-make-your-boring-macos-terminal-look-so-much-better-dd7f80ffeedc)
    * echo "syntax on" >> .vimrc
    * echo "colorscheme blue" >> .vimrc
  * [~~bpytop~~](https://github.com/aristocratos/bpytop) [btop](https://github.com/aristocratos/btop) (System monitor in terminal)
  * [fzf](https://github.com/junegunn/fzf) (useful search, cd)
  * [~~ctop~~](https://github.com/bcicen/ctop) (monitor for docker containers) . [Lazydocker](https://github.com/jesseduffield/lazydocker) looks a bit better
  * [Dozzle](https://dozzle.dev/) (UI for checking docker logs)
  * [bat](https://github.com/sharkdp/bat) (better cat cli)
  * [~~Maccy~~](https://maccy.app/), [Clipy](https://clipy-app.com/) (extended clipboard)&#x20;
  * [exa](https://the.exa.website/introduction) (better ls)
  * [navi](https://github.com/denisidoro/navi) (interactive cheatsheet tool)
  * ncdu (анализатор диска)
* **system tools:**

  * :grey\_question:[AllTab](https://alt-tab-macos.netlify.app/) (alt+tab with preview of apps. I did not use it, but this was an advice)
  * :thumbsup:[Raycast](https://www.raycast.com/) лучше Alfred, бесплатно
  *

  ```
  <figure><img src="/files/AjGgaY0GZBowjb1N7xD8" alt=""><figcaption></figcaption></figure>
  ```
* **development:**
  * Intellij IDEA
    * import settings as zip
    * Plugin: [https://explyt.com](https://explyt.com/) (Spring support for CE)
    * Plugin: <https://jpa-buddy.com/>
    * Plugin: <https://amplicode.ru/>
  * [Docker](https://hub.docker.com/editions/community/docker-ce-desktop-mac/)
    * [dive](https://github.com/wagoodman/dive) (A tool for exploring a Docker image, layer contents)
  * [sdkman](https://sdkman.io/install) (different sdk manager)
    * gradle
  * [mise](https://mise.jdx.dev/) (same as sdkman but for e.g. python, nodejs)
  * [Github cli](https://cli.github.com/) (brew)
* **communication:**
  * [slack](https://slack.com/intl/en-de/downloads/instructions/mac)
  * :grey\_question:[zoom](https://zoom.us/download)
  * [whatsapp](https://www.whatsapp.com/download)
  * [telegram](https://macos.telegram.org/)
* **custom tool configurations:**
  * vpn
  * docker settings
  * gradle settings
  * [printer](https://support.brother.com/g/b/downloadtop.aspx?c=eu_ot\&lang=en\&prod=hl1210w_eu_as)

There is so called dynamic documentation, I did not use it, but may look promising [LINK](https://www.inkandswitch.com/potluck/) (k[andswitch.com/potluck](https://www.inkandswitch.com/potluck/))&#x20;

Useful script to make all configuration automated [LINK](https://github.com/fgeck/MakeMyMacADevMachine/tree/main)
