§Introduction
I recently ordered a Microsoft Surface Book 2 with Windows 10. The last time I used a Windows for something else than playing games was in 2006.
About the “why”, here are some reasons:
- to give a new trial, especially after seeing Microsoft becoming more and more “cool” company, in the Open-Source and Linux world,
- to get out of my routine/comfort zone,
- to be able to see how my different projects are running and are easily usable by a developer under Windows,
- to put the same shoes that people I will try to help with my apps and projects,
- for the challenge of having a very secure Windows configuration,
- that’s also why I chose this specific laptop model (Microsoft Surface Book 2), which is one with the worst repairability score on iFixit, and thus, one that is very resistant to physical attacks, such as cold-boot attacks,
- to have arguments if I need again to say that I don’t fit with Windows :)
I wrote this blog post while installing to try to be exhaustive. I hope this article can be useful for someone else trying to switch from Mac OS X to Windows, or for people interested in running Windows from a Security/Developer/Musician guy’s point-of-view.
(At least, it will be helpful for me for the next time I need to install a Windows machine.)
§Windows Install
- Disable anti-privacy options
- Disable Cortona
- Enable FaceID
- Use a strong password for the pin, not a short number
- Device encryption is now the default, well done Microsoft 👍
- When the install is done, reboot, log in, and let Windows download and install all the updates (multiple reboots)
§Apps & Settings
- Install Chrome using Edge, then change Chrome to the default browser
- Install Magic Trackpad if you want to use an Apple Trackpad
- I will probably remove it soon and use a standard mouse
- Install Microsoft Authenticator
- Install Slack
- Install Windows Subsystem for Linux
- Install Ubuntu 18.04 LTS
- Install Trello
- Install 1password
- Install Icloud for Windows
- I will probably remove it soon as it only syncs what I don’t care
- Install iTunes
- Install Spotify
- Install Visual Studio Code
- Install BitDefender Antivirus
- I’m not sure if it’s the best one yet
- Install OpenVPN
- Install Docker
- Install Cmder (iTerm alternative)
- Install Aquasnap (Windows Tiling Software)
- Install Microsoft Phone Companion
- Install Google Drive File Stream
- Install Firefox
- Install VLC
- Install Reason
- Install Whatsapp
- Install Kali Linux
- Install Telegram
- Install Facebook messenger
- Install RescueTime
- Install Netflix
- Install Microsoft Wireless Display Adapter
- Uninstall Games & other useless apps: xbox, microsoft useless
- Install Docker within WSL
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
sudo usermod -aG docker moul
sudo apt-get install -y python python-pip
pip install --user docker-compose
- Update WSL mount-path for docker volume, see instructions.
- Install GO within WSL
mkdir -p /c/go
echo "export GO_PATH=/c/go" >> ~/.bashrc && source ~/.bashrc
sudo ln -s /c/go /go
ln -s /c/go ~/go
sudo add-apt-repository ppa:gophers/archive && sudo apt update && sudo apt install golang-1.11
- Install GO within Windows to be able to develop with VSCode
- Install Sonos
- Install Pomodone
- Configure SSH
- Generate a new keypair
- I generated thousands ones using patfind so I can choose one with a cool pattern (totally useless)
seq 0 1000 | parallel --nice 19 'echo {}; ssh-keygen -o -a 100 -t ed25519 -P changeme -q -f ./id_ed25519_{} -C "m@42.am"'
- I generated thousands ones using patfind so I can choose one with a cool pattern (totally useless)
- Generate a new keypair
- Install FluentTerminal
- Install Keybase
- Install Signal
- Install Termius
- Nothing to install for Yubikey support
§Not yet installed/tried
- Affinity Designer or equivalent
- Something that synchronizes screenshots in a Cloud Folder
- Cinema 4D
- Traktor
- Lantern
- Luxafor
- OpenVPN / Shimo alternative
- A good weather app, with rain notifications
- FullContact
- Airplay client
- Steam
- Mailplane
- Notes.app
- Encfs
- Brain FM
- Reason
- Pixelmator
- Inet
- Kaleidoscope
- Webex
§Problems & Missing stuffs
- Keyboard binding is hardcore
- The default Trackpad is bad
- Using an Apple Trackpad in Bluetooth is worst
- even with custom driver
- The Update system is annoying
- The Driver system is complicated
- I miss Quick Look
- I miss Alfred.app
- I miss the tree view mode of the Finder
- I miss iTerm (I tried multiple alternatives, the best fit for now is the terminal built-in Visual Studio Code)
- I miss Mailplane.app
- I miss iMessages and other synchronicity applications with my iPhone
- I miss the Screenshots keyboard shortcuts
- I miss Notes.app
§Good surprises
- WSL is wonderful
- but slow, with strange linking between the Windows filesystem and Linux
- Paint 3D is fun (and sometimes useful)
- Microsoft SongSmith is brilliant
§Further Readings
- https://medium.com/short-stories-on-software/surprisingly-software-development- on-windows-is-awesome-now-82251d66991a
- https://gingter.org/2016/11/16/running-windows-10-ubuntu-bash-in-cmder/
- https://github.com/felixrieseberg/windows-development-environment
- https://medium.com/short-stories-on-software/fixing-docker-to-run-smooth-on-windows-9e71dcc7c128
- https://qz.com/1350832/theres-never-been-a-better-time-to-switch-from-macs-to-windows/
- https://nickjanetakis.com/blog/setting-up-docker-for-windows-and-wsl-to-work-flawlessly
- https://www.brianketelsen.com/my-cross-platform-dev-setup-on-surface-laptop/
- https://nickjanetakis.com/blog/setting-up-docker-for-windows-and-wsl-to-work-flawlessly#ensure-volume-mounts-work