Ask HN: How can I restore my desktop each time I restart?

2 points by mk4p ↗ HN
I'm on Windows 7 and it's kind of ridiculous that each time I restart, I do some manual configuration. e.g.,

- open 3 command prompts and move them where I like them to be - open Slack - open Chrome - open 2 Windows Explorers, moving & resizing when necessary (not always necessary) - open WebStorm, moving windows if necessary - reordering program buttons on taskbar

This is stuff I do every single time. Is there a good way to automate this?

7 comments

[ 3.2 ms ] story [ 18.7 ms ] thread
I use autohotkey (http://ahkscript.org). It can launch applications and resize and reposition windows.

  ; Autohotkey script
  ; This script binds <Windows+j> to function putty_open, which
  ; opens two ssh windows and moves them to the hardcoded
  ; coordinates below.
  ;
  ; "TASKS1" and "STUFF" are both putty profile names and
  ; window titles.

  #j:: putty_open()

  putty_open()
  {
    run c:\bin\putty -load TASKS1
    run c:\bin\putty -load STUFF
    WinMove TASKS1,,0,0
    WinMove STUFF,,0,612
    WinActivate TASKS1
    WinActivate STUFF
  }
Awesome. Thanks, @jimu -- I'll try this.
Yes, and for linux you can do somethign similar with startup-scripts.

I'd then use something like devilspie, kpie, or similar, to move the windows to known-good positions/virtual-screens/etc.

How about just put shortcuts for the applications you want in the Startup folder? They should launch automatically every time you start Windows. I don't use Windows much anymore and my Windows 7 machine is at home or I would double check for you. You can also run msconfig from the Run command to make changes to what applications load on startup and also modify the run command from there if you want it to start with specific options.
(comment deleted)
I've used VM's to just leave a configuration of tools for a project consistent across reboots. Outside of VM's I'll just leave things running until I really need to shut down. Independent of Windows, I increasingly prefer tiling Window managers like xmonad on Linux or Emacs anywhere...then I can just use a few keystrokes to get it the way I want...I have found that for me, the fiddly bits with the mouse are where the friction lies.