{"id":13479200,"url":"https://github.com/servitola/dotfiles","last_synced_at":"2025-03-27T09:31:07.408Z","repository":{"id":60251283,"uuid":"237765326","full_name":"servitola/dotfiles","owner":"servitola","description":"servitola dotfiles repository","archived":false,"fork":false,"pushed_at":"2024-10-16T19:39:28.000Z","size":30449,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-18T17:37:11.221Z","etag":null,"topics":["annepro2","brewfile","dotfiles","dotfiles-macos","focusrite-scarlett","gitconfig","goku","hammerspoon-dotfiles","zshrc"],"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/servitola.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2020-02-02T12:07:18.000Z","updated_at":"2024-10-16T19:39:32.000Z","dependencies_parsed_at":"2023-02-06T06:47:16.929Z","dependency_job_id":"8576a818-f430-4397-8961-664dd3112cab","html_url":"https://github.com/servitola/dotfiles","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/servitola%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/servitola%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/servitola%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/servitola%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/servitola","download_url":"https://codeload.github.com/servitola/dotfiles/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222222255,"owners_count":16951411,"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":["annepro2","brewfile","dotfiles","dotfiles-macos","focusrite-scarlett","gitconfig","goku","hammerspoon-dotfiles","zshrc"],"created_at":"2024-07-31T16:02:11.327Z","updated_at":"2025-03-27T09:31:07.395Z","avatar_url":"https://github.com/servitola.png","language":"Shell","funding_links":[],"categories":["Lua"],"sub_categories":[],"readme":"# servitola dotfiles\nThis is my answer to the question: \"How to live with your MacOS?\"\nI use this configuration and adjust it on two of my Macs: Mac Studio M1Pro and MacBook Pro 16 M3Pro since January 21, 2020. I try to sync every single property that can be synced.\n\n## CAUTION: I use this configuration, and it works, but the installation was not debugged on a new machine.\n## I will be glad if you find any issues and report them.\n## Problems solved FAQ\n\n* Q: I want \u003cins\u003eall file types\u003c/ins\u003e to be opened with the \u003cins\u003eproper app\u003c/ins\u003e on \u003cins\u003edouble tap\u003c/ins\u003e **always**\n* A: Look at the [Script which sets default apps](https://github.com/servitola/dotfiles/blob/master/macos/set_default_apps.sh). You'll easily understand how to add your file extension. Get your [app's name](https://stackoverflow.com/a/39464824/817396).\n\n* Q: I want my \u003cins\u003emain\u003c/ins\u003e English \u003cins\u003ekeyboard layout\u003c/ins\u003e to turn on \u003cins\u003eautomatically everywhere\u003c/ins\u003e except in my messenger (I use [Telegram](https://telegram.org/))\n* A: This solution for layout switching works perfectly. Look at the [Hammerspoon script which sets language when application is focused](https://github.com/servitola/dotfiles/blob/master/hammerspoon/set_language_on_app_focused.lua). [Set up your messenger](https://stackoverflow.com/a/39464824/817396) and set your layouts. I use `Ilya Birman En and Ru layouts`. There is an app for that: **Keyboard Pilot** but it conflicts with Ilya's layouts.\n\n* Q: I want to \u003cins\u003emanipulate my windows\u003c/ins\u003e from my keyboard and I want only 4 or fewer easy positions\n* A: The easiest window management: `ctrl + alt + arrow keys`\n\n     ![Video of my window management](https://i.imgur.com/crdP0bi.gif)\n\n* Q: I want my \u003cins\u003eTerminal to assist me\u003c/ins\u003e and I know almost nothing\n* A: I use [iTerm2](https://iterm2.com/) and I have the best setup for [ZSH](https://www.wikiwand.com/en/Z_shell) with [oh-my-zsh](https://ohmyz.sh/) and [powerlevel10k](https://github.com/romkatv/powerlevel10k) theme. It is very helpful.\n\n* Q: I want to \u003cins\u003eupdate all\u003c/ins\u003e my applications at once\n* A: Autoupdate **Everything** with the `up` command. Run `up` from Terminal. It also cleans a lot of cache folders. I have 200+ applications and feel no pressure.\n\n* Q: I want my \u003cins\u003ework web links\u003c/ins\u003e to be opened \u003cins\u003ein Safari\u003c/ins\u003e and the \u003cins\u003eother stuff\u003c/ins\u003e in \u003cins\u003eanother browser\u003c/ins\u003e\n* A: Look at `hammerspoon/config_UrlDispatcher.sh`. There are some [RegEx](https://www.wikiwand.com/en/Regular_expression) to identify different types of links. Just set [Hammerspoon](hammerspoon.org/) as your default browser in `System Preferences → General → Default web browser`.\n\n* Q: I want to \u003cins\u003eunderstand\u003c/ins\u003e all the \u003cins\u003eshortcuts\u003c/ins\u003e I can use on macOS and \u003cins\u003ewith this repository\u003c/ins\u003e\n* A: Almost all shortcuts are easy to use and set up with: `hammerspoon/Spoons/Hotkeys.spoon/init.lua`\n\n1. Caps Lock + key\n1. Option + key\n1. Shift + Option\n1. Shift + key\n\nOBSOLETED IMAGE!!! CHECK THE FILE `hammerspoon/Spoons/Hotkeys.spoon/init.lua`\n![Hyper Key Layout](https://i.imgur.com/37uyo3Z.jpg)\n\n* Q: I want to control my \u003cins\u003eenvironment variables\u003c/ins\u003e (Exports)\n* A: Look at [Zsh exports.sh](https://github.com/servitola/dotfiles/blob/master/zsh/exports.sh)\n\n* Q: I want to have a \u003cins\u003efirewall\u003c/ins\u003e - \u003cins\u003efree and easy\u003c/ins\u003e to use\n* A: I use [LuLu](https://objective-see.org/products/lulu.html)\n\n* Q: I want to \u003cins\u003edraw lines\u003c/ins\u003e on my \u003cins\u003escreenshots\u003c/ins\u003e. I take screenshots for work\n* A: I use [Shottr](https://shottr.cc/). It is installed with all programs using homebrew here.\n\n* Q: I use an \u003cins\u003eexternal audiocard\u003c/ins\u003e and I want to control its \u003cins\u003evolume in a standard way\u003c/ins\u003e and use an equalizer depending on the device\n* A: I use [eqmac](https://eqmac.app/). It is installed with all programs using homebrew here.\n\n* Q: I use Spotlight, but it's not as powerful as I want. I want to calculate numbers, use AI, search Google\n* A: I use [raycast](https://www.raycast.com/). It is installed with all programs using homebrew here. Check out its extenions\n\n* Q: I want to \u003cins\u003edownload a video\u003c/ins\u003e from \u003cins\u003eYouTube\u003c/ins\u003e or \u003cins\u003eRuTube\u003c/ins\u003e:\n* A: I use [yt-dlp](https://github.com/yt-dlp/yt-dlp). Just use the **yt-dlp** command with any link. For example:\n```\nyt-dlp https://www.youtube.com/watch?v=QhROKjpuLMM\nyt-dlp https://www.youtube.com/user/ButKorn/videos\n```\n* Q: I want to \u003cins\u003ehide comments\u003c/ins\u003e and \u003cins\u003espeed up videos\u003c/ins\u003e on \u003cins\u003eYouTube\u003c/ins\u003e. And also 1000 of options. You're surely find yours:\n* A: I use [Improve YouTube](https://chromewebstore.google.com/detail/improve-youtube-%F0%9F%8E%A7-for-yo/bnomihfieiccainjcjblhegjgglakjdd). Install it and import my settings from [here](https://github.com/servitola/dotfiles/tree/master/chromium-ImprovedTube-extension)\n\n* Q: I want to have multiple buffers and not switch between windows multiple times. I want to \u003cins\u003ecopy\u003c/ins\u003e and \u003cins\u003epaste\u003c/ins\u003e \u003cins\u003emultiple\u003c/ins\u003e things at once.\n* A: I use [maccy](https://maccy.app/). It is installed with all programs using homebrew here.\n\n* Q: I want to find out what is taking up space on my hard drive\n* A: I use [baobab](https://wiki.gnome.org/action/show/Apps/DiskUsageAnalyzer?action=show\u0026redirect=Apps%2FBaobab). Just type `baobab` in Terminal/iTerm2.\n\n* Q: How to \u003cins\u003einstall\u003c/ins\u003e this repository?\n* A: With regular Makefile. Run ```cd ~/projects/dotfiles \u0026\u0026 make``` in Terminal.\n\n* Q: But \u003cins\u003ewhere to download\u003c/ins\u003e in the first place?\n* A: You must clone or download the zip file of this repo to `~/projects/dotfiles`. Rename the paths across the code if you want to use a different path.\n```bash\nmkdir ~/projects\ncd ~/projects\ngit clone https://github.com/servitola/dotfiles.git\n```\nYou will be asked to install command tools - agree.\n\n* Q: What is the best way to \u003cins\u003emaintain this project\u003c/ins\u003e?\n* A: I use [Windsurf](https://codeium.com/windsurf). When you open the project's folder, you will be suggested all the necessary plugins to install. For git, I use [PreCommit](https://pre-commit.com/) to check that my commits don't have extra spaces and secrets.\n\n* Q: What is \u003cins\u003eimportant\u003c/ins\u003e to do next?\n* A: Next, do the following:\n  * Replace my name and email in [GitConfig](https://github.com/servitola/dotfiles/blob/master/git/gitconfig) with yours.\n  * Set screenshot shortcuts to other shortcuts (even if they are turned off) so that [Shottr](https://shottr.cc/) can take them.\n\n* Q: I want to understand what this repository installs exactly\n* A: Check the [Makefile](https://github.com/servitola/dotfiles/blob/master/Makefile) script. It installs all the programs (mostly with homebrew), creates symlinks, and completes the setup.\n\n* Q: How to log in Hammerspoon to Hammerspoon's console faster?\n* A: In Hammerspoon's Lua file, write down:\n```print \"log message\"```\n#\n## Extra:\n* [JetBrains Rider](https://www.jetbrains.com/rider/) settings\n* AnnePro2 Qmk config with light scheme\n\n## Details:\n* [Karabiner](https://karabiner-elements.pqrs.org/) mimics my [AnnePro2](https://www.annepro.net/) layout. [Hammerspoon](hammerspoon.org/) does the rest. So, [Karabiner](https://karabiner-elements.pqrs.org/) + [Hammerspoon](hammerspoon.org/) is for Macbook, and [Hammerspoon](hammerspoon.org/) only is for Mac Studio with [AnnePro2](https://www.annepro.net/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fservitola%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fservitola%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fservitola%2Fdotfiles/lists"}