All Articles

Setting up a new dev environment on Windows

A new dev environment!?

I thought it’s only appropriate to head to 2021 with a fresh laptop, and fresh set up! I’ve been a Mac user for years now for both personal and work purposes. However, I recently got my hands on a new Dell Windows computer with 1TB SSD/32GB RAM for a really good price and just couldn’t pass it up. I realized I haven’t been blogging as much as I want to, so this is my one post to ease myself back. It’s not so much security oriented, but rather how I like to set up my working environment on a Windows so it can run the usual stuffs: git, code, npm, docker…etc.

Setting up:

  • Install Windows Linux Subsystem
  • Install Hyper (https://hyper.is/)
  • Set default shell to Bash
  • Update packages and install zsh shell

    curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
    curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
    echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
    sudo apt-get update
    sudo apt install zsh git
  • Install oh-my-zsh (https://ohmyz.sh/)
  • Generate SSH key and add to ssh-agent

Install IDE

These are some of the IDE I enjoy. Depending on what I’m working on, whether coding or taking notes, these are my standard 3 go-tos:

  • Atom
  • Visual Studio Community Edition
  • PyCharm

I’d say that I use Atom the most. Some of the packages I often use with Atom are:

• Highlight-selected
• File-icons
• Pigments
• Minimap
• Todo-show
• Linter
• Atom-Beautify
• Auto-Detect-indentation
• Color-picker

At this point, I’ll be pretty happy to have my Git and a place to look at/run code. The rest of the software I usually like to install are: Docker, Microsoft Office Suites, and VMWare Workstation Pro. Then I’ll usually download a few more images to install and run off the VM instead of the host when it come to security/dev work.

Debugging

If you run into a permission error when trying to clone a Git project on the Linux Subsystem, here’s a fix that I found that worked:

  • Launch Ubuntu WSL
  • Create the file /etc/wsl.conf if it doesn’t exist
  • Open the file (e.g.: nano /etc/wsl.conf) and add the following lines:

    [automount]
    options = "metadata"
  • Save the file
  • Open Powershell -> Shutdown WSL launching wsl --shutdown
  • Relaunch Ubuntu WSL