(1.2) New Windows default installation directory goes against convention

Looking at the release notes for 1.2 I saw this change:

Windows SDK: Default install location changed to $USER/Documents

Presumably this is to avoid the problem where Playdate/Disk, a folder with user data, was previously put into Program Files with the rest of the installation and caused permissions issues, since Windows requires elevation to make any changes inside Program Files.

However, a user’s Documents folder is very much the wrong place to put “user programs” (things you don’t want to or can’t put in C:/Program Files).

Convention says those kinds of programs should go into a user’s C:/Users/[username]/AppData/Roaming folder. Other SDKs (especially ones written with Linux-style internal folder structures or can’t be bothered to care how Windows works) will install directly to the root of C:/, which is silly but also an established convention.

The ideal solution is for the SDK to be installed to C:/Program Files/Playdate as before, while putting just the Disk folder inside C:/Users/[username]/AppData/Roaming/Playdate. This allows users to clear/modify their user data without messing with the SDK installation, for multiple users to have their own user data without having to reinstall the SDK for each user, and for the installer to update or repair itself without messing with any user data.

2 Likes