Chris Titus Tech's Windows Utility - Install Programs, Tweaks, Fixes, and Updates
Go to file
Chris Titus efe37b2f3f
Test 2024 01 03 (#1384)
* Increase performance during loading. (#1348)

* Increase performance during loading.
Add a clear button to the search box.
Add link and description attributes to the applications JSON.
Use the link for linking to the app website.
Use the description as a tooltip for each app.
Add a clickable link to the website for each application (this took a long time; don't kick me if I got some wrong).
Pressing Escape now clears the filter box.
Pressing Alt-P prints your PID.

* Fix for services that are being stopped

* Compile winutil

* Adding new Get-LocalizedYesNo based on choice.exe which is faster and more reliable, thank you @dtm-r for implementing it and testing it on English, German, Dutch, French, Italian, Spansich and Russian. Incredible work by @dtm-r, all cridit and props go to him.
See this thread for details https://github.com/ChrisTitusTech/winutil/issues/1324

* Added error-checking logic for mounting ISOs and also created a wiki page that explains some of the errors.

---------

Co-authored-by: KonTy <KonTy@github.com>

* Compile Winutil

* Custom save targets for MicroWin ISOs (#1346)

* Workaround for Explorer freezes

Some people have reported that setting the Event Log service to Automatic and starting it can (temporarily) fix Explorer freezes.

This change detects whether the next service in the list is "EventLog" and skips it

* Allow user to save MicroWin ISOs anywhere

Adds a SaveFileDialog component to let the user specify the location of the MicroWin ISO and uses it during creation with oscdimg.

(It uses a Process object from System.Diagnostics because I couldn't get it to work with Start-Process)

* Removed temporary workaround

Removed my version of the workaround in favor of the version from @KonTy (merge PR #1348 first)

---------

Co-authored-by: Chris Titus <contact@christitus.com>

* Highly anticipated fix for small screens (#1358)

* Increase performance during loading.
Add a clear button to the search box.
Add link and description attributes to the applications JSON.
Use the link for linking to the app website.
Use the description as a tooltip for each app.
Add a clickable link to the website for each application (this took a long time; don't kick me if I got some wrong).
Pressing Escape now clears the filter box.
Pressing Alt-P prints your PID.

* Fix for services that are being stopped

* Compile winutil

* Adding new Get-LocalizedYesNo based on choice.exe which is faster and more reliable, thank you @dtm-r for implementing it and testing it on English, German, Dutch, French, Italian, Spansich and Russian. Incredible work by @dtm-r, all cridit and props go to him.
See this thread for details https://github.com/ChrisTitusTech/winutil/issues/1324

* Added error-checking logic for mounting ISOs and also created a wiki page that explains some of the errors.

* Highly anticipated fix for small screen computers

---------

Co-authored-by: KonTy <KonTy@github.com>

* Compile Winutil

* Winutil take a long time to create iso file and goes to sleep, this fixes that issue #1343 (#1371)

Co-authored-by: KonTy <KonTy@github.com>

* Compile Winutil

* Create .gitattributes

* Update .gitattributes

* add winget ventoy package (#1374)

* add winget ventoy package

* convert applications.json to utf-8

* update applications.json again

* Compile Winutil

* Update applications.json

fix encoding

* Compile Winutil

* Fix Encoding and Bad Symbols

* Compile Winutil

* feat: Add more software choices (#1379)

* Compile Winutil

* Update configs.Tests.ps1

* Update winutil.Tests.ps1

* Update applications.json

* Compile Winutil

* Update applications.json

* Compile Winutil

* Update applications.json

* Compile Winutil

* fix functions for unit tests

* Compile Winutil

* Update Invoke-MicroWin-Helper.ps1

* Compile Winutil

* fix name WPF Close Button

* Update inputXML.xaml

* Compile Winutil

* my bad that wasnt it

* modify unit test for stop on error

* Compile Winutil

* Update unittests.yaml

* Create test

* Update unittests.yaml

* Update unittests.yaml

* Update unittests.yaml

* Update unittests.yaml

* Update unittests.yaml

* Update unittests.yaml

* Update unittests.yaml

* Update unittests.yaml

* Compile Winutil

* Make restore points optional, enabled by default (#1380)

* Make restore points optional, enabled by default

* Tweaks order fix if restorepoint is checked

* Compile Winutil

* update unit tests

* Compile Winutil

* Update unittests.yaml

* Update unittests.yaml

* Update winutil.Tests.ps1

* tests

* Compile Winutil

* Update unittests.yaml

* Update unittests.yaml

* Update unittests.yaml

* fix unit test

* Update winutil.Tests.ps1

* rewrite all pester test for winutil

* Compile Winutil

* fix handle is invalid error

* final unit test

---------

Co-authored-by: KonTy <9524513+KonTy@users.noreply.github.com>
Co-authored-by: KonTy <KonTy@github.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
Co-authored-by: Munkk <152475628+munkk01@users.noreply.github.com>
Co-authored-by: Kiril Vasilev <Kiril.v92@gmail.com>
2024-01-12 00:34:41 -06:00
.github Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
config Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
functions Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
lint 2023 09 23 test (#1117) 2023-10-19 17:12:55 -05:00
logs Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
pester Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
releases oscdimg upload 2023-12-19 14:20:21 -06:00
scripts Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
xaml Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
.gitattributes Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
.gitignore oscdimg upload 2023-12-19 14:20:21 -06:00
Compile.ps1 Test 2024 01 02 Main Merge (#1345) 2024-01-03 09:49:23 -06:00
edgeremoval.bat 2023 09 23 test (#1117) 2023-10-19 17:12:55 -05:00
edgeremoval.ps1 2023 09 23 test (#1117) 2023-10-19 17:12:55 -05:00
gpedit-home.ps1 Test 2023 10 24 (#1176) 2023-11-14 15:45:48 -06:00
KnownIssues.md Test Merge - Multiple Fixes (#317) 2022-10-23 00:12:07 -05:00
LICENSE Initial commit 2022-04-27 21:25:19 -05:00
ooshutup10_winutil_settings.cfg 2023 09 23 test (#1117) 2023-10-19 17:12:55 -05:00
README.md Test 2023 12 20 (#1337) 2024-01-02 15:45:06 -06:00
screen-install.png Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00
winget.ps1 2023 09 23 test (#1117) 2023-10-19 17:12:55 -05:00
winutil.ps1 Test 2024 01 03 (#1384) 2024-01-12 00:34:41 -06:00

Chris Titus Tech's Windows Utility

This utility is a compilation of Windows tasks I perform on each Windows system I use. It is meant to streamline installs, debloat with tweaks, troubleshoot with config, and fix Windows updates. I am extremely picky about any contributions to keep this project clean and efficient.

screen-install

Usage:

Requires you to launch PowerShell or Windows Terminal As ADMINISTRATOR! The recommended way is to right-click on the start menu and select (PowerShell As Admin Windows 10 - Windows Terminal As Admin Windows 11)

Launch Command:

iwr -useb https://christitus.com/win | iex

or by executing:

irm https://christitus.com/win | iex

Courtesy of the issue raised at: #144

Issues:

  • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads. You may use a VPN or change your DNS provider to Google/Cloudflare/etc.

Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

  • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.

  • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/ChrisTitusTech/winutil/main/winutil.ps1')

If you are still having issues try changing your DNS provider to 1.1.1.1 || 1.0.0.1 or 8.8.8.8 || 8.8.4.4

Support

Tutorial

Watch the video

Overview

  • Install

    • Install Selection: Organize programs by category and facilitate installation by enabling users to select programs and initiate the installation process with a single click.

    • Upgrade All: Upgrade all existing programs to their latest versions, ensuring users have the most up-to-date and feature-rich software.

    • Uninstall Selection: Effortlessly uninstall selected programs, providing users with a streamlined way to remove unwanted software from their system.

    • Get Installed: Retrieve a comprehensive list of installed programs on the system, offering users visibility into the software currently installed on their computer.

    • Import / Export: Enable users to import or export the selection list of programs, allowing them to save their preferred program configurations or share them with others. This feature promotes convenience and flexibility in managing program selections across different systems.

  • Tweaks

    • Recommended Selection: Provides pre-defined templates tailored for desktop, laptop, and minimal configurations, allowing users to select recommended settings and optimizations specific to their system type.

    • Essential Tweaks: Offers a collection of essential tweaks aimed at improving system performance, privacy, and resource utilization. These tweaks include creating a system restore point, disabling telemetry, Wi-Fi Sense, setting services to manual, disabling location tracking, and HomeGroup, among others.

    • Misc. Tweaks: Encompasses a range of various tweaks to further optimize the system. These tweaks include enabling/disabling power throttling, enabling num lock on startup, removing Cortana and Edge, disabling User Account Control (UAC), notification panel, and configuring TPM during updates, among others.

    • Additional Tweaks: Introduces various other tweaks such as enabling dark mode, changing DNS settings, adding an Ultimate Performance mode, and creating shortcuts for WinUtil tools. These tweaks provide users with additional customization options to tailor their system to their preferences.

  • Config

    • Features: Allows users to easily install various essential components and features to enhance their Windows experience. These features include installing .NET Frameworks, enabling Hyper-V virtualization, enabling legacy media support for Windows Media Player and DirectPlay, enabling NFS (Network File System) for network file sharing, and enabling Windows Subsystem for Linux (WSL) for running Linux applications on Windows.

    • Fixes: Provides a range of helpful fixes to address common issues and improve system stability. This includes setting up autologon for seamless login experiences, resetting Windows updates to resolve update-related problems, performing a system corruption scan to detect and repair corrupted files, and resetting network settings to troubleshoot network connectivity issues.

    • Legacy Windows Panels: Includes access to legacy Windows panels from Windows 7, allowing users to access familiar and powerful tools. These panels include Control Panel for managing system settings, Network Connections for configuring network adapters and connections, Power Panel for adjusting power and sleep settings, Sound Settings for managing audio devices and settings, System Properties for viewing and modifying system information, and User Accounts for managing user profiles and account settings.

  • Updates:

    • Default (Out of Box) Settings: Provides the default settings that come with Windows for updates.

    • Security (Recommended) Settings: Offers recommended settings, including a slight delay of feature updates by 2 years and installation of security updates 4 days after release.

    • Disable All Updates (Not Recommended!): Allows users to disable all Windows updates, but it's not recommended due to potential security risks.

Video and Written Article walkthrough @ https://christitus.com/windows-tool/

Issues

If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me to promptly address any bugs or consider feature requests.

Contribute Code

To contribute new code, please ensure that it is submitted to the TEST BRANCH. Please note that merges will not be performed directly on the MAIN branch.

When creating pull requests, it is essential to thoroughly document all changes made. This includes documenting any additions made to the tweaks section and ensuring that corresponding undo measures are in place to remove the newly added tweaks if necessary. Failure to adhere to this format may result in denial of the pull request. Additionally, comprehensive documentation is required for all code changes. Any code lacking sufficient documentation may also be denied.

By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

Thanks to all Contributors

Thanks a lot for spending your time helping Winutil grow. Thanks a lot! Keep rocking 🍻.

Contributors

GitHub Stats

Alt