Commit Graph
38 Commits
Author SHA1 Message Date
CodingWondersandGitHub 297b3079e5 Fix slop remains (#4640)
* Fix slop remains

Chris likes to vibe code. AI likes to use different types of dashes (em-dashes, en-dashes), instead of regular dashes (-).

On PowerShell 7 this appears to work. The parser doesn't care. But, what about PowerShell 5? It begins throwing errors about the ampersand. Loading it in the ISE reveals how it stops parsing the syntax correctly when it encounters em-dashes. Rather than displaying them as such, the ISE displays them as —.

Chris, if you want to vibe code, I don't mind. But at least use regular dashes.

Anyway, I won't fix the AI code. I just want to make it work on my beloved powershell 5.

* Apparently this file is important
2026-06-08 09:43:04 -05:00
CodingWondersandGitHub 21273bd3a8 [Tweaks] New tweak for unsigned RDP files (#4374)
* [Tweaks] New tweak for unsigned RDP

* Merge branch 'main' into tweaks-unsigned-rdp
2026-04-21 14:39:58 -05:00
CodingWondersandGitHub a5271597e9 [Fix] Force WinGet source (#3918)
* [Fix] Force WinGet source

* Force WinGet source for uninstall
2026-01-27 13:03:56 -06:00
aa719b49bf [MicroWin] 2026 Update (#3837)
* New reporting tool

* Why did we EVER need to load the component store?

* Up the execution policy for default PWSH sessions

This is required to run the diagnostics script, and any script that either we create here, or the user creates later. At least we don't go too wild and use unrestricted... we use something more "safe"

* Force Panther Setup instead of MoSetup

This will increase reliability and performance. Screw the Windows 8 installer, we're back with what was used on Windows 7!

Anyway, there are problems with the new installer:

1. It is slow at everything. Some people did benchmarks of both installers. MoSetup lost to Panther (ofc). Source: https://www.reddit.com/r/Windows11/comments/1kmjavl/i_made_a_small_test_comparing_which_one_installs/
2. It is unreliable. The "Install driver to show hardware" screen that appears in some systems AND in PXE/WDS for Server 2025 is possibly, and simply, due to Setup not being able to find the install image. From BlueBox.log in MoSetup:

...
2025-12-21 10:05:43: Creating path (with ACL): [X:\$WINDOWS.~BT]...
2025-12-21 10:05:43: Creating path: [X:\$WINDOWS.~BT\Sources]...
2025-12-21 10:05:43: CBootScenarioCtrl::PopulateWorkingDir: Install.wim/swm/esd was not found!
...

Other contributors in the CTT community stated similar unreliability with borked installs.

I'm pretty sure this change will benefit everyone. We'll see how long it lasts before Microsoft f's it up.

* Improve reporting tool

Display appx package dependency full names

* Rework ADK detection

* Add revamped detection for ISO creation

* File Explorer ain't broken anymore on 26200.7462

Those incompetent developers changed WindowsAppRuntime.CBS to WindowsAppRuntime.CBS.1.6 circa 10.0.26200.7462. No wonder why direct downloads were not causing this issue; they are still based on 10.0.26200.6584. The MCT, on the other hand...

* Patch maximum version boundary

Apparently they fixed that in November. Expanding the amd64_winappsdk-cbs-stable component manifest to a XML file reveals the dark secret:

  <registryKeys>
    <registryKey keyName="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications\Microsoft.WindowsAppRuntime.CBS.1.6_6000.653.2246.100_x64__8wekyb3d8bbwe">
      <registryValue name="Path" valueType="REG_SZ" value="$(runtime.windows)\SystemApps\Microsoft.WindowsAppRuntime.CBS_8wekyb3d8bbwe\AppxManifest.xml" />
      <securityDescriptor name="REGKEY_APPXALLUSERSTORE_SDDL" />
    </registryKey>
    <registryKey keyName="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Config\Microsoft.WindowsAppRuntime.CBS.1.6_8wekyb3d8bbwe">
      <registryValue name="SetupPhase" valueType="REG_DWORD" value="0x00000427" />
    </registryKey>
    <registryKey keyName="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\UpdatedApplications\Microsoft.WindowsAppRuntime.CBS.1.6_8wekyb3d8bbwe" />
  </registryKeys>

This is not a problem in .6899 because we don't have amd64_winappsdk-cbs-stable, but a vnext counterpart. But, at this point, why bother checking with that? MCT will not bundle this update with the image!

* Default to showing file extensions

Apart from a security improvement (let's remember ILOVEYOU from 2000), it's also a QoL.

* Fix key for color modes

Color mode settings are saved per-user, not system-wide. So HKLM\SOFTWARE is not our solution. HKCU is, and is mapped to \Users\Default\NTUSER.DAT

* Move color mode from offline servicing to firstrun

* Drop build number by 100

* Update Invoke-Microwin.ps1 (#15)

* Revert "Update Invoke-Microwin.ps1 (#15)"

This reverts commit 88f8a3031b.

* Keep trying to commit and unmount images

* Consistent REG ADD /F /V...

Some issues happen with REG and strings if you put /f at the end... move it to the beginning, where it doesn't conflict with anything.

* Rework stub path reg value set

This works on both Windows 11 and Windows 10. It didn't work on Win10 before; it should work now

* Remove copy link step

We no longer do this

* Move Copy-Files to microwin folder

Only microwin calls this function; it's better if we place this script in that folder

* Add Create Bootable USB (#18)

* Add Create Bootable USB

* Apply suggestion from @CodingWonders

---------

Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>

* Download ADK to get oscdimg if not to download on GitHub

If we don't download OSCDIMG from GitHub, because we now use ADK kits roots detection to get installed copies of the ADK and oscdimg, we just download the Deployment Tools. This is only 100 MB once fully installed, and removes the need to install Chocolatey.

One caveat is that, on 64-bit systems, the script will output "Could not find ADK" once. This is normal as it does checks on both regular SOFTWARE and WOW6432Node, and it's able to pick it on the latter. If it isn't found anywhere, that message will appear twice.

* Make indentation more consitent in bootable USB func.

* Initialize petoolspath variable

* Remove temporary adksetup on completion

* Fix whitespace

* Remove unnecessary comments and revamp admin check

* Revert "Add Create Bootable USB (#18)"

This reverts commit 64babfe986.

* Remove reporting tool creation

The reporting tool is now hosted on a separate repo. The script itself can be run anywhere, not just in microwin, so...

* Some formatting change here

* Remove copy to ventoy option

* Fix some more indents

* Add Description that ISO automatically removes Win11 Requirements

* Additional things

- WPBT done by defaults
- Skip Logon Animation
- Remove convert to ESD and Upgrade to Win11 as Win10 is no longer supported

* First attempt at OSCDIMG autodownload

* No more custom ScratchPaths!

Time to get rid of that mess and just use %TEMP%.

All of these minor changes were made on a Server 2K8R2 VM.

* Redetect ADK/OSCDIMG after autodownload

* Leave ADK reg query error to debug only

---------

Co-authored-by: Real-MullaC <callumjanes2007new+github@gmail.com>
2026-01-15 14:48:11 -06:00
cfaf139a6a [Tweaks] Conditionally determine when to use sc and Set-Service (#3761)
* [Tweaks] Conditionally determine when to use sc and Set-Service

* Clean up comments in Set-WinUtilService.ps1

Removed comments explaining the handling of auto delayed start for PWSH 5.

---------

Co-authored-by: Chris Titus <contact@christitus.com>
2025-12-01 14:29:27 -06:00
CodingWondersandGitHub 674d1368bb [Offline] Fixed invalid command in PWSH 5 (#3604)
-TimeoutSeconds is not a parameter in Test-Connection for PWSH 5
2025-09-21 16:21:18 -05:00
a6daeccb8c [Applications] DISM utility changes, app description fixes (#3551)
* [Applications] DISM utility changes, app description fixes

- NTLite has been added to the list of apps to give the user some choice
- Both DISMTools and NTLite have been moved to a new section so they can be identified more easily by what they do, and because the former is not a tool made by either Microsoft or Sysinternals. The former now has its description pulled from WinGet (and summarized using Copilot)
- Em-dashes in some app descriptions have been replaced with semicolons to avoid question marks in tooltips

* Change category from 'DISM Utilities' to 'Microsoft Tools'

---------

Co-authored-by: Chris Titus <contact@christitus.com>
2025-09-16 12:08:47 -05:00
54e367a13b [MicroWin] 25H2 preparation (#3543)
* [Enhance] Configure all apps view in start menu

To keep look consistent with older Win11

* [Enhance] Additional Start menu settings

* [MicroWin] Change Write-Host to Write-Debug on debug lines. (#13)

* Add a resolution to scripts being disabled (#14)

* [MicroWin] Change Write-Host to Write-Debug on debug lines.

* Add a resolution to scripts being disabled

* Add skip first logon anim option

* Unrelated: indentation fixes from compile script

* Some little touches to the first-run script

---------

Co-authored-by: Real-MullaC <callumjanes2007new+github@gmail.com>
2025-09-16 12:04:11 -05:00
CodingWondersandGitHub a6e9e096ef [Applications] Possible fix for cmdlet (#3563) 2025-08-28 13:15:42 -05:00
CodingWondersandGitHub 8622892827 [MicroWin] June-August 2025 Update (#3417)
* Disable "Microsoft account" notification source

* [WinPE] Remove driver addition block for WinPE

WE DO NOT TOUCH THE DRIVERS IN WinPE. There are reports of people getting "Install driver to show hardware" screens all over this repository, and on Discord; and the less drivers we touch in WinPE, the better.

Drivers can still be added to Preinstallation Environments in the following ways:

- Using the driver installation screens
- Firing up "drvload.exe <driver>" in cmd

* [Fix] Added fallback for DISM export command

This is a port of the fix in #3305

* [Cleanup] Removed some comments that no longer make sense

* [Fix] Same DISM export image fallback fix

* Merge branch 'main' into microwin-202506

* [Fix] Improve UI consistency for instructions

Fixes #3394

* Merge branch 'main' into microwin-202506

* [Unattended answer file] Remove it from drive root

The answer file, on the drive root, is not necessary for us to apply it. In fact, it's not even used there

* Merge branch 'main' into microwin-202506

* [MicroWin] June-August 2025 Update (#3) -- Contributions from Callum

* Allow people without compatible hardware or a USB to use MicroWin.

* Update functions/microwin/Microwin-NewUnattend.ps1

Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>

* Update Invoke-Microwin.ps1

* Update Microwin-NewUnattend.ps1

* Update Microwin-NewUnattend.ps1

* Add error pop up if ISO Creation fails.

Issue 2653

* Add Disable WPBT Execution to MicroWin.

* Update functions/microwin/Invoke-Microwin.ps1

Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>

* modified:   functions/microwin/Invoke-Microwin.ps1
	modified:   xaml/inputXML.xaml

---------

Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>

* Add conversion to ESD (#4)

* Add conversion to ESD

Issue - #3450

* Update Invoke-Microwin.ps1

Added quotes to the file paths. Put all the arguments in 1 string (as that also works fine)

---------

Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>

* Update MicroWin contributor list

* Merge branch 'main' into microwin-202506

* Merge branch 'main' into microwin-202506

* [MicroWin] Add automatic configuration settings

Originally implemented in #2618. Adapted to follow the new file structure. And it works.

Though there are issues that will be detailed very soon

* [Fix] Fixed typos, updated descriptions

* Re-add WinPE driver addition

We're not yet sure if that is the actual problem of missing storage controllers. Logs can tell us more about this. Maybe for a future PR?

* [Fix/WPBT] Add spaces to reg key path

Avoid REG failure

* [Fix/XAML] Fix word wrapping issue for checkboxes
2025-08-05 11:24:59 -05:00
CodingWondersandGitHub af09bcbf0b [Fix] SecureString does not have Close method (#3531) 2025-08-05 10:30:09 -05:00
CodingWondersandGitHub 91ab12dd7f [Tweaks] Cross Device Resume (#3480) 2025-08-01 10:56:22 -05:00
50071067b7 [MicroWin] April Update (#3317)
* Better formatting

A bit cleaner

* Remove unused scripts

This gets rid of file not found errors during setup

* Have a fallback method for Recall fixes

Go back to the delayed disablement procedure if we fail at modifying the manifest

* Ignore Recall disablement when disabled, and more

- If Recall is disabled, don't disable it again. This may be a waste of time
- Disable certain notification sources that I think are quite annoying, like those from Suggested or the Startup App Notification

* Hopefully? Get rid of News and Interests on Win10

Based on PR #3289, add News and Interests removal to MicroWin. Hopefully Windows 10 gets to cooperate this time, compared to last time, where it was quite stubborn.

*This means that people never give up trying to fight against something they don't like*

* Revert "Refactor preferChocolatey system to handle other package managers eas…" (#3323)

This reverts commit 89919494e5.

* Fixed all the things that could possibly break

* Get rid of extra parameter

Package removal fallback fails here. Quite likely a copy from feature disablement

---------

Co-authored-by: Chris Titus <contact@christitus.com>
2025-05-05 10:24:12 -05:00
CodingWondersandGitHub 48f1c71584 [Tweaks] Remove trailing commas at the end (#3326) 2025-04-16 10:16:27 -05:00
CodingWondersandGitHub ef97a8da24 [WinGet] Fix install loop (#3235)
Only this parameter was missing
2025-03-05 12:13:39 -06:00
CodingWondersandGitHub 32cb94f392 [MicroWin] Fixed divide by zero error for fallback (#3174)
<Insert the never mind - misspelled a variable meme here>
2025-01-28 11:03:35 -06:00
CodingWondersandGitHub bcc801683d [Tweaks] Disable output for DISM for the Recall tweak (#3154)
* Fixed lock caused by expected input for DISM

This is the main event

* Miscellaneous file

Don't know why this file was modified by the compile preprocessor
2025-01-17 08:40:04 -06:00
CodingWondersandGitHub 9183e92692 [MicroWin] Preparation for 2025 (#3066)
* Set Boot Manager entry timeout to 0

Fixes #2562

* Exclude Windows Hello stuff from package removal

* Obscure passwords with Base64 and fix indentation

Fixes #3064

* Fix name of excluded package

* Update comment

It reflects my feelings towards Microsoft when it comes to security a lot better

* Remove jargon of scratch directory options

* Package exclusion improvements

- Removed AppX packages from OS package exclusion list
- Added exclusion of PowerShell ISE (source: Discord server - yes, some people still use the PowerShell ISE)

* Exclude Windows Photo Viewer from dir removal

* Improve copy operation to Ventoy drives

This change may fix the issues where there's a conflict between both Ventoy's and MicroWin's unattended answer files, causing target images to stop working as expected during OOBE

* Add VirtIO functionality and more enhancements

- Added the ability to grab VirtIO Guest Tools
- Modified the description of the Copy ISO files function because it basically had nonsense

* Fix typo (#3104)

* Access specific property of ISO image object

Only show the ISO path. No one is interested in the storage type

* Add detections for expedited app removal

They only affect 24H2 and newer. Earlier releases don't have these expedited apps

* Update message

* Add VirtIO instructions to MicroWin page

* Add DISM command fallback

This fallback is triggered if an exception occurs while getting information with the cmdlets (I couldn't test this on my host as everything magically works now - sometimes it threw the Class not registered error)

* Exclude OpenSSH from package removal

Some people need this to avoid installing third-party programs like PuTTY

* Fixed some more indentation
2025-01-10 13:40:25 -06:00
CodingWondersandGitHub d619ee7e85 [MicroWin] Fix reference issue after #2888 (#3022)
Specifically, it fixes a reference issue for the "Recall fix". Thankfully, we're not making a release yet :)
2024-11-07 12:14:46 -06:00
CodingWondersandGitHub 640d2ca107 [MicroWin] Remove WinUtil shortcut on first logon (#2989) 2024-10-29 16:51:32 -05:00
CodingWondersandGitHub bfaba14191 [MicroWin] Fix Recall "Dependency" Misinformation (#2947)
Fixed the misinformation caused by the Recall feature. Thanks @WitherOrNot and @thecatontheceiling for spotting the problem
2024-10-24 15:45:24 -05:00
1404efab26 [MicroWin] First Anniversary Special PR (#2853)
* Fix minor denomination problem for packages

* Fix incorrect filter of OS packages

Packages such as the metadata for capabilities (FoDs) or the foundation package were being incorrectly filtered. They were part of `Remove-ProvisionedPackages`, which only removes AppX packages. These are **OS packages**, something completely different

* Fixed indentation

* Exclude `Microsoft-RemoteDesktopConnection`

Exclude that from feature list. Fixes #2705

* Remove DISM from AppX removal listings

DISM is a system component. It will never be an AppX package. This is unnecessary

* Improve error handling for file copy

* Remove space (for some reason)

Compilation script is very adamant that this should be this way

* Exclude the VBSCRIPT Features on Demand from pkgs

Exclude the VBSCRIPT feature on demand (or capability) from package removal. Some people were reporting that excluding VBSCRIPT fixed problems with AMD chipset drivers on MicroWin

* Exclude Recall from feature listings

This fixes problems people were experiencing where the file explorer would go back to the Windows 10 layout

* Improve error output

* Add 24H2 to release list

* Detect Windows 10 and show compatibility dialog

* Disable some insane desktop stuff on Windows 10

I've only been able to disable Search Highlights. News and Interests persists

* Change policy for News and Interests

Avoid showing "Access denied" errors for this. This is still broken - News and Interests is still there. [louder]Linus Torvalds curse word here[/louder]

Anyway, if someone wants to give setting this up a shot, send me suggestions on how to do this

* Write suggestion for AV

* Hold errored packages in a list

Items are being added correctly, but I can't get that to show to the end-user. Perhaps a different approach will work

* Remove older Windows versions from download list

Sadly, the links for these had been removed by Microsoft, in favor of the latest version (24H2)

* Add sorting to error messages

Thanks @og-mrk for the suggestion and the patch (even though I applied it myself)

* Make error messages easier to view (#1)

* Make error messages easier to view

* Improve error output

---------

Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>

* Disable Recall on first run

Keeps the Explorer look of modern Windows 11 builds whilst removing the Recall feature (which I think will manifest itself on PCs with Lunar Lake processors)

* Replace "C:\" with environment variable

This still works on single-boot configurations, but presents a more dynamic approach

* Fix Volume Mixer issues and removal of leftovers

Fix originally from @MyDrift-user on #2856

* Add missing piece to last commit

* Default to downloading OSCDIMG from GitHub repo

Chocolatey may not be the way to help us detect the presence of OSCDIMG.

Everyone, unless someone REALLY uses old deployment technology, has moved to Windows ADK 10.0

* Fix Sorting of Errored Packages by using 'Sort-Object' instead of 'IComparer' approach (#2)

Fixes startup issues in PWSH 7

* Remove reference to News and Interests from output

Even though the logic is still there, it doesn't work. I don't want to deal with that anymore. Search Highlights, on the other hand, is removed very easily

* Exclude License packages from removal

They throw an "Access denied" error when trying to remove them. This is a timesaver

---------

Co-authored-by: Mr.k <mineshtine28546271@gmail.com>
2024-10-07 15:37:47 -05:00
102231c0e3 [MicroWin] ISO Downloader Enhancements (#2787)
* Avoid duplicating items in lang list and fix issue

- Changed the first item in the language list to show "System language". Then we determine it and download it
- Fixed an issue where the entire contents of `gci` were being passed to the variable, which causes the rest to fail

* Add spaces for consistent indentation

* Modify current dir command to automatic variable

Thanks  @ruxunderscore  for suggesting

* Move downloaded ISO to user-specified path

* Indentation fixes for comments

* Update functions/public/Invoke-WPFGetIso.ps1

Co-authored-by: Luka Momčilović <l.momcilovic61@gmail.com>

* Modify first language item and add error handling

---------

Co-authored-by: Luka Momčilović <l.momcilovic61@gmail.com>
2024-09-23 12:29:34 -05:00
CodingWondersandGitHub b3bbe0dbe5 [MicroWin] Exclude Search Engine Package (#2761) 2024-09-20 08:31:36 -05:00
CodingWondersandGitHub a5a06c2a9b [MicroWin] Exclude Snip & Sketch from AppX removal (#2737) 2024-09-15 14:22:32 -05:00
CodingWondersandGitHub 95db85f791 [MicroWin] Don't disable already disabled features (#2675) 2024-09-09 20:20:55 -05:00
CodingWondersandGitHub 2a0d121cf0 [MicroWin] Add error details and messages (#2647) 2024-08-30 09:30:21 -05:00
CodingWondersandGitHub bcfbce66fd Remove test-path (#2585) 2024-08-22 16:02:21 -05:00
CodingWondersandGitHub 2748767a47 [MicroWin] Add custom user settings and other changes (docs/bugfixes) (#2575)
* [MicroWin] Add custom user settings

* Update inputXML.xaml

* Update MicroWin documentation to reflect changes

* Update Invoke-WinUtilMicroWin-Helper.ps1

* Update Invoke-WPFMicrowin.ps1
2024-08-19 14:21:12 -05:00
CodingWondersandGitHub 307980a7ef Fixed VMware network driver issues (#2567) 2024-08-16 00:12:44 -05:00
CodingWondersandGitHub 4d2ea15e19 [MicroWin] Add try-catch block for AppX packages (#2560) 2024-08-14 14:31:24 -05:00
CodingWondersandGitHub 41ac93d09a Add quotes to paths (#2552)
Fixes reported issues about paths with spaces
2024-08-12 15:03:38 -05:00
CodingWondersandGitHub 514eddd0b6 Exit Codes and Win32 API calls (#2462)
- Change process code to Start-Process -PassThru, finally removing the need for a new process object
- Add code if ISO generation is not successful to display an error message in the system language from the Windows APIs
2024-07-30 21:08:34 -05:00
CodingWondersandGitHub 5083b84233 Added Try-Catch blocks for remaining removal tasks (#2365)
* Added Try-Catch blocks for remaining removal tasks

* Delete winutil.ps1 from tracking list

* Revert "Delete winutil.ps1 from tracking list"

This reverts commit 97044425ea.
2024-07-25 16:09:00 -05:00
CodingWondersandGitHub 3245756935 Remove Edge leftovers from WOW6432Node (#2328) 2024-07-14 20:07:20 -05:00
CodingWondersandGitHub b1e995fcaf Added MicroWin documentation (#2349)
* Add MicroWin documentation

* Change style of headers of option types

* Fixed typo of EdgeWebView2
2024-07-13 15:47:36 -05:00
CodingWondersandGitHub 96d80c486b Update Invoke-WPFMicrowin.ps1 (#2251)
Distinguish tasks better
2024-07-08 15:14:40 -05:00
CodingWondersandGitHub 04130231ff Update Invoke-MicroWin-Helper.ps1 (#2192)
Added Try-Catch block for AppX package removal
2024-06-28 09:42:48 -05:00