My Windows Save

🐱‍💻 The system setup that makes my computing experience awesome

Project README

My super awesome Windows 10 🐱‍🐉

The system setup that makes my computing experience awesome

say thanks badge

desktop

Disclaimer

It's been a while since I've used a Windows machine for my daily tasks (2018). Nowadays I use a Macbook, mostly due to work reasons.

Still, if I were to use Windows, all of here probably would apply. 😄

Table of Contents

Applications

I use BoxStarter in order to automate the installation of most of my applications. The process usually goes like this:

  • Install BoxStarter with . { iwr -useb https://boxstarter.org/bootstrapper.ps1 } | iex; Get-Boxstarter -Force
  • Run the BoxStarter script of this repo with Install-BoxstarterPackage -PackageName https://raw.githubusercontent.com/NickSeagull/my-windows/master/boxstarter/System-Init.ps1 -DisableReboots

The apps listed in this repo follow the following convention:

  • ✅ The app is successfully automated with BoxStarter
  • 👜 The app needs to be installed manually from the Windows store
  • ⚠ The app needs to be installed manually from its website

Productivity

spacedesk - Use my Surface Pro 6 as second screen

not the prettiest screen

  • I use a Surface Pro 6 as my secondary system that acts as a laptop/tablet
  • In some moments, I require a second screen, so spacedesk allows me to use it as a screen when I'm working at my desktop

AutoHotKey - General automation

  • AHK provides a scripting language that allows you to automate most of the things in Windows. From remapping keys, to moving the mouse, you can automate everything.
  • I have used AHK extensively in the past and I even created bots for online games with it (yes, I was THAT guy, but not always). You can imagine the power of this tool now.

Notion - All organizer

  • Notion is a software masterpiece, it makes organization seem very simple
  • Replaces a lot of tools like Evernote, Google Sheets, etc..
  • I use it mainly to organize my personal stuff

notion screenshot

1password - Password management

  • Having the same password for all the sites is a very bad practice. I learnt this once a friend's Steam account got hacked, and with it, his email, Facebook, and everything.
  • Thanks to passwords managers like this one, I don't even need to remember my passwords.
  • For some reason, chocolatey doesn't install this properly, and it always fails.

Espanso - Text expansions

  • I try to avoid typing the typical stuff, like my name, address, etc... Espanso helps me with this task
  • Also, I don't like using acronyms, so I can automatically expand them.
  • You can find the expansions here

Simple Mind - Mind mapping

  • I use Simple Mind to brainstorm around how can I break down a problem into smaller ones

simple mind screenshot

Transmission - Torrent client

  • I use this client to share files from time to time, very minimal one, which I like.

Pennywise - Floating windows

  • Very useful for watching videos while doing other stuff
  • It's like having the ability to listen to a podcast while being able to peek into what the speaker is saying

Coding

Visual Studio Code - My main code editor

Microsoft Terminal - Terminal emulator

👜 Windows Subsystem for Linux - Run Linux apps natively on Windows

  • Not really an app, but it needs to be installed, so it goes on this list. The chocolatey package didn't work for me, so I have to install it manually.
  • WSL allows running Linux apps on Windows, interoperating with your current files, etc... So it is a much better experience than a Virtual Box, or alike.

Docker Desktop - Containerization of apps

VcXsrv - X11 server for Windows

  • VcXsrv is great, it allows you to run graphical Linux apps on Windows thanks to the X11 protocol, make sure to:
    • export DISPLAY=:0 in the shell rc file (this is already done in my Nix config)
    • Save the VcXsrv settings to a safe folder, and add a link into the shell:startup directory.
  • If some fonts are not being rendered, it is because in VcXsrv you have to:
    • Install them inside WSL with your regular installation method (it probably includes using fc-cache)
    • Download them for Windows, and add them to the C:\Program Files\VcXsrv\fonts directory

Social

Slack - Work chat

  • I use Slack mainly for work, although I also chat from time to time in the Functional Programming one

✅ Discord - Leisure chat

  • I like playing online games, and from time to time, I socialize in them, meaning that I have to talk to people, so I use Discord
  • On the other hand, it also allows me to talk with people from some developer communities, like AutoHotKey.

discord screenshot

👜 Unigram - A Telegram client optimized for Windows 10

  • The regular Telegram client has some issues with DPI scaling, meaning that if I move the window from my 1080p monitor to the Surface one, it'll stay with the same resolution. This doesn't happen with Unigram, and I get integrated notifications.

Music

Spotify - Music player

  • I use Spotify on a daily basis. I love listening to many kinds of music, and specially, discovering new songs.

Command Line Apps

I use most of my command line apps from WSL, apart from a few ones described here:

Windows CLI apps

chocolatey - An apt/brew for Windows

bat - A cat(1) clone with wings

watchexec - Executes commands in response to file modifications

RunInBash - Aliases $ to run any command in WSL

WSL CLI apps

fontconfig - Font Cache updater

  • For some reason fontconfig is not installed by default in WSL Ubuntu 18.04, so I have to install it with apt

nix - A purely functional package manager

  • I install Nix by adding the following to /etc/nix/nix.conf

    sandbox = false
    use-sqlite-wal = false
    

    And by then running curl https://nixos.org/nix/install sh

home-manager - User environment management

  • Note: Install using 19.09 as the channel, instead of master.
  • I install most of my WSL CLI apps using Nix, and I manage them declaratively using home-manager
  • I can easily add packages to my home.nix file, and then run home-manager switch in order to get the newest environment.

Link Shell Extension - Context menu entry to create symlinks

  • Sometimes it is useful to create a symbolic link from a folder/file to another place. This is specially useful when dealing with configuration files that are checked in a version control system like Git.

Acknowledgements

Thanks to Nikita Voloboev for his awesome my-mac-os list, without it, this one wouldn't exist 🙏

Preferences

Set DNS to DNS.Watch

  • Docker has issues with the default DNS provided with Windows 10, to set it to DNS.Watch's servers, follow this guide.
Open Source Agenda is not affiliated with "My Windows" Project. README Source: NickSeagull/my-windows
Stars
94
Open Issues
1
Last Commit
1 year ago

Open Source Agenda Badge

Open Source Agenda Rating