mirror of
https://github.com/ChrisTitusTech/winutil
synced 2026-04-06 14:48:31 +00:00
Compare commits
68 Commits
f59598cf07
...
26.02.11
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
20046d4b73 | ||
|
|
b2ccb3669b | ||
|
|
aaed116798 | ||
|
|
354b09ec0d | ||
|
|
cfde1b5a92 | ||
|
|
4ebe1a3535 | ||
|
|
6708756574 | ||
|
|
301059fd3f | ||
|
|
df8d92cf11 | ||
|
|
6cda509604 | ||
|
|
8a8fed517c | ||
|
|
681f0ec3b9 | ||
|
|
4a31af4faf | ||
|
|
4ddb2795ff | ||
|
|
d5b5784492 | ||
|
|
15d0b42165 | ||
|
|
8fc7d30112 | ||
|
|
a12ea71adb | ||
|
|
b00c7b1ea2 | ||
|
|
ef29ab9ffc | ||
|
|
7219329d2c | ||
|
|
27b0a59abb | ||
|
|
457f1820c4 | ||
|
|
414cd139e2 | ||
|
|
e68e190ff3 | ||
|
|
86097572b0 | ||
|
|
94d45a30fa | ||
|
|
fcc5481477 | ||
|
|
ac116d7083 | ||
|
|
68ab69a19c | ||
|
|
29efb989bd | ||
|
|
99eb70d81b | ||
|
|
9013753d88 | ||
|
|
8ad96a9b6e | ||
|
|
8ed3a31424 | ||
|
|
424d4030c1 | ||
|
|
f88c9be70d | ||
|
|
bc4cd84127 | ||
|
|
54b4bcdda1 | ||
|
|
c5c23d8d18 | ||
|
|
28e84af33d | ||
|
|
832af914e9 | ||
|
|
6d9ed9026d | ||
|
|
9e877afe0e | ||
|
|
0c0ced381a | ||
|
|
8ebd127857 | ||
|
|
25a392877f | ||
|
|
ef2c91b616 | ||
|
|
b52ead87f4 | ||
|
|
2dcfc2b109 | ||
|
|
59a9c59064 | ||
|
|
fcc57fde50 | ||
|
|
06e5477d0e | ||
|
|
a5271597e9 | ||
|
|
d841792f8d | ||
|
|
132260ab96 | ||
|
|
919b2e0b8f | ||
|
|
22e083182d | ||
|
|
2ec37f952a | ||
|
|
aa719b49bf | ||
|
|
e9a6cd32d8 | ||
|
|
b02c7f3eab | ||
|
|
eb29dfced8 | ||
|
|
f9b01fdc81 | ||
|
|
61a80e270d | ||
|
|
a31c9cb235 | ||
|
|
2587a98848 | ||
|
|
a5cf3a2ba7 |
61
.github/CODEOWNERS
vendored
61
.github/CODEOWNERS
vendored
@@ -1,59 +1,2 @@
|
||||
# This is a comment.
|
||||
# Each line is a file pattern followed by one or more owners.
|
||||
|
||||
# These owners will be the default owners for everything in
|
||||
# the repo. Unless a later match takes precedence,
|
||||
# @global-owner1 and @global-owner2 will be requested for
|
||||
# review when someone opens a pull request.
|
||||
* @ChrisTitusTech
|
||||
|
||||
# Order is important; the last matching pattern takes the most
|
||||
# precedence. When someone opens a pull request that only
|
||||
# modifies JS files, only @js-owner and not the global
|
||||
# owner(s) will be requested for a review.
|
||||
# *.js @js-owner #This is an inline comment.
|
||||
|
||||
# You can also use email addresses if you prefer. They'll be
|
||||
# used to look up users just like we do for commit author
|
||||
# emails.
|
||||
# *.go docs@example.com
|
||||
|
||||
# Teams can be specified as code owners as well. Teams should
|
||||
# be identified in the format @org/team-name. Teams must have
|
||||
# explicit write access to the repository. In this example,
|
||||
# the octocats team in the octo-org organization owns all .txt files.
|
||||
# *.txt @octo-org/octocats
|
||||
|
||||
# In this example, @doctocat owns any files in the build/logs
|
||||
# directory at the root of the repository and any of its
|
||||
# subdirectories.
|
||||
# /build/logs/ @doctocat
|
||||
|
||||
# The `docs/*` pattern will match files like
|
||||
# `docs/getting-started.md` but not further nested files like
|
||||
# `docs/build-app/troubleshooting.md`.
|
||||
# docs/* docs@example.com
|
||||
|
||||
# In this example, @octocat owns any file in an apps directory
|
||||
# anywhere in your repository.
|
||||
# apps/ @octocat
|
||||
|
||||
# In this example, @doctocat owns any file in the `/docs`
|
||||
# directory in the root of your repository and any of its
|
||||
# subdirectories.
|
||||
# /docs/ @doctocat
|
||||
|
||||
# In this example, any change inside the `/scripts` directory
|
||||
# will require approval from @doctocat or @octocat.
|
||||
# /scripts/ @doctocat @octocat
|
||||
|
||||
# In this example, @octocat owns any file in a `/logs` directory such as
|
||||
# `/build/logs`, `/scripts/logs`, and `/deeply/nested/logs`. Any changes
|
||||
# in a `/logs` directory will require approval from @octocat.
|
||||
# **/logs @octocat
|
||||
|
||||
# In this example, @octocat owns any file in the `/apps`
|
||||
# directory in the root of your repository except for the `/apps/github`
|
||||
# subdirectory, as its owners are left empty.
|
||||
# /apps/ @octocat
|
||||
# /apps/github
|
||||
# Chris rules EVERYTHING (including paths listed below)
|
||||
* @ChrisTitusTech
|
||||
4
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
4
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
@@ -10,7 +10,7 @@ body:
|
||||
Thank you for taking the time to report an issue! Please provide as much detail as possible to help us address the problem efficiently.
|
||||
|
||||
## ⚠️ **IMPORTANT**
|
||||
- 🛠️ **Supported environments only:** We only support Windows 11. Custom ISOs that are not made using Microwin are not supported.
|
||||
- 🛠️ **Supported environments only:** We only support Windows 11.
|
||||
- 💡 For general questions, use the [Discussions section](https://github.com/Christitustech/winutil/discussions) or join our Community-driven [Discord Server](https://discord.gg/RUbZUZyByQ).
|
||||
|
||||
- type: checkboxes
|
||||
@@ -28,7 +28,7 @@ body:
|
||||
id: affected_part
|
||||
attributes:
|
||||
label: 📜 What part of Winutil are you having issues with?
|
||||
placeholder: "e.g., Microwin, Tweaks, etc."
|
||||
placeholder: "e.g., Tweaks, etc."
|
||||
validations:
|
||||
required: true
|
||||
|
||||
|
||||
16
.github/PULL_REQUEST_TEMPLATE.md
vendored
16
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -4,21 +4,13 @@
|
||||
- [ ] New feature
|
||||
- [ ] Bug fix
|
||||
- [ ] Documentation update
|
||||
- [ ] Refactoring
|
||||
- [ ] Hotfix
|
||||
- [ ] Security patch
|
||||
- [ ] UI/UX improvement
|
||||
|
||||
<!-- This automatically adds labels to your PR based on the selections above. -->
|
||||
|
||||
## Description
|
||||
<!--[Provide a detailed explanation of the changes you have made. Include the reasons behind these changes and any relevant context. Link any related issues.]-->
|
||||
<!--[What does this PR do? Provide Screenshots when possible.]-->
|
||||
|
||||
## Issue related to PR
|
||||
<!--[What issue/discussion is related to this PR (if any)]-->
|
||||
<!--[List any ISSUES this is related to as it AUTO-CLOSES Them!]-->
|
||||
- Resolves #
|
||||
|
||||
## Checklist
|
||||
- [ ] My code adheres to the coding and style guidelines of the project.
|
||||
- [ ] I have performed a self-review of my own code.
|
||||
- [ ] I have commented my code, particularly in hard-to-understand areas.
|
||||
- [ ] I have made corresponding changes to the documentation.
|
||||
- [ ] My changes generate no errors/warnings/merge conflicts.
|
||||
|
||||
12
.github/release-drafter.yml
vendored
12
.github/release-drafter.yml
vendored
@@ -4,15 +4,16 @@ categories:
|
||||
labels:
|
||||
- 'feature'
|
||||
- 'enhancement'
|
||||
- 'new feature'
|
||||
- title: '🐛 Bug Fixes'
|
||||
labels:
|
||||
- 'fix'
|
||||
- 'hotfix'
|
||||
- 'bugfix'
|
||||
- 'bug'
|
||||
- title: '📚 Documentation'
|
||||
label: 'documentation'
|
||||
- title: '🔒 Security'
|
||||
label: 'security'
|
||||
- title: '🎨 UI/UX Improvements'
|
||||
label: 'ui update'
|
||||
change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
|
||||
template: |
|
||||
## Changes
|
||||
@@ -31,7 +32,7 @@ autolabeler:
|
||||
- '/fix\/.+/'
|
||||
title:
|
||||
- '/fix/i'
|
||||
- label: 'enhancement'
|
||||
- label: 'new feature'
|
||||
branch:
|
||||
- '/feature\/.+/'
|
||||
body:
|
||||
@@ -40,9 +41,6 @@ autolabeler:
|
||||
files:
|
||||
- '**/*.md'
|
||||
- 'docs/**/*'
|
||||
- label: 'security'
|
||||
branch:
|
||||
- '/security\/.+/'
|
||||
replacers:
|
||||
- search: /"/g
|
||||
replace: ''
|
||||
|
||||
2
.github/workflows/close-old-issues.yaml
vendored
2
.github/workflows/close-old-issues.yaml
vendored
@@ -14,7 +14,7 @@ jobs:
|
||||
contents: none
|
||||
steps:
|
||||
- name: Close inactive issues
|
||||
uses: actions/stale@v8
|
||||
uses: actions/stale@v10
|
||||
with:
|
||||
# A list of labels to reference when looking through issues,
|
||||
# and only when one (or even more) of these labels are found..
|
||||
|
||||
18
.github/workflows/docs.yaml
vendored
18
.github/workflows/docs.yaml
vendored
@@ -1,40 +1,32 @@
|
||||
# Sample workflow for building and deploying a Hugo site to GitHub Pages
|
||||
name: Deploy Hugo site to Pages
|
||||
|
||||
on:
|
||||
# Runs on pushes targeting the default branch
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- 'docs/**' # ONLY triggers if files in the 'docs' folder are changed
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
- "docs/**"
|
||||
workflow_dispatch:
|
||||
|
||||
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
||||
permissions:
|
||||
contents: read
|
||||
pages: write
|
||||
id-token: write
|
||||
|
||||
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
|
||||
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
|
||||
concurrency:
|
||||
group: "pages"
|
||||
cancel-in-progress: false
|
||||
|
||||
# Default to bash
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
|
||||
jobs:
|
||||
# Build job
|
||||
build:
|
||||
if: github.repository == 'ChrisTitusTech/winutil'
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
HUGO_VERSION: 0.145.0
|
||||
HUGO_VERSION: 0.147.7
|
||||
HUGO_ENVIRONMENT: production
|
||||
TZ: America/Chicago
|
||||
steps:
|
||||
@@ -59,8 +51,7 @@ jobs:
|
||||
path: |
|
||||
${{ runner.temp }}/hugo_cache
|
||||
key: hugo-${{ github.run_id }}
|
||||
restore-keys:
|
||||
hugo-
|
||||
restore-keys: hugo-
|
||||
- name: Build with Hugo
|
||||
run: |
|
||||
hugo \
|
||||
@@ -82,6 +73,7 @@ jobs:
|
||||
path: ./docs/public
|
||||
|
||||
deploy:
|
||||
if: github.repository == 'ChrisTitusTech/winutil'
|
||||
environment:
|
||||
name: github-pages
|
||||
url: ${{ steps.deployment.outputs.page_url }}
|
||||
|
||||
2
.github/workflows/issue-slash-commands.yaml
vendored
2
.github/workflows/issue-slash-commands.yaml
vendored
@@ -67,7 +67,7 @@ jobs:
|
||||
id: check_user
|
||||
if: env.command == 'true'
|
||||
run: |
|
||||
ALLOWED_USERS=("ChrisTitusTech" "og-mrk" "Marterich" "MyDrift-user" "Real-MullaC" "CodingWonders")
|
||||
ALLOWED_USERS=("ChrisTitusTech" "og-mrk" "Marterich" "MyDrift-user" "Real-MullaC" "CodingWonders" "GabiNun")
|
||||
if [[ " ${ALLOWED_USERS[@]} " =~ " ${{ github.event.comment.user.login }} " ]]; then
|
||||
echo "user=true" >> $GITHUB_ENV
|
||||
else
|
||||
|
||||
45
.github/workflows/label-pr.yaml
vendored
Normal file
45
.github/workflows/label-pr.yaml
vendored
Normal file
@@ -0,0 +1,45 @@
|
||||
name: Label PRs by Type of Change
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [opened, edited, synchronize]
|
||||
|
||||
jobs:
|
||||
label-pr:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
pull-requests: write
|
||||
issues: write
|
||||
contents: read # Often needed for github-script
|
||||
steps:
|
||||
- name: Check PR body for Type of Change
|
||||
uses: actions/github-script@v8
|
||||
with:
|
||||
script: |
|
||||
const prBody = context.payload.pull_request.body || '';
|
||||
const labelsToAdd = [];
|
||||
|
||||
if (/\[x\]\s*New feature/i.test(prBody)) {
|
||||
labelsToAdd.push('new feature');
|
||||
}
|
||||
if (/\[x\]\s*Bug fix/i.test(prBody)) {
|
||||
labelsToAdd.push('bug');
|
||||
}
|
||||
if (/\[x\]\s*Documentation update/i.test(prBody)) {
|
||||
labelsToAdd.push('documentation');
|
||||
}
|
||||
if (/\[x\]\s*Hotfix/i.test(prBody)) {
|
||||
labelsToAdd.push('hotfix');
|
||||
}
|
||||
if (/\[x\]\s*UI\/UX improvement/i.test(prBody)) {
|
||||
labelsToAdd.push('ui update');
|
||||
}
|
||||
|
||||
if (labelsToAdd.length > 0) {
|
||||
await github.rest.issues.addLabels({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
issue_number: context.payload.pull_request.number,
|
||||
labels: labelsToAdd
|
||||
});
|
||||
}
|
||||
2
.github/workflows/pre-release.yaml
vendored
2
.github/workflows/pre-release.yaml
vendored
@@ -56,7 +56,7 @@ jobs:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
config-name: release-drafter.yml
|
||||
version: ${{ env.VERSION }} # Pass the version variable
|
||||
version: ${{ env.VERSION }}
|
||||
|
||||
- name: Create and Upload Release
|
||||
id: create_release
|
||||
|
||||
6
.gitignore
vendored
6
.gitignore
vendored
@@ -45,7 +45,6 @@ Microsoft.PowerShell.ConsoleHost.dll
|
||||
|
||||
# General
|
||||
.DS_Store
|
||||
microwin.log
|
||||
True
|
||||
test.ps1
|
||||
winutil.ps1
|
||||
@@ -56,3 +55,8 @@ winutil.ps1
|
||||
binary/
|
||||
|
||||
.preprocessor_hashes.json
|
||||
|
||||
# Hugo Files
|
||||
docs/public/
|
||||
docs/.hugo_build.lock
|
||||
docs/resources/
|
||||
|
||||
28
Compile.ps1
28
Compile.ps1
@@ -12,12 +12,8 @@ $OFS = "`r`n"
|
||||
$scriptname = "winutil.ps1"
|
||||
$workingdir = $PSScriptRoot
|
||||
|
||||
Push-Location
|
||||
Set-Location $workingdir
|
||||
|
||||
# Variable to sync between runspaces
|
||||
$sync = [Hashtable]::Synchronized(@{})
|
||||
$sync.PSScriptRoot = $workingdir
|
||||
$sync.configs = @{}
|
||||
|
||||
function Update-Progress {
|
||||
@@ -36,15 +32,6 @@ function Update-Progress {
|
||||
Write-Progress -Activity $Activity -Status $StatusMessage -PercentComplete $Percent
|
||||
}
|
||||
|
||||
$header = @"
|
||||
################################################################################################################
|
||||
### ###
|
||||
### WARNING: This file is automatically generated DO NOT modify this file directly as it will be overwritten ###
|
||||
### ###
|
||||
################################################################################################################
|
||||
"@
|
||||
|
||||
|
||||
Update-Progress "Pre-req: Running Preprocessor..." 0
|
||||
|
||||
# Dot source the 'Invoke-Preprocessing' Function from 'tools/Invoke-Preprocessing.ps1' Script
|
||||
@@ -65,7 +52,6 @@ $excludedFiles += @(
|
||||
'.\LICENSE',
|
||||
"$preprocessingFilePath",
|
||||
'*.png',
|
||||
'*.exe',
|
||||
'.\.preprocessor_hashes.json'
|
||||
)
|
||||
|
||||
@@ -76,9 +62,6 @@ Invoke-Preprocessing -WorkingDir "$workingdir" -ExcludedFiles $excludedFiles -Pr
|
||||
Update-Progress "Pre-req: Allocating Memory" 0
|
||||
$script_content = [System.Collections.Generic.List[string]]::new()
|
||||
|
||||
Update-Progress "Adding: Header" 5
|
||||
$script_content.Add($header)
|
||||
|
||||
Update-Progress "Adding: Version" 10
|
||||
$script_content.Add($(Get-Content "scripts\start.ps1").replace('#{replaceme}',"$(Get-Date -Format yy.MM.dd)"))
|
||||
|
||||
@@ -144,19 +127,12 @@ try {
|
||||
} catch {
|
||||
Write-Warning "Syntax Validation for 'winutil.ps1' has failed"
|
||||
Write-Host "$($Error[0])" -ForegroundColor Red
|
||||
Pop-Location # Restore previous location before exiting...
|
||||
exit 1
|
||||
}
|
||||
Write-Progress -Activity "Validating" -Completed
|
||||
|
||||
if ($run) {
|
||||
$script = "& '$workingdir\$scriptname' $Arguments"
|
||||
|
||||
$powershellcmd = if (Get-Command pwsh -ErrorAction SilentlyContinue) { "pwsh" } else { "powershell" }
|
||||
$processCmd = if (Get-Command wt.exe -ErrorAction SilentlyContinue) { "wt.exe" } else { $powershellcmd }
|
||||
|
||||
Start-Process $processCmd -ArgumentList "$powershellcmd -NoProfile -Command $script"
|
||||
|
||||
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
|
||||
.\Winutil.ps1 $Arguments
|
||||
break
|
||||
}
|
||||
Pop-Location
|
||||
|
||||
@@ -39,9 +39,6 @@ If you have Issues, refer to [Known Issues](https://winutil.christitus.com/known
|
||||
|
||||
## 🎓 Documentation
|
||||
|
||||
> [!NOTE]
|
||||
> To contribute to the documentation, please visit [WinUtil Docs Repo](https://github.com/Chris-Titus-Docs/winutil-docs) for more info.
|
||||
|
||||
### [WinUtil Official Documentation](https://winutil.christitus.com/)
|
||||
|
||||
### [YouTube Tutorial](https://www.youtube.com/watch?v=6UQZ5oQg8XA)
|
||||
@@ -79,7 +76,7 @@ You'll see a new file named `winutil.ps1`, which's created by `Compile.ps1` scri
|
||||
|
||||
These are the sponsors that help keep this project alive with monthly contributions.
|
||||
|
||||
<!-- sponsors --><a href="https://github.com/markamos"><img src="https://github.com/markamos.png" width="60px" alt="User avatar: Mark Amos" /></a><a href="https://github.com/dwelfusius"><img src="https://github.com/dwelfusius.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/mews-se"><img src="https://github.com/mews-se.png" width="60px" alt="User avatar: Martin Stockzell" /></a><a href="https://github.com/jdiegmueller"><img src="https://github.com/jdiegmueller.png" width="60px" alt="User avatar: Jason A. Diegmueller" /></a><a href="https://github.com/robertsandrock"><img src="https://github.com/robertsandrock.png" width="60px" alt="User avatar: RMS" /></a><a href="https://github.com/KenichiQaz"><img src="https://github.com/KenichiQaz.png" width="60px" alt="User avatar: Stefan" /></a><a href="https://github.com/paulsheets"><img src="https://github.com/paulsheets.png" width="60px" alt="User avatar: Paul" /></a><a href="https://github.com/djones369"><img src="https://github.com/djones369.png" width="60px" alt="User avatar: Dave J (WhamGeek)" /></a><a href="https://github.com/anthonymendez"><img src="https://github.com/anthonymendez.png" width="60px" alt="User avatar: Anthony Mendez" /></a><a href="https://github.com/FatBastard0"><img src="https://github.com/FatBastard0.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/DursleyGuy"><img src="https://github.com/DursleyGuy.png" width="60px" alt="User avatar: DursleyGuy" /></a><a href="https://github.com/quaszi"><img src="https://github.com/quaszi.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/DwayneTheRockLobster1"><img src="https://github.com/DwayneTheRockLobster1.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/KieraKujisawa"><img src="https://github.com/KieraKujisawa.png" width="60px" alt="User avatar: Kiera Meredith" /></a><a href="https://github.com/TaNorbs"><img src="https://github.com/TaNorbs.png" width="60px" alt="User avatar: Norbs" /></a><!-- sponsors -->
|
||||
<!-- sponsors --><a href="https://github.com/markamos"><img src="https://github.com/markamos.png" width="60px" alt="User avatar: Mark Amos" /></a><a href="https://github.com/dwelfusius"><img src="https://github.com/dwelfusius.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/mews-se"><img src="https://github.com/mews-se.png" width="60px" alt="User avatar: Martin Stockzell" /></a><a href="https://github.com/jdiegmueller"><img src="https://github.com/jdiegmueller.png" width="60px" alt="User avatar: Jason A. Diegmueller" /></a><a href="https://github.com/robertsandrock"><img src="https://github.com/robertsandrock.png" width="60px" alt="User avatar: RMS" /></a><a href="https://github.com/KenichiQaz"><img src="https://github.com/KenichiQaz.png" width="60px" alt="User avatar: Stefan" /></a><a href="https://github.com/paulsheets"><img src="https://github.com/paulsheets.png" width="60px" alt="User avatar: Paul" /></a><a href="https://github.com/djones369"><img src="https://github.com/djones369.png" width="60px" alt="User avatar: Dave J (WhamGeek)" /></a><a href="https://github.com/anthonymendez"><img src="https://github.com/anthonymendez.png" width="60px" alt="User avatar: Anthony Mendez" /></a><a href="https://github.com/FatBastard0"><img src="https://github.com/FatBastard0.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/DursleyGuy"><img src="https://github.com/DursleyGuy.png" width="60px" alt="User avatar: DursleyGuy" /></a><a href="https://github.com/quaszi"><img src="https://github.com/quaszi.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/DwayneTheRockLobster1"><img src="https://github.com/DwayneTheRockLobster1.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/KieraKujisawa"><img src="https://github.com/KieraKujisawa.png" width="60px" alt="User avatar: Kiera Meredith" /></a><a href="https://github.com/andrewpayne68"><img src="https://github.com/andrewpayne68.png" width="60px" alt="User avatar: Andrew P" /></a><!-- sponsors -->
|
||||
|
||||
## 🏅 Thanks to all Contributors
|
||||
Thanks a lot for spending your time helping Winutil grow. Thanks a lot! Keep rocking 🍻.
|
||||
|
||||
@@ -552,6 +552,14 @@
|
||||
"link": "https://espanso.org/",
|
||||
"winget": "Espanso.Espanso"
|
||||
},
|
||||
"ffmpeg": {
|
||||
"category": "Utilities",
|
||||
"choco": "na",
|
||||
"content": "FFmpeg Batch AV Converter",
|
||||
"description": "FFmpeg Batch AV Converter is a universal audio and video encoder, that allows to use the full potential of ffmpeg command line with a few mouse clicks in a convenient GUI with drag and drop, progress information.",
|
||||
"link": "https://ffmpeg-batch.sourceforge.io/",
|
||||
"winget": "eibol.FFmpegBatchAVConverter"
|
||||
},
|
||||
"falkon": {
|
||||
"category": "Browsers",
|
||||
"choco": "falkon",
|
||||
@@ -912,6 +920,14 @@
|
||||
"link": "https://www.cpuid.com/softwares/hwmonitor.html",
|
||||
"winget": "CPUID.HWMonitor"
|
||||
},
|
||||
"imhex": {
|
||||
"category": "Development",
|
||||
"choco": "na",
|
||||
"content": "ImHex (Hex Editor)",
|
||||
"description": "A modern, featureful Hex Editor for Reverse Engineers and Developers.",
|
||||
"link": "https://imhex.werwolv.net/",
|
||||
"winget": "WerWolv.ImHex"
|
||||
},
|
||||
"imageglass": {
|
||||
"category": "Multimedia Tools",
|
||||
"choco": "imageglass",
|
||||
@@ -1576,6 +1592,30 @@
|
||||
"link": "https://owncloud.com/desktop-app/",
|
||||
"winget": "ownCloud.ownCloudDesktop"
|
||||
},
|
||||
"policyplus": {
|
||||
"category": "Multimedia Tools",
|
||||
"choco": "na",
|
||||
"content": "Policy Plus",
|
||||
"description": "Local Group Policy Editor plus more, for all Windows editions.",
|
||||
"link": "https://github.com/Fleex255/PolicyPlus",
|
||||
"winget": "Fleex255.PolicyPlus"
|
||||
},
|
||||
"potplayer": {
|
||||
"category": "Multimedia Tools",
|
||||
"choco": "na",
|
||||
"content": "PotPlayer",
|
||||
"description": "PotPlayer is a free Windows media player with wide format support, high performance, built-in codecs, and extensive customization options.",
|
||||
"link": "https://potplayer.tv/",
|
||||
"winget": "Daum.PotPlayer"
|
||||
},
|
||||
"processexplorer": {
|
||||
"category": "Microsoft Tools",
|
||||
"choco": "na",
|
||||
"content": "Process Explorer",
|
||||
"description": "Process Explorer is a task manager and system monitor.",
|
||||
"link": "https://learn.microsoft.com/sysinternals/downloads/process-explorer",
|
||||
"winget": "Microsoft.Sysinternals.ProcessExplorer"
|
||||
},
|
||||
"Paintdotnet": {
|
||||
"category": "Multimedia Tools",
|
||||
"choco": "paint.net",
|
||||
@@ -1928,6 +1968,14 @@
|
||||
"link": "https://nilesoft.org/",
|
||||
"winget": "Nilesoft.Shell"
|
||||
},
|
||||
"systeminformer": {
|
||||
"category": "Development",
|
||||
"choco": "na",
|
||||
"content": "System Informer",
|
||||
"description": "A free, powerful, multi-purpose tool that helps you monitor system resources, debug software and detect malware.",
|
||||
"link": "https://systeminformer.com/",
|
||||
"winget": "WinsiderSS.SystemInformer"
|
||||
},
|
||||
"sidequest": {
|
||||
"category": "Games",
|
||||
"choco": "sidequest",
|
||||
@@ -2934,6 +2982,6 @@
|
||||
"content": "Zed",
|
||||
"description": "Zed is a modern, high-performance code editor designed from the ground up for speed and collaboration.",
|
||||
"link": "https://zed.dev/",
|
||||
"winget": "Zed.Zed"
|
||||
"winget": "ZedIndustries.Zed"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,25 +38,39 @@
|
||||
"Order": "2",
|
||||
"Description": "Use Chocolatey for package management"
|
||||
},
|
||||
"WPFCollapseAllCategories": {
|
||||
"Content": "Collapse All Categories",
|
||||
"Category": "__Selection",
|
||||
"Type": "Button",
|
||||
"Order": "1",
|
||||
"Description": "Collapse all application categories"
|
||||
},
|
||||
"WPFExpandAllCategories": {
|
||||
"Content": "Expand All Categories",
|
||||
"Category": "__Selection",
|
||||
"Type": "Button",
|
||||
"Order": "2",
|
||||
"Description": "Expand all application categories"
|
||||
},
|
||||
"WPFClearInstallSelection": {
|
||||
"Content": "Clear Selection",
|
||||
"Category": "__Selection",
|
||||
"Type": "Button",
|
||||
"Order": "1",
|
||||
"Order": "3",
|
||||
"Description": "Clear the selection of applications"
|
||||
},
|
||||
"WPFGetInstalled": {
|
||||
"Content": "Get Installed",
|
||||
"Category": "__Selection",
|
||||
"Type": "Button",
|
||||
"Order": "2",
|
||||
"Order": "4",
|
||||
"Description": "Show installed applications"
|
||||
},
|
||||
"WPFselectedAppsButton": {
|
||||
"Content": "Selected Apps: 0",
|
||||
"Category": "__Selection",
|
||||
"Type": "Button",
|
||||
"Order": "3",
|
||||
"Order": "5",
|
||||
"Description": "Show the selected applications"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,442 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<unattend xmlns="urn:schemas-microsoft-com:unattend" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State">
|
||||
<!--https://schneegans.de/windows/unattend-generator/?LanguageMode=Unattended&UILanguage=en-US&Locale=en-US&Keyboard=00000409&GeoLocation=244&ProcessorArchitecture=amd64&BypassRequirementsCheck=true&BypassNetworkCheck=true&ComputerNameMode=Random&TimeZoneMode=Implicit&PartitionMode=Interactive&WindowsEditionMode=Unattended&WindowsEdition=pro&UserAccountMode=Unattended&AccountName0=User&AccountPassword0=&AccountGroup0=Administrators&AccountName1=&AccountName2=&AccountName3=&AccountName4=&AutoLogonMode=Own&PasswordExpirationMode=Unlimited&LockoutMode=Default&HideFiles=Hidden&DisableWidgets=true&ClassicContextMenu=true&DisableFastStartup=true&EnableLongPaths=true&DisableAppSuggestions=true&PreventDeviceEncryption=true&WifiMode=Skip&ExpressSettings=DisableAll&Remove3DViewer=true&RemoveBingSearch=true&RemoveCamera=true&RemoveClipchamp=true&RemoveClock=true&RemoveCopilot=true&RemoveCortana=true&RemoveDevHome=true&RemoveFamily=true&RemoveFeedbackHub=true&RemoveGetHelp=true&RemoveInternetExplorer=true&RemoveMailCalendar=true&RemoveMaps=true&RemoveMathInputPanel=true&RemoveZuneVideo=true&RemoveNews=true&RemoveNotepad=true&RemoveOffice365=true&RemoveOneDrive=true&RemoveOneNote=true&RemoveOpenSSHClient=true&RemoveOutlook=true&RemovePaint3D=true&RemovePeople=true&RemovePowerAutomate=true&RemoveQuickAssist=true&RemoveSkype=true&RemoveSolitaire=true&RemoveStepsRecorder=true&RemoveStickyNotes=true&RemoveTeams=true&RemoveGetStarted=true&RemoveToDo=true&RemoveVoiceRecorder=true&RemoveWeather=true&RemoveWindowsMediaPlayer=true&RemoveZuneMusic=true&RemoveWordPad=true&WdacMode=Skip-->
|
||||
<settings pass="offlineServicing"></settings>
|
||||
<settings pass="windowsPE">
|
||||
<component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
|
||||
<SetupUILanguage>
|
||||
<UILanguage>en-US</UILanguage>
|
||||
</SetupUILanguage>
|
||||
<InputLocale>0409:00000409</InputLocale>
|
||||
<SystemLocale>en-US</SystemLocale>
|
||||
<UILanguage>en-US</UILanguage>
|
||||
<UserLocale>en-US</UserLocale>
|
||||
</component>
|
||||
<component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
|
||||
<UserData>
|
||||
<ProductKey>
|
||||
<Key>VK7JG-NPHTM-C97JM-9MPGT-3V66T</Key>
|
||||
</ProductKey>
|
||||
<AcceptEula>true</AcceptEula>
|
||||
</UserData>
|
||||
<RunSynchronous>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>1</Order>
|
||||
<Path>reg.exe add "HKLM\SYSTEM\Setup\LabConfig" /v BypassTPMCheck /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>2</Order>
|
||||
<Path>reg.exe add "HKLM\SYSTEM\Setup\LabConfig" /v BypassSecureBootCheck /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>3</Order>
|
||||
<Path>reg.exe add "HKLM\SYSTEM\Setup\LabConfig" /v BypassRAMCheck /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
</RunSynchronous>
|
||||
</component>
|
||||
</settings>
|
||||
<settings pass="generalize"></settings>
|
||||
<settings pass="specialize">
|
||||
<component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
|
||||
<RunSynchronous>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>1</Order>
|
||||
<Path>reg.exe add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE" /v BypassNRO /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>2</Order>
|
||||
<Path>reg.exe load "HKU\DefaultUser" "C:\Users\Default\NTUSER.DAT"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>3</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\Runonce" /v "UninstallCopilot" /t REG_SZ /d "powershell.exe -NoProfile -Command \"Get-AppxPackage -Name 'Microsoft.Windows.Ai.Copilot.Provider' | Remove-AppxPackage;\"" /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>4</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Policies\Microsoft\Windows\WindowsCopilot" /v TurnOffWindowsCopilot /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>5</Order>
|
||||
<Path>reg.exe unload "HKU\DefaultUser"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>6</Order>
|
||||
<Path>reg.exe delete "HKLM\SOFTWARE\Microsoft\WindowsUpdate\Orchestrator\UScheduler_Oobe\DevHomeUpdate" /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>7</Order>
|
||||
<Path>reg.exe load "HKU\DefaultUser" "C:\Users\Default\NTUSER.DAT"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>8</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Notepad" /v ShowStoreBanner /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>9</Order>
|
||||
<Path>reg.exe unload "HKU\DefaultUser"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>10</Order>
|
||||
<Path>cmd.exe /c "del "C:\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\OneDrive.lnk""</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>11</Order>
|
||||
<Path>cmd.exe /c "del "C:\Windows\System32\OneDriveSetup.exe""</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>12</Order>
|
||||
<Path>cmd.exe /c "del "C:\Windows\SysWOW64\OneDriveSetup.exe""</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>13</Order>
|
||||
<Path>reg.exe load "HKU\DefaultUser" "C:\Users\Default\NTUSER.DAT"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>14</Order>
|
||||
<Path>reg.exe delete "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\Run" /v OneDriveSetup /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>15</Order>
|
||||
<Path>reg.exe unload "HKU\DefaultUser"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>16</Order>
|
||||
<Path>reg.exe delete "HKLM\SOFTWARE\Microsoft\WindowsUpdate\Orchestrator\UScheduler_Oobe\OutlookUpdate" /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>17</Order>
|
||||
<Path>reg.exe add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Communications" /v ConfigureChatAutoInstall /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>18</Order>
|
||||
<Path>powershell.exe -NoProfile -Command "$xml = [xml]::new(); $xml.Load('C:\Windows\Panther\unattend.xml'); $sb = [scriptblock]::Create( $xml.unattend.Extensions.ExtractScript ); Invoke-Command -ScriptBlock $sb -ArgumentList $xml;"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>19</Order>
|
||||
<Path>powershell.exe -NoProfile -Command "Get-Content -LiteralPath 'C:\Windows\Temp\Microwin-RemovePackages.ps1' -Raw | Invoke-Expression;"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>20</Order>
|
||||
<Path>powershell.exe -NoProfile -Command "Get-Content -LiteralPath 'C:\Windows\Temp\remove-caps.ps1' -Raw | Invoke-Expression;"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>21</Order>
|
||||
<Path>reg.exe add "HKLM\SOFTWARE\Microsoft\PolicyManager\current\device\Start" /v ConfigureStartPins /t REG_SZ /d "{ \"pinnedList\": [] }" /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>22</Order>
|
||||
<Path>reg.exe add "HKLM\SOFTWARE\Microsoft\PolicyManager\current\device\Start" /v ConfigureStartPins_ProviderSet /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>23</Order>
|
||||
<Path>reg.exe add "HKLM\SOFTWARE\Microsoft\PolicyManager\current\device\Start" /v ConfigureStartPins_WinningProvider /t REG_SZ /d B5292708-1619-419B-9923-E5D9F3925E71 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>24</Order>
|
||||
<Path>reg.exe add "HKLM\SOFTWARE\Microsoft\PolicyManager\providers\B5292708-1619-419B-9923-E5D9F3925E71\default\Device\Start" /v ConfigureStartPins /t REG_SZ /d "{ \"pinnedList\": [] }" /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>25</Order>
|
||||
<Path>reg.exe add "HKLM\SOFTWARE\Microsoft\PolicyManager\providers\B5292708-1619-419B-9923-E5D9F3925E71\default\Device\Start" /v ConfigureStartPins_LastWrite /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>26</Order>
|
||||
<Path>net.exe accounts /maxpwage:UNLIMITED</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>27</Order>
|
||||
<Path>reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\FileSystem" /v LongPathsEnabled /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>28</Order>
|
||||
<Path>reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Power" /v HiberbootEnabled /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>29</Order>
|
||||
<Path>reg.exe add "HKLM\SOFTWARE\Policies\Microsoft\Dsh" /v AllowNewsAndInterests /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>30</Order>
|
||||
<Path>reg.exe load "HKU\DefaultUser" "C:\Users\Default\NTUSER.DAT"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>31</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "ContentDeliveryAllowed" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>32</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "FeatureManagementEnabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>33</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "OEMPreInstalledAppsEnabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>34</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "PreInstalledAppsEnabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>35</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "PreInstalledAppsEverEnabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>36</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SilentInstalledAppsEnabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>37</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SoftLandingEnabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>38</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContentEnabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>39</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-310093Enabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>40</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338387Enabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>41</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338388Enabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>42</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338389Enabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>43</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338393Enabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>44</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-353698Enabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>45</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SystemPaneSuggestionsEnabled" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>46</Order>
|
||||
<Path>reg.exe unload "HKU\DefaultUser"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>47</Order>
|
||||
<Path>reg.exe add "HKLM\Software\Policies\Microsoft\Windows\CloudContent" /v "DisableWindowsConsumerFeatures" /t REG_DWORD /d 0 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>48</Order>
|
||||
<Path>reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\BitLocker" /v "PreventDeviceEncryption" /t REG_DWORD /d 1 /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>49</Order>
|
||||
<Path>reg.exe load "HKU\DefaultUser" "C:\Users\Default\NTUSER.DAT"</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>50</Order>
|
||||
<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\Runonce" /v "ClassicContextMenu" /t REG_SZ /d "reg.exe add \"HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32\" /ve /f" /f</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>51</Order>
|
||||
<Path>reg.exe unload "HKU\DefaultUser"</Path>
|
||||
</RunSynchronousCommand>
|
||||
</RunSynchronous>
|
||||
</component>
|
||||
</settings>
|
||||
<settings pass="auditSystem"></settings>
|
||||
<settings pass="auditUser"></settings>
|
||||
<settings pass="oobeSystem">
|
||||
<component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
|
||||
<InputLocale>0409:00000409</InputLocale>
|
||||
<SystemLocale>en-US</SystemLocale>
|
||||
<UILanguage>en-US</UILanguage>
|
||||
<UserLocale>en-US</UserLocale>
|
||||
</component>
|
||||
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
|
||||
<UserAccounts>
|
||||
<LocalAccounts>
|
||||
<LocalAccount wcm:action="add">
|
||||
<Name>User</Name>
|
||||
<Group>Administrators</Group>
|
||||
<Password>
|
||||
<Value></Value>
|
||||
<PlainText>true</PlainText>
|
||||
</Password>
|
||||
</LocalAccount>
|
||||
</LocalAccounts>
|
||||
</UserAccounts>
|
||||
<AutoLogon>
|
||||
<Username>User</Username>
|
||||
<Enabled>true</Enabled>
|
||||
<LogonCount>1</LogonCount>
|
||||
<Password>
|
||||
<Value></Value>
|
||||
<PlainText>true</PlainText>
|
||||
</Password>
|
||||
</AutoLogon>
|
||||
<OOBE>
|
||||
<ProtectYourPC>3</ProtectYourPC>
|
||||
<HideEULAPage>true</HideEULAPage>
|
||||
<HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
|
||||
</OOBE>
|
||||
<FirstLogonCommands>
|
||||
<SynchronousCommand wcm:action="add">
|
||||
<Order>1</Order>
|
||||
<CommandLine>reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoLogonCount /t REG_DWORD /d 0 /f</CommandLine>
|
||||
</SynchronousCommand>
|
||||
</FirstLogonCommands>
|
||||
</component>
|
||||
</settings>
|
||||
<Extensions xmlns="https://schneegans.de/windows/unattend-generator/">
|
||||
<ExtractScript>
|
||||
param(
|
||||
[xml]$Document
|
||||
);
|
||||
|
||||
$scriptsDir = 'C:\Windows\Setup\Scripts\';
|
||||
foreach( $file in $Document.unattend.Extensions.File ) {
|
||||
$path = [System.Environment]::ExpandEnvironmentVariables(
|
||||
$file.GetAttribute( 'path' )
|
||||
);
|
||||
if( $path.StartsWith( $scriptsDir ) ) {
|
||||
mkdir -Path $scriptsDir -ErrorAction 'SilentlyContinue';
|
||||
}
|
||||
$encoding = switch( [System.IO.Path]::GetExtension( $path ) ) {
|
||||
{ $_ -in '.ps1', '.xml' } { [System.Text.Encoding]::UTF8; }
|
||||
{ $_ -in '.reg', '.vbs', '.js' } { [System.Text.UnicodeEncoding]::new( $false, $true ); }
|
||||
default { [System.Text.Encoding]::Default; }
|
||||
};
|
||||
[System.IO.File]::WriteAllBytes( $path, ( $encoding.GetPreamble() + $encoding.GetBytes( $file.InnerText.Trim() ) ) );
|
||||
}
|
||||
</ExtractScript>
|
||||
<File path="C:\Windows\Temp\Microwin-RemovePackages.ps1">
|
||||
$selectors = @(
|
||||
'Microsoft.Microsoft3DViewer';
|
||||
'Microsoft.BingSearch';
|
||||
'Microsoft.WindowsCamera';
|
||||
'Clipchamp.Clipchamp';
|
||||
'Microsoft.WindowsAlarms';
|
||||
'Microsoft.549981C3F5F10';
|
||||
'Microsoft.Windows.DevHome';
|
||||
'MicrosoftCorporationII.MicrosoftFamily';
|
||||
'Microsoft.WindowsFeedbackHub';
|
||||
'Microsoft.GetHelp';
|
||||
'Microsoft.Getstarted';
|
||||
'microsoft.windowscommunicationsapps';
|
||||
'Microsoft.WindowsMaps';
|
||||
'Microsoft.BingNews';
|
||||
'Microsoft.WindowsNotepad';
|
||||
'Microsoft.MicrosoftOfficeHub';
|
||||
'Microsoft.Office.OneNote';
|
||||
'Microsoft.OutlookForWindows';
|
||||
'Microsoft.MSPaint';
|
||||
'Microsoft.People';
|
||||
'Microsoft.PowerAutomateDesktop';
|
||||
'MicrosoftCorporationII.QuickAssist';
|
||||
'Microsoft.SkypeApp';
|
||||
'Microsoft.MicrosoftSolitaireCollection';
|
||||
'Microsoft.MicrosoftStickyNotes';
|
||||
'MSTeams';
|
||||
'Microsoft.Todos';
|
||||
'Microsoft.WindowsSoundRecorder';
|
||||
'Microsoft.BingWeather';
|
||||
'Microsoft.ZuneMusic';
|
||||
'Microsoft.ZuneVideo';
|
||||
);
|
||||
$getCommand = { Get-AppxProvisionedPackage -Online; };
|
||||
$filterCommand = { $_.DisplayName -eq $selector; };
|
||||
$removeCommand = {
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter( Mandatory, ValueFromPipeline )]
|
||||
$InputObject
|
||||
);
|
||||
process {
|
||||
$InputObject | Remove-AppxProvisionedPackage -AllUsers -Online -ErrorAction 'Continue';
|
||||
}
|
||||
};
|
||||
$type = 'Package';
|
||||
$logfile = 'C:\Windows\Temp\Microwin-RemovePackages.log';
|
||||
& {
|
||||
$installed = & $getCommand;
|
||||
foreach( $selector in $selectors ) {
|
||||
$result = [ordered] @{
|
||||
Selector = $selector;
|
||||
};
|
||||
$found = $installed | Where-Object -FilterScript $filterCommand;
|
||||
if( $found ) {
|
||||
$result.Output = $found | & $removeCommand;
|
||||
if( $? ) {
|
||||
$result.Message = "$type removed.";
|
||||
} else {
|
||||
$result.Message = "$type not removed.";
|
||||
$result.Error = $Error[0];
|
||||
}
|
||||
} else {
|
||||
$result.Message = "$type not installed.";
|
||||
}
|
||||
$result | ConvertTo-Json -Depth 3 -Compress;
|
||||
}
|
||||
} *>&1 >> $logfile;
|
||||
</File>
|
||||
<File path="C:\Windows\Temp\remove-caps.ps1">
|
||||
$selectors = @(
|
||||
'Browser.InternetExplorer';
|
||||
'MathRecognizer';
|
||||
'OpenSSH.Client';
|
||||
'App.Support.QuickAssist';
|
||||
'App.StepsRecorder';
|
||||
'Media.WindowsMediaPlayer';
|
||||
'Microsoft.Windows.WordPad';
|
||||
);
|
||||
$getCommand = { Get-WindowsCapability -Online; };
|
||||
$filterCommand = { ($_.Name -split '~')[0] -eq $selector; };
|
||||
$removeCommand = {
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter( Mandatory, ValueFromPipeline )]
|
||||
$InputObject
|
||||
);
|
||||
process {
|
||||
$InputObject | Remove-WindowsCapability -Online -ErrorAction 'Continue';
|
||||
}
|
||||
};
|
||||
$type = 'Capability';
|
||||
$logfile = 'C:\Windows\Temp\remove-caps.log';
|
||||
& {
|
||||
$installed = & $getCommand;
|
||||
foreach( $selector in $selectors ) {
|
||||
$result = [ordered] @{
|
||||
Selector = $selector;
|
||||
};
|
||||
$found = $installed | Where-Object -FilterScript $filterCommand;
|
||||
if( $found ) {
|
||||
$result.Output = $found | & $removeCommand;
|
||||
if( $? ) {
|
||||
$result.Message = "$type removed.";
|
||||
} else {
|
||||
$result.Message = "$type not removed.";
|
||||
$result.Error = $Error[0];
|
||||
}
|
||||
} else {
|
||||
$result.Message = "$type not installed.";
|
||||
}
|
||||
$result | ConvertTo-Json -Depth 3 -Compress;
|
||||
}
|
||||
} *>&1 >> $logfile;
|
||||
</File>
|
||||
<File path="C:\Users\Default\AppData\Local\Microsoft\Windows\Shell\LayoutModification.xml"><![CDATA[
|
||||
<LayoutModificationTemplate Version="1" xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification">
|
||||
<LayoutOptions StartTileGroupCellWidth="6" />
|
||||
<DefaultLayoutOverride>
|
||||
<StartLayoutCollection>
|
||||
<StartLayout GroupCellWidth="6" xmlns="http://schemas.microsoft.com/Start/2014/FullDefaultLayout" />
|
||||
</StartLayoutCollection>
|
||||
</DefaultLayoutOverride>
|
||||
</LayoutModificationTemplate>
|
||||
]]></File>
|
||||
</Extensions>
|
||||
</unattend>
|
||||
@@ -272,7 +272,7 @@
|
||||
},
|
||||
"WPFWinUtilInstallPSProfile": {
|
||||
"Content": "Install CTT PowerShell Profile",
|
||||
"category": "Powershell Profile",
|
||||
"category": "Powershell Profile Powershell 7+ Only",
|
||||
"panel": "2",
|
||||
"Order": "a083_",
|
||||
"Type": "Button",
|
||||
@@ -280,7 +280,7 @@
|
||||
},
|
||||
"WPFWinUtilUninstallPSProfile": {
|
||||
"Content": "Uninstall CTT PowerShell Profile",
|
||||
"category": "Powershell Profile",
|
||||
"category": "Powershell Profile Powershell 7+ Only",
|
||||
"panel": "2",
|
||||
"Order": "a084_",
|
||||
"Type": "Button",
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
"WPFTweaksActivity",
|
||||
"WPFTweaksConsumerFeatures",
|
||||
"WPFTweaksDisableExplorerAutoDiscovery",
|
||||
"WPFTweaksWPBT",
|
||||
"WPFTweaksDVR",
|
||||
"WPFTweaksLocation",
|
||||
"WPFTweaksServices",
|
||||
@@ -16,6 +17,7 @@
|
||||
"Minimal": [
|
||||
"WPFTweaksConsumerFeatures",
|
||||
"WPFTweaksDisableExplorerAutoDiscovery",
|
||||
"WPFTweaksWPBT",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksTelemetry"
|
||||
]
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"shared":{
|
||||
"AppEntryWidth": "130",
|
||||
"AppEntryWidth": "200",
|
||||
"AppEntryFontSize": "11",
|
||||
"AppEntryMargin": "1,1,1,1",
|
||||
"AppEntryMargin": "1,0,1,0",
|
||||
"AppEntryBorderThickness": "0",
|
||||
"CustomDialogFontSize": "12",
|
||||
"CustomDialogFontSizeHeader": "14",
|
||||
@@ -25,8 +25,6 @@
|
||||
"IconButtonSize": "35",
|
||||
"SettingsIconFontSize": "18",
|
||||
"CloseIconFontSize": "18",
|
||||
"MicroWinLogoSize": "10",
|
||||
"MicrowinCheckBoxMargin": "-10,5,0,0",
|
||||
"GroupBorderBackgroundColor": "#232629",
|
||||
"ButtonFontSize": "12",
|
||||
"ButtonFontFamily": "Arial",
|
||||
@@ -60,7 +58,6 @@
|
||||
"ScrollBarHoverColor": "#5A5D62",
|
||||
"ScrollBarDraggingColor": "#6A6D72",
|
||||
|
||||
"MicrowinBusyColor": "#2e77ff",
|
||||
"ProgressBarForegroundColor": "#2e77ff",
|
||||
"ProgressBarBackgroundColor": "Transparent",
|
||||
"ProgressBarTextColor": "#232629",
|
||||
@@ -91,7 +88,7 @@
|
||||
"AppInstallOverlayBackgroundColor":"#2E3135",
|
||||
"ComboBoxForegroundColor": "#F7F7F7",
|
||||
"ComboBoxBackgroundColor": "#1E3747",
|
||||
"LabelboxForegroundColor": "#0567ff",
|
||||
"LabelboxForegroundColor": "#5bdcff",
|
||||
"MainForegroundColor": "#F7F7F7",
|
||||
"MainBackgroundColor": "#232629",
|
||||
"LabelBackgroundColor": "#232629",
|
||||
@@ -101,7 +98,6 @@
|
||||
"ScrollBarHoverColor": "#3B4252",
|
||||
"ScrollBarDraggingColor": "#5E81AC",
|
||||
|
||||
"MicrowinBusyColor": "#2e77ff",
|
||||
"ProgressBarForegroundColor": "#222222",
|
||||
"ProgressBarBackgroundColor": "Transparent",
|
||||
"ProgressBarTextColor": "#232629",
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,6 @@
|
||||
---
|
||||
title: '{{ replace .File.ContentBaseName "-" " " | title }}'
|
||||
description: ""
|
||||
date: '{{ .Date }}'
|
||||
draft: true
|
||||
title: '{{ replace .File.ContentBaseName "-" " " | title }}'
|
||||
---
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 124 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 109 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 108 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 164 KiB |
@@ -4,6 +4,7 @@ toc: true
|
||||
---
|
||||
|
||||
### Download not working
|
||||
|
||||
If `https://christitus.com/win` is not working, or you want to download the code from GitHub directly, you can use the direct download link:
|
||||
|
||||
```
|
||||
@@ -21,192 +22,163 @@ If it still isn't working and you live in India, it might be due to India blocki
|
||||
|
||||
If you are still having issues, try using a **VPN**, or changing your **DNS provider** to one of following two providers:
|
||||
|
||||
| Provider | Primary DNS | Secondary DNS |
|
||||
|:------------:|:------------:|:-------------:|
|
||||
| Cloudflare | `1.1.1.1` | `1.0.0.1` |
|
||||
| Google | `8.8.8.8` | `8.8.4.4` |
|
||||
|
||||
| Provider | Primary DNS | Secondary DNS |
|
||||
| :--------: | :---------: | :-----------: |
|
||||
| Cloudflare | `1.1.1.1` | `1.0.0.1` |
|
||||
| Google | `8.8.8.8` | `8.8.4.4` |
|
||||
|
||||
### Script blocked by Execution Policy
|
||||
1. Ensure you are running PowerShell as admin: Press `Windows Key`+`X` and select *PowerShell (Admin)* in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
|
||||
1. Ensure you are running PowerShell as admin: Press `Windows Key`+`X` and select _PowerShell (Admin)_ in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
2. In the PowerShell window, type this to allow unsigned code to execute and run the installation script:
|
||||
|
||||
```
|
||||
Set-ExecutionPolicy Unrestricted -Scope Process -Force
|
||||
irm https://christitus.com/win | iex
|
||||
```
|
||||
```
|
||||
Set-ExecutionPolicy Unrestricted -Scope Process -Force
|
||||
irm https://christitus.com/win | iex
|
||||
```
|
||||
|
||||
## Runtime Issues
|
||||
|
||||
### WinGet configuration
|
||||
|
||||
If you have not installed anything using PowerShell before, you may be prompted to configure WinGet. This requires user interaction on first run. You will need to manually type `y` into the PowerShell console and press enter to continue. Once you do it the first time, you will not be prompted again.
|
||||
|
||||
### MicroWin: Error `0x80041031`
|
||||
This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:
|
||||
|
||||
1. **Reboot Your Computer:**
|
||||
|
||||
Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.
|
||||
|
||||
3. **Check for System Corruption:**
|
||||
|
||||
Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.
|
||||
```powershell
|
||||
sfc /scannow
|
||||
```
|
||||
|
||||
4. **Update Your System:**
|
||||
|
||||
Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.
|
||||
|
||||
5. **Check WMI Service:**
|
||||
|
||||
Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:
|
||||
- Press `Win`+`R` to open the Run dialog.
|
||||
- Type `services.msc` and press Enter.
|
||||
- Locate *Windows Management Instrumentation* in the list.
|
||||
- Make sure to set its status to "Running" and the startup type to "Automatic".
|
||||
|
||||
6. **Check for Security Software Interference:**
|
||||
|
||||
Security software can sometimes interfere with WMI operations. Temporarily disable your anti-virus or security software and check if the issue persists. WMI is a common attack/infection vector, so many anti-virus programs will limit its usage.
|
||||
|
||||
7. **Event Viewer:**
|
||||
|
||||
Check the Event Viewer for more detailed error information. Look for entries related to the `80041031` error and check if there are any additional details that can help identify the cause.
|
||||
|
||||
- Press `Win`+`X` and select *Event Viewer*.
|
||||
- Navigate to *Windows Logs* > *Application* or *System*.
|
||||
- Look for entries with the source related to WMI or the application use to mount the ISO.
|
||||
|
||||
8. **ISO File Integrity:**
|
||||
|
||||
Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.
|
||||
|
||||
If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.
|
||||
|
||||
## Windows Issues
|
||||
|
||||
### Windows takes longer to shut down
|
||||
|
||||
This could be for a number of reasons:
|
||||
|
||||
- Turn on fast startup: Press `Windows key`+`R`, then type:
|
||||
```bat
|
||||
control /name Microsoft.PowerOptions /page pageGlobalSettings
|
||||
```
|
||||
- If that doesn't work, disable Hibernation:
|
||||
- Press `Windows Key`+`X` and select *PowerShell (Admin)* in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
- In the PowerShell window, type:
|
||||
```bat
|
||||
powercfg /H off
|
||||
```
|
||||
|
||||
```bat
|
||||
control /name Microsoft.PowerOptions /page pageGlobalSettings
|
||||
```
|
||||
|
||||
If that doesn't work, disable Hibernation:
|
||||
|
||||
- Press `Windows Key`+`X` and select _PowerShell (Admin)_ in Windows 10, or `Windows Terminal (Admin)` in Windows 11. then type:
|
||||
|
||||
```bat
|
||||
powercfg /H off
|
||||
```
|
||||
|
||||
Related issue: [#69](https://github.com/ChrisTitusTech/Winutil/issues/69)
|
||||
|
||||
### Windows Search does not work
|
||||
Enable Background Apps. Related issues: [#69](https://github.com/ChrisTitusTech/Winutil/issues/69) [95](https://github.com/ChrisTitusTech/Winutil/issues/95) [#232](https://github.com/ChrisTitusTech/Winutil/issues/232)
|
||||
|
||||
Enable Background Apps. Related issues: [#69](https://github.com/ChrisTitusTech/Winutil/issues/69) [#95](https://github.com/ChrisTitusTech/Winutil/issues/95) [#232](https://github.com/ChrisTitusTech/Winutil/issues/232)
|
||||
|
||||
### Xbox Game Bar Activation Broken
|
||||
|
||||
Set the Xbox Accessory Management Service to Automatic:
|
||||
|
||||
```
|
||||
```powershell
|
||||
Get-Service -Name "XboxGipSvc" | Set-Service -StartupType Automatic
|
||||
```
|
||||
|
||||
Related issue: [#198](https://github.com/ChrisTitusTech/Winutil/issues/198)
|
||||
|
||||
### Windows 11: Quick Settings no longer works
|
||||
Launch the Script and click *Enable Action Center*.
|
||||
|
||||
Launch the Script and click _Enable Action Center_.
|
||||
|
||||
### Explorer (file browser) no longer launches
|
||||
- Press `Windows key`+`R` then type:
|
||||
```bat
|
||||
control /name Microsoft.FolderOptions
|
||||
```
|
||||
- Change the *Open File Explorer to* option to *This PC*.
|
||||
|
||||
- Press `Windows key`+`R` then type:
|
||||
|
||||
```bat
|
||||
control /name Microsoft.FolderOptions
|
||||
```
|
||||
|
||||
- Change the _Open File Explorer to_ option to _This PC_.
|
||||
|
||||
### Battery drains too fast
|
||||
|
||||
If you're using a laptop or tablet and find your battery drains too fast, please try the below troubleshooting steps, and report the results back to the Winutil community.
|
||||
|
||||
1. **Check Battery Health:**
|
||||
- Press `Windows Key`+`X` and select *PowerShell (Admin)* in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
- Run the following command to generate a battery report:
|
||||
```powershell
|
||||
powercfg /batteryreport /output "C:\battery_report.html"
|
||||
```
|
||||
- Open the generated HTML report to review information about battery health and usage. A battery with poor health may hold less charge, discharge faster, or cause other issues.
|
||||
- Press `Windows Key`+`X` and select _PowerShell (Admin)_ in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
- Run the following command to generate a battery report:
|
||||
```powershell
|
||||
powercfg /batteryreport /output "C:\battery_report.html"
|
||||
```
|
||||
- Open the generated HTML report to review information about battery health and usage. A battery with poor health may hold less charge, discharge faster, or cause other issues.
|
||||
|
||||
2. **Review Power Settings:**
|
||||
- Open the Settings app, and go to *System* > *Power & sleep*.
|
||||
- Adjust power plan settings based on your preferences and usage patterns.
|
||||
- Click on *Additional power settings* to access advanced power settings that may help.
|
||||
- Open the Settings app, and go to _System_ > _Power & sleep_.
|
||||
- Adjust power plan settings based on your preferences and usage patterns.
|
||||
- Click on _Additional power settings_ to access advanced power settings that may help.
|
||||
|
||||
3. **Identify Power-Hungry Apps:**
|
||||
- Right-click on the taskbar and select *Task Manager*.
|
||||
- Navigate to the *Processes* tab to identify applications with high CPU or memory usage.
|
||||
- Consider reconfiguring, closing, disabling, or uninstalling applications that use a lot of resources.
|
||||
- Right-click on the taskbar and select _Task Manager_.
|
||||
- Navigate to the _Processes_ tab to identify applications with high CPU or memory usage.
|
||||
- Consider reconfiguring, closing, disabling, or uninstalling applications that use a lot of resources.
|
||||
|
||||
4. **Update Drivers:**
|
||||
- Visit your device manufacturer's website or use Windows Update to check for driver updates.
|
||||
- Ensure graphics, chipset, and other essential drivers are up to date.
|
||||
- Visit your device manufacturer's website or use Windows Update to check for driver updates.
|
||||
- Ensure graphics, chipset, and other essential drivers are up to date.
|
||||
|
||||
5. **Check for Windows Updates:**
|
||||
- Open the Settings app, and go to *Update & Security* > *Windows Update*.
|
||||
- Check for and install any available updates for your operating system.
|
||||
- Open the Settings app, and go to _Update & Security_ > _Windows Update_.
|
||||
- Check for and install any available updates for your operating system.
|
||||
|
||||
6. **Reduce Screen Brightness:**
|
||||
- Open the Settings app, and go to *System* > *Display*.
|
||||
- Adjust screen brightness based on your preferences and lighting conditions.
|
||||
- Open the Settings app, and go to _System_ > _Display_.
|
||||
- Adjust screen brightness based on your preferences and lighting conditions.
|
||||
|
||||
7. **Enable Battery Saver:**
|
||||
- Open the Settings app, and go to *System* > *Battery*.
|
||||
- Turn on *Battery saver* to limit background activity and conserve power.
|
||||
- Open the Settings app, and go to _System_ > _Battery_.
|
||||
- Turn on _Battery saver_ to limit background activity and conserve power.
|
||||
|
||||
8. **Check Power Usage in Settings:**
|
||||
- Open the Settings app, and go to *System* > *Battery* > *Battery usage by app*.
|
||||
- Review the list of apps and their power usage. Disable or uninstall any you don't need.
|
||||
- Open the Settings app, and go to _System_ > _Battery_ > _Battery usage by app_.
|
||||
- Review the list of apps and their power usage. Disable or uninstall any you don't need.
|
||||
|
||||
9. **Check Background Apps:**
|
||||
- Open the Settings app, and go to *Privacy* > *Background apps*.
|
||||
- Disable or uninstall unnecessary apps running in the background.
|
||||
- Open the Settings app, and go to _Privacy_ > _Background apps_.
|
||||
- Disable or uninstall unnecessary apps running in the background.
|
||||
|
||||
10. **Use `powercfg` for Analysis:**
|
||||
- Press `Windows Key`+`X` and select *PowerShell (Admin)* in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
- Press `Windows Key`+`X` and select _PowerShell (Admin)_ in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
- Run the following command to analyze energy usage and generate a report:
|
||||
```powershell
|
||||
powercfg /energy /output "C:\energy_report.html"
|
||||
```
|
||||
```powershell
|
||||
powercfg /energy /output "C:\energy_report.html"
|
||||
```
|
||||
- Open the generated HTML report to identify energy consumption patterns.
|
||||
|
||||
11. **Review Event Logs:**
|
||||
- Open Event Viewer by searching for it in the Start menu.
|
||||
- Navigate to *Windows Logs* > *System*.
|
||||
- Look for events with the source *Power-Troubleshooter* to identify power-related events. These may highlight battery, input power, and other issues.
|
||||
- Navigate to _Windows Logs_ > _System_.
|
||||
- Look for events with the source _Power-Troubleshooter_ to identify power-related events. These may highlight battery, input power, and other issues.
|
||||
|
||||
12. **Check Wake-up Sources:**
|
||||
- Press `Windows Key`+`X` and select *PowerShell (Admin)* in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
- Press `Windows Key`+`X` and select _PowerShell (Admin)_ in Windows 10, or `Windows Terminal (Admin)` in Windows 11.
|
||||
- Use the command `powercfg /requests` to identify processes preventing sleep.
|
||||
- Use the command `powercfg /waketimers` to view active wake timers.
|
||||
- Check Task Scheduler to see if any of the discovered processes are scheduled to start on boot or at regular intervals.
|
||||
|
||||
13. **Advanced Identification of Power-Hungry Apps:**
|
||||
- Open Resource Monitor from the Start menu.
|
||||
- Navigate to the *CPU*, *Memory*, *Network*, and other tabs to identify processes with high resource usage.
|
||||
- Navigate to the _CPU_, _Memory_, _Network_, and other tabs to identify processes with high resource usage.
|
||||
- Consider reconfiguring, closing, disabling, or uninstalling applications that use a lot of resources.
|
||||
|
||||
14. **Disable Activity History:**
|
||||
- Open the Settings app, and go to *Privacy* > *Activity history*.
|
||||
- Turn off *Let Windows collect my activities from this PC*.
|
||||
- Open the Settings app, and go to _Privacy_ > _Activity history_.
|
||||
- Turn off _Let Windows collect my activities from this PC_.
|
||||
|
||||
15. **Prevent Network Adapters From Waking PC:**
|
||||
- Open Device Manager by searching for it in the Start menu.
|
||||
- Locate your network adapter, right-click, and go to *Properties*.
|
||||
- Under the *Power Management* tab, uncheck the option that allows the device to wake the computer.
|
||||
- Locate your network adapter, right-click, and go to _Properties_.
|
||||
- Under the _Power Management_ tab, uncheck the option that allows the device to wake the computer.
|
||||
|
||||
16. **Review Installed Applications:**
|
||||
- Manually review installed applications by searching for *Add or remove programs* in the Start menu.
|
||||
- Manually review installed applications by searching for _Add or remove programs_ in the Start menu.
|
||||
- Check settings/preferences of individual applications for power-related options.
|
||||
- Uninstall unnecessary or problematic software.
|
||||
|
||||
These troubleshooting steps are generic, but should help in most situations. You should have these key takeaways:
|
||||
|
||||
- Battery health is the most significant limiter on your device's runtime. A battery in poor health usually cannot be made to last like it used to, simply by closing some applications. Consider replacing your battery.
|
||||
- Background applications that use CPU and memory, make lots of or large network requests, read/write to disk frequently, or that keep your PC awake when it could be conserving energy are the next major concern. Avoid installing programs you don't need, only use programs you trust, and configure applications to use as little power and run as infrequently as possible.
|
||||
- Windows performs a lot of tasks that may affect battery life by default. Changing settings, stopping scheduled tasks, and disabling features can help the system stay in lower power states to conserve battery.
|
||||
|
||||
@@ -1,95 +1,44 @@
|
||||
---
|
||||
title: Developer Reference
|
||||
weight: 3
|
||||
toc: false
|
||||
---
|
||||
|
||||
> [!NOTE]
|
||||
> This section contains technical documentation for developers. For end-user documentation, see the [User Guide](../userguide/).
|
||||
|
||||
## Architecture
|
||||
|
||||
- [Architecture & Design](architecture/) - Code structure, data flow, and how Winutil works internally
|
||||
|
||||
## Tweaks
|
||||
|
||||
### Essential Tweaks
|
||||
|
||||
- [Create Restore Point](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/RestorePoint.md)
|
||||
- [Debloat Edge](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/EdgeDebloat.md)
|
||||
- [Delete Temporary Files](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/DeleteTempFiles.md)
|
||||
- [Disable Activity History](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Activity.md)
|
||||
- [Disable ConsumerFeatures](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/ConsumerFeatures.md)
|
||||
- [Disable GameDVR](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/GameDVR.md)
|
||||
- [Disable Hibernation](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Hibernation.md)
|
||||
- [Disable Location Tracking](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Location.md)
|
||||
- [Disable Powershell 7 Telemetry](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Powershell7Tele.md)
|
||||
- [Disable Storage Sense](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Storage.md)
|
||||
- [Disable Telemetry](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Telemetry.md)
|
||||
- [Enable End Task With Right Click](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar.md)
|
||||
- [Prefer IPv4 over IPv6](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/IPv46.md)
|
||||
- [Run Disk Cleanup](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/DiskCleanup.md)
|
||||
- [Set Hibernation as default (good for laptops)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/LaptopHibernation.md)
|
||||
- [Set Services to Manual](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Services.md)
|
||||
{{< autolinks section="dev/tweaks/essential-tweaks" >}}
|
||||
|
||||
### Advanced Tweaks (CAUTION)
|
||||
|
||||
- [Adobe Network Block](tweaks/z--advanced-tweaks---caution/blockadobenet/)
|
||||
- [Disable Background Apps](tweaks/z--advanced-tweaks---caution/disablebgapps/)
|
||||
- [Disable Fullscreen Optimizations](tweaks/z--advanced-tweaks---caution/disablefso/)
|
||||
- [Disable IPv6](tweaks/z--advanced-tweaks---caution/disableipsix/)
|
||||
- [Disable Microsoft Copilot](tweaks/z--advanced-tweaks---caution/removecopilot/)
|
||||
- [Disable Notification Tray/Calendar](tweaks/z--advanced-tweaks---caution/disablenotifications/)
|
||||
- [Disable Teredo](tweaks/z--advanced-tweaks---caution/teredo/)
|
||||
- [DNS](tweaks/z--advanced-tweaks---caution/changedns/)
|
||||
- [Remove ALL MS Store Apps - NOT RECOMMENDED](tweaks/z--advanced-tweaks---caution/debloat/)
|
||||
- [Remove Home and Gallery from explorer](tweaks/z--advanced-tweaks---caution/removehomegallery/)
|
||||
- [Make Edge Uninstallable](tweaks/z--advanced-tweaks---caution/edgeuninstall/)
|
||||
- [Run OO Shutup 10](tweaks/z--advanced-tweaks---caution/oosubutton/)
|
||||
- [Set Classic Right-Click Menu ](tweaks/z--advanced-tweaks---caution/rightclickmenu/)
|
||||
- [Set Display for Performance](tweaks/z--advanced-tweaks---caution/display/)
|
||||
- [Set Time to UTC (Dual Boot)](tweaks/z--advanced-tweaks---caution/utc/)
|
||||
{{< autolinks section="dev/tweaks/z--advanced-tweaks---caution" >}}
|
||||
|
||||
### Customize Preferences
|
||||
|
||||
- [Bing Search in Start Menu](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/BingSearch.md)
|
||||
- [Center Taskbar Items](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarAlignment.md)
|
||||
- [Dark Theme for Windows](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/DarkMode.md)
|
||||
- [Detailed BSoD](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/DetailedBSoD.md)
|
||||
- [Mouse Acceleration](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/MouseAcceleration.md)
|
||||
- [NumLock on Startup](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/NumLock.md)
|
||||
- [Search Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarSearch.md)
|
||||
- [Show File Extensions](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/ShowExt.md)
|
||||
- [Show Hidden Files](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/HiddenFiles.md)
|
||||
- [Snap Assist Flyout](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapFlyout.md)
|
||||
- [Snap Assist Suggestion](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapSuggestion.md)
|
||||
- [Snap Window](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapWindow.md)
|
||||
- [Sticky Keys](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/StickyKeys.md)
|
||||
- [Task View Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskView.md)
|
||||
- [Verbose Messages During Logon](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/VerboseLogon.md)
|
||||
- [Widgets Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarWidgets.md)
|
||||
{{< autolinks section="dev/tweaks/customize-preferences" >}}
|
||||
|
||||
### Performance Plans
|
||||
|
||||
- [Add and Remove Ultimate Performance Profile](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Performance-Plans/Profile.md)
|
||||
{{< autolinks section="dev/tweaks/performance-plans" >}}
|
||||
|
||||
## Features
|
||||
|
||||
### Fixes
|
||||
|
||||
- [Remove Adobe Creative Cloud](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/RunAdobeCCCleanerTool.md)
|
||||
- [Reset Network](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Network.md)
|
||||
- [Reset Windows Update](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Update.md)
|
||||
- [Set Up Autologin](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Autologin.md)
|
||||
- [System Corruption Scan](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/CorruptionScan.md)
|
||||
- [WinGet Reinstall](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Winget.md)
|
||||
{{< autolinks section="dev/features/fixes" >}}
|
||||
|
||||
### Legacy Windows Panels
|
||||
|
||||
- [Control Panel](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/control.md)
|
||||
- [Network Connections](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/network.md)
|
||||
- [Power Panel](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/power.md)
|
||||
- [Printer Settings](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/printer.md)
|
||||
- [Region](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/region.md)
|
||||
- [Sound Settings](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/sound.md)
|
||||
- [System Properties](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/system.md)
|
||||
- [User Accounts](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/user.md)
|
||||
{{< autolinks section="dev/features/legacy-windows-panels" >}}
|
||||
|
||||
### Features
|
||||
|
||||
- [All .Net Framework (2,3,4)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/dotnet.md)
|
||||
- [Disable Legacy F8 Boot Recovery](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/DisableLegacyRecovery.md)
|
||||
- [Enable Legacy F8 Boot Recovery](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/EnableLegacyRecovery.md)
|
||||
- [Enable Daily Registry Backup Task 12.30am](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/RegBackup.md)
|
||||
- [HyperV Virtualization](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/hyperv.md)
|
||||
- [Legacy Media (WMP, DirectPlay)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/legacymedia.md)
|
||||
- [NFS - Network File System](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/nfs.md)
|
||||
- [Windows Sandbox](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/Sandbox.md)
|
||||
- [Windows Subsystem for Linux](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/wsl.md)
|
||||
{{< autolinks section="dev/features/features" >}}
|
||||
|
||||
529
docs/content/dev/architecture.md
Normal file
529
docs/content/dev/architecture.md
Normal file
@@ -0,0 +1,529 @@
|
||||
---
|
||||
title: Architecture & Design
|
||||
weight: 1
|
||||
toc: true
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
Winutil is a PowerShell-based Windows utility with a WPF (Windows Presentation Foundation) GUI. This document explains the architecture, code structure, and how different components work together.
|
||||
|
||||
## High-Level Architecture
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────┐
|
||||
│ Winutil GUI │
|
||||
│ (WPF XAML Interface) │
|
||||
└──────────────────┬──────────────────────────────────┘
|
||||
│
|
||||
┌─────────┴─────────┐
|
||||
│ │
|
||||
┌────────▼──────┐ ┌───────▼────────┐
|
||||
│ Public APIs │ │ Private APIs │
|
||||
│ (User-facing)│ │ (Internal) │
|
||||
└───────┬───────┘ └───────┬────────┘
|
||||
│ │
|
||||
└────────┬──────────┘
|
||||
│
|
||||
┌────────────▼────────────┐
|
||||
│ Configuration Files │
|
||||
│ (JSON definitions) │
|
||||
└────────────┬────────────┘
|
||||
│
|
||||
┌────────────▼────────────┐
|
||||
│ External Tools │
|
||||
│ (WinGet, Chocolatey) │
|
||||
└─────────────────────────┘
|
||||
```
|
||||
|
||||
## Project Structure
|
||||
|
||||
### Directory Layout
|
||||
|
||||
```
|
||||
winutil/
|
||||
├── Compile.ps1 # Build script that combines all files
|
||||
├── winutil.ps1 # Compiled output (generated)
|
||||
├── scripts/
|
||||
│ ├── main.ps1 # Entry point and GUI initialization
|
||||
│ └── start.ps1 # Startup logic
|
||||
├── functions/
|
||||
│ ├── private/ # Internal helper functions
|
||||
│ │ ├── Get-WinUtilVariables.ps1
|
||||
│ │ ├── Install-WinUtilWinget.ps1
|
||||
│ │ └── ...
|
||||
│ ├── public/ # User-facing functions
|
||||
│ │ ├── Initialize-WPFUI.ps1
|
||||
│ │ └── ...
|
||||
├── config/ # JSON configuration files
|
||||
│ ├── applications.json # Application definitions
|
||||
│ ├── tweaks.json # Tweak definitions
|
||||
│ ├── feature.json # Windows feature definitions
|
||||
│ └── preset.json # Preset configurations
|
||||
├── xaml/
|
||||
│ └── inputXML.xaml # GUI layout definition
|
||||
└── docs/ # Documentation
|
||||
```
|
||||
|
||||
### Key Components
|
||||
|
||||
#### 1. Compile.ps1
|
||||
**Purpose**: Combines all separate script files into a single `winutil.ps1` for distribution.
|
||||
|
||||
**Process**:
|
||||
1. Reads all function files from `/functions/`
|
||||
2. Includes configuration JSON files
|
||||
3. Embeds XAML GUI definition
|
||||
4. Combines into single script
|
||||
5. Outputs `winutil.ps1`
|
||||
|
||||
**Why**: Makes distribution easier (single file) and improves load time.
|
||||
|
||||
#### 2. scripts/main.ps1
|
||||
**Purpose**: Entry point that initializes the GUI and event system.
|
||||
|
||||
**Responsibilities**:
|
||||
- Load XAML and create WPF window
|
||||
- Initialize form elements
|
||||
- Set up event handlers
|
||||
- Load configurations
|
||||
- Display the GUI
|
||||
|
||||
#### 3. functions/public/
|
||||
**Purpose**: User-facing functions that implement main features.
|
||||
|
||||
**Key Functions**:
|
||||
- `Initialize-WPFUI.ps1`: Sets up the GUI
|
||||
- `Invoke-WPFTweak*`: Applies system tweaks
|
||||
- `Invoke-WPFFeature*`: Enables Windows features
|
||||
- `Install-WinUtilProgram*`: Installs applications
|
||||
|
||||
**Naming Convention**: Functions start with `WPF` or `Winutil` to be loaded into the runspace.
|
||||
|
||||
#### 4. functions/private/
|
||||
**Purpose**: Internal helper functions not directly called by users.
|
||||
|
||||
**Key Functions**:
|
||||
- `Get-WinUtilVariables.ps1`: Retrieves UI element references
|
||||
- `Install-WinUtilWinget.ps1`: Ensures WinGet is installed
|
||||
- `Get-WinUtilCheckBoxes.ps1`: Gets checkbox states
|
||||
- `Invoke-WinUtilCurrentSystem.ps1`: Gets system information
|
||||
|
||||
#### 5. config/*.json
|
||||
**Purpose**: Define available applications, tweaks, and features declaratively.
|
||||
|
||||
**Files**:
|
||||
- `applications.json`: Application definitions with WinGet/Choco IDs
|
||||
- `tweaks.json`: Registry tweaks and their undo actions
|
||||
- `feature.json`: Windows features that can be enabled/disabled
|
||||
- `preset.json`: Predefined tweak combinations
|
||||
- `dns.json`: DNS provider configurations
|
||||
|
||||
#### 6. xaml/inputXML.xaml
|
||||
**Purpose**: WPF GUI layout and design.
|
||||
|
||||
**Structure**:
|
||||
- Buttons with event handlers
|
||||
- TextBoxes for input
|
||||
- CheckBoxes for options
|
||||
- ListBoxes for selections
|
||||
|
||||
## Data Flow
|
||||
|
||||
### Application Installation Flow
|
||||
|
||||
```
|
||||
User clicks "Install"
|
||||
↓
|
||||
Get-WinUtilCheckBoxes → Retrieves selected apps
|
||||
↓
|
||||
For each selected app:
|
||||
↓
|
||||
Check if WinGet/Choco installed
|
||||
↓
|
||||
Install-WinUtilWinget/Choco (if needed)
|
||||
↓
|
||||
Install-WinUtilProgramWinget/Choco → Install app
|
||||
↓
|
||||
Update UI with progress
|
||||
↓
|
||||
Display completion message
|
||||
```
|
||||
|
||||
### Tweak Application Flow
|
||||
|
||||
```
|
||||
User selects tweaks and clicks "Run Tweaks"
|
||||
↓
|
||||
Get-WinUtilCheckBoxes → Get selected tweaks
|
||||
↓
|
||||
For each selected tweak:
|
||||
↓
|
||||
Load tweak definition from tweaks.json
|
||||
↓
|
||||
Invoke-WPFTweak → Apply registry/service changes
|
||||
↓
|
||||
Log changes
|
||||
↓
|
||||
Store original values (for undo)
|
||||
↓
|
||||
Update UI
|
||||
↓
|
||||
Display completion
|
||||
```
|
||||
|
||||
### Undo Tweak Flow
|
||||
|
||||
```
|
||||
User selects tweaks and clicks "Undo"
|
||||
↓
|
||||
Get-WinUtilCheckBoxes → Get selected tweaks
|
||||
↓
|
||||
For each tweak:
|
||||
↓
|
||||
Retrieve "OriginalState" from tweak definition
|
||||
↓
|
||||
Invoke-WPFUndoTweak → Restore original values
|
||||
↓
|
||||
Remove from applied tweaks log
|
||||
↓
|
||||
Update UI
|
||||
```
|
||||
|
||||
## Configuration File Format
|
||||
|
||||
### applications.json Structure
|
||||
|
||||
```json
|
||||
{
|
||||
"WPFInstall<AppName>": {
|
||||
"category": "Browsers",
|
||||
"choco": "googlechrome",
|
||||
"content": "Google Chrome",
|
||||
"description": "Google Chrome browser",
|
||||
"link": "https://chrome.google.com",
|
||||
"winget": "Google.Chrome"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Fields**:
|
||||
- `category`: Which section in the Install tab
|
||||
- `content`: Display name in GUI
|
||||
- `description`: Tooltip/description text
|
||||
- `winget`: WinGet package ID
|
||||
- `choco`: Chocolatey package name
|
||||
- `link`: Official website
|
||||
|
||||
### tweaks.json Structure
|
||||
|
||||
```json
|
||||
{
|
||||
"WPFTweaksTelemetry": {
|
||||
"Content": "Disable Telemetry",
|
||||
"Description": "Disables Microsoft Telemetry",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Order": "a003_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\DataCollection",
|
||||
"Name": "AllowTelemetry",
|
||||
"Type": "DWord",
|
||||
"Value": "0",
|
||||
"OriginalValue": "1"
|
||||
}
|
||||
],
|
||||
"ScheduledTask": [
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Autochk\\Proxy",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Fields**:
|
||||
- `Content`: Display name
|
||||
- `Description`: What it does
|
||||
- `category`: Essential/Advanced/Customize
|
||||
- `registry`: Registry changes to make
|
||||
- `ScheduledTask`: Scheduled tasks to modify
|
||||
- `service`: Services to change
|
||||
- `OriginalValue/State`: For undo functionality
|
||||
|
||||
## PowerShell Runspace
|
||||
|
||||
Winutil uses PowerShell runspaces for the GUI to remain responsive:
|
||||
|
||||
```powershell
|
||||
# Create runspace
|
||||
$sync.runspace = [runspacefactory]::CreateRunspace()
|
||||
$sync.runspace.Open()
|
||||
$sync.runspace.SessionStateProxy.SetVariable("sync", $sync)
|
||||
|
||||
# Run code in background
|
||||
$powershell = [powershell]::Create().AddScript($scriptblock)
|
||||
$powershell.Runspace = $sync.runspace
|
||||
$handle = $powershell.BeginInvoke()
|
||||
```
|
||||
|
||||
**Why**: Prevents UI freezing during long-running operations.
|
||||
|
||||
## WPF Event Handling
|
||||
|
||||
Events are wired up via XAML element names:
|
||||
|
||||
```powershell
|
||||
# Get all named elements
|
||||
$sync.keys | ForEach-Object {
|
||||
if($sync.$_.GetType().Name -eq "Button") {
|
||||
$sync.$_.Add_Click({
|
||||
$button = $sync.$($args[0].Name)
|
||||
& "Invoke-$($args[0].Name)"
|
||||
})
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Convention**: Button named `WPFInstallButton` calls function `Invoke-WPFInstallButton`.
|
||||
|
||||
## Package Manager Integration
|
||||
|
||||
### WinGet Integration
|
||||
|
||||
```powershell
|
||||
# Check if installed
|
||||
if (!(Get-Command winget -ErrorAction SilentlyContinue)) {
|
||||
Install-WinUtilWinget
|
||||
}
|
||||
|
||||
# Install package
|
||||
winget install --id $app.winget --silent --accept-source-agreements
|
||||
```
|
||||
|
||||
### Chocolatey Integration
|
||||
|
||||
```powershell
|
||||
# Check if installed
|
||||
if (!(Get-Command choco -ErrorAction SilentlyContinue)) {
|
||||
Install-WinUtilChoco
|
||||
}
|
||||
|
||||
# Install package
|
||||
choco install $app.choco -y
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
|
||||
Winutil uses PowerShell error handling:
|
||||
|
||||
```powershell
|
||||
try {
|
||||
# Attempt operation
|
||||
Invoke-SomeOperation
|
||||
}
|
||||
catch {
|
||||
Write-Host "Error: $_" -ForegroundColor Red
|
||||
# Log error
|
||||
Add-Content -Path $logfile -Value "ERROR: $_"
|
||||
}
|
||||
```
|
||||
|
||||
**Logging**: Errors and operations are logged for debugging.
|
||||
|
||||
## Configuration Loading
|
||||
|
||||
At startup, Winutil loads all configurations:
|
||||
|
||||
```powershell
|
||||
# Load JSON configs
|
||||
$sync.configs = @{}
|
||||
$sync.configs.applications = Get-Content "config/applications.json" | ConvertFrom-Json
|
||||
$sync.configs.tweaks = Get-Content "config/tweaks.json" | ConvertFrom-Json
|
||||
$sync.configs.features = Get-Content "config/feature.json" | ConvertFrom-Json
|
||||
```
|
||||
|
||||
**Sync Hash**: `$sync` hashtable shares state across runspaces.
|
||||
|
||||
## UI Update Pattern
|
||||
|
||||
UI updates must happen on the UI thread:
|
||||
|
||||
```powershell
|
||||
$sync.form.Dispatcher.Invoke([action]{
|
||||
$sync.WPFStatusLabel.Content = "Installing..."
|
||||
}, "Normal")
|
||||
```
|
||||
|
||||
**Why**: WPF requires UI updates on the main thread.
|
||||
|
||||
## Adding New Features
|
||||
|
||||
### Adding a New Application
|
||||
|
||||
1. Edit `config/applications.json`:
|
||||
```json
|
||||
{
|
||||
"WPFInstallNewApp": {
|
||||
"category": "Utilities",
|
||||
"content": "New App",
|
||||
"description": "Description of new app",
|
||||
"winget": "Publisher.AppName",
|
||||
"choco": "appname"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Recompile: `.\Compile.ps1`
|
||||
3. The app appears automatically in Install tab
|
||||
|
||||
### Adding a New Tweak
|
||||
|
||||
1. Edit `config/tweaks.json`:
|
||||
```json
|
||||
{
|
||||
"WPFTweaksNewTweak": {
|
||||
"Content": "New Tweak",
|
||||
"Description": "What it does",
|
||||
"category": "Essential Tweaks",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\Path\\To\\Key",
|
||||
"Name": "ValueName",
|
||||
"Type": "DWord",
|
||||
"Value": "1",
|
||||
"OriginalValue": "0"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Recompile: `.\Compile.ps1`
|
||||
3. Tweak appears in Tweaks tab
|
||||
|
||||
### Adding a New Function
|
||||
|
||||
1. Create file in `functions/public/` or `functions/private/`:
|
||||
```powershell
|
||||
# functions/public/Invoke-WPFNewFeature.ps1
|
||||
function Invoke-WPFNewFeature {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Does something new
|
||||
#>
|
||||
# Implementation
|
||||
}
|
||||
```
|
||||
|
||||
2. File naming must include "WPF" or "Winutil" to load
|
||||
3. Recompile: `.\Compile.ps1`
|
||||
|
||||
## Testing
|
||||
|
||||
### Manual Testing
|
||||
|
||||
```powershell
|
||||
# Compile and run with -run flag
|
||||
.\Compile.ps1 -run
|
||||
```
|
||||
|
||||
### Automated Tests
|
||||
|
||||
Tests are in `/pester/`:
|
||||
- `configs.Tests.ps1`: Validates JSON configurations
|
||||
- `functions.Tests.ps1`: Tests PowerShell functions
|
||||
|
||||
Run tests:
|
||||
```powershell
|
||||
Invoke-Pester
|
||||
```
|
||||
|
||||
## Build Process
|
||||
|
||||
### Development Build
|
||||
|
||||
```powershell
|
||||
.\Compile.ps1
|
||||
```
|
||||
|
||||
Outputs `winutil.ps1` in the root directory.
|
||||
|
||||
### Production Release
|
||||
|
||||
1. Tag release in Git
|
||||
2. GitHub Actions builds and uploads `winutil.ps1`
|
||||
3. Release appears on GitHub Releases
|
||||
4. Users download via `irm christitus.com/win`
|
||||
|
||||
## Dependencies
|
||||
|
||||
**Required**:
|
||||
- PowerShell 5.1+
|
||||
- .NET Framework 4.5+
|
||||
- Windows 10 1809+
|
||||
|
||||
**Optional (auto-installed)**:
|
||||
- WinGet (Windows Package Manager)
|
||||
- Chocolatey
|
||||
|
||||
## Performance Considerations
|
||||
|
||||
**Optimization Strategies**:
|
||||
- Lazy-load configurations (only when needed)
|
||||
- Use runspaces for long operations
|
||||
- Cache expensive lookups
|
||||
- Minimize registry reads/writes
|
||||
- Batch operations when possible
|
||||
|
||||
## Security Considerations
|
||||
|
||||
**Safety Measures**:
|
||||
- All operations logged
|
||||
- Registry backups for undo
|
||||
- No credential storage
|
||||
- Open source (auditable)
|
||||
- Digitally signed (future)
|
||||
|
||||
## Contributing Guidelines
|
||||
|
||||
**Code Standards**:
|
||||
- Use proper PowerShell cmdlet naming (Verb-Noun)
|
||||
- Include comment-based help
|
||||
- Follow existing code style
|
||||
- Test thoroughly before PR
|
||||
- Document significant changes
|
||||
|
||||
**File Naming**:
|
||||
- Public functions: `Invoke-WPF*.ps1` or `Invoke-Winutil*.ps1`
|
||||
- Private functions: `Get-WinUtil*.ps1` or verb-WinUtil*.ps1`
|
||||
- Must include "WPF" or "Winutil" to load
|
||||
|
||||
## Future Architecture Plans
|
||||
|
||||
**Roadmap Considerations**:
|
||||
- Plugin system for community extensions
|
||||
- Config import/export
|
||||
- Cloud sync for configurations
|
||||
- Enhanced logging dashboard
|
||||
- Modular compilation (choose features)
|
||||
|
||||
## Related Documentation
|
||||
|
||||
- [Contributing Guide](../../contributing/) - How to contribute code
|
||||
- [User Guide](../../userguide/) - End-user documentation
|
||||
- [FAQ](../../faq/) - Common questions
|
||||
|
||||
## Additional Resources
|
||||
|
||||
- **GitHub Repository**: [ChrisTitusTech/winutil](https://github.com/ChrisTitusTech/winutil)
|
||||
- **PowerShell Docs**: [Microsoft Docs](https://docs.microsoft.com/powershell/)
|
||||
- **WPF Guide**: [WPF Documentation](https://docs.microsoft.com/dotnet/desktop/wpf/)
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: January 2026
|
||||
**Maintainers**: Chris Titus Tech and contributors
|
||||
@@ -1,14 +1,16 @@
|
||||
# Disable Legacy F8 Boot Recovery
|
||||
|
||||
---
|
||||
title: "Disable Legacy F8 Boot Recovery"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeatureEnableLegacyRecovery": {
|
||||
"Content": "Enable Legacy F8 Boot Recovery",
|
||||
"Description": "Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
|
||||
"WPFFeatureDisableLegacyRecovery": {
|
||||
"Content": "Disable Legacy F8 Boot Recovery",
|
||||
"Description": "Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
|
||||
"category": "Features",
|
||||
"panel": "1",
|
||||
"Order": "a018_",
|
||||
"Order": "a019_",
|
||||
"feature": [],
|
||||
"InvokeScript": [
|
||||
"bcdedit /set bootmenupolicy standard"
|
||||
"bcdedit /set bootmenupolicy standard"
|
||||
],
|
||||
```
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
# Enable Legacy F8 Boot Recovery
|
||||
|
||||
---
|
||||
title: "Enable Legacy F8 Boot Recovery"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeatureEnableLegacyRecovery": {
|
||||
"WPFFeatureEnableLegacyRecovery": {
|
||||
"Content": "Enable Legacy F8 Boot Recovery",
|
||||
"Description": "Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
|
||||
"category": "Features",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Enable Daily Registry Backup Task 12.30am
|
||||
|
||||
---
|
||||
title: "Enable Daily Registry Backup Task 12.30am"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeatureRegBackup": {
|
||||
"Content": "Enable Daily Registry Backup Task 12.30am",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Windows Sandbox
|
||||
|
||||
---
|
||||
title: "Windows Sandbox"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeaturesSandbox": {
|
||||
"Content": "Windows Sandbox",
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
### Features
|
||||
---
|
||||
title: "Features"
|
||||
weight: 1
|
||||
toc: false
|
||||
---
|
||||
|
||||
- [All .Net Framework (2,3,4)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/dotnet.md)
|
||||
- [Disable Legacy F8 Boot Recovery](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/DisableLegacyRecovery.md)
|
||||
- [Enable Legacy F8 Boot Recovery](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/EnableLegacyRecovery.md)
|
||||
- [Enable Daily Registry Backup Task 12.30am](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/RegBackup.md)
|
||||
- [HyperV Virtualization](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/hyperv.md)
|
||||
- [Legacy Media (WMP, DirectPlay)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/legacymedia.md)
|
||||
- [NFS - Network File System](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/nfs.md)
|
||||
- [Windows Sandbox](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/Sandbox.md)
|
||||
- [Windows Subsystem for Linux](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/wsl.md)
|
||||
{{< autolinks section="dev/features/features" >}}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# All .Net Framework (2,3,4)
|
||||
|
||||
---
|
||||
title: "All .Net Framework (2,3,4)"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeaturesdotnet": {
|
||||
"Content": "All .Net Framework (2,3,4)",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# HyperV Virtualization
|
||||
|
||||
---
|
||||
title: "HyperV Virtualization"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeatureshyperv": {
|
||||
"Content": "HyperV Virtualization",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Legacy Media (WMP, DirectPlay)
|
||||
|
||||
---
|
||||
title: "Legacy Media (WMP, DirectPlay)"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeatureslegacymedia": {
|
||||
"Content": "Legacy Media (WMP, DirectPlay)",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# NFS - Network File System
|
||||
|
||||
---
|
||||
title: "NFS - Network File System"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeaturenfs": {
|
||||
"Content": "NFS - Network File System",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Windows Subsystem for Linux
|
||||
|
||||
---
|
||||
title: "Windows Subsystem for Linux"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFFeaturewsl": {
|
||||
"Content": "Windows Subsystem for Linux",
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Set Up Autologin
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Set Up Autologin"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFPanelAutologin {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# System Corruption Scan
|
||||
|
||||
```json
|
||||
---
|
||||
title: "System Corruption Scan"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFSystemRepair {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Reset Network
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Reset Network"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFFixesNetwork {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Remove Adobe Creative Cloud
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Remove Adobe Creative Cloud"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFRunAdobeCCCleanerTool {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Reset Windows Update
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Reset Windows Update"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFFixesUpdate {
|
||||
|
||||
<#
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# WinGet Reinstall
|
||||
|
||||
```json
|
||||
---
|
||||
title: "WinGet Reinstall"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFFixesWinget {
|
||||
|
||||
<#
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
### Fixes
|
||||
---
|
||||
title: "Fixes"
|
||||
weight: 2
|
||||
toc: false
|
||||
---
|
||||
|
||||
- [Remove Adobe Creative Cloud](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/RunAdobeCCCleanerTool.md)
|
||||
- [Reset Network](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Network.md)
|
||||
- [Reset Windows Update](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Update.md)
|
||||
- [Set Up Autologin](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Autologin.md)
|
||||
- [System Corruption Scan](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/CorruptionScan.md)
|
||||
- [WinGet Reinstall](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Winget.md)
|
||||
{{< autolinks section="dev/features/fixes" >}}
|
||||
|
||||
@@ -1,10 +1,7 @@
|
||||
### Legacy Windows Panels
|
||||
---
|
||||
title: "Legacy Windows Panels"
|
||||
weight: 3
|
||||
toc: false
|
||||
---
|
||||
|
||||
- [Control Panel](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/control.md)
|
||||
- [Network Connections](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/network.md)
|
||||
- [Power Panel](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/power.md)
|
||||
- [Printer Settings](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/printer.md)
|
||||
- [Region](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/region.md)
|
||||
- [Sound Settings](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/sound.md)
|
||||
- [System Properties](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/system.md)
|
||||
- [User Accounts](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/user.md)
|
||||
{{< autolinks section="dev/features/legacy-windows-panels" >}}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Control Panel
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Control Panel"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFControlPanel {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Network Connections
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Network Connections"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFControlPanel {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Power Panel
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Power Panel"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFControlPanel {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Printer Settings
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Printer Settings"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFControlPanel {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Region
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Region"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFControlPanel {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Sound Settings
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Sound Settings"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFControlPanel {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# System Properties
|
||||
|
||||
```json
|
||||
---
|
||||
title: "System Properties"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFControlPanel {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# User Accounts
|
||||
|
||||
```json
|
||||
---
|
||||
title: "User Accounts"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
function Invoke-WPFControlPanel {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,31 +1,17 @@
|
||||
---
|
||||
title: "Features"
|
||||
weight: 1
|
||||
toc: false
|
||||
---
|
||||
|
||||
### Fixes
|
||||
|
||||
- [Remove Adobe Creative Cloud](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/RunAdobeCCCleanerTool.md)
|
||||
- [Reset Network](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Network.md)
|
||||
- [Reset Windows Update](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Update.md)
|
||||
- [Set Up Autologin](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Autologin.md)
|
||||
- [System Corruption Scan](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/CorruptionScan.md)
|
||||
- [WinGet Reinstall](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Fixes/Winget.md)
|
||||
{{< autolinks section="dev/features/fixes" >}}
|
||||
|
||||
### Legacy Windows Panels
|
||||
|
||||
- [Control Panel](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/control.md/control.md)
|
||||
- [Network Connections](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/network.md)
|
||||
- [Power Panel](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/power.md)
|
||||
- [Printer Settings](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/printer.md)
|
||||
- [Region](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/region.md)
|
||||
- [Sound Settings](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/sound.md)
|
||||
- [System Properties](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/system.md)
|
||||
- [User Accounts](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Legacy-Windows-Panels/user.md)
|
||||
{{< autolinks section="dev/features/legacy-windows-panels" >}}
|
||||
|
||||
### Features
|
||||
|
||||
- [All .Net Framework (2,3,4)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/dotnet.md)
|
||||
- [Disable Legacy F8 Boot Recovery](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/DisableLegacyRecovery.md)
|
||||
- [Enable Legacy F8 Boot Recovery](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/EnableLegacyRecovery.md)
|
||||
- [Enable Daily Registry Backup Task 12.30am](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/RegBackup.md)
|
||||
- [HyperV Virtualization](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/hyperv.md)
|
||||
- [Legacy Media (WMP, DirectPlay)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/legacymedia.md)
|
||||
- [NFS - Network File System](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/nfs.md)
|
||||
- [Windows Sandbox](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/Sandbox.md)
|
||||
- [Windows Subsystem for Linux](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/features/Features/wsl.md)
|
||||
{{< autolinks section="dev/features/features" >}}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Bing Search in Start Menu
|
||||
|
||||
---
|
||||
title: "Bing Search in Start Menu"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleBingSearch": {
|
||||
"Content": "Bing Search in Start Menu",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Dark Theme for Windows
|
||||
|
||||
---
|
||||
title: "Dark Theme for Windows"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleDarkMode": {
|
||||
"Content": "Dark Theme for Windows",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Detailed BSoD
|
||||
|
||||
---
|
||||
title: "Detailed BSoD"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleDetailedBSoD": {
|
||||
"Content": "Detailed BSoD",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Show Hidden Files
|
||||
|
||||
---
|
||||
title: "Show Hidden Files"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleHiddenFiles": {
|
||||
"Content": "Show Hidden Files",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Mouse Acceleration
|
||||
|
||||
---
|
||||
title: "Mouse Acceleration"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleMouseAcceleration": {
|
||||
"Content": "Mouse Acceleration",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# NumLock on Startup
|
||||
|
||||
---
|
||||
title: "NumLock on Startup"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleNumLock": {
|
||||
"Content": "NumLock on Startup",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Show File Extensions
|
||||
|
||||
---
|
||||
title: "Show File Extensions"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleShowExt": {
|
||||
"Content": "Show File Extensions",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Snap Assist Flyout
|
||||
|
||||
---
|
||||
title: "Snap Assist Flyout"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleSnapFlyout": {
|
||||
"Content": "Snap Assist Flyout",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Snap Assist Suggestion
|
||||
|
||||
---
|
||||
title: "Snap Assist Suggestion"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleSnapSuggestion": {
|
||||
"Content": "Snap Assist Suggestion",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Snap Window
|
||||
|
||||
---
|
||||
title: "Snap Window"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleSnapWindow": {
|
||||
"Content": "Snap Window",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Sticky Keys
|
||||
|
||||
---
|
||||
title: "Sticky Keys"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleStickyKeys": {
|
||||
"Content": "Sticky Keys",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Task View Button in Taskbar
|
||||
|
||||
---
|
||||
title: "Task View Button in Taskbar"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleTaskView": {
|
||||
"Content": "Task View Button in Taskbar",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Center Taskbar Items
|
||||
|
||||
---
|
||||
title: "Center Taskbar Items"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleTaskbarAlignment": {
|
||||
"Content": "Center Taskbar Items",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Search Button in Taskbar
|
||||
|
||||
---
|
||||
title: "Search Button in Taskbar"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleTaskbarSearch": {
|
||||
"Content": "Search Button in Taskbar",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Widgets Button in Taskbar
|
||||
|
||||
---
|
||||
title: "Widgets Button in Taskbar"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleTaskbarWidgets": {
|
||||
"Content": "Widgets Button in Taskbar",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Verbose Messages During Logon
|
||||
|
||||
---
|
||||
title: "Verbose Messages During Logon"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFToggleVerboseLogon": {
|
||||
"Content": "Verbose Messages During Logon",
|
||||
|
||||
@@ -1,18 +1,9 @@
|
||||
---
|
||||
title: "Customize Preferences"
|
||||
weight: 3
|
||||
toc: false
|
||||
---
|
||||
|
||||
### Customize Preferences
|
||||
|
||||
- [Bing Search in Start Menu](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/BingSearch.md)
|
||||
- [Center Taskbar Items](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarAlignment.md)
|
||||
- [Dark Theme for Windows](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/DarkMode.md)
|
||||
- [Detailed BSoD](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/DetailedBSoD.md)
|
||||
- [Mouse Acceleration](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/MouseAcceleration.md)
|
||||
- [NumLock on Startup](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/NumLock.md)
|
||||
- [Search Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarSearch.md)
|
||||
- [Show File Extensions](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/ShowExt.md)
|
||||
- [Show Hidden Files](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/HiddenFiles.md)
|
||||
- [Snap Assist Flyout](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapFlyout.md)
|
||||
- [Snap Assist Suggestion](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapSuggestion.md)
|
||||
- [Snap Window](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapWindow.md)
|
||||
- [Sticky Keys](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/StickyKeys.md)
|
||||
- [Task View Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskView.md)
|
||||
- [Verbose Messages During Logon](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/VerboseLogon.md)
|
||||
- [Widgets Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarWidgets.md)
|
||||
{{< autolinks section="dev/tweaks/customize-preferences" >}}
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
# Disable Activity History
|
||||
---
|
||||
title: Activity History
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json
|
||||
"WPFTweaksActivity": {
|
||||
@@ -33,6 +36,7 @@
|
||||
```
|
||||
|
||||
## Registry Changes
|
||||
|
||||
Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.
|
||||
|
||||
You can find information about the registry on [Wikipedia](https://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable ConsumerFeatures
|
||||
|
||||
---
|
||||
title: "Disable ConsumerFeatures"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksConsumerFeatures": {
|
||||
"Content": "Disable ConsumerFeatures",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Delete Temporary Files
|
||||
|
||||
---
|
||||
title: "Delete Temporary Files"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksDeleteTempFiles": {
|
||||
"Content": "Delete Temporary Files",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Run Disk Cleanup
|
||||
|
||||
---
|
||||
title: "Run Disk Cleanup"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksDiskCleanup": {
|
||||
"Content": "Run Disk Cleanup",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Enable End Task With Right Click
|
||||
|
||||
---
|
||||
title: "Enable End Task With Right Click"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksEndTaskOnTaskbar": {
|
||||
"Content": "Enable End Task With Right Click",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable GameDVR
|
||||
|
||||
---
|
||||
title: "Disable GameDVR"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksDVR": {
|
||||
"Content": "Disable GameDVR",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable Hibernation
|
||||
|
||||
---
|
||||
title: "Disable Hibernation"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksHiber": {
|
||||
"Content": "Disable Hibernation",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Prefer IPv4 over IPv6
|
||||
|
||||
---
|
||||
title: "Prefer IPv4 over IPv6"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksIPv46": {
|
||||
"Content": "Prefer IPv4 over IPv6",
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
# Set Hibernation as default (good for laptops)
|
||||
|
||||
```json
|
||||
"WPFTweaksLaptopHibernation": {
|
||||
"Content": "Set Hibernation as default (good for laptops)",
|
||||
"Description": "Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a030_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Power\\PowerSettings\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0",
|
||||
"OriginalValue": "1",
|
||||
"Name": "Attributes",
|
||||
"Value": "2",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Power\\PowerSettings\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\94ac6d29-73ce-41a6-809f-6363ba21b47e",
|
||||
"OriginalValue": "0",
|
||||
"Name": "Attributes ",
|
||||
"Value": "2",
|
||||
"Type": "DWord"
|
||||
}
|
||||
],
|
||||
"InvokeScript": [
|
||||
"
|
||||
Write-Host \"Turn on Hibernation\"
|
||||
powercfg.exe /hibernate on
|
||||
|
||||
# Set hibernation as the default action
|
||||
powercfg.exe change standby-timeout-ac 60
|
||||
powercfg.exe change standby-timeout-dc 60
|
||||
powercfg.exe change monitor-timeout-ac 10
|
||||
powercfg.exe change monitor-timeout-dc 1
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
Write-Host \"Turn off Hibernation\"
|
||||
powercfg.exe /hibernate off
|
||||
|
||||
# Set standby to default values
|
||||
powercfg.exe change standby-timeout-ac 15
|
||||
powercfg.exe change standby-timeout-dc 15
|
||||
powercfg.exe change monitor-timeout-ac 15
|
||||
powercfg.exe change monitor-timeout-dc 15
|
||||
"
|
||||
],
|
||||
```
|
||||
|
||||
## Registry Changes
|
||||
Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.
|
||||
|
||||
You can find information about the registry on [Wikipedia](https://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable Location Tracking
|
||||
|
||||
---
|
||||
title: "Disable Location Tracking"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksLocation": {
|
||||
"Content": "Disable Location Tracking",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable Powershell 7 Telemetry
|
||||
|
||||
---
|
||||
title: "Disable Powershell 7 Telemetry"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksPowershell7Tele": {
|
||||
"Content": "Disable Powershell 7 Telemetry",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Create Restore Point
|
||||
|
||||
---
|
||||
title: "Create Restore Point"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksRestorePoint": {
|
||||
"Content": "Create Restore Point",
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
# Set Services to Manual
|
||||
|
||||
---
|
||||
title: "Set Services to Manual"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksServices": {
|
||||
"WPFTweaksServices": {
|
||||
"Content": "Set Services to Manual",
|
||||
"Description": "Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.",
|
||||
"category": "Essential Tweaks",
|
||||
@@ -613,6 +615,11 @@
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Manual"
|
||||
},
|
||||
{
|
||||
"Name": "WSAIFabricSvc",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Automatic"
|
||||
},
|
||||
{
|
||||
"Name": "WSearch",
|
||||
"StartupType": "AutomaticDelayedStart",
|
||||
@@ -960,3 +967,46 @@
|
||||
}
|
||||
],
|
||||
```
|
||||
#Function
|
||||
```powershell
|
||||
Function Set-WinUtilService {
|
||||
<#
|
||||
|
||||
.SYNOPSIS
|
||||
Changes the startup type of the given service
|
||||
|
||||
.PARAMETER Name
|
||||
The name of the service to modify
|
||||
|
||||
.PARAMETER StartupType
|
||||
The startup type to set the service to
|
||||
|
||||
.EXAMPLE
|
||||
Set-WinUtilService -Name "HomeGroupListener" -StartupType "Manual"
|
||||
|
||||
#>
|
||||
param (
|
||||
$Name,
|
||||
$StartupType
|
||||
)
|
||||
try {
|
||||
Write-Host "Setting Service $Name to $StartupType"
|
||||
|
||||
# Check if the service exists
|
||||
$service = Get-Service -Name $Name -ErrorAction Stop
|
||||
|
||||
# Service exists, proceed with changing properties -- while handling auto delayed start for PWSH 5
|
||||
if (($PSVersionTable.PSVersion.Major -lt 7) -and ($StartupType -eq "AutomaticDelayedStart")) {
|
||||
sc.exe config $Name start=delayed-auto
|
||||
} else {
|
||||
$service | Set-Service -StartupType $StartupType -ErrorAction Stop
|
||||
}
|
||||
} catch [System.ServiceProcess.ServiceNotFoundException] {
|
||||
Write-Warning "Service $Name was not found"
|
||||
} catch {
|
||||
Write-Warning "Unable to set $Name due to unhandled exception"
|
||||
Write-Warning $_.Exception.Message
|
||||
}
|
||||
|
||||
}
|
||||
```
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable Storage Sense
|
||||
|
||||
---
|
||||
title: "Disable Storage Sense"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksStorage": {
|
||||
"Content": "Disable Storage Sense",
|
||||
|
||||
@@ -1,315 +1,133 @@
|
||||
# Disable Telemetry
|
||||
|
||||
---
|
||||
title: "Disable Telemetry"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksTelemetry": {
|
||||
"WPFTweaksTelemetry": {
|
||||
"Content": "Disable Telemetry",
|
||||
"Description": "Disables Microsoft Telemetry...Duh",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Order": "a003_",
|
||||
"ScheduledTask": [
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Autochk\\Proxy",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Feedback\\Siuf\\DmClient",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Windows Error Reporting\\QueueReporting",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Application Experience\\MareBackup",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Application Experience\\StartupAppTask",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
},
|
||||
{
|
||||
"Name": "Microsoft\\Windows\\Application Experience\\PcaPatchDbTask",
|
||||
"State": "Disabled",
|
||||
"OriginalState": "Enabled"
|
||||
}
|
||||
],
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\AdvertisingInfo",
|
||||
"Name": "Enabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Privacy",
|
||||
"Name": "TailoredExperiencesWithDiagnosticDataEnabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Speech_OneCore\\Settings\\OnlineSpeechPrivacy",
|
||||
"Name": "HasAccepted",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Input\\TIPC",
|
||||
"Name": "Enabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\InputPersonalization",
|
||||
"Name": "RestrictImplicitInkCollection",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\InputPersonalization",
|
||||
"Name": "RestrictImplicitTextCollection",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\InputPersonalization\\TrainedDataStore",
|
||||
"Name": "HarvestContacts",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Personalization\\Settings",
|
||||
"Name": "AcceptedPrivacyPolicy",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\DataCollection",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Name": "AllowTelemetry",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\DataCollection",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Name": "AllowTelemetry",
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced",
|
||||
"Name": "Start_TrackProgs",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "ContentDeliveryAllowed",
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\System",
|
||||
"Name": "PublishUserActivities",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "OemPreInstalledAppsEnabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "PreInstalledAppsEnabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "PreInstalledAppsEverEnabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "SilentInstalledAppsEnabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "SubscribedContent-338387Enabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "SubscribedContent-338388Enabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "SubscribedContent-338389Enabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "SubscribedContent-353698Enabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\ContentDeliveryManager",
|
||||
"OriginalValue": "1",
|
||||
"Name": "SystemPaneSuggestionsEnabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Siuf\\Rules",
|
||||
"OriginalValue": "0",
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Siuf\\Rules",
|
||||
"Name": "NumberOfSIUFInPeriod",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\DataCollection",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Name": "DoNotShowFeedbackNotifications",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\CloudContent",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Name": "DisableTailoredExperiencesWithDiagnosticData",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\AdvertisingInfo",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Name": "DisabledByGroupPolicy",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\Windows Error Reporting",
|
||||
"OriginalValue": "0",
|
||||
"Name": "Disabled",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\DeliveryOptimization\\Config",
|
||||
"OriginalValue": "1",
|
||||
"Name": "DODownloadMode",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\DeliveryOptimization",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Name": "DODownloadMode",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Remote Assistance",
|
||||
"OriginalValue": "1",
|
||||
"Name": "fAllowToGetHelp",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\OperationStatusManager",
|
||||
"OriginalValue": "0",
|
||||
"Name": "EnthusiastMode",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced",
|
||||
"OriginalValue": "1",
|
||||
"Name": "ShowTaskViewButton",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\People",
|
||||
"OriginalValue": "1",
|
||||
"Name": "PeopleBand",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced",
|
||||
"OriginalValue": "1",
|
||||
"Name": "LaunchTo",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\FileSystem",
|
||||
"OriginalValue": "0",
|
||||
"Name": "LongPathsEnabled",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Multimedia\\SystemProfile",
|
||||
"OriginalValue": "1",
|
||||
"Name": "SystemResponsiveness",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Multimedia\\SystemProfile",
|
||||
"OriginalValue": "1",
|
||||
"Name": "NetworkThrottlingIndex",
|
||||
"Value": "4294967295",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Control Panel\\Desktop",
|
||||
"OriginalValue": "1",
|
||||
"Name": "AutoEndTasks",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Memory Management",
|
||||
"OriginalValue": "0",
|
||||
"Name": "ClearPageFileAtShutdown",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\ControlSet001\\Services\\Ndu",
|
||||
"OriginalValue": "1",
|
||||
"Name": "Start",
|
||||
"Value": "2",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\LanmanServer\\Parameters",
|
||||
"OriginalValue": "20",
|
||||
"Name": "IRPStackSize",
|
||||
"Value": "30",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Windows Feeds",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Name": "EnableFeeds",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Feeds",
|
||||
"OriginalValue": "1",
|
||||
"Name": "ShellFeedsTaskbarViewMode",
|
||||
"Value": "2",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Name": "HideSCAMeetNow",
|
||||
"Value": "1",
|
||||
"Type": "DWord"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\UserProfileEngagement",
|
||||
"OriginalValue": "1",
|
||||
"Name": "ScoobeSystemSettingEnabled",
|
||||
"Value": "0",
|
||||
"Type": "DWord"
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
],
|
||||
"InvokeScript": [
|
||||
"
|
||||
# Disable Defender Auto Sample Submission
|
||||
Set-MpPreference -SubmitSamplesConsent 2
|
||||
|
||||
# Disable (Connected User Experiences and Telemetry) Service
|
||||
Set-Service -Name diagtrack -StartupType Disabled
|
||||
|
||||
# Disable (Windows Error Reporting Manager) Service
|
||||
Set-Service -Name wermgr -StartupType Disabled
|
||||
|
||||
$Memory = (Get-CimInstance Win32_PhysicalMemory | Measure-Object Capacity -Sum).Sum / 1KB
|
||||
Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name SvcHostSplitThresholdInKB -Value $Memory
|
||||
|
||||
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Siuf\Rules" -Name "PeriodInNanoSeconds"
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
# Enable Defender Auto Sample Submission
|
||||
Set-MpPreference -SubmitSamplesConsent 1
|
||||
|
||||
# Enable (Connected User Experiences and Telemetry) Service
|
||||
Set-Service -Name diagtrack -StartupType Automatic
|
||||
|
||||
# Enable (Windows Error Reporting Manager) Service
|
||||
Set-Service -Name wermgr -StartupType Automatic
|
||||
"
|
||||
],
|
||||
```
|
||||
|
||||
## Registry Changes
|
||||
|
||||
Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.
|
||||
|
||||
You can find information about the registry on [Wikipedia](https://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
28
docs/content/dev/tweaks/Essential-Tweaks/WPBT.md
Normal file
28
docs/content/dev/tweaks/Essential-Tweaks/WPBT.md
Normal file
@@ -0,0 +1,28 @@
|
||||
---
|
||||
title: "Disable Windows Platform Binary Table (WPBT)"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json
|
||||
"WPFTweaksWPBT": {
|
||||
"Content": "Disable Windows Platform Binary Table (WPBT)",
|
||||
"Description": "If enabled then allows your computer vendor to execute a program each time it boots. It enables computer vendors to force install anti-theft software, software drivers, or a software program conveniently. This could also be a security risk.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Order": "a005_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager",
|
||||
"Name": "DisableWpbtExecution",
|
||||
"Value": "1",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"Type": "DWord"
|
||||
}
|
||||
],
|
||||
```
|
||||
|
||||
## Registry Changes
|
||||
|
||||
Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.
|
||||
|
||||
You can find information about the registry on [Wikipedia](https://www.wikiwand.com/en/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
30
docs/content/dev/tweaks/Essential-Tweaks/Widget.md
Normal file
30
docs/content/dev/tweaks/Essential-Tweaks/Widget.md
Normal file
@@ -0,0 +1,30 @@
|
||||
---
|
||||
title: "Remove Widgets"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json
|
||||
"WPFTweaksWidget": {
|
||||
"Content": "Remove Widgets",
|
||||
"Description": "Removes the annoying widgets in the bottom left of the taskbar",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Order": "a005_",
|
||||
"InvokeScript": [
|
||||
"
|
||||
# Sometimes if you dont stop Widgets Process for removal to work
|
||||
Stop-Process -Name Widgets
|
||||
Get-AppxPackage Microsoft.WidgetsPlatformRuntime -AllUsers | Remove-AppxPackage -AllUsers
|
||||
|
||||
Invoke-WinUtilExplorerUpdate -action \"restart\"
|
||||
Write-Host \"Removed widgets\"
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
Write-Host \"Restoring widgets AppxPackages\"
|
||||
Add-AppxPackage -DisableDevelopmentMode -Register \"C:\\Program Files\\WindowsApps\\Microsoft.WidgetsPlatformRuntime*\\AppxManifest.xml\"
|
||||
Invoke-WinUtilExplorerUpdate -action \"restart\"
|
||||
"
|
||||
],
|
||||
```
|
||||
@@ -1,18 +1,9 @@
|
||||
---
|
||||
title: "Essential Tweaks"
|
||||
weight: 1
|
||||
toc: false
|
||||
---
|
||||
|
||||
### Essential Tweaks
|
||||
|
||||
- [Create Restore Point](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/RestorePoint.md)
|
||||
- [Debloat Edge](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/EdgeDebloat.md)
|
||||
- [Delete Temporary Files](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/DeleteTempFiles.md)
|
||||
- [Disable Activity History](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Activity.md)
|
||||
- [Disable ConsumerFeatures](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/ConsumerFeatures.md)
|
||||
- [Disable GameDVR](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/GameDVR.md)
|
||||
- [Disable Hibernation](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Hibernation.md)
|
||||
- [Disable Location Tracking](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Location.md)
|
||||
- [Disable Powershell 7 Telemetry](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Powershell7Tele.md)
|
||||
- [Disable Storage Sense](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Storage.md)
|
||||
- [Disable Telemetry](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Telemetry.md)
|
||||
- [Enable End Task With Right Click](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar.md)
|
||||
- [Prefer IPv4 over IPv6](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/IPv46.md)
|
||||
- [Run Disk Cleanup](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/DiskCleanup.md)
|
||||
- [Set Hibernation as default (good for laptops)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/LaptopHibernation.md)
|
||||
- [Set Services to Manual](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Services.md)
|
||||
{{< autolinks section="dev/tweaks/essential-tweaks" >}}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Remove Ultimate Performance Profile
|
||||
|
||||
```json
|
||||
---
|
||||
title: "Remove Ultimate Performance Profile"
|
||||
description: ""
|
||||
---
|
||||
```powershell
|
||||
Function Invoke-WPFUltimatePerformance {
|
||||
<#
|
||||
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
---
|
||||
title: "Performance Plans"
|
||||
weight: 4
|
||||
toc: false
|
||||
---
|
||||
|
||||
### Performance Plans
|
||||
|
||||
- [Add and Remove Ultimate Performance Profile](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Performance-Plans/Profile.md)
|
||||
{{< autolinks section="dev/tweaks/performance-plans" >}}
|
||||
|
||||
@@ -1,57 +1,21 @@
|
||||
---
|
||||
title: "Tweaks"
|
||||
weight: 2
|
||||
toc: false
|
||||
---
|
||||
|
||||
### Essential Tweaks
|
||||
|
||||
- [Create Restore Point](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/RestorePoint.md)
|
||||
- [Debloat Edge](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/EdgeDebloat.md)
|
||||
- [Delete Temporary Files](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/DeleteTempFiles.md)
|
||||
- [Disable Activity History](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Activity.md)
|
||||
- [Disable ConsumerFeatures](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/ConsumerFeatures.md)
|
||||
- [Disable GameDVR](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/GameDVR.md)
|
||||
- [Disable Hibernation](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Hibernation.md)
|
||||
- [Disable Location Tracking](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Location.md)
|
||||
- [Disable Powershell 7 Telemetry](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Powershell7Tele.md)
|
||||
- [Disable Storage Sense](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Storage.md)
|
||||
- [Disable Telemetry](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Telemetry.md)
|
||||
- [Enable End Task With Right Click](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar.md)
|
||||
- [Prefer IPv4 over IPv6](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/IPv46.md)
|
||||
- [Run Disk Cleanup](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/DiskCleanup.md)
|
||||
- [Set Hibernation as default (good for laptops)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/LaptopHibernation.md)
|
||||
- [Set Services to Manual](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Essential-Tweaks/Services.md)
|
||||
{{< autolinks section="dev/tweaks/essential-tweaks" >}}
|
||||
|
||||
### Advanced Tweaks (CAUTION)
|
||||
|
||||
- [Adobe Network Block](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet.md)
|
||||
- [Disable Background Apps](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps.md)
|
||||
- [Disable Fullscreen Optimizations](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO.md)
|
||||
- [Disable IPv6](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableIPv6.md)
|
||||
- [Disable Notification Tray/Calendar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications.md)
|
||||
- [Disable Teredo](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo.md)
|
||||
- [Remove ALL MS Store Apps - NOT RECOMMENDED](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat.md)
|
||||
- [Remove Gallery from explorer](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveGallery.md)
|
||||
- [Remove Home from explorer](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHome.md)
|
||||
- [Run OO Shutup 10](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton.md)
|
||||
- [Set Classic Right-Click Menu](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu.md)
|
||||
- [Set Display for Performance](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display.md)
|
||||
- [Set Time to UTC (Dual Boot)](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC.md)
|
||||
{{< autolinks section="dev/tweaks/z--advanced-tweaks---caution" >}}
|
||||
|
||||
### Customize Preferences
|
||||
|
||||
- [Bing Search in Start Menu](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/BingSearch.md)
|
||||
- [Center Taskbar Items](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarAlignment.md)
|
||||
- [Dark Theme for Windows](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/DarkMode.md)
|
||||
- [Detailed BSoD](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/DetailedBSoD.md)
|
||||
- [Mouse Acceleration](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/MouseAcceleration.md)
|
||||
- [NumLock on Startup](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/NumLock.md)
|
||||
- [Search Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarSearch.md)
|
||||
- [Show File Extensions](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/ShowExt.md)
|
||||
- [Show Hidden Files](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/HiddenFiles.md)
|
||||
- [Snap Assist Flyout](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapFlyout.md)
|
||||
- [Snap Assist Suggestion](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapSuggestion.md)
|
||||
- [Snap Window](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/SnapWindow.md)
|
||||
- [Sticky Keys](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/StickyKeys.md)
|
||||
- [Task View Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskView.md)
|
||||
- [Verbose Messages During Logon](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/VerboseLogon.md)
|
||||
- [Widgets Button in Taskbar](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Customize-Preferences/TaskbarWidgets.md)
|
||||
{{< autolinks section="dev/tweaks/customize-preferences" >}}
|
||||
|
||||
### Performance Plans
|
||||
|
||||
- [Add and Remove Ultimate Performance Profile](https://github.com/ChrisTitusTech/winutil/blob/main/docs/content/dev/tweaks/Performance-Plans/Profile.md)
|
||||
{{< autolinks section="dev/tweaks/performance-plans" >}}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Adobe Network Block
|
||||
|
||||
---
|
||||
title: "Adobe Network Block"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksBlockAdobeNet": {
|
||||
"Content": "Adobe Network Block",
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
---
|
||||
title: "Debloat Brave"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json
|
||||
"WPFTweaksBraveDebloat": {
|
||||
"Content": "Brave Debloat",
|
||||
"Description": "Disables various annoyances like Brave Rewards,Leo AI,Crypto Wallet and VPN",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a022_",
|
||||
"registry": [
|
||||
{
|
||||
"Path":"HKLM:\\SOFTWARE\\Policies\\BraveSoftware\\Brave",
|
||||
"Name": "BraveRewardsDisabled",
|
||||
"Type": "DWord",
|
||||
"Value": "1",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\BraveSoftware\\Brave",
|
||||
"Name": "BraveWalletDisabled",
|
||||
"Type": "DWord",
|
||||
"Value": "1",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\BraveSoftware\\Brave",
|
||||
"Name": "BraveVPNDisabled",
|
||||
"Type": "DWord",
|
||||
"Value": "1",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\BraveSoftware\\Brave",
|
||||
"Name": "BraveAIChatEnabled",
|
||||
"Type": "DWord",
|
||||
"Value": "0",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\BraveSoftware\\Brave",
|
||||
"Name": "BraveStatsPingEnabled",
|
||||
"Type": "DWord",
|
||||
"Value": "0",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
],
|
||||
```
|
||||
@@ -1,9 +1,11 @@
|
||||
# Remove ALL MS Store Apps - NOT RECOMMENDED
|
||||
|
||||
---
|
||||
title: "Remove ALL MS Store Apps - NOT RECOMMENDED"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksDeBloat": {
|
||||
"WPFTweaksDeBloat": {
|
||||
"Content": "Remove ALL MS Store Apps - NOT RECOMMENDED",
|
||||
"Description": "USE WITH CAUTION!!! This will remove ALL Microsoft store apps other than the essentials ones.",
|
||||
"Description": "USE WITH CAUTION!!! This will remove ALL Microsoft store apps.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a028_",
|
||||
@@ -18,8 +20,10 @@
|
||||
"Microsoft.BingFoodAndDrink",
|
||||
"Microsoft.BingHealthAndFitness",
|
||||
"Microsoft.BingTravel",
|
||||
"Microsoft.MinecraftUWP",
|
||||
"Microsoft.GamingServices",
|
||||
"Clipchamp.Clipchamp",
|
||||
"Microsoft.Todos",
|
||||
"MicrosoftCorporationII.QuickAssist",
|
||||
"Microsoft.MicrosoftStickyNotes",
|
||||
"Microsoft.GetHelp",
|
||||
"Microsoft.GetStarted",
|
||||
"Microsoft.Messaging",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable Background Apps
|
||||
|
||||
---
|
||||
title: "Disable Background Apps"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksDisableBGapps": {
|
||||
"Content": "Disable Background Apps",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable Fullscreen Optimizations
|
||||
|
||||
---
|
||||
title: "Disable Fullscreen Optimizations"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksDisableFSO": {
|
||||
"Content": "Disable Fullscreen Optimizations",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable IPv6
|
||||
|
||||
---
|
||||
title: "Disable IPv6"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksDisableIPv6": {
|
||||
"Content": "Disable IPv6",
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Disable Notification Tray/Calendar
|
||||
|
||||
---
|
||||
title: "Disable Notification Tray/Calendar"
|
||||
description: ""
|
||||
---
|
||||
```json
|
||||
"WPFTweaksDisableNotifications": {
|
||||
"Content": "Disable Notification Tray/Calendar",
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user