All Projects → mvdan → winup

mvdan / winup

Licence: BSD-3-Clause license
Automate a Windows 10 VM setup for coding and testing

Programming Languages

go
31211 projects - #10 most used programming language
powershell
5483 projects

Projects that are alternatives of or similar to winup

S2e
S2E: A platform for multi-path program analysis with selective symbolic execution.
Stars: ✭ 102 (+385.71%)
Mutual labels:  vm, automated
Vagrant Docker Vm
💻 Development Vagrant VM with Docker, Samba and Mail sandbox (customizable)
Stars: ✭ 97 (+361.9%)
Mutual labels:  development, vm
Streamsheets
An open-source tool for processing stream data using a spreadsheet-like interface.
Stars: ✭ 281 (+1238.1%)
Mutual labels:  development, automated
Drupal Vm
A VM for Drupal development
Stars: ✭ 1,348 (+6319.05%)
Mutual labels:  development, vm
Beetbox
Pre-provisioned L*MP stack
Stars: ✭ 94 (+347.62%)
Mutual labels:  development, vm
N8n
Free and open fair-code licensed node based Workflow Automation Tool. Easily automate tasks across different services.
Stars: ✭ 19,252 (+91576.19%)
Mutual labels:  development, automated
lift
🏋️‍♂️ Up your service locally.
Stars: ✭ 13 (-38.1%)
Mutual labels:  development
craftbox
Simple Ubuntu Vagrant box targeted for Craft developers -
Stars: ✭ 28 (+33.33%)
Mutual labels:  vm
starlight
[WIP] Yet another Erlang implementation in Rust
Stars: ✭ 33 (+57.14%)
Mutual labels:  vm
inside-vm
Detect if code is running inside a virtual machine (x86 and x86-64 only).
Stars: ✭ 32 (+52.38%)
Mutual labels:  vm
cassowary
Run Windows Applications on Linux as if they are native, Use linux applications to launch files files located in windows vm without needing to install applications on vm. With easy to use configuration GUI
Stars: ✭ 1,818 (+8557.14%)
Mutual labels:  vm
awesome-chromebook
Chromebook as development machine.
Stars: ✭ 57 (+171.43%)
Mutual labels:  development
multi-site-docker
A multi-site-docker configuration featuring nginx, php and mysql
Stars: ✭ 85 (+304.76%)
Mutual labels:  development
jpath.ru
Для разработчиков и опытных пользователей Joomla! CMS
Stars: ✭ 15 (-28.57%)
Mutual labels:  development
comfy-channel
A 24/7 live video broadcast with automatic content selection and overlays using FFMPEG and Python!
Stars: ✭ 37 (+76.19%)
Mutual labels:  automated
SNIPs
Secret Network Improvement Proposals (SNIPs) ✂️
Stars: ✭ 42 (+100%)
Mutual labels:  development
awesome-scripts
Set of scripts that can do awesome stuff for developers
Stars: ✭ 16 (-23.81%)
Mutual labels:  development
isolated-runtime
Run untrusted Javascript code in a multi-tenant, isolated environment
Stars: ✭ 21 (+0%)
Mutual labels:  vm
RSqueak
A Squeak/Smalltalk VM written in RPython.
Stars: ✭ 78 (+271.43%)
Mutual labels:  vm
json-server
Create a dummy REST API from a json file with zero coding in seconds
Stars: ✭ 34 (+61.9%)
Mutual labels:  development

winup

Archived: look at https://github.com/quickemu-project/quickemu instead.

Automate downloading and setting up a Windows 10 64-bit VM on VirtualBox.

Still a Work In Progress, so please file bugs.

Requirements

  • VirtualBox v6 with VT-x or alike
  • 4 GiB spare RAM recomended
  • 50 GiB spare SSD recommended

A decent CPU and internet connection are also recommended, as the process requires running Windows and downloading many large archives. TODO: add estimates of final time/disk/net usage.

Objectives

The final VM snapshot will be better than the original from Microsoft:

  • Fast: the live snapshot starts up in ~5s on my laptop
  • Usable: SSH access, including login as admin (TODO ssh part)
  • Idle: less bloatware, no telemetry, fewer background services

The final image has the users ieuser and administrator, both with the default password Passw0rd!.

It should also be trivial to install developer tools on the final VM, such as Git or Go. That's also a TODO for now.

Notes

The process currently relies on VirtualBox. I considered Vagrant, but did not want to add more dependencies. VirtualBox seems powerful and portable enough.

The initial VM setup steps happen with its virtual network unplugged, to keep Windows from installing random software, and to speed up the process.

If you have issues with VirtualBox on Linux, see the Arch Wiki page.

Development

The project is script-like, using panics and helper functions to keep the code short and readable. Almost all encountered errors stop the process, anyway.

Sleeps should be avoided at all costs. Waits and events are better than periodic polling, if possible.

Continuous Integration would be good, but I don't know a free service that's powerful enough. I don't have a desktop or server powerful enough lying around for the job.

License

All code in this repository is BSD-3 licensed; see LICENSE.

All other pieces of software, including the Windows 10 VM image, are not distributed with this git repository.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].