Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mcecode/windows-dotfiles
The settings I use to set up a development environment on Windows machines.
https://github.com/mcecode/windows-dotfiles
dotfiles git git-bash vim vscode
Last synced: 3 months ago
JSON representation
The settings I use to set up a development environment on Windows machines.
- Host: GitHub
- URL: https://github.com/mcecode/windows-dotfiles
- Owner: mcecode
- License: mit
- Created: 2021-11-05T15:11:03.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-07-03T18:31:15.000Z (over 1 year ago)
- Last Synced: 2024-06-11T13:43:14.365Z (5 months ago)
- Topics: dotfiles, git, git-bash, vim, vscode
- Language: Shell
- Homepage:
- Size: 68.4 KB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - mcecode/windows-dotfiles - The settings I use to set up a development environment on Windows machines. (Shell)
README
# Windows Dotfiles
This repository contains the dotfiles that I use to set up a development environment on Windows using the following:
- [Visual Studio Code](https://code.visualstudio.com) (VSC), as the main editor
- [Vim](https://www.vim.org), as the secondary editor
- [Git Bash](https://gitforwindows.org/#bash), as the terminal
- [Fira Code](https://github.com/tonsky/FiraCode), as the main font
- [Git](https://git-scm.com), for version controlI manage these files using Git [bare repositories](https://git-scm.com/docs/gitglossary.html#Documentation/gitglossary.txt-aiddefbarerepositoryabarerepository). I got the idea from [Flavio Antelo's blog post](https://antelo.medium.com/how-to-manage-your-dotfiles-with-git-f7aeed8adf8b) who got it from [StreakyCobra on Hacker News](https://news.ycombinator.com/item?id=11070797).
## Installation on a new system
1. Install [VSC](https://code.visualstudio.com/Download) and make `code` available in your PATH.
2. Install [Git for Windows](https://git-scm.com/download/win) and make `git` available in your PATH.
3. Install [Fira Code](https://github.com/tonsky/FiraCode/releases). ([Instructions](https://github.com/tonsky/FiraCode/wiki/Installing#windows))
4. Use [Noto Emoji](https://github.com/googlefonts/noto-emoji/releases) to support emojis on Git Bash.You can follow [these instructions](https://github.com/mintty/mintty/wiki/Tips#installing-emoji-resources), but long story short, use [this link](https://downgit.github.io/#/home?url=https://github.com/googlefonts/noto-emoji/tree/main/png/128) from [DownGit](https://github.com/MinhasKamal/DownGit) to download the contents of [`noto-emoji/png/128`](https://github.com/googlefonts/noto-emoji/tree/main/png/128) and put them in any of the following directories:
- `%USERPROFILE%\.mintty\emojis\noto`
- `%USERPROFILE%\.config\mintty\emojis\noto`
- `%APPDATA%\mintty\emojis\noto`
- `%PROGRAMFILES%\Git\usr\share\mintty\emojis\noto`5. Using Git Bash, clone this repository into a `.dotfiles` directory in your home directory:
```console
git clone --bare https://github.com/mcecode/windows-dotfiles.git "$HOME/.dotfiles"
```6. Checkout the dotfiles from the bare repository:
```console
git --git-dir="$HOME/.dotfiles" --work-tree="$HOME" checkout
```7. Reload Git Bash to allow the settings to take into effect.
8. `%USERPROFILE%\.config\bash\.bashrc` adds the `dotfiles` alias to easily work with the dotfiles bare repository. Using this command, set `dotfiles status` to hide untracked files:```console
dotfiles config --local status.showUntrackedFiles no
```9. `%USERPROFILE%\.config\bash\.bashrc` also adds the `uxt` alias to easily update VSC extensions. Using this command, sync all VSC extensions in the new system:
```console
uxt sync
```10. Put any additional Bash settings like machine-specific variables and Git settings like user credentials in `%USERPROFILE%\.config\local\.bashrc` and `%USERPROFILE%\.config\local\.gitconfig`, respectively.
## Syncing the dotfiles
1. On the machine with the changes, run `dotfiles add ` and `dotfiles commit -m ""`.
2. On other machines, run `dotfiles pull`.## Syncing Visual Studio Code extensions
1. On the machine with the newly installed or uninstalled extensions, run `uxt list` to update `%USERPROFILE%\.vscode\extensions.txt` with the new set of extensions.
2. Commit and push `extensions.txt` using the `dotfiles` command.
3. Pull updates on other machines using the `dotfiles` command.
4. On other machines, run `uxt sync` to sync the VSC extensions.## Contributing
Suggestions are welcome, either in improving the dotfiles themselves or on how to store, update, and sync them better.
## License
Copyright 2021-present Matthew Espino
This project is licensed under the [MIT license](LICENSE).