Files
windows-builder/README.md
2026-06-02 03:37:09 -07:00

9.4 KiB

TinyWindowsImage

Scripts to build trimmed-down Windows 10 and 11 images - now in PowerShell!

Original Project

This project is based on the excellent work by ntdev from GitHub. The original tiny11builder can be found at: ntdevlabs/tiny11builder

Custom Enhancements

This fork includes several enhancements and new features:

🆕 TinyWindowsMaker.ps1 - Universal Launcher

  • Auto-Detection: Automatically detects Windows 10 vs Windows 11 from ISO files
  • ISO Support: Can mount and analyze ISO files directly (no manual mounting required)
  • Smart Routing: Automatically runs the correct maker script based on detected version
  • Parameter Passthrough: Forwards all parameters to the appropriate script
  • Flexible Input: Supports ISO file paths, drive letters, or interactive selection

🔧 Enhanced Scripts

  • Windows 10 Support: Added tiny10maker.ps1 with Windows 10-specific optimizations
  • Improved ESD Handling: Fixed duplicate image index prompts when converting from install.esd
  • Multi-Image Export: Support for exporting all images from install.wim to install.esd
  • Additional Format Support: Enhanced support for both .wim and .esd additional images
  • Robust File Operations: Enhanced ownership handling for Edge/OneDrive removal

🏗️ Software Bundling System

  • MultiStaller: Terminal-based Python application (compiled to executable)
  • Configuration-Driven: Uses YAML config files (user.yml, machine.yml, etc.)
  • Bundled Software: Includes pre-packaged popular applications
  • Custom URLs: Support for installing software from custom download URLs
  • Automated Deployment: Runs during Windows setup for silent installation

🎨 Visual Enhancements

  • Custom Boot Graphics: Replaced Windows setup backgrounds
  • Custom Cursors: Included Posy's cursor theme
  • Custom Wallpapers: Enhanced default wallpaper selection

🛡️ Security & Privacy

  • Enhanced Telemetry Blocking: More comprehensive privacy settings
  • Improved Ad Suppression: Better removal of sponsored content
  • OneDrive Integration Control: Enhanced OneDrive removal and policy settings

Usage

Quick Start with TinyWindowsMaker

# Auto-detect and process an ISO file
.\TinyWindowsMaker.ps1 -windowsisopath "C:\Windows11.iso"

# Use with already mounted drive
.\TinyWindowsMaker.ps1 -windowsisopath "D:"

# Interactive mode (will prompt for ISO path)
.\TinyWindowsMaker.ps1

Direct Script Usage

# Windows 11
.\tiny11maker.ps1 -windowsisopath "D:" -imageindex "1"

# Windows 10  
.\tiny10maker.ps1 -windowsisopath "D:" -imageindex "1"

Original Features

This is a script created to automate the build of streamlined Windows 10 and 11 images, similar to tiny11. The main goal is to use only Microsoft utilities like DISM, and no utilities from external sources. The only executable included is oscdimg.exe, which is provided in the Windows ADK and it is used to create bootable ISO images. Also included is an unattended answer file, which is used to bypass the Microsoft Account on OOBE and to deploy the image with the /compact flag.

Also includes tiny11 core builder! A more powerful script, designed for a quick and dirty development testbed. Just the bare minimum, none of the fluff. This script generates a significantly reduced Windows image. However, it's not suitable for regular use due to its lack of serviceability - you can't add languages, updates, or features post-creation. tiny11 Core is not a full Windows substitute but a rapid testing or development tool, potentially useful for VM environments.

Requirements

  • PowerShell 5.1 or later
  • Administrator privileges
  • Windows 10/11 ISO file or mounted DVD
  • At least 8GB free disk space

Installation Instructions

  1. Download Windows 10 or 11 from the Microsoft website

  2. Option A: Use TinyWindowsMaker (Recommended)

    .\TinyWindowsMaker.ps1 -windowsisopath "C:\path\to\your\windows.iso"
    
  3. Option B: Manual Method

    • Mount the downloaded ISO image using Windows Explorer
    • Note the drive letter where the image is mounted
    • Run the appropriate script:
      .\tiny11maker.ps1 -windowsisopath "D:"  # For Windows 11
      .\tiny10maker.ps1 -windowsisopath "D:"  # For Windows 10
      
  4. Select the SKU that you want the image to be based on

  5. Sit back and relax :)

  6. When completed, you will see the output ISO in the script folder

PowerShell Execution Policy

Since this is written in PowerShell, you need to set the execution policy to Unrestricted:

Set-ExecutionPolicy unrestricted

Run this as administrator in PowerShell before running the scripts, otherwise they will crash.

What is removed

Standard tiny11/tiny10:

  • Clipchamp
  • News
  • Weather
  • Xbox (although Xbox Identity provider is still here, so it should be possible to be reinstalled with no issues)
  • GetHelp
  • GetStarted
  • Office Hub
  • Solitaire
  • PeopleApp
  • PowerAutomate
  • ToDo
  • Alarms
  • Mail and Calendar
  • Feedback Hub
  • Maps
  • Sound Recorder
  • Your Phone
  • Media Player
  • QuickAssist
  • Internet Explorer
  • Tablet PC Math
  • Edge
  • OneDrive

For tiny11 core:

  • All of the above +
  • Windows Component Store (WinSxS)
  • Windows Defender (only disabled, can be enabled back if needed)
  • Windows Update (Windows Update wouldn't work anyway without WinSxS, so enabling it would only put the system in a state where it would try to update but fail spectacularly)
  • WinRE

Keep in mind that you cannot add back features in tiny11 core!

You will be asked during image creation if you want to enable .NET 3.5 support!

Software Bundling

This enhanced version includes a comprehensive software bundling system powered by MultiStaller:

MultiStaller Features:

  • Terminal-Based Tool: Python application compiled to executable
  • YAML Configuration: Uses config files like user.yml, machine.yml, etc.
  • Bundled Applications: Pre-packaged installers for popular software
  • Custom Downloads: Support for installing from custom URLs
  • Silent Installation: Automated deployment during Windows setup

Available Software Packages:

  • Web Browsers: Chrome, Firefox, Ungoogled Chromium
  • Communication: Discord, Telegram
  • Media: VLC Media Player
  • Utilities: 7-Zip
  • And more!

How It Works:

  1. Configure desired software in YAML files
  2. MultiStaller reads configuration during Windows setup
  3. Downloads and installs selected applications automatically
  4. Supports both bundled installers and custom URLs

The MultiStaller tool provides flexible, configuration-driven software installation during Windows deployment.

Enhanced Features

TinyWindowsMaker Benefits:

  • No Manual Mounting: Directly process ISO files
  • Auto-Detection: Automatically determines Windows version
  • Error Prevention: Validates files before processing
  • Simplified Workflow: One command handles everything

Technical Improvements:

  • Robust Ownership Handling: Better file permission management
  • ESD Optimization: Improved handling of install.esd files
  • Multi-Image Support: Export all images from WIM to ESD
  • Enhanced Error Handling: More reliable operation

Known Issues

  1. Although Edge is removed, there are some remnants in the Settings. But the app in itself is deleted. You can install any browser using WinGet (after you update the app using Microsoft Store). If you want Edge, Copilot and Web Search back, simply install Edge using Winget: winget install edge.

    Note: You might have to update Winget before being able to install any apps, using Microsoft Store.

  2. Outlook and Dev Home might reappear after some time.

  3. If you are using this script on arm64, you might see a glimpse of an error while running the script. This is caused by the fact that the arm64 image doesn't have OneDriveSetup.exe included in the System32 folder.

Documentation

For more detailed information, see the documentation in the /docs/ folder:

Contributing

This project is open-source, so feel free to add or remove anything you want! Feedback is also much appreciated.

Credits

  • Original Creator: ntdev for the foundational tiny11builder
  • Enhancements: Custom modifications for improved functionality and Windows 10 support

Features Implemented in This Fork

TinyWindowsMaker universal launcher
Windows 10 support (tiny10maker.ps1)
Enhanced telemetry blocking
Improved ESD/WIM handling
Software bundling system
Multi-image export support
Robust file ownership handling
Custom boot graphics and themes

Future Features (From Original Roadmap)

  • More ad suppression
  • Improved language and arch detection
  • More flexibility in what to keep and what to delete
  • Maybe a GUI???

License

This project maintains the same open-source spirit as the original. Feel free to modify, distribute, and improve upon it!


Thanks for trying it and let me know how you like it!