https://github.com/michaelfromyeg/dotfiles
🧑💻 The dotfiles I'm currently using!
https://github.com/michaelfromyeg/dotfiles
dotfiles nvim powershell vim windows
Last synced: 3 months ago
JSON representation
🧑💻 The dotfiles I'm currently using!
- Host: GitHub
- URL: https://github.com/michaelfromyeg/dotfiles
- Owner: michaelfromyeg
- License: mit
- Created: 2020-04-19T22:50:40.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2025-03-21T18:17:50.000Z (3 months ago)
- Last Synced: 2025-03-21T19:26:23.455Z (3 months ago)
- Topics: dotfiles, nvim, powershell, vim, windows
- Language: Shell
- Homepage:
- Size: 4.61 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Dotfiles
This repository includes the dotfiles I use for (cross-platform) Neovim, Visual Studio Code, Cursor, (Windows) WSL 2, Windows Terminal, PowerShell, (macOS) Ghostty.
> ⚠️ This is a work-in-progress!
There's one entry point for all of my setup `run.sh`. It can, in turn, run scripts in `scripts/`.
Some of the scripts I have today...
- `test`, for sanity
- `neovim`, to build `neovim` from source
- `env`, to set up my development environment
- On Linux,
- On macOS,
- or on WindowsPlus some config files under `dotfiles/` and `config/`.
- The `vscode.json` is a read-only copy, since Visual Studio Code natively handles settings sync
## Prerequisites
- On Windows
- Install WSL via the Microsoft Store
- Install Ubuntu (or another instance of choice) similarly
- (To install Windows GUI applications...)
- Go to PowerShell, run `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser`, `cd ~`, `winget install --id=Git.Git -e`
- Clone this repository to `~/code` on the Windows filesystem, and run `.\dotfiles\scripts\ui.ps1`
- Let that run in the background while you do the rest
- Open Ubuntu, and switch to the Linux instructions below
- On macOS
- Run `xcode-select --install`
- Clone this repository to `~/code`
- `chmod +x scripts/*.sh`
- Run `scripts/ui.sh`
- On Linux
- `sudo apt install git`
- Clone this repository to `~/code`
- `chmod +x scripts/*.sh`
- Run `scripts/ui.sh`## Usage
Everything should be run through the `run.sh` harness. This universally takes care of argument parsing and provides some helpful guards.
Depending on your operating system, it'll call the appropriate script (`.sh` for POSIX systems, or `.ps1` for Windows).
To access `run.sh`, call it like...
```plaintext
# on macOS or Linux
bash ~/code/dotfiles/run.sh --dry
bash ~/code/dotfiles/run.sh test --drier
bash ~/code/dotfiles/run.sh# on Windows
# NOTE: on Windows it's okay to run `ui.ps1` "directly" (i.e., via PowerShell)
wsl bash -c "~/code/dotfiles/run.sh --dry"
wsl bash -c "~/code/dotfiles/run.sh test --drier"
wsl bash -c "~/code/dotfiles/run.sh"
```To get going initially, you'll want to run `run.sh env` to set up your environment.
Running the `env.sh` script will make the run script accessible everywhere, under `dotfiles`. For example, `dotfiles test` will output the test script!
## Window Managers
- Fancy Zones on Windows
- TODO(michaelfromyeg): go through [this guide](https://learn.microsoft.com/en-us/windows/powertoys/fancyzones)
- Rectangles on macOS