Skip to content

LAB02-Research/ScoopBoxManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub release (latest by date) License OS - Windows GitHub all releases buymeacoffee

ScoopBoxManager logo

ScoopBox Manager

ScoopBox Manager is a Windows-based application to prepare and launch Windows Sandbox instances, developed in .NET 6.

Click here to download the latest release.


Before starting, make sure you have Windows Sandbox enabled. For more info consult the docs, or use this PS script:

Enable-WindowsOptionalFeature -FeatureName "Containers-DisposableClientVM" -All -Online

Windows Sandbox is a way to launch applications, visit websites, test code, etc. within a secure and clean environment. This environment is a basic copy of your OS, running as a virtual machine. As soon as you close the sandbox, everything you've done and changed will be gone. Open a new one, and you'll get a fresh new copy.

That's also a bit of a setback: if you need some applications or frameworks installed for your tests, you'd have to reinstall them every time you launch a new sandbox. Or what if you want to access a local folder, for instance your application's debug output path?

@hasan-hasanov created a perfect library to deal with that; ScoopBox. It allows a developer to configure certain settings, and have the sandbox install predefined applications through the package managers Scoop and Chocolatey.

For those that aren't C# programmers, or if you want an easy way to configure your sandboxes (like me), I built a small graphical interface around ScoopBox:

Interface

It should be pretty self-explanatory, and you can find more info on the various settings in the ScoopBox readme, but I'll expand on some parts:

General configuration

The defaults are fine, but you can for instance disable networking to see how your applications handles it. When setting memory, 0 means the default.

Optional configuration

These are configured by ScoopBox, so there's usually no reason to change these.

Mapped folders

These are local folders that will show up in your sandbox, optionally readonly for added safety if you're testing potential malware.

Applications

A list of packages that will be installed. You can define which package manager per package; Scoop or Chocolatey. Please note that you need networking enabled for this, and depending on which and the amount of packages, it might take a few moments before everything's installed.

Storage

You can use the two buttons on the bottom-right to store and load multiple configurations. Whenever you launch a sandbox, the active settings are stored as the default (and loaded when you restart). So if it's just one set of config you use, you don't have to use them.

Logging

ScoopBox writes logfiles to the desktop of your sandbox. They contain info on what the package managers did, so if something's not installing, check those first.


If you need a cli tool to launch sandboxes, @hasan-hasanov built that as well: Boxer