{"id":19938146,"url":"https://github.com/2kabhishek/win2k","last_synced_at":"2025-04-14T17:11:35.441Z","repository":{"id":100264347,"uuid":"556065385","full_name":"2KAbhishek/win2k","owner":"2KAbhishek","description":"Ultimate Dev Setup for Windows 🪟🪄","archived":false,"fork":false,"pushed_at":"2024-07-06T05:19:13.000Z","size":361,"stargazers_count":97,"open_issues_count":0,"forks_count":5,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-14T17:11:31.214Z","etag":null,"topics":["cli","dev","developer-experience","dotfiles","eye-candy","neovim","oh-my-posh","powershell","tiling","tooling","vim","windows"],"latest_commit_sha":null,"homepage":null,"language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/2KAbhishek.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},"funding":{"github":"2kabhishek"}},"created_at":"2022-10-23T01:18:35.000Z","updated_at":"2025-04-04T19:50:48.000Z","dependencies_parsed_at":"2023-10-15T16:23:12.372Z","dependency_job_id":"efaccdc3-5bb0-4cc8-8b4e-242ea7f95e63","html_url":"https://github.com/2KAbhishek/win2k","commit_stats":null,"previous_names":["2kabhishek/winfiles"],"tags_count":0,"template":false,"template_full_name":"2KAbhishek/bare-minimum","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2KAbhishek%2Fwin2k","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2KAbhishek%2Fwin2k/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2KAbhishek%2Fwin2k/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2KAbhishek%2Fwin2k/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/2KAbhishek","download_url":"https://codeload.github.com/2KAbhishek/win2k/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248923765,"owners_count":21183953,"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":["cli","dev","developer-experience","dotfiles","eye-candy","neovim","oh-my-posh","powershell","tiling","tooling","vim","windows"],"created_at":"2024-11-12T23:38:30.545Z","updated_at":"2025-04-14T17:11:35.423Z","avatar_url":"https://github.com/2KAbhishek.png","language":"PowerShell","funding_links":["https://github.com/sponsors/2kabhishek"],"categories":[],"sub_categories":[],"readme":"\u003cdiv align = \"center\"\u003e\n\n\u003ch1\u003e\u003ca href=\"https://github.com/2kabhishek/win2k\"\u003ewin2k\u003c/a\u003e\u003c/h1\u003e\n\n\u003ca href=\"https://github.com/2KAbhishek/win2k/blob/main/LICENSE\"\u003e\n\u003cimg alt=\"License\" src=\"https://img.shields.io/github/license/2kabhishek/win2k?style=flat\u0026color=eee\u0026label=\"\u003e \u003c/a\u003e\n\n\u003ca href=\"https://github.com/2KAbhishek/win2k/graphs/contributors\"\u003e\n\u003cimg alt=\"People\" src=\"https://img.shields.io/github/contributors/2kabhishek/win2k?style=flat\u0026color=ffaaf2\u0026label=People\"\u003e \u003c/a\u003e\n\n\u003ca href=\"https://github.com/2KAbhishek/win2k/stargazers\"\u003e\n\u003cimg alt=\"Stars\" src=\"https://img.shields.io/github/stars/2kabhishek/win2k?style=flat\u0026color=98c379\u0026label=Stars\"\u003e\u003c/a\u003e\n\n\u003ca href=\"https://github.com/2KAbhishek/win2k/network/members\"\u003e\n\u003cimg alt=\"Forks\" src=\"https://img.shields.io/github/forks/2kabhishek/win2k?style=flat\u0026color=66a8e0\u0026label=Forks\"\u003e \u003c/a\u003e\n\n\u003ca href=\"https://github.com/2KAbhishek/win2k/watchers\"\u003e\n\u003cimg alt=\"Watches\" src=\"https://img.shields.io/github/watchers/2kabhishek/win2k?style=flat\u0026color=f5d08b\u0026label=Watches\"\u003e \u003c/a\u003e\n\n\u003ca href=\"https://github.com/2KAbhishek/win2k/pulse\"\u003e\n\u003cimg alt=\"Last Updated\" src=\"https://img.shields.io/github/last-commit/2kabhishek/win2k?style=flat\u0026color=e06c75\u0026label=\"\u003e \u003c/a\u003e\n\n\u003ch3\u003eUltimate Dev Setup for Windows 🪟🪄\u003c/h3\u003e\n\n\u003cfigure\u003e\n  \u003cimg src=\"images/screenshot.png\" alt=\"win2k in action\"\u003e\n  \u003cbr/\u003e\n  \u003cfigcaption\u003ewin2k in action\u003c/figcaption\u003e\n\u003c/figure\u003e\n\n\u003c/div\u003e\n\nwin2k is a set of handcrafted configs for setting up a complete dev environment on Windows.\n\nIt makes developing on Windows much more pleasant for CLI lovers.\n\n## ✨ Features\n\n- Can set up a complete dev environment within minutes\n- Full featured CLI dev environment on Windows (natively, without WSL!)\n- Shiny and extensible prompt with [oh-my-posh](https://ohmyposh.dev/) and [posh2k](https://github.com/2kabhishek/posh2k)\n- Powerful personalized editing with [nvim2k](https://github.com/2kabhishek/nvim2k)\n- Tiling window management with [komorebi](https://github.com/LGUG2Z/komorebi) and [whkd](https://github.com/LGUG2Z/whkd)\n- Modern and intuitive keybindings for Windows inspired by [tmux-tilit](https://github.com/2kabhishek/tmux-tilit)\n- Statusbar support with [yasb](https://github.com/denBot/yasb)\n- More!!\n\n## Setup\n\n### 🚀 Installation\n\n- Enable remote script execution (Only needed one time)\n\n```powershell\nSet-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser\n```\n\n- Install scoop\n\n```powershell\nInvoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression\n```\n\n- Install git (7zip and aria2 to help with scoop installations) if you haven't already\n\n```powershell\nscoop install aria2 7zip git\n```\n\n- Clone win2k\n\n```powershell\ngit clone --recurse-submodules https://github.com/2kabhishek/win2k\n```\n\n- Run setup in **Admin mode** (Press \u003ckbd\u003eWin\u003c/kbd\u003e + \u003ckbd\u003ex\u003c/kbd\u003e and select `Terminal (Admin)`)\n\n```powershell\ncd win2k\n.\\setup.ps1\n```\n\nThis will install all necessary packages, modules and setup symlinks for you.\n\nIf setup runs into errors, try running the command in admin mode again or run the command from `setup.ps1` manually.\n\n### 💻 Usage\n\n#### Windows Terminal\n\nIf you are having issues starting up Windows Terminal after the setup, you can try removing the folder:\n\n`C:\\Users\\\u003cyour-user-name\u003e\\AppData\\Local\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState`\n\n#### Git\n\nIt is recommended to setup git and GitHub before anything else.\n\n```powershell\ngit config --global user.name \"Your Name\"\ngit config --global user.email \"your@email.com\"\n\ngit config --global commit.gpgSign false #Disable GPG signing\n\ngh auth login #Login to github\n```\n\nIf you want to use GPG signing [check this](https://docs.github.com/en/authentication/managing-commit-signature-verification/adding-a-new-gpg-key-to-your-github-account)\n\n#### Neovim\n\nNext I would recommend setting up [nvim2k](https://github.com/2kabhishek/nvim2k)\n\n- Clone the repo in a appropriate location\n\n```powershell\ngit clone https://github.com/2kabhishek/nvim2k\n```\n\n- Setup symlink\n\n```powershell\nNew-Item -ItemType SymbolicLink -Path \"$env:LOCALAPPDATA\\nvim\" -Target \"$PWD\\nvim2k\" -Force\n```\n\n#### PowerToys\n\nI recommend using PowerToys to add some keybindings using the `Keyboard Manager`, for example:\n\n- Remap \u003ckbd\u003eCaps Lock\u003c/kbd\u003e to \u003ckbd\u003eEsc\u003c/kbd\u003e for quick access in vim\n- Remap \u003ckbd\u003eWin\u003c/kbd\u003e + \u003ckbd\u003eq\u003c/kbd\u003e to send \u003ckbd\u003eAlt\u003c/kbd\u003e + \u003ckbd\u003eF4\u003c/kbd\u003e for closing current window, using the Remap Shortcuts\n\nI also use the PowerToys Run launcher mapped to \u003ckbd\u003eWin\u003c/kbd\u003e + \u003ckbd\u003eSpace\u003c/kbd\u003e\n\n#### Tiling\n\nRun `StartTiling`/`StopTiling` on a Powershell prompt to control tiling.\n\n#### Status Bar\n\nYou can use yasb to show a status bar, similar to polybar.\nFollow instructions on [yasb](https://github.com/denBot/yasb) to set up.\n\nMy yasb configs are [here](https://github.com/2KAbhishek/win2k/tree/main/config/yasb)\n\n#### Fonts\n\nIf you want to try out other fonts, you can also use oh-my-posh to install fonts\n\nJust run `oh-my-posh font install` in an Admin window and select the font of your choice.\n\n#### More Tools\n\nI have intentionally kept the default list of packages to bare essentials.\n\nIf you want any other tools you can install them with scoop or winget.\n\n```powershell\n# Install VS Code\nscoop install code\n# Install winget\nscoop install winget\n```\n\nYou can also search for packages using `scoop search name`.\n\n#### Other Configs\n\nFor most tools I'm symlinking configs over from my main [dots2k](https://github.com/2kabhishek/dots2k).\n\nYou can do the same or plugin your own.\n\n## Behind The Code\n\n### 🌈 Inspiration\n\nI find working on Windows somewhat unpleasant, WSL although tries and fixes it, but it felt constrained.\n\nThat's why I decided to set up a dev environment using native windows tooling.\n\n### 💡 Challenges/Learnings\n\n- The main challenge was to figure out all the pieces of this puzzle and solving it.\n- Learned a lot about Powershell and did quite some scripting with it.\n- Learned more about the Windows ecosystem, different environment variables, configs etc.\n- Had lots of fun!\n\n### 🧰 Tooling\n\n- [dots2k](https://github.com/2kabhishek/dots2k) — Dev Environment\n- [nvim2k](https://github.com/2kabhishek/nvim2k) — Personalized Editor\n- [qute2k](https://github.com/2kabhishek/qute2k) — Personalized Browser\n- Powershell\n- Windows Terminal\n\n\u003chr\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cstrong\u003e⭐ hit the star button if you found this useful ⭐\u003c/strong\u003e\u003cbr\u003e\n\n\u003ca href=\"https://github.com/2KAbhishek/win2k\"\u003eSource\u003c/a\u003e\n| \u003ca href=\"https://2kabhishek.github.io/blog\" target=\"_blank\"\u003eBlog \u003c/a\u003e\n| \u003ca href=\"https://twitter.com/2kabhishek\" target=\"_blank\"\u003eTwitter \u003c/a\u003e\n| \u003ca href=\"https://linkedin.com/in/2kabhishek\" target=\"_blank\"\u003eLinkedIn \u003c/a\u003e\n| \u003ca href=\"https://2kabhishek.github.io/links\" target=\"_blank\"\u003eMore Links \u003c/a\u003e\n| \u003ca href=\"https://2kabhishek.github.io/projects\" target=\"_blank\"\u003eOther Projects \u003c/a\u003e\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F2kabhishek%2Fwin2k","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F2kabhishek%2Fwin2k","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F2kabhishek%2Fwin2k/lists"}