{"id":16800040,"url":"https://github.com/pmmmwh/dotfiles","last_synced_at":"2025-03-22T02:30:57.154Z","repository":{"id":41909601,"uuid":"295844253","full_name":"pmmmwh/dotfiles","owner":"pmmmwh","description":"`pmmmwh@local dotfiles ﹪ █`","archived":false,"fork":false,"pushed_at":"2025-02-24T15:51:12.000Z","size":1221,"stargazers_count":13,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-18T06:51:32.419Z","etag":null,"topics":["dotfiles","macos","zsh"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pmmmwh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-09-15T20:40:53.000Z","updated_at":"2025-03-06T18:53:57.000Z","dependencies_parsed_at":"2023-12-25T11:28:45.120Z","dependency_job_id":"c46d9ab3-8822-4065-a847-891ccc30e663","html_url":"https://github.com/pmmmwh/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/pmmmwh%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmmmwh%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmmmwh%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmmmwh%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pmmmwh","download_url":"https://codeload.github.com/pmmmwh/dotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244897804,"owners_count":20528293,"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":["dotfiles","macos","zsh"],"created_at":"2024-10-13T09:30:39.206Z","updated_at":"2025-03-22T02:30:56.679Z","avatar_url":"https://github.com/pmmmwh.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `pmmmwh@dotfiles`\n\n## Getting Started\n\n\u003e ⚠️ **WARNING** ⚠️ - Proceed at your own risk.\n\u003e\n\u003e The setup here have been tweaked to cater my personal workflow.\n\u003e They don't suit everyone, so please review the code to make sure the dotfiles fit your setup.\n\nFirst, clone the repository with submodules. You can put it wherever you want.\n\n```sh\ngit clone --recurse-submodules --remote-submodules https://github.com/pmmmwh/dotfiles.git\ncd dotfiles\n```\n\nThen, set [the bootstrap script](./bootstrap) as executable and run it.\nIt will ensure the environment contains binaries needed for the setup (Git and GNU Stow).\n\n```sh\nchmod u+x bootstrap\nbootstrap\n```\n\nThe environment is now properly setup and ready to go.\n\n### macOS\n\nIf you're using macOS, you can also setup a few extra things.\n\nSetting some sensible macOS defaults with [`settings.zsh`](./@macos/settings.zsh).\n\n```sh\nchmod u+x @macos/settings.zsh\n@macos/settings.zsh\n```\n\nInstalling binaries and apps (via [`Homebrew`](https://brew.sh) and [`mas`](https://github.com/mas-cli/mas)) with [`brew.zsh`](./@macos/brew.zsh):\n(The actual list is in the [`Brewfile`](./@macos/Brewfile))\n\n```sh\nchmod u+x @macos/brew.zsh\n@macos/brew.zsh\n```\n\n## Operations\n\n### Customisation\n\nIf you want to customise the setup, you can add `.zsh` files within the [`.zshcustom`](./zsh/.zshcustom) folder.\nIt has been set as the \"custom\" directory for `Oh My Zsh`, so any `.zsh` files inside will be automatically sourced.\n\n### Reverting\n\nIf you do not like the setup and would like to revert the changes it did, you can run the teardown script.\nIt will remove any symlinks created by the bootstrap process.\n\n```sh\nchmod u+x teardown\nteardown\n```\n\n### Updating\n\nTo update, go to your local `dotfiles` repository and run the teardown script.\nThen, re-run the bootstrap script -\nit will then pull in the latest changes and re-run the whole setup process.\n\n```sh\ncd dotfiles\nteardown\nbootstrap\n```\n\n## Structure\n\nThe project have been structured as Stow packages and named with a specific convention in mind:\n\n- `lowercase` for anything to be symlinked to `$HOME`\n- a leading `@` for anything dependent on the installation operating system\n- a leading `_` for anything that should not be symlinked (i.e. not a Stow package.)\n\nExternal packages are applied using Git Submodules.\nHere's a list of all dependencies pulled in:\n\n- [`evalcache`](https://github.com/mroth/evalcache)\n- [`tpm`](https://github.com/tmux-plugins/tpm)\n- [`zsh-completions`](https://github.com/zsh-users/zsh-completions)\n\n## Acknowledgements\n\n- [Github does dotfiles](https://dotfiles.github.io)\n- [Dotfiles](https://github.com/mathiasbynens/dotfiles) by [@mathiasbynens](https://github.com/mathiasbynens),\n  which is an amazing starting point for custom dotfiles\n  (also contains the amazing `~/.macos` script!)\n- [Dotfiles](https://github.com/Kraymer/F-dotfiles) by [@Kraymer](https://github.com/Kraymer),\n  which inspired me to use GNU Stow for dotfiles management\n- [Dotfiles](https://github.com/driesvints/dotfiles) by [@driesvints](https://github.com/driesvints),\n  which introduced me to tools like `mackup` and `mas` to manage apps and preferences\n- [Dock.sh](https://gist.github.com/kamui545/c810eccf6281b33a53e094484247f5e8) by [@kamui545](https://github.com/kamui545),\n  which is used here to programmatically setup the macOS Dock\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpmmmwh%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpmmmwh%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpmmmwh%2Fdotfiles/lists"}