{"id":17766438,"url":"https://github.com/jonz94/dotfiles","last_synced_at":"2025-03-15T12:30:38.148Z","repository":{"id":41038192,"uuid":"97728006","full_name":"jonz94/dotfiles","owner":"jonz94","description":"📜 The setup I run on every computer (Linux/macOS/Windows/WSL)","archived":false,"fork":false,"pushed_at":"2025-03-11T01:45:07.000Z","size":1339,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-14T20:51:16.425Z","etag":null,"topics":["dotfiles","neovim-configuration","powershell-profile","zsh-configuration"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"0bsd","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jonz94.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":"2017-07-19T14:46:11.000Z","updated_at":"2025-03-11T01:45:02.000Z","dependencies_parsed_at":"2023-10-14T18:55:33.978Z","dependency_job_id":"94ec5f44-a481-45de-8a2f-6e646a255849","html_url":"https://github.com/jonz94/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/jonz94%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonz94%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonz94%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonz94%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jonz94","download_url":"https://codeload.github.com/jonz94/dotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243730915,"owners_count":20338734,"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","neovim-configuration","powershell-profile","zsh-configuration"],"created_at":"2024-10-26T20:29:34.890Z","updated_at":"2025-03-15T12:30:37.253Z","avatar_url":"https://github.com/jonz94.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# jonz94's dotfiles\n\n- [Pre-Requirements](#pre-requirements)\n    - [Linux or WSL](#linux-or-wsl)\n    - [macOS](#macos)\n    - [Windows](#windows)\n    - [Note for Ubuntu/Linux to install latest git](#note-for-ubuntulinux-to-install-latest-git)\n    - [Note for WSL 1](#note-for-wsl-1)\n- [Bootstrap](#bootstrap)\n    - [Linux, macOS, and WSL 2](#linux-macos-and-wsl-2)\n    - [PowerShell on Windows](#powershell-on-windows)\n    - [WSL 1](#wsl-1)\n    - [CMD (Command Prompt) on Windows](#cmd-command-prompt-on-windows)\n\n## Pre-Requirements\n\n### Linux or WSL\n\n- Install `git` via package manager\n\n### macOS\n\n- Install `Homebrew`\n    - https://brew.sh/\n    - https://docs.brew.sh/Installation\n\n```shell\nxcode-select --install\n# or just install entire Xcode from Apple App Store\n\n/usr/bin/ruby -e \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)\"\n```\n\n- Then install `git` via `brew`\n\n```shell\nbrew install git\n```\n\n### Windows\n\n- Install `scoop` via powershell\n    - https://scoop.sh/\n\n```powershell\nSet-ExecutionPolicy RemoteSigned -scope CurrentUser\nirm get.scoop.sh | iex\n```\n\n- Install `mingit` or `git` via `scoop`\n\n    - `mingit`: minimal git for Windows\n\n    ```powershell\n    scoop install mingit\n    ```\n\n    - `git`: standard git\n\n    ```powershell\n    scoop install git\n    ```\n\n### Note for Ubuntu/Linux to install latest git\n\n- Latest `git` can be installed via **git-core ppa**\n    - https://launchpad.net/~git-core/+archive/ubuntu/ppa\n\n```shell\nsudo add-apt-repository ppa:git-core/ppa\nsudo apt update \u0026\u0026 sudo apt upgrade -y\nsudo apt install -y git\n```\n\n### Note for WSL 1\n\n\u003cdetails\u003e\n\n- Create `/etc/wsl.conf` inside the WSL system\n\n- Copy the content of [wsl.conf](wsl/wsl.conf) into `/etc/wsl.conf`\n\n- Restart WSL via the following powershell command (Administrator permissoin is required):\n\n```powershell\nnet stop LxssManager\n```\n\n- Or use [gsudo](https://github.com/gerardog/gsudo)\n\n    - Install `gsudo`\n\n    ```powershell\n    scoop install gsudo\n    ```\n\n    - Use `sudo` to get Administrator permission\n\n    ```powershell\n    sudo net stop LxssManager\n    ```\n\n\u003c/details\u003e\n\n## Bootstrap\n\n### Linux, macOS, and WSL 2\n\n- Clone this repo to your `~/dotfiles`\n\n    - via https\n\n    ```shell\n    git clone https://github.com/jonz94/dotfiles.git ~/dotfiles\n    ```\n\n    - or via ssh\n\n    ```shell\n    git clone git@github.com:jonz94/dotfiles.git ~/dotfiles\n    ```\n\n- Execute `bootstrap.sh` via `bash`\n\n```\ncd ~/dotfiles \u0026\u0026 bash bootstrap.sh\n```\n\n- Done 🎉\n\n### PowerShell on Windows\n\n- Clone this repo to `$HOME\\dotflies`\n\n    - via https\n\n    ```powershell\n    git clone https://github.com/jonz94/dotfiles.git $HOME\\dotfiles\n    ```\n\n    - or via ssh\n\n    ```powershell\n    git clone git@github.com:jonz94/dotfiles.git $HOME\\dotfiles\n    ```\n\n- Execute `bootstrap.ps1` script\n\n    - for powershell version \u003c 7\n\n    ```powershell\n    cd ~\\dotfiles; .\\bootstrap.ps1\n    ```\n\n    - for powershell version \u003e= 7\n\n    ```powershell\n    cd ~\\dotfiles \u0026\u0026 .\\bootstrap.ps1\n    ```\n\n- Done 🎉\n\n### WSL 1\n\n\u003cdetails\u003e\n\n\u003e NOTE: ALL STEP SHOULD BE DONE INSIDE WSL 1!\n\n- Set `umask` to 0022\n\n```shell\numask 0022\n```\n\n- Clone this repo to `/c/Users/\u003cWindowsUserName\u003e/dotfiles`, this will make sure that all the files are save in **Windows file system**, also make sure that all files are using `LF` as EOL.\n\n    - via https\n\n    ```shell\n    git clone https://github.com/jonz94/dotfiles.git /c/Users/$(powershell.exe '$env:USERNAME' | tr -d $'\\r')/dotfiles\n    ```\n\n    - or via ssh\n\n    ```shell\n    git clone git@github.com:jonz94/dotfiles.git /c/Users/$(powershell.exe '$env:USERNAME' | tr -d $'\\r')/dotfiles\n    ```\n\n- **In WSL 1**, create a symbolic link via following command:\n\n```shell\nln -s /c/Users/$(powershell.exe '$env:USERNAME' | tr -d $'\\r')/dotfiles ~/dotfiles\n```\n\n\u003e These step are important! And the reason is [Do not change Linux files using Windows apps and tools](https://blogs.msdn.microsoft.com/commandline/2016/11/17/do-not-change-linux-files-using-windows-apps-and-tools/)\n\u003e\n\u003e If you want to use **both Windows Tools and Linux Tools** to changing some files or directories in WSL. The solution I found is:\n\u003e - Put those thing in Windows file system. (This makes Windows Tools happy.)\n\u003e - In WSL, **create a symbolic link** which points to file/directory in Windows file system. (This makes Linux Tools happy.)\n\n- Execute `bootstrap.sh` via `bash` to settting up WSL.\n\n```shell\ncd ~/dotfiles \u0026\u0026 bash bootstrap.sh\n```\n\n- Done 🎉\n\n\u003c/details\u003e\n\n### CMD (Command Prompt) on Windows\n\n1. Press \u003ckbd\u003eWin\u003c/kbd\u003e + \u003ckbd\u003er\u003c/kbd\u003e\n2. Type `regedit` and press \u003ckbd\u003eEnter\u003c/kbd\u003e\n3. Find `HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Command Processor`\n4. Add a new Key named `AUTORUN` (Type: String)\n5. Set `AUTORUN`'s value to `%USERPROFILE%\\dotfiles\\cmd\\jonz94.cmd`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonz94%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjonz94%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonz94%2Fdotfiles/lists"}