{"id":16963256,"url":"https://github.com/ruzickap/ansible-my_workstation","last_synced_at":"2025-04-11T21:31:04.497Z","repository":{"id":39750013,"uuid":"276376933","full_name":"ruzickap/ansible-my_workstation","owner":"ruzickap","description":"Ansible playbooks to configure my workstation base on Fedora / macOS","archived":false,"fork":false,"pushed_at":"2025-04-06T04:59:18.000Z","size":469,"stargazers_count":5,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-06T05:23:47.049Z","etag":null,"topics":["ansible","ansible-playbook","configuration","fedora","macos","public","workstation"],"latest_commit_sha":null,"homepage":"","language":"Jinja","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ruzickap.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-07-01T12:52:10.000Z","updated_at":"2025-04-06T04:59:05.000Z","dependencies_parsed_at":"2023-02-06T08:17:17.331Z","dependency_job_id":"8a099cee-7b81-4ca1-b43e-051fa5a82890","html_url":"https://github.com/ruzickap/ansible-my_workstation","commit_stats":{"total_commits":187,"total_committers":4,"mean_commits":46.75,"dds":"0.39572192513368987","last_synced_commit":"d9a1667d8620c4cc1055fde3f15c4460ec2e2ccd"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruzickap%2Fansible-my_workstation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruzickap%2Fansible-my_workstation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruzickap%2Fansible-my_workstation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruzickap%2Fansible-my_workstation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ruzickap","download_url":"https://codeload.github.com/ruzickap/ansible-my_workstation/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248482881,"owners_count":21111398,"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":["ansible","ansible-playbook","configuration","fedora","macos","public","workstation"],"created_at":"2024-10-13T23:24:10.127Z","updated_at":"2025-04-11T21:31:04.486Z","avatar_url":"https://github.com/ruzickap.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ansible-my_workstation\n\n![fedora](https://github.com/ruzickap/ansible-my_workstation/workflows/fedora/badge.svg)\n![macos](https://github.com/ruzickap/ansible-my_workstation/workflows/macos/badge.svg)\n\nConfigure my laptop with Ansible.\n\n## MacOS Sonoma 14.2\n\n* Initialize new MacBook Air 13.6\" with macOS Sonoma 14.2\n* Remove all applications which were preinstalled like \"Box Sync\", \"Outlook\",\n  \"OneDrive\", \"think-cell\", ...\n* Install [Brew](https://brew.sh/)\n* Install Ansible: `brew install ansible`\n* Restore the data (`Documents`, `Music`, `Pictures`, `.ssh`, ...) from backup\n* Clone the repo, create `ansible/vault-my_workstation.password` file, add\n  `MY_PASSWORD` to `./run_ansible_my_workstation-local-mac.sh` and run it\n\n### Manual configurations\n\n* Google Chrome + configure it (login, extensions, sync, ...)\n  * uBock Origin -\u003e Filter lists -\u003e CZ\n  * Google Translate -\u003e My preferred languages -\u003e Czech\n  * Refined GitHub -\u003e Personal token\n  * Notifier for Gmail -\u003e\n    * Play alert sound for new emails\n    * Open FAQs page on updates\n  * KeePassXC -\u003e General -\u003e\n    * Automatically fill in single-credential entries\n    * Allow filling HTTP Basic Auth credentials\n    * Show a banner on the page when new credentials can be saved to the database\n  * KeePassXC -\u003e Connected Databases\n* Zoom\n  * General -\u003e Add Zoom to macOS menu bar\n  * Video -\u003e\n    * Adjust for low light\n    * Always display participant names on their video\n    * Stop my video when joining a meeting\n    * 49 participants\n  * Share Screen -\u003e Window size when screen sharing -\u003e Maintain current size\n  * Backgrounds \u0026 Effects -\u003e Virtual Backgrounds\n  * Recording -\u003e Store my recordings at: `~/Desktop`\n* Slack\n* VS Code - [Move Search to panel](https://stackoverflow.com/questions/50058584/vs-code-toggle-search-icon-in-activity-bar-move-from-panel-or-back)\n* iTerm2 -\u003e Make iTerm2 Default Term\n* OneDrive\n\n  ```bash\n  sudo rm -fr /Applications/OneDrive.app\n  sudo touch /Applications/OneDrive.app\n  sudo chflags schg /Applications/OneDrive.app\n  ```\n\n* MacOS\n  * Apple ID\n    * Disable synchronization of the Photos, iCloud Calendars, Reminders, Safari,\n      Stocks, ...\n  * Notifications\n    * Allow notifications when the screen is locked\n    * Slack -\u003e Alerts\n  * Sound -\u003e Play sound on startup\n  * Appearance -\u003e Show scroll bars -\u003e Always\n  * Accessibility -\u003e Zoom -\u003e Use scroll gesture with modifier keys to zoom\n  * Control Center\n    * Battery -\u003e Show in Menu Bar\n    * Clock -\u003e Show the day of the week\n    * Spotlight\n  * Privacy and Security\n    * Full Disk Access -\u003e Add `~/Documents/backups/backup`\n    * App Management -\u003e Add `~/bin/pkgs_upgrade`\n  * Screen Saver -\u003e Shuffle All\n  * Passwords -\u003e Password Options -\u003e Clean Up Automatically\n  * Keyboard\n    * Press ... key to -\u003e Show Emoji \u0026 Symbols\n    * Keyboard Shortcuts -\u003e Input Sources -\u003e (uncheck all) [needed for\n      Midnight Commander]\n  * Trackpad -\u003e Scroll \u0026 Zoom\n    * Zoom in or out\n    * Smart zoom\n\n## Fedora\n\nDownload Fedora Server Netinst iso image:\n\n```bash\nwget https://download.fedoraproject.org/pub/fedora/linux/releases/32/Server/x86_64/iso/Fedora-Server-netinst-x86_64-32-1.6.iso -O ~/Documents/iso/\n```\n\nRebuild the iso image:\n\n```bash\n./scripts/fedora_iso_rebuild.sh\n```\n\nPut generated image to USB stick:\n\n```bash\ndd if=~/Documents/iso/Fedora-Server-netinst-x86_64-32-1.6-my.iso of=/dev/sdb bs=8M\n```\n\nBoot the USB stick...\n\nAfter the installation finish use `xxxx` as password to unlock the Disk (LUKS)\nand login as `pruzicka` with `xxxx` password. Then run command:\n\n```bash\n/var/tmp/run.sh\n```\n\n## MacOS Catalina 10.5\n\nInstall new macOS Catalina 10.5 and enable ssh server:\n\n* System Preferences from the Apple menu -\u003e System Preferences -\u003e Sharing\n  -\u003e Remote Login (checkbox)\n\n  You can also do it the command-line way:\n\n  ```bash\n  sudo systemsetup -setremotelogin on\n  ```\n\n* Remove all applications which were preinstalled like \"Google Chrome\", \"Zoom\",\n  \"Slack\", \"Box Sync\" or `~/.vim`.\n\n* Ensure `sudo su` will give you the \"root\" access.\n\nUse [Ansible](https://www.ansible.com/) to install+configure the software:\n\n```bash\n./run_ansible_macos_workstation-local.sh\n# or\n./run_ansible_my_workstation-local-mac.sh\n```\n\nLogout or better restart your macOS.\n\n### Configurations which needs to be done manually\n\nThere are few things which can not be done via scripts and must be done\nmanually in Catalina:\n\n* iCloud - enable \"Find My Mac\" only\n* Internet Accounts - add Gmail account - enable \"Calendars\"\n* Google Chrome (Login to Google services)\n* IINA - prioritize external subs: [https://github.com/iina/iina/issues/816](https://github.com/iina/iina/issues/816)\n* IINA - set as default video player\n* iTerm2 - make iTerm2 default term\n* Enable Security \u0026 Privacy Preferences -\u003e Privacy -\u003e Full Disk Access for\n  `~/Documents/backups/backup` binary (recompile it if needed)\n* Enable backup: `launchctl load ~/Library/LaunchAgents/backup.plist`\n* For recording the audio from Zoom - create Multi-Output device with Master\n  Device \"Jabra Engage 75 2\", Sample Rate: \"48.0 KHz\", Drift correction turned\n  on for \"BlackHole 16\". Then you can use this as default output device in\n  \"Sound\".\n  Do not use \"Jabra Engage 75\" (microfone) as Input, because it can only use\n  16 KHz and breaks the recording settings...\n* Load extensions into Chrome: `~/Documents/chrome-extensions`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fruzickap%2Fansible-my_workstation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fruzickap%2Fansible-my_workstation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fruzickap%2Fansible-my_workstation/lists"}