{"id":16790166,"url":"https://github.com/michelegera/dotfiles","last_synced_at":"2025-03-22T00:33:12.468Z","repository":{"id":53858824,"uuid":"42478066","full_name":"michelegera/dotfiles","owner":"michelegera","description":"👨‍💻 macOS dotfiles","archived":false,"fork":false,"pushed_at":"2024-10-27T16:02:53.000Z","size":1407,"stargazers_count":10,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-10-27T17:26:30.548Z","etag":null,"topics":["dotfiles","fish-shell","macos","preferences","vimrc"],"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/michelegera.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":".github/CODE_OF_CONDUCT.md","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":"2015-09-14T21:28:00.000Z","updated_at":"2024-10-27T16:02:56.000Z","dependencies_parsed_at":"2023-09-24T16:06:59.876Z","dependency_job_id":"89a5abf0-973f-4072-854e-b438b25deb19","html_url":"https://github.com/michelegera/dotfiles","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michelegera%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michelegera%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michelegera%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michelegera%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/michelegera","download_url":"https://codeload.github.com/michelegera/dotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221820920,"owners_count":16886225,"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","fish-shell","macos","preferences","vimrc"],"created_at":"2024-10-13T08:29:08.735Z","updated_at":"2024-10-28T11:27:35.517Z","avatar_url":"https://github.com/michelegera.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [michelegera][github profile]’s dotfiles [![Build Status][ci badge]][ci link]\n\nThese are the base dotfiles that I start with when I set up a new environment.\nFor more specific local needs I use the `*.local` files described in the\n[Local Settings](#local-settings) section.\n\n## Table of Contents\n\n- [0️⃣ Before getting started](#before-getting-started)\n- [🔧 Setup](#setup)\n- [🎛 Customize](#customize)\n  - [🌍 Local Settings](#local-settings)\n    - [🐟 `~/.fishconfig.local`](#fishconfiglocal)\n    - [🐙 `~/.gitconfig.local`](#gitconfiglocal)\n  - [🔀 Forks](#forks)\n- [↕️ Update](#update)\n- [🥇 Acknowledgements](#acknowledgements)\n- [⚖️ License](#license)\n\n## Before getting started\n\nSome commands (e.g. `defaults write`) won’t work unless the terminal has full\ndisk access. To grant full disk access to the terminal, go to\n`System Settings \u003e Privacy \u0026 Security \u003e Full Disk Access` and add the terminal\nto the list of apps.\n\n## Setup\n\nTo set up the dotfiles run the appropriate snippet in the terminal:\n\n[!CAUTION]\n**DO NOT** run the `setup` snippet if you do not fully understand\n[what it does][setup]. Seriously, **DON’T**!\n\n```shell\nbash -c \"$(curl -LsS https://setup.dotfiles.michelegera.dev)\"\n```\n\nThat’s it! ✨\n\nThe setup process will:\n\n- Download the dotfiles on your computer (by default it will suggest\n  `~/Code/$(whoami)/dotfiles`)\n- Create some additional [directories][dirs]\n- [Symlink][symlink] the [Git][git], [prefs][prefs], and [shell][shell] files\n- Install [applications and command-line tools][installs]\n- Set custom [preferences][preferences] preferences\n\n## Customize\n\n### Local Settings\n\nThe dotfiles can be easily extended to suit additional local requirements by\nusing the following files:\n\n#### `~/.fishconfig.local`\n\nThe `~/.fishconfig.local` file will be automatically sourced after the standard\n[Fish configuration][fish], thus, allowing its content to add to or overwrite\nthe existing aliases, settings, `PATH`, environment variables etc.\n\nHere is an example:\n\n```shell\n# Set local aliases.\n\nalias g=\"git\"\n\n# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\n# Set environment variables.\n\nset -x NPMJS_AUTH_TOKEN xxxxxxxx\n\n```\n\n#### `~/.gitconfig.local`\n\nThe `~/.gitconfig.local` file will be automatically included after the\nconfigurations from `~/.gitconfig`, thus, allowing its content to overwrite or\nadd to the existing Git configurations.\n\n**Note:** Use `~/.gitconfig.local` to store sensitive information such as the\nGit user credentials, e.g.:\n\n```gitconfig\n[commit]\n\n    # Sign commits using GPG.\n    # https://help.github.com/articles/signing-commits-using-gpg/\n\n    gpgSign = true\n\n[user]\n\n    name = John Appleseed\n    email = john.appleseed@apple.com\n    signingKey = XXXXXXXX\n```\n\n### Set up GPG signing for Git commits\n\nFirst, make sure permissions are set correctly on the `.gnupg` directory:\n\n```shell\nchmod -R go= ~/.gnupg/\n```\n\nNext, import your private GPG key:\n\n```shell\ngpg --import \u003ckey-file\u003e\n```\n\nFinally, set `user.signingKey` in `~/.gitconfig.local` to the short id of your\nkey. You can find it by running:\n\n```shell\ngpg --list-secret-keys --keyid-format SHORT\n```\n\n### Forks\n\nIf you decide to [fork] this project, do not forget to substitute my username\nwith your own in the `setup` script.\n\n## Update\n\nTo update the dotfiles you can either run the [`setup` script][setup] or, if you\nwant to update one particular part, run the appropriate [`os` script][os].\n\n## Acknowledgements\n\nInspiration and code was taken from many sources, but mainly\n[Cătălin Mariș’ dotfiles][alrra]. Thank you for your amazing work!\n\n## License\n\nThe code is available under the [MIT license][license].\n\n\u003c!-- Link labels --\u003e\n\n[alrra]: https://github.com/alrra/dotfiles\n[ci badge]: https://github.com/michelegera/dotfiles/workflows/tests/badge.svg\n[ci link]: https://github.com/michelegera/dotfiles/actions\n[dirs]: src/os/create_directories.sh\n[fish]: src/shell/config/fish/config.fish\n[fork]: https://help.github.com/en/github/getting-started-with-github/fork-a-repo\n[git]: src/git\n[github profile]: https://github.com/michelegera\n[installs]: src/os/installs\n[license]: LICENSE.txt\n[os]: src/os\n[preferences]: src/os/preferences\n[prefs]: src/prefs\n[setup]: src/setup.sh\n[shell]: src/shell\n[symlink]: src/os/create_symbolic_links.sh\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichelegera%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmichelegera%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichelegera%2Fdotfiles/lists"}