{"id":26414918,"url":"https://github.com/gabeduartem/windows-bash-config","last_synced_at":"2025-06-14T12:06:40.520Z","repository":{"id":88745298,"uuid":"102784842","full_name":"GabeDuarteM/windows-bash-config","owner":"GabeDuarteM","description":"How to make zsh work on windows","archived":false,"fork":false,"pushed_at":"2017-09-15T16:37:06.000Z","size":14,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-18T00:16:58.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/GabeDuarteM.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}},"created_at":"2017-09-07T20:55:52.000Z","updated_at":"2017-09-19T03:08:13.000Z","dependencies_parsed_at":"2023-05-27T07:37:14.002Z","dependency_job_id":null,"html_url":"https://github.com/GabeDuarteM/windows-bash-config","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/GabeDuarteM/windows-bash-config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabeDuarteM%2Fwindows-bash-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabeDuarteM%2Fwindows-bash-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabeDuarteM%2Fwindows-bash-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabeDuarteM%2Fwindows-bash-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GabeDuarteM","download_url":"https://codeload.github.com/GabeDuarteM/windows-bash-config/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabeDuarteM%2Fwindows-bash-config/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259813014,"owners_count":22915199,"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":[],"created_at":"2025-03-18T00:16:45.977Z","updated_at":"2025-06-14T12:06:40.507Z","avatar_url":"https://github.com/GabeDuarteM.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Windows 10 bash config\n\n1. enable `Windows Subsystem for Linux (Beta)`\n2. inside bash, run:\n* `sudo apt-get install -y zsh`\n* `sh -c \"$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)\"`\n* edit `~/.zshrc`\n* change `ZSH_THEME` to `agnoster`\n* add the following to the end of the file:\n```\n# Removes username@computer from prompt\nDEFAULT_USER=$USER\n```\n* exit `~/.zshrc` and edit `~/.bashrc`\n* add the following lines\n ```\n# Launch Zsh\nif [ -t 1 ]; then\nexec zsh\nfi\n ```\n3. open powershell\n4. clone `https://github.com/powerline/fonts.git --depth=1`\n5. `cd fonts/`\n6. run .\\install.ps1 (if you get an error about `about_Execution_Policies`, open powershell as admin and run `Set-ExecutionPolicy Unrestricted` ([more info on that](https://docs.microsoft.com/pt-br/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-5.1\u0026viewFallbackFrom=powershell-Microsoft.PowerShell.Core)))\n7. open `regedit`\t\t\n8. go to `HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Console\\TrueTypeFont`\t\t\n9. add a new registry with the key `Meslo LG L DZ for Powerline` ([more info on that](https://www.howtogeek.com/howto/windows-vista/stupid-geek-tricks-enable-more-fonts-for-the-windows-command-prompt/))\t\t\n10. reboot the computer\t\t\n11. open bash and go to properties \u003e fonts \u003e change the font to `Meslo LG L DZ for Powerline`\n\n\n# Cmder config to work with zsh\n1. open the settings\n2. change the main console font to `Meslo LG L DZ for Powerline`\n3. change size to 18\n4. change unicode ranges to `Pseudographics: 2013-25C4;`\n5. go to `Startup \u003e Tasks` and add a new task `{bash::bash for windows}` with value `%windir%\\system32\\bash.exe -cur_console:p1`\n6. set the `{bash::bash for windows}` as default shell\n7. go to `Integration`\n8. set `command` to `/single -run {bash::bash for windows}`\n9. set `Icon file` to `\u003cPATH/TO/CMDER\u003e\\vendor\\conemu-maximus5\\ConEmu64.exe,0`\n10. click register\n11. go to `Main \u003e Appearance`\n12. uncheck `Enhance progressbars and scrollbars` under the `Appearance` group\n13. save settings\n\n# VSCode config to work with zsh\n1. add the following lines to `settings.json`\n```\n\"terminal.integrated.shell.windows\": \"C:\\\\Windows\\\\sysnative\\\\bash.exe\",\n\"terminal.integrated.lineHeight\": 1.6,\n\"terminal.integrated.fontFamily\": \"Meslo LG L DZ for Powerline\",  \n```\n\n# Warnings\n* Always use a linux environment to edit linux files, don't ever edit linux files from windows. If you do so, linux will stop recognizing the file. Edit windows files inside linux is allowed.\n* If you ever edit by accident a linux file inside windows, run the following commands:\n1. copy the contents of the edited file using windows, and paste to any other file\n2. deleted the file in windows\n3. touched the file in linux `touch \u003cPATH/TO/EDITED/FILE.txt\u003e`\n4. `sudo vim \u003cPATH/TO/EDITED/FILE.txt\u003e`\n5. `:set paste`\n6. `i`\n7. paste contents of old file into new file.\n8. press ESC and then `:wq`\n\n# Troubleshooting\n#### `command not found: ^M` error\nedit `~/.gitconfig` and remove the following lines:\n```\n[core]\n    autocrlf = true\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabeduartem%2Fwindows-bash-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgabeduartem%2Fwindows-bash-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabeduartem%2Fwindows-bash-config/lists"}