{"id":25401937,"url":"https://github.com/nilesh2000/dotfiles","last_synced_at":"2026-04-11T11:05:11.377Z","repository":{"id":277609952,"uuid":"932976141","full_name":"Nilesh2000/dotfiles","owner":"Nilesh2000","description":"Dotfiles are how you customize your system. These are mine.","archived":false,"fork":false,"pushed_at":"2025-04-10T05:54:54.000Z","size":341,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-26T17:52:13.153Z","etag":null,"topics":["dotfiles","macos"],"latest_commit_sha":null,"homepage":"https://nilesh2000.github.io/posts/dotfiles-and-stow/","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/Nilesh2000.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":"2025-02-14T21:51:23.000Z","updated_at":"2025-04-10T05:54:57.000Z","dependencies_parsed_at":"2025-04-12T08:59:21.222Z","dependency_job_id":null,"html_url":"https://github.com/Nilesh2000/dotfiles","commit_stats":null,"previous_names":["nilesh2000/dotfiles"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Nilesh2000/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nilesh2000%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nilesh2000%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nilesh2000%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nilesh2000%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nilesh2000","download_url":"https://codeload.github.com/Nilesh2000/dotfiles/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nilesh2000%2Fdotfiles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275844222,"owners_count":25538990,"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","status":"online","status_checked_at":"2025-09-18T02:00:09.552Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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"],"created_at":"2025-02-16T01:20:49.081Z","updated_at":"2025-09-18T22:31:41.607Z","avatar_url":"https://github.com/Nilesh2000.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dotfiles\n\n## Overview\nThis repository contains the dotfiles for setting up my macOS development environment from scratch. It includes settings for my Fonts, Git, Homebrew, Vim, VSCode, ZSH, and iTerm2, making system setup seamless and reproducible.\n\n## Prerequisites\n- macOS operating system\n- Terminal access\n- Internet connection\n\n## Features\n- **Zsh \u0026 Oh My Zsh**\n  - Custom `.zshrc` and `.zsh_aliases` with aliases and environment settings\n  - `zsh-autosuggestions` and `zsh-syntax-highlighting` plugins\n  - Kubernetes context in prompt\n  - Git-aware prompt\n- **Git Configuration**\n  - `.gitconfig` for global settings\n  - Delta for enhanced diffs\n  - Useful Git aliases\n- **VSCode Configuration**\n  - `settings.json` and `keybindings.json`\n  - Automatic installation of extensions\n  - Material theme and icons\n- **Vim Configuration**\n  - Syntax highlighting and line numbers\n- **Homebrew Package Management**\n  - `Brewfile` to install CLI tools and apps\n- **iTerm2 Configuration**\n  - Custom preferences stored in `com.googlecode.iterm2.plist`\n  - Auto-symlinked via `stow`\n  - Automatically loaded by iTerm2\n- **Fonts Management**\n  - Custom fonts stored in `dotfiles/fonts/`\n  - Automatically copied to `~/Library/Fonts/` during setup\n- **Automated Setup Scripts**\n  - **`bootstrap.sh`** for installing system dependencies (Xcode CLI, Homebrew, Git, Stow, and Oh My Zsh)\n  - **`install.sh`** for symlinking dotfiles and applying configurations\n  - Idempotent installation (safe to run multiple times)\n\n## Installation\n### **Step 1: Bootstrap the System**\nUse `curl` to fetch the script and run it:\n```sh\nsource \u003c(curl -fsSL https://raw.githubusercontent.com/Nilesh2000/dotfiles/main/bootstrap.sh)\n```\nThis script will:\n- Install **Xcode Command Line Tools**\n- Install **Homebrew** and packages\n- Install **Git**\n- Install **Stow** for dotfile management\n- Install **Oh My Zsh**\n- Clone the **dotfiles repository**\n\n### **Step 2: Apply Dotfiles**\nOnce the bootstrap script completes, run:\n```sh\ncd ~/dotfiles\n./install.sh\n```\nThis script will:\n- Symlink dotfiles using **Stow**\n- Restore **VSCode settings and extensions**\n- Install **Oh My Zsh plugins**\n- Copy **fonts to `~/Library/Fonts/`**\n- Apply **iTerm2 preferences**\n- Restart the **Zsh session**\n\n## Maintenance\n### **Updating Brewfile**\nTo update the list of installed Homebrew packages:\n```sh\nbrew bundle dump --file=~/dotfiles/brew/Brewfile --force --describe\n```\n\n### **Managing VSCode Extensions**\nTo save your installed extensions:\n```sh\ncode --list-extensions \u003e ~/dotfiles/vscode/extensions.txt\n```\n\n### **Managing Fonts**\nTo update or install new fonts:\n1. Add new font files (`.ttf`, `.otf`) to `~/dotfiles/fonts/`\n2. Run:\n   ```sh\n   cp -r ~/dotfiles/fonts/* ~/Library/Fonts/\n   ```\n\n### **Managing iTerm2 Preferences**\nTo sync iTerm2 settings across machines:\n1. Ensure iTerm2 loads preferences from the dotfiles directory:\n   - **iTerm2 → Preferences → General**\n   - Check ✅ **“Load preferences from a custom folder”**\n   - Set the path to `~/dotfiles/iterm2/`\n2. Symlink iTerm2 preferences:\n   ```sh\n   stow --target=$HOME/Library/Preferences iterm2\n   ```\n\n## Contributing\nFeel free to fork this repository and customize it for your needs. Pull requests for improvements are welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnilesh2000%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnilesh2000%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnilesh2000%2Fdotfiles/lists"}