1. MSMG

    MSMG MDL Developer

    Jul 15, 2011
    6,414
    15,608
    210
    #18901 MSMG, Mar 28, 2021
    Last edited: Mar 28, 2021
    (OP)
    I'm keeping the components list to be minimal containing only what is required for an average user, adding more components means more dependencies and requires more troubleshooting. The component removal should not become like stripping the OS to the core and breaking most of it's functionality, will be adding possible new components to the list when time permits.

    The idea of package list method was added only for two reasons one to support component removal for older OS until manual method is ready and second to remove components faster since the removal program was slower in removing the components, Now the removal has become faster through menu too.

    In future Toolkit versions when I do move the Toolkit code from DOS batch programming to higher level programming, many things will be changing like there will minimal packs, simplified dynamic menus and reduced steps.

    Nowadays I'm using my time on next Toolkit products to bring new user experience for users.


     
  2. bill.fi.dill

    bill.fi.dill MDL Novice

    Mar 27, 2021
    3
    0
    0
    Thanks for your reply! That makes sense about not using unattended installations. I eventually want to do unattended installations in the future, so I'll need to learn how to do that. Do you have any resources I can reference when I get to that stage? Especially with regard to using MSMG?

    That's good to know. I'll just integrate them in all three whenever I'm given the option.

    For drivers, is there a particular format they need to be in (.exe, for example), and does it matter where I sourced them? Like from SDI, for instance?
     
  3. ceo54

    ceo54 MDL Addicted

    Aug 13, 2015
    884
    385
    30
    #18904 ceo54, Mar 28, 2021
    Last edited: Mar 28, 2021
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. doubtfire

    doubtfire MDL Junior Member

    May 26, 2015
    94
    8
    0
    And on that same note of broken installations,

    Does this render the Dism /RestoreHealth command unusable?
    Code:
    The restore operation failed. Either the repair source was not found or the component store cannot be repaired.
    Error: 0x800f081f
     
  5. doubtfire

    doubtfire MDL Junior Member

    May 26, 2015
    94
    8
    0
    I ended up running this, which at least enabled me to open the Settings (and any other MS "store" type of apps) again.
    Code:
    Get-AppxPackage -AllUsers| Foreach {Add-AppxPackage -DisableDevelopmentMode -Register “$($_.InstallLocation)\AppXManifest.xml” -Verbose }
    But I would like to know: Does this, in any way, undo the removals that MSMG Toolkit performs?
     
  6. rorewe4314

    rorewe4314 MDL Member

    Jun 18, 2020
    107
    22
    10
    MSMG,

    An error occurred trying to open - Microsoft-Windows-OneDrive-Setup-Package~31bf3856ad364e35~amd64~~10.0.19041.1.mum Error: 0x80070057

    Error: 87

    An error occurred while processing the command.
    Ensure that the command-line arguments are valid. For more information, review the log file.

    The DISM log file can be found at C:\Windows\Logs\DISM\dism.log


    Didn't change anything in the script!
     
  7. MSMG

    MSMG MDL Developer

    Jul 15, 2011
    6,414
    15,608
    210
    Sorry it should be like below, remove .mum in Package Name

    PackageName=Microsoft-Windows-OneDrive-Setup-Package~31bf3856ad364e35~amd64~~10.0.19041.1


     
  8. Fen-X

    Fen-X MDL Novice

    Aug 31, 2019
    27
    31
    0
    Thank you very much MSMG. Your tool is so precious.
    A few days, weeks or maybe a month ago I asked for a possible solution regarding the removal components. System apps remain after a cu or a feature update.
    You replied that you were working on it.

    After much research I found a wonderful tool customized by raiyvaN called "W10AIO debloater v1.1 Final".
    With this tool, it seems possible to remove NcsiUwpApp and UndockedDevKit. Unfortunately, this tool is not working for me for some reasons. I'll give it another try someday because I'm curious. Thanks raiyanV for this work.
    In my despair I remembered that there was an option in the toolkit tool (turn off automatic updates). I decided to do more research on this option and in the end I gave it a try.
    I downloaded Windows 10 20h2 19042.631. I integrated the update (870 for cu and 867 for feature updates). I used the package list method to remove the components and this time I turned off the automatic update. On first boot I got the sfc error because I cleaned up the image. I started the sfc / scannow and the sfc got clean. I used pstool, db browser for sql and sqlite studio (for the trigger in machine-srd) to change the IsInbox value and successfully remove NcsiUwpApp and UndockedDevKit.

    The dangerous moment came when I started the Windows update and WOW ... WOW ... I got the security updates but this time no feature update shows up or something else . I checked in regedit and the automatic updates are indeed disabled. Finally, your tool saved me once again.
    In my case, I don't need new features. I am now running Windows 10 20h2 19042.870 (which already contains plenty of features) and I couldn't believe the solution was there from the start in your tool.
    Stupid that I am.

    Now I have a real win10 pro which will work like my previous ltsc2019.

    Thanks again. Fantastic tool. It s so speed with toolkit to install a windows os like I want it work.
     
  9. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    #18913 inTerActionVRI, Mar 29, 2021
    Last edited: Mar 30, 2021
    @MSMG ,

    In that part, the code we talked about the other day is going on. If you select Y, you perform the task of cleaning the files, but if you select N, you are also performing the cleaning.
    so... from
    Code:
    choice /C:YN /N /M "Do you want to cleanup Image folder ? ['Y'es/'N'o] : "
    echo.
    if %errorlevel% equ 1 (
       echo.-------------------------------------------------------------------------------
       echo.Cleaning up Image folder...
       echo.-------------------------------------------------------------------------------
       echo.
       echo.Cleaning up Image temporary and log files or folders.
    
    to
    Code:
    choice /C:NY /N /M "Do you want to cleanup Image folder ? ['Y'es/'N'o] : "
    echo.
    if errorlevel 2 (
       echo.-------------------------------------------------------------------------------
       echo.Cleaning up Image folder...
       echo.-------------------------------------------------------------------------------
       echo.
       echo.Cleaning up Image temporary and log files or folders.
    
    Is it necessary to optimize boot.wim when it is not mounted during service with the toolkit?

    This is happening.

    When the work starts, without mounting the boot.wim, when the image is finished, optimization is taking place at the time of saving.

    Perhaps it should be so. But I don't know the dynamics. It may be interesting to optimize winre.wim, but within what I have absorbed until the moment of knowledge, it would not be necessary. I may be mistaken.
    from
    Code:
    :: Saving & Un-Mounting Source Boot Images
    if "%IsBootImageSelected%" equ "Yes" (
       for /l %%i in (1, 1, 2) do (
           echo.-------------------------------------------------------------------------------
           echo.Applying Changes ^& Un-Mounting [Boot.wim, Index : %%i] Image...
           echo.-------------------------------------------------------------------------------
           call :UnMountImage "%BootMount%\%%i", "Commit"
           call :RemoveFolder "%BootMount%\%%i"
       )
    )
    
    :: Re-Building Source Boot Image with Maximum Compression.
    echo.-------------------------------------------------------------------------------
    echo.Optimizing Source [Boot.wim] Image with Maximum Compression...
    echo.-------------------------------------------------------------------------------
    call :ExportImage "%BootWim%", "%Temp%\rebuild.wim", "WIM", "No"
    move /y "%Temp%\rebuild.wim" "%BootWim%" >nul
    
    to
    Code:
    :: Saving & Un-Mounting Source Boot Images
    if "%IsBootImageSelected%" equ "Yes" (
       for /l %%i in (1, 1, 2) do (
           echo.-------------------------------------------------------------------------------
           echo.Applying Changes ^& Un-Mounting [Boot.wim, Index : %%i] Image...
           echo.-------------------------------------------------------------------------------
           call :UnMountImage "%BootMount%\%%i", "Commit"
           call :RemoveFolder "%BootMount%\%%i"
    
           :: Optimizing Source Boot Image with Maximum Compression.
           echo.-------------------------------------------------------------------------------
           echo.Optimizing Source [Boot.wim, Index : %%i] Image with Maximum Compression...
           echo.-------------------------------------------------------------------------------
           call :ExportImageIndex "%BootWim%", %%i, "%Temp%\rebuild.wim", "WIM", "No"
       )
       move /y "%Temp%\rebuild.wim" "%BootWim%" >nul
    )
    
    maybe
    Code:
    :: Saving & Un-Mounting Source Boot Images
    if "%IsBootImageSelected%" equ "Yes" (
       for /l %%i in (1, 1, 2) do (
           echo.-------------------------------------------------------------------------------
           echo.Applying Changes ^& Un-Mounting [Boot.wim, Index : %%i] Image...
           echo.-------------------------------------------------------------------------------
           call :UnMountImage "%BootMount%\%%i", "Commit"
           call :RemoveFolder "%BootMount%\%%i"
       )
       :: Optimizing Source Boot Image with Maximum Compression.
       echo.-------------------------------------------------------------------------------
       echo.Optimizing Source [Boot.wim] Image with Maximum Compression...
       echo.-------------------------------------------------------------------------------
       call :ExportImage "%BootWim%", "%Temp%\rebuildBoot.wim", "WIM", "No"
       move /y "%Temp%\rebuild.wim" "%BootWim%" >nul
    )
    
    Some minor i send to you in PM.
     
  10. Thvle

    Thvle MDL Senior Member

    Oct 7, 2012
    250
    58
    10
    To update an ISO, I need to add the latest one SSU and CU update only?
     
  11. Can anyone provide me post, video or some guide that I can properly clean an ISO of all unneccessary things/bloatware/privacy issues using this tool?
    I don't know where to start and 1000 pages is a lot of reading, so sorry for taking it the easy way. Thanks in advance.
     
  12. doubtfire

    doubtfire MDL Junior Member

    May 26, 2015
    94
    8
    0
    First remove everything you can just by going through the menus - it's straightforward - then you go ahead and get that error (see a few posts above), then you run that powershell command I posted above to fix the errors.
     
  13. fch1993

    fch1993 MDL Senior Member

    Mar 14, 2020
    382
    275
    10
    @MSMG

    In Packs\Apps\w10, some packages have the same hash with different names, such as "Microsoft.XboxGameOverlay" and "Microsoft.XboxIdentityProvider"

    which should I keep?
     
  14. JLT2000

    JLT2000 MDL Junior Member

    Nov 3, 2020
    68
    20
    0
    #18918 JLT2000, Mar 30, 2021
    Last edited: Mar 31, 2021
    The best way to remove all the bloat from the image is to use 3-3-2 (Toolkit Method)

    Remember to use whd update pack before, it will only work with the CU update from changelog

    Make your list from
    Toolkit\Bin\Lists\ToolKitHelper_Templates (Supported Windows List)

    And copy that list in the correct order into Toolkit\Bin\Lists RemovePkgsList

    I have made changes to this list, so make your own list.

    This list will remove most of the worst bloat from the image

    CEIP
    LocationService
    UnifiedTelemetryClient
    WindowsInsiderHub
    CBSPreview
    ContentDeliveryManager
    MapControl
    OneDrive
    PeopleExperienceHost
    RetailDemoContent
    XboxClient
    3DViewer
    AdvertisingXaml
    Alarms
    BingWeather
    Camera
    CommunicationsApps
    Cortana
    DesktopAppInstaller
    FeedbackHub
    GetHelp
    Getstarted
    Maps
    MixedRealityPortal
    OfficeHub
    OfficeOneNote
    Paint3D
    People
    Photos
    ScreenSketch
    SkypeApp
    SolitaireCollection
    SoundRecorder
    StickyNotes
    XboxApp
    XboxIdentityProvider
    YourPhone
    ZuneMusic
    ZuneVideo

    If u only wanna remove all bloat apps and nothing else, you can use 3-2 (this way should work on any image, updated or not) MS Dism Way

    Make your list from
    Toolkit\Bin\Lists\DISM_Templates (Supported Windows List)

    And copy that list in the correct order into Toolkit\Bin\Lists RemoveAppsList

    I have made changes to this list, so make your own list.

    This list will remove most of the bloat apps from the image

    Microsoft.549981C3F5F10
    Microsoft.BingWeather
    Microsoft.DesktopAppInstaller
    Microsoft.GetHelp
    Microsoft.Getstarted
    Microsoft.HEIFImageExtension (Keep for Photo App)
    Microsoft.Microsoft3DViewer
    Microsoft.MicrosoftOfficeHub
    Microsoft.MicrosoftSolitaireCollection
    Microsoft.MicrosoftStickyNotes
    Microsoft.MixedReality.Portal
    Microsoft.MSPaint
    Microsoft.Office.OneNote
    Microsoft.People
    Microsoft.ScreenSketch
    Microsoft.SkypeApp
    Microsoft.StorePurchaseApp (Windows Store Related)
    Microsoft.VP9VideoExtensions (Keep to view Streaming in Chrome Browser)
    Microsoft.Wallet (Windows Store Related)
    Microsoft.WebMediaExtensions
    Microsoft.WebpImageExtension
    Microsoft.Windows.Photos
    Microsoft.WindowsAlarms
    Microsoft.WindowsCalculator
    Microsoft.WindowsCamera
    microsoft.windowscommunicationsapps
    Microsoft.WindowsFeedbackHub
    Microsoft.WindowsMaps
    Microsoft.WindowsSoundRecorder
    Microsoft.WindowsStore (Keep to update the needed apps)
    Microsoft.Xbox.TCUI
    Microsoft.XboxApp
    Microsoft.XboxGameOverlay
    Microsoft.XboxGamingOverlay (Keep for gaming)
    Microsoft.XboxIdentityProvider
    Microsoft.XboxSpeechToTextOverlay
    Microsoft.YourPhone
    Microsoft.ZuneMusic
    Microsoft.ZuneVideo
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  15. MSMG

    MSMG MDL Developer

    Jul 15, 2011
    6,414
    15,608
    210
    The code below is working properly

    Code:
    choice /C:YN /N /M "Do you want to cleanup Image folder ? ['Y'es/'N'o] : "
    echo.
    if %errorlevel% equ 1 (
        echo.-------------------------------------------------------------------------------
        echo.Cleaning up Image folder...
        echo.-------------------------------------------------------------------------------
        echo.
    

    Code:
    ===============================================================================
             MSMG ToolKit - Apply & Save Changes to the Source Images
    ===============================================================================
    
    -------------------------------------------------------------------------------
    ####Starting Applying & Saving Changes to Source Images########################
    -------------------------------------------------------------------------------
    
    Do you want to trim unselected Image editions ? ['Y'es/'N'o] : N
    
    Do you want to cleanup Image folder ? ['Y'es/'N'o] : N
    
    -------------------------------------------------------------------------------
    Optimizing Source [Boot.wim] Image with Maximum Compression...
    -------------------------------------------------------------------------------
    
    Deployment Image Servicing and Management tool
    Version: 10.0.20317.1
    
    Exporting image
    [==========================100.0%==========================]
    Exporting image
    [==========================100.0%==========================]
    The operation completed successfully.
    
    -------------------------------------------------------------------------------
    Applying Changes & Un-Mounting [Install.wim, Index : 1] Image...
    -------------------------------------------------------------------------------
    
    Deployment Image Servicing and Management tool
    Version: 10.0.20317.1
    
    Saving image
    [==========================100.0%==========================]
    Unmounting image
    [==========================100.0%==========================]
    The operation completed successfully.
    
    -------------------------------------------------------------------------------
    Optimizing Source [Install.wim] Image with Maximum Compression...
    -------------------------------------------------------------------------------
    
    Deployment Image Servicing and Management tool
    Version: 10.0.20317.1
    
    Exporting image
    [==========================100.0%==========================]
    Exporting image
    [==========================100.0%==========================]
    The operation completed successfully.
    
    -------------------------------------------------------------------------------
    ####Finished Applying & Saving Changes to Source Images########################
    -------------------------------------------------------------------------------
    
    ===============================================================================
    
    Press any key to continue . . .
    
    Though it's not necessary to optimize boot.wim if it's not been modified but with recent Windows 10 versions the original boot.wim/winre.wim aren't optimized properly and so made to be optimized irrespective of whether the user had modified it or not.

    In next version will modify the Toolkit to optimize boot.wim only if it has been mounted.

    Will check the message box and update.

     
  16. MSMG

    MSMG MDL Developer

    Jul 15, 2011
    6,414
    15,608
    210
    Need to update the files and the Hash, will do it soon.