{"id":15699884,"url":"https://github.com/jarrodldavis/dotfiles","last_synced_at":"2025-07-02T16:35:00.861Z","repository":{"id":82560990,"uuid":"48784979","full_name":"jarrodldavis/dotfiles","owner":"jarrodldavis","description":"An installer script for Homebrew, other system dependencies, and important configuration files","archived":false,"fork":false,"pushed_at":"2025-05-07T05:38:09.000Z","size":1133,"stargazers_count":7,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-07T06:26:43.094Z","etag":null,"topics":["config","curl","dev-container","devcontainer","development-environment","development-tools","docker","dotfiles","dotfiles-linux","dotfiles-macos","git","github-codespaces","homebrew","homebrew-bundle","linux","linux-setup","macos","macos-setup","visual-studio-code"],"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/jarrodldavis.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,"zenodo":null}},"created_at":"2015-12-30T06:07:31.000Z","updated_at":"2025-05-07T05:38:13.000Z","dependencies_parsed_at":"2023-05-02T13:48:00.163Z","dependency_job_id":"e5aaddb7-3912-406a-84b7-45c14e7b1ae2","html_url":"https://github.com/jarrodldavis/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/jarrodldavis%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jarrodldavis%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jarrodldavis%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jarrodldavis%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jarrodldavis","download_url":"https://codeload.github.com/jarrodldavis/dotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253747780,"owners_count":21957803,"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":["config","curl","dev-container","devcontainer","development-environment","development-tools","docker","dotfiles","dotfiles-linux","dotfiles-macos","git","github-codespaces","homebrew","homebrew-bundle","linux","linux-setup","macos","macos-setup","visual-studio-code"],"created_at":"2024-10-03T19:41:59.865Z","updated_at":"2025-05-12T13:31:45.828Z","avatar_url":"https://github.com/jarrodldavis.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"# dotfiles\n\n\u003e An installer script for [Homebrew], other system dependencies, and important configuration files\n\n## Prerequisites\n\n- A UNIX-ish operating system, one of:\n  - macOS (tested with macOS Sonoma 14.7)\n  - Debian (tested with `bookworm` in [Visual Studio Code]'s [Development Containers])\n  - Others (untested)\n- dash or other POSIX-compatible shell (`/bin/sh`)\n- Bash (for [Homebrew] installation)\n- Zsh (for additional installation scripts)\n- curl (for automatic bootstrapping)\n- git (for manual installation)\n\nsh, Bash, Zsh, and curl are pre-installed on macOS.\n\n## Install\n\nThe installer script installs [Homebrew], clones this repository to `~/.dotfiles`, links important\nconfiguration files (\"dotfiles\") into their respective locations, and installs additional system\ndependencies using [Homebrew Bundle].\n\n### Automatic Boostrapping\n\nRun the following command to download and execute the bootstrap script.\n\n```sh\n/bin/sh -c \"$(curl -fsSL https://github.com/jarrodldavis/dotfiles/raw/main/install.sh)\"\n```\n\n### Manual Installation\n\nYou can manually clone this repository and run the `install.sh` script from that repository.\n\n```sh\ngit clone https://github.com/jarrodldavis/dotfiles.git ~/.dotfiles\n```\n\n```sh\ncd ~/.dotfiles\n```\n\n```sh\n./install.sh\n```\n\nAlternatively, you can copy the [contents of `install.sh`] to a file on disk and run it using\n`sh ./install.sh`.\n\n\u003e [!IMPORTANT]\n\u003e The installer script _always_ clones this repository to `~/.dotfiles`, even if it was\nmanually cloned to a different location.\n\n## Options\n\nAll installer options are specified as environment variables. Unless otherwise specified, the\npresence of an environment variable with a non-empty value enables the corresponding option; the\noption is disabled otherwise.\n\n```sh\nDOTFILES_REINSTALL=1 DOTFILES_SKIP_MAS=1 ./install.sh\n```\n\n\u003e [!WARNING]\n\u003e The installer script only checks for **any non-empty value** in an environment variable, so even\n\u003e typically \"falsy\" values like `0` or `NO` will enable the option.\n\n### `DOTFILES_REINSTALL`\n\nForce the removal and reinstallation of Homebrew and all Homebrew Formulae.\n\nHomebrew Casks are not fully removed, but will be adopted or overwritten upon reinstallation.\nVisual Studio Code extensions will not be removed, but any missing extensions will be reinstalled.\n\n### `DOTFILES_SKIP_MAS`\n\nOn macOS, skip installation of Mac App Store (`mas`) dependencies.\n\n## Maintenance\n\n\u003e [!NOTE]\n\u003e These maintenance actions are performed automatically on macOS before each commit using a git\n\u003e pre-commit hook.\n\n### Homebrew\n\n[Homebrew Bundle] is used to record the CLI tools (Homebrew Formulae), GUI applications\n(Homebrew Casks), and Visual Studio Code extensions that should be installed. To record the\ninstallation or removal of these system dependencies, update `configs/Brewfile` using\n`~/.dotfiles/scripts/update-homebrew-bundle.sh`.\n\n### Global `.gitignore`\n\n`configs/gitignore` can be updated to use the latest templates from [`github/gitignore`] using\n`~/.dotfiles/scripts/update-global-gitignore.sh`.\n\n[Homebrew]:                     https://brew.sh\n[Visual Studio Code]:           https://code.visualstudio.com\n[Development Containers]:       https://code.visualstudio.com/docs/remote/containers\n[contents of `install.sh`]:     https://github.com/jarrodldavis/dotfiles/raw/main/install.sh\n[Homebrew Bundle]:              https://github.com/Homebrew/homebrew-bundle\n[`github/gitignore`]:           https://github.com/github/gitignore\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjarrodldavis%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjarrodldavis%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjarrodldavis%2Fdotfiles/lists"}