Compare commits
54 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1fc2aa3743 | |||
| 893dca4055 | |||
| 2ebc9bd6c4 | |||
| 076ef02b2c | |||
| c99114e9e1 | |||
| 9b72c1e2de | |||
| b379574574 | |||
| 565597a906 | |||
| 62ccf80856 | |||
| 70cdacb9f9 | |||
| 459d0fd1b2 | |||
| 48e94f71bc | |||
| 2582f094ff | |||
| 5aa099f6e2 | |||
| 9d85eea4e5 | |||
| c765ffb317 | |||
| 82f51b4bf1 | |||
| d44c013464 | |||
| 753d47b9bc | |||
| 8034e85521 | |||
| a09736f9a8 | |||
| 24aaf9a3cf | |||
| f57b5f4ffa | |||
| 32d24c8024 | |||
| 743f9e3783 | |||
| 522c4471c0 | |||
| ea698f3791 | |||
| 8ffd15c9f3 | |||
| 6c1cb0caab | |||
| bcafbe6234 | |||
| fb54380b8b | |||
| 39f26133f4 | |||
| 09695f10aa | |||
| d1becc5310 | |||
| 543b8958ef | |||
| c39c54c7c1 | |||
| d8193fd8ac | |||
| 25adabd622 | |||
| 2d605f1875 | |||
| d46d324df8 | |||
| 3e16817640 | |||
| d0b91d190a | |||
| bdbfdb6681 | |||
| 0154b749a4 | |||
| e6e44e3e04 | |||
| e6d8fdff75 | |||
| 6ba184bdeb | |||
| 6d6defc206 | |||
| fa073f8475 | |||
| 63aecc0bee | |||
| a0887783f8 | |||
| f3880b66bb | |||
| aa636926fa | |||
| ec3166bdc6 |
@@ -1,119 +1,149 @@
|
||||
# How to Contribute?
|
||||
## Contributing Code
|
||||
|
||||
## Testing
|
||||
### Before You Start
|
||||
|
||||
* Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
|
||||
- Keep each pull request focused on a single feature or fix.
|
||||
- Avoid unnecessary formatting changes or large unrelated edits.
|
||||
- Document what changed and why in your PR description.
|
||||
|
||||
#### **Run the latest pre-release**
|
||||
```ps1
|
||||
irm https://christitus.com/windev | iex
|
||||
```
|
||||
---
|
||||
|
||||
!!! bug "Keep in mind"
|
||||
## Basic Git Workflow
|
||||
|
||||
This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!
|
||||
### 1. Fork the Repository
|
||||
|
||||
## Issues
|
||||
Go to the ChrisTitusTech/winutil repository on GitHub and click the Fork button in the top right corner.
|
||||
|
||||
* If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
|
||||
<img width="171" height="50" alt="{650A4723-F38A-44A4-9820-D232BC87C8A0}" src="https://github.com/user-attachments/assets/a214f27c-2fee-444a-920f-d87b14f5896f" />
|
||||
|
||||
## Contribute Code
|
||||
---
|
||||
|
||||
* Pull requests are now handled directly on the **MAIN branch**. This was done since we can now select specific releases to launch via releases in GitHub.
|
||||
### 2. Clone Your Fork
|
||||
|
||||
* If you're doing code changes, then you can submit a PR to the `main` branch.
|
||||
|
||||
!!! warning "Important"
|
||||
|
||||
Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!
|
||||
|
||||
Do not open a pull request that adds support for other languages to WinUtil for now, until we decide how we want to move forward with language support.
|
||||
|
||||
* When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the `tweaks` section and corresponding `undo tweak`, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.
|
||||
|
||||
* By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.
|
||||
|
||||
!!! note
|
||||
|
||||
When creating a function, please include "WPF" or "WinUtil" in the file name so it can be loaded into the runspace.
|
||||
|
||||
## Walk through
|
||||
|
||||
* This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
|
||||
* [Commit through WEB](https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits)
|
||||
* [Commit through GitHub Desktop](https://docs.github.com/en/desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project-in-github-desktop#about-commits)
|
||||
* [Create a Pull Request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request)
|
||||
|
||||
|
||||
### Overview
|
||||
|
||||
``` mermaid
|
||||
%%{init: {"flowchart": {"curve": "cardinal"}} }%%
|
||||
graph TD
|
||||
A[Fork Project] --> B[Clone Repository];
|
||||
B --> C[Create New Branch];
|
||||
C --> D[Make Changes];
|
||||
D --> G[Test Changes];
|
||||
G --> H{Tests Passed?};
|
||||
H -->|Yes| E[Commit Changes];
|
||||
H -->|No| J[Fix Issues];
|
||||
J --> G;
|
||||
E --> F[Push Branch];
|
||||
F --> K[Create Pull Request];
|
||||
K --> L[Fill out PR template];
|
||||
classDef default stroke:#333,stroke-width:4px,font-size:12pt;
|
||||
```powershell
|
||||
git clone https://github.com/YOUR_USERNAME/winutil.git
|
||||
cd winutil
|
||||
```
|
||||
!!! info
|
||||
|
||||
This is a diagram to guide you through the process. It may vary depending on the type of change you're making.
|
||||
---
|
||||
|
||||
### Fork the Repo
|
||||
* Fork the WinUtil Repository [here](https://github.com/ChrisTitusTech/winutil) to create a copy that will be available in your repository list.
|
||||
### 3. Create a Branch
|
||||
|
||||

|
||||
Never work directly on `main`.
|
||||
|
||||

|
||||
Create a branch related to your change:
|
||||
|
||||
### Clone the Fork
|
||||
!!! tip
|
||||
```powershell
|
||||
git checkout -b feature-name
|
||||
```
|
||||
|
||||
While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.
|
||||
Example:
|
||||
|
||||
* Install GitHub Desktop if it is not already installed.
|
||||
* Log in using the same GitHub account you used to fork WinUtil.
|
||||
* Choose the fork under "Your Repositories" and press "clone {repo name}"
|
||||
* Create a new branch and name it something relatable to your changes.
|
||||
```powershell
|
||||
git checkout -b add-firefox-tweak
|
||||
```
|
||||
|
||||
* Now you can modify WinUtil to your liking using your preferred text editor.
|
||||
---
|
||||
|
||||
### 4. Edit the Code
|
||||
|
||||
### Testing your changes
|
||||
Open the project in your preferred text editor and make your changes.
|
||||
|
||||
* To test to see if your changes work as intended, run the following commands in a PowerShell terminal as admin:
|
||||
Keep changes small and focused.
|
||||
|
||||
* Change the directory where you are running the commands to the forked project.
|
||||
* `cd {path to the folder with the compile.ps1}`
|
||||
* Run the following command to compile and run WinUtil:
|
||||
* `.\Compile.ps1 -run`
|
||||
---
|
||||
|
||||

|
||||
### 5. Test Your Changes
|
||||
|
||||
* After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
|
||||
Open Pwsh (Not Powershell) as Administrator.
|
||||
|
||||
### Committing the changes
|
||||
* Before committing your changes, please discard changes made to the `winutil.ps1` file, like the following:
|
||||
Go to the project folder:
|
||||
|
||||

|
||||
```powershell
|
||||
cd path\to\winutil
|
||||
```
|
||||
|
||||
* Now, commit your changes once you are happy with the result.
|
||||
Run:
|
||||
|
||||

|
||||
```powershell
|
||||
.\Compile.ps1 -Run
|
||||
```
|
||||
|
||||
* Push the changes to upload them to your fork on github.com.
|
||||
Verify:
|
||||
|
||||

|
||||
- WinUtil launches correctly
|
||||
- Your feature works
|
||||
- Nothing else breaks
|
||||
|
||||
### Making a PR
|
||||
* To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is no WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the "/windev" build.
|
||||
* If you do not see your feature in the main "/win" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
|
||||
* Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
|
||||
If something fails, fix it before committing.
|
||||
|
||||
---
|
||||
|
||||
### 6. Review Your Changes
|
||||
|
||||
Check what changed:
|
||||
|
||||
```powershell
|
||||
git status
|
||||
```
|
||||
|
||||
Review the diff:
|
||||
|
||||
```powershell
|
||||
git diff
|
||||
```
|
||||
|
||||
Make sure you did not accidentally modify unrelated files.
|
||||
|
||||
---
|
||||
|
||||
### 7. Commit Your Changes
|
||||
|
||||
Stage files:
|
||||
|
||||
```powershell
|
||||
git add .
|
||||
```
|
||||
|
||||
Commit them:
|
||||
|
||||
```powershell
|
||||
git commit -m "Add feature description"
|
||||
```
|
||||
|
||||
Example:
|
||||
|
||||
```powershell
|
||||
git commit -m "Add Firefox package tweak"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 8. Push Your Branch
|
||||
|
||||
```powershell
|
||||
git push origin branch-name
|
||||
```
|
||||
|
||||
Example:
|
||||
|
||||
```powershell
|
||||
git push origin add-firefox-tweak
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 9. Open a Pull Request
|
||||
|
||||
Go to your fork on GitHub.
|
||||
|
||||
GitHub will show a button to create a pull request.
|
||||
<img width="1009" height="71" alt="{C8C6A3CC-79D4-44FD-A54C-4C5717F12730}" src="https://github.com/user-attachments/assets/0419d193-d4e7-47c0-87cf-b986742201a0" />
|
||||
|
||||
Before submitting:
|
||||
|
||||
- Explain what changed
|
||||
- Explain why you changed it
|
||||
- Make sure unrelated files are not included
|
||||
|
||||
Once submitted, maintainers will review your PR.
|
||||
|
||||
@@ -9,6 +9,15 @@ body:
|
||||
- Remember, we only support Windows 11. If you encounter problems on Windows 10, please consider upgrading to Windows 11.
|
||||
- For general questions, join our Community-driven [Discord Server](https://discord.gg/RUbZUZyByQ).
|
||||
|
||||
- type: checkboxes
|
||||
id: read_issues
|
||||
attributes:
|
||||
label: "I have read the known issues"
|
||||
description: "You [better do](https://winutil.christitus.com/knownissues/), cause your issue can be already there"
|
||||
options:
|
||||
- label: Yes, I did
|
||||
required: true
|
||||
|
||||
- type: dropdown
|
||||
id: affected_part
|
||||
attributes:
|
||||
|
||||
@@ -15,101 +15,63 @@ jobs:
|
||||
contents: read
|
||||
|
||||
steps:
|
||||
- run: echo "command=false" >> $GITHUB_ENV
|
||||
- name: Process slash command
|
||||
uses: actions/github-script@v9
|
||||
with:
|
||||
script: |
|
||||
const allowedUsers = ["ChrisTitusTech", "og-mrk", "Marterich", "MyDrift-user", "Real-MullaC", "CodingWonders", "GabiNun2", "FluffyPunk"];
|
||||
const commenter = context.payload.comment.user.login;
|
||||
|
||||
- name: Check for /label command
|
||||
id: check_label_command
|
||||
run: |
|
||||
if [[ "${{ contains(github.event.comment.body, '/label') }}" == "true" ]]; then
|
||||
echo "command=true" >> $GITHUB_ENV
|
||||
LABEL_NAME=$(echo "${{ github.event.comment.body }}" | awk -F"/label" '/\/label/ { match($2, /'\''([^'\'']*)'\''/, arr); if (arr[1] != "") print arr[1] }')
|
||||
echo "label_command=true" >> $GITHUB_ENV
|
||||
echo "label_name=${LABEL_NAME}" >> $GITHUB_ENV
|
||||
else
|
||||
echo "label_command=false" >> $GITHUB_ENV
|
||||
fi
|
||||
// Authorization check first — before any parsing of comment content
|
||||
if (!allowedUsers.includes(commenter)) {
|
||||
console.log(`User ${commenter} is not in the allowlist. Skipping.`);
|
||||
return;
|
||||
}
|
||||
|
||||
- name: Check for /unlabel command
|
||||
id: check_unlabel_command
|
||||
run: |
|
||||
if [[ "${{ contains(github.event.comment.body, '/unlabel') }}" == "true" ]]; then
|
||||
echo "command=true" >> $GITHUB_ENV
|
||||
UNLABEL_NAME=$(echo "${{ github.event.comment.body }}" | awk -F"/unlabel" '/\/unlabel/ { match($2, /'\''([^'\'']*)'\''/, arr); if (arr[1] != "") print arr[1] }')
|
||||
echo "unlabel_command=true" >> $GITHUB_ENV
|
||||
echo "unlabel_name=${UNLABEL_NAME}" >> $GITHUB_ENV
|
||||
else
|
||||
echo "unlabel_command=false" >> $GITHUB_ENV
|
||||
fi
|
||||
// Read comment body as data, never interpolated into shell
|
||||
const body = context.payload.comment.body;
|
||||
const issueNumber = context.issue.number;
|
||||
const owner = context.repo.owner;
|
||||
const repo = context.repo.repo;
|
||||
|
||||
- name: Check for /close command
|
||||
id: check_close_command
|
||||
run: |
|
||||
if [[ "${{ contains(github.event.comment.body, '/close') }}" == "true" ]]; then
|
||||
echo "command=true" >> $GITHUB_ENV
|
||||
echo "close_command=true" >> $GITHUB_ENV
|
||||
echo "reopen_command=false" >> $GITHUB_ENV
|
||||
else
|
||||
echo "close_command=false" >> $GITHUB_ENV
|
||||
fi
|
||||
// /label 'name' or /label name
|
||||
const labelMatch = body.match(/\/label\s+'([^']+)'|\/label\s+(\S+?)(?:\s|$)/);
|
||||
if (labelMatch) {
|
||||
const labelName = (labelMatch[1] || labelMatch[2]).trim();
|
||||
console.log(`Adding label: ${labelName}`);
|
||||
await github.rest.issues.addLabels({
|
||||
owner, repo, issue_number: issueNumber,
|
||||
labels: [labelName],
|
||||
});
|
||||
}
|
||||
|
||||
- name: Check for /open or /reopen command
|
||||
id: check_reopen_command
|
||||
run: |
|
||||
if [[ "${{ contains(github.event.comment.body, '/open') }}" == "true" ]] || [[ "${{ contains(github.event.comment.body, '/reopen') }}" == "true" ]]; then
|
||||
echo "command=true" >> $GITHUB_ENV
|
||||
echo "reopen_command=true" >> $GITHUB_ENV
|
||||
echo "close_command=false" >> $GITHUB_ENV
|
||||
else
|
||||
echo "reopen_command=false" >> $GITHUB_ENV
|
||||
fi
|
||||
// /unlabel 'name' or /unlabel name
|
||||
const unlabelMatch = body.match(/\/unlabel\s+'([^']+)'|\/unlabel\s+(\S+?)(?:\s|$)/);
|
||||
if (unlabelMatch) {
|
||||
const labelName = (unlabelMatch[1] || unlabelMatch[2]).trim();
|
||||
console.log(`Removing label: ${labelName}`);
|
||||
await github.rest.issues.removeLabel({
|
||||
owner, repo, issue_number: issueNumber,
|
||||
name: labelName,
|
||||
});
|
||||
}
|
||||
|
||||
- name: Check if the user is allowed
|
||||
id: check_user
|
||||
if: env.command == 'true'
|
||||
run: |
|
||||
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
|
||||
exit 0
|
||||
fi
|
||||
// /close (optionally with 'not planned')
|
||||
if (body.includes('/close')) {
|
||||
const stateReason = body.includes('not planned') ? 'not_planned' : 'completed';
|
||||
console.log(`Closing issue (reason: ${stateReason})`);
|
||||
await github.rest.issues.update({
|
||||
owner, repo, issue_number: issueNumber,
|
||||
state: 'closed',
|
||||
state_reason: stateReason,
|
||||
});
|
||||
}
|
||||
|
||||
- name: Close issue
|
||||
if: env.close_command == 'true'
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
ISSUE_NUMBER: ${{ github.event.issue.number }}
|
||||
run: |
|
||||
echo Closing the issue...
|
||||
if [[ "${{ contains(github.event.comment.body, 'not planned') }}" == "true" ]]; then
|
||||
gh issue close $ISSUE_NUMBER --repo ${{ github.repository }} --reason 'not planned'
|
||||
else
|
||||
gh issue close $ISSUE_NUMBER --repo ${{ github.repository }}
|
||||
fi
|
||||
|
||||
- name: Reopen issue
|
||||
if: env.reopen_command == 'true'
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
ISSUE_NUMBER: ${{ github.event.issue.number }}
|
||||
run: |
|
||||
echo Reopening the issue...
|
||||
gh issue reopen $ISSUE_NUMBER --repo ${{ github.repository }}
|
||||
|
||||
- name: Label issue
|
||||
if: env.label_command == 'true'
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
ISSUE_NUMBER: ${{ github.event.issue.number }}
|
||||
run: |
|
||||
echo Labeling the issue...
|
||||
gh issue edit $ISSUE_NUMBER --repo ${{ github.repository }} --add-label "${{ env.label_name }}"
|
||||
|
||||
- name: Remove labels
|
||||
if: env.unlabel_command == 'true'
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
ISSUE_NUMBER: ${{ github.event.issue.number }}
|
||||
run: |
|
||||
echo Unlabeling the issue...
|
||||
gh issue edit $ISSUE_NUMBER --repo ${{ github.repository }} --remove-label "${{ env.unlabel_name }}"
|
||||
// /open or /reopen
|
||||
if (body.includes('/open') || body.includes('/reopen')) {
|
||||
console.log('Reopening issue');
|
||||
await github.rest.issues.update({
|
||||
owner, repo, issue_number: issueNumber,
|
||||
state: 'open',
|
||||
});
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@ jobs:
|
||||
config/feature.json
|
||||
labels: |
|
||||
automated
|
||||
documentation
|
||||
skip-changelog
|
||||
|
||||
- name: Check outputs
|
||||
shell: bash
|
||||
|
||||
@@ -1,23 +1,15 @@
|
||||
### VSCode ###
|
||||
# Libraries
|
||||
System.Management.Automation.dll
|
||||
Microsoft.PowerShell.ConsoleHost.dll
|
||||
|
||||
# Configuration folder
|
||||
.vscode/
|
||||
.idea/
|
||||
|
||||
### Visual Studio ###
|
||||
|
||||
# Visual Studio user-specific files
|
||||
.vs/
|
||||
|
||||
winutil.pdb
|
||||
|
||||
### Preprocessor Hashes ###
|
||||
.preprocessor_hashes.json
|
||||
|
||||
### Windows ###
|
||||
|
||||
# Folder config file
|
||||
[Dd]esktop.ini
|
||||
# OS Specific
|
||||
desktop.ini
|
||||
.DS_Store
|
||||
|
||||
# Ignore Generated XAML Files
|
||||
xaml/inputApp.xaml
|
||||
@@ -25,37 +17,15 @@ xaml/inputFeatures.xaml
|
||||
xaml/inputTweaks.xaml
|
||||
|
||||
# Executables and Configs
|
||||
winget.msixbundle
|
||||
pester.ps1
|
||||
*.psd*
|
||||
ooshutup10.cfg
|
||||
winutil.exe.config
|
||||
Microsoft.UI.Xaml*
|
||||
license1.xml
|
||||
winutil.ps1
|
||||
*.psd*
|
||||
|
||||
# Libraries
|
||||
System.Management.Automation.dll
|
||||
Microsoft.PowerShell.ConsoleHost.dll
|
||||
|
||||
# Compressed files
|
||||
*.zip
|
||||
|
||||
### MacOS ###
|
||||
|
||||
# General
|
||||
.DS_Store
|
||||
True
|
||||
test.ps1
|
||||
winutil.ps1
|
||||
|
||||
# temporary excludes for docs
|
||||
.github/site/
|
||||
|
||||
# winutil-bin
|
||||
winutil.exe.config
|
||||
binary/
|
||||
|
||||
.preprocessor_hashes.json
|
||||
|
||||
# Hugo Files
|
||||
docs/public/
|
||||
docs/.hugo_build.lock
|
||||
|
||||
@@ -1,144 +1,50 @@
|
||||
param (
|
||||
[switch]$Run,
|
||||
[string]$Arguments
|
||||
[switch]$Run
|
||||
)
|
||||
|
||||
if ((Get-Item ".\winutil.ps1" -ErrorAction SilentlyContinue).IsReadOnly) {
|
||||
Remove-Item ".\winutil.ps1" -Force
|
||||
}
|
||||
|
||||
$OFS = "`r`n"
|
||||
$scriptname = "winutil.ps1"
|
||||
$workingdir = $PSScriptRoot
|
||||
$OFS = "`r`n" # Makes it so we dont need to add -Raw to every Get-Content command
|
||||
|
||||
# Variable to sync between runspaces
|
||||
$sync = [Hashtable]::Synchronized(@{})
|
||||
$sync.configs = @{}
|
||||
|
||||
function Update-Progress {
|
||||
param (
|
||||
[Parameter(Mandatory, position=0)]
|
||||
[string]$StatusMessage,
|
||||
# Create the script in memory.
|
||||
$script = [System.Collections.Generic.List[string]]::new()
|
||||
|
||||
[Parameter(Mandatory, position=1)]
|
||||
[ValidateRange(0,100)]
|
||||
[int]$Percent,
|
||||
|
||||
[Parameter(position=2)]
|
||||
[string]$Activity = "Compiling"
|
||||
)
|
||||
|
||||
Write-Progress -Activity $Activity -Status $StatusMessage -PercentComplete $Percent
|
||||
}
|
||||
|
||||
Update-Progress "Pre-req: Running Preprocessor..." 0
|
||||
|
||||
# Dot source the 'Invoke-Preprocessing' Function from 'tools/Invoke-Preprocessing.ps1' Script
|
||||
$preprocessingFilePath = ".\tools\Invoke-Preprocessing.ps1"
|
||||
. $preprocessingFilePath
|
||||
|
||||
$excludedFiles = @()
|
||||
|
||||
# Add directories only if they exist
|
||||
if (Test-Path '.\.git\') { $excludedFiles += '.\.git\' }
|
||||
if (Test-Path '.\binary\') { $excludedFiles += '.\binary\' }
|
||||
|
||||
# Add files that should always be excluded
|
||||
$excludedFiles += @(
|
||||
'.\.gitignore',
|
||||
'.\.gitattributes',
|
||||
'.\.github\CODEOWNERS',
|
||||
'.\LICENSE',
|
||||
"$preprocessingFilePath",
|
||||
'*.png',
|
||||
'.\.preprocessor_hashes.json'
|
||||
$script.Add(
|
||||
((Get-Content -Path scripts\start.ps1) -replace '#{replaceme}', (Get-Date -Format 'yy.MM.dd'))
|
||||
)
|
||||
|
||||
$msg = "Pre-req: Code Formatting"
|
||||
Invoke-Preprocessing -WorkingDir "$workingdir" -ExcludedFiles $excludedFiles -ProgressStatusMessage $msg
|
||||
$script.Add((Get-ChildItem -Path functions -Recurse -File | Get-Content))
|
||||
|
||||
# Create the script in memory.
|
||||
Update-Progress "Pre-req: Allocating Memory" 0
|
||||
$script_content = [System.Collections.Generic.List[string]]::new()
|
||||
Get-ChildItem config | ForEach-Object {
|
||||
$obj = Get-Content -Path $_.FullName | ConvertFrom-Json
|
||||
|
||||
Update-Progress "Adding: Version" 10
|
||||
$script_content.Add($(Get-Content "scripts\start.ps1").replace('#{replaceme}',"$(Get-Date -Format yy.MM.dd)"))
|
||||
|
||||
Update-Progress "Adding: Functions" 20
|
||||
Get-ChildItem "functions" -Recurse -File | ForEach-Object {
|
||||
$script_content.Add($(Get-Content $psitem.FullName))
|
||||
}
|
||||
Update-Progress "Adding: Config *.json" 40
|
||||
Get-ChildItem "config" | Where-Object {$psitem.extension -eq ".json"} | ForEach-Object {
|
||||
$json = (Get-Content $psitem.FullName -Raw)
|
||||
$jsonAsObject = $json | ConvertFrom-Json
|
||||
|
||||
# Add 'WPFInstall' as a prefix to every entry-name in 'applications.json' file
|
||||
if ($psitem.Name -eq "applications.json") {
|
||||
foreach ($appEntryName in $jsonAsObject.PSObject.Properties.Name) {
|
||||
$appEntryContent = $jsonAsObject.$appEntryName
|
||||
$jsonAsObject.PSObject.Properties.Remove($appEntryName)
|
||||
$jsonAsObject | Add-Member -MemberType NoteProperty -Name "WPFInstall$appEntryName" -Value $appEntryContent
|
||||
if ($_.Name -eq "applications.json") {
|
||||
$fixed = [ordered]@{}
|
||||
foreach ($p in $obj.PSObject.Properties) {
|
||||
$fixed["WPFInstall$($p.Name)"] = $p.Value
|
||||
}
|
||||
$obj = [pscustomobject]$fixed
|
||||
}
|
||||
|
||||
# Line 90 requires no whitespace inside the here-strings, to keep formatting of the JSON in the final script.
|
||||
$json = @"
|
||||
$($jsonAsObject | ConvertTo-Json -Depth 3)
|
||||
"@
|
||||
$json = $obj | ConvertTo-Json -Depth 10
|
||||
|
||||
$sync.configs.$($psitem.BaseName) = $json | ConvertFrom-Json
|
||||
$script_content.Add($(Write-Output "`$sync.configs.$($psitem.BaseName) = @'`r`n$json`r`n'@ `| ConvertFrom-Json" ))
|
||||
$sync.configs[$_.BaseName] = $obj
|
||||
$script.Add("`$sync.configs.$($_.BaseName) = @'`r`n$json`r`n'@ | ConvertFrom-Json")
|
||||
}
|
||||
|
||||
# Read the entire XAML file as a single string, preserving line breaks
|
||||
$xaml = Get-Content "$workingdir\xaml\inputXML.xaml" -Raw
|
||||
$xaml = Get-Content -Path xaml\inputXML.xaml
|
||||
$script.Add('$inputXML = @''' + "`n" + $xaml + "`n" + '''@')
|
||||
|
||||
Update-Progress "Adding: Xaml " 90
|
||||
$autounattendXml = Get-Content -Path tools\autounattend.xml
|
||||
$script.Add("`$WinUtilAutounattendXml = @'`r`n$autounattendXml`r`n'@")
|
||||
|
||||
# Add the XAML content to $script_content using a here-string
|
||||
$script_content.Add(@"
|
||||
`$inputXML = @'
|
||||
$xaml
|
||||
'@
|
||||
"@)
|
||||
$script.Add((Get-Content -Path scripts\main.ps1))
|
||||
|
||||
Update-Progress "Adding: autounattend.xml" 95
|
||||
$autounattendRaw = Get-Content "$workingdir\tools\autounattend.xml" -Raw
|
||||
# Strip XML comments (<!-- ... -->, including multi-line)
|
||||
$autounattendRaw = [regex]::Replace($autounattendRaw, '<!--.*?-->', '', [System.Text.RegularExpressions.RegexOptions]::Singleline)
|
||||
# Drop blank lines and trim trailing whitespace per line
|
||||
$autounattendXml = ($autounattendRaw -split "`r?`n" |
|
||||
Where-Object { $_.Trim() -ne '' } |
|
||||
ForEach-Object { $_.TrimEnd() }) -join "`r`n"
|
||||
$script_content.Add(@"
|
||||
`$WinUtilAutounattendXml = @'
|
||||
$autounattendXml
|
||||
'@
|
||||
"@)
|
||||
Set-Content -Path winutil.ps1 -Value $script
|
||||
|
||||
$script_content.Add($(Get-Content "scripts\main.ps1"))
|
||||
|
||||
Update-Progress "Removing temporary files" 99
|
||||
Remove-Item "xaml\inputApp.xaml" -ErrorAction SilentlyContinue
|
||||
Remove-Item "xaml\inputTweaks.xaml" -ErrorAction SilentlyContinue
|
||||
Remove-Item "xaml\inputFeatures.xaml" -ErrorAction SilentlyContinue
|
||||
|
||||
Set-Content -Path "$scriptname" -Value ($script_content -join "`r`n") -Encoding ascii
|
||||
Write-Progress -Activity "Compiling" -Completed
|
||||
|
||||
Update-Progress -Activity "Validating" -StatusMessage "Checking winutil.ps1 Syntax" -Percent 0
|
||||
try {
|
||||
Get-Command -Syntax .\winutil.ps1 | Out-Null
|
||||
} catch {
|
||||
Write-Warning "Syntax Validation for 'winutil.ps1' has failed"
|
||||
Write-Host "$($Error[0])" -ForegroundColor Red
|
||||
exit 1
|
||||
}
|
||||
Write-Progress -Activity "Validating" -Completed
|
||||
|
||||
if ($run) {
|
||||
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
|
||||
.\Winutil.ps1 $Arguments
|
||||
break
|
||||
if ($Run) {
|
||||
.\Winutil.ps1
|
||||
}
|
||||
|
||||
@@ -35,6 +35,23 @@ irm "https://christitus.com/win" | iex
|
||||
irm "https://christitus.com/windev" | iex
|
||||
```
|
||||
|
||||
### Automation
|
||||
|
||||
Winutil also supports predefined presets that apply common configurations automatically:
|
||||
|
||||
- `Standard`
|
||||
- `Minimal`
|
||||
- `Advanced`
|
||||
|
||||
Example:
|
||||
|
||||
```powershell
|
||||
& ([ScriptBlock]::Create((irm "https://christitus.com/win"))) -Preset Standard
|
||||
```
|
||||
|
||||
To view exactly what each preset does, see:
|
||||
https://github.com/ChrisTitusTech/winutil/blob/main/config/preset.json
|
||||
|
||||
If you have Issues, refer to [Known Issues](https://winutil.christitus.com/knownissues/) or [Create Issue](https://github.com/ChrisTitusTech/winutil/issues)
|
||||
|
||||
## 🎓 Documentation
|
||||
@@ -76,7 +93,7 @@ You'll see a new file named `winutil.ps1`, which was created by `Compile.ps1` sc
|
||||
|
||||
These are the sponsors that help keep this project alive with monthly contributions.
|
||||
|
||||
<!-- sponsors --><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/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/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><a href="https://github.com/Di3Z1E"><img src="https://github.com/Di3Z1E.png" width="60px" alt="User avatar: Di3Z1E" /></a><a href="https://github.com/AbdulVakeel"><img src="https://github.com/AbdulVakeel.png" width="60px" alt="User avatar: Abdul Vakeel Software Engineer" /></a><!-- sponsors -->
|
||||
<!-- sponsors --><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/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/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><a href="https://github.com/ameaninglessname"><img src="https://github.com/ameaninglessname.png" width="60px" alt="User avatar: CodingBot" /></a><!-- sponsors -->
|
||||
|
||||
## 🏅 Thanks to all Contributors
|
||||
Thanks a lot for spending your time helping Winutil grow. Thanks a lot! Keep rocking 🍻.
|
||||
|
||||
@@ -129,7 +129,7 @@
|
||||
"link": "https://winutil.christitus.com/dev/features/features/sandbox"
|
||||
},
|
||||
"WPFFeatureInstall": {
|
||||
"Content": "Run Features",
|
||||
"Content": "Install Features",
|
||||
"category": "Features",
|
||||
"panel": "1",
|
||||
"Type": "Button",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"WPFTweaksDisableExplorerAutoDiscovery",
|
||||
"WPFTweaksWPBT",
|
||||
"WPFTweaksDVR",
|
||||
"WPFTweaksDeBloat",
|
||||
"WPFTweaksLocation",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksTelemetry",
|
||||
@@ -16,8 +17,29 @@
|
||||
],
|
||||
"Minimal": [
|
||||
"WPFTweaksConsumerFeatures",
|
||||
"WPFTweaksDeBloat",
|
||||
"WPFTweaksWPBT",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksTelemetry"
|
||||
],
|
||||
"Advanced": [
|
||||
"WPFTweaksActivity",
|
||||
"WPFTweaksConsumerFeatures",
|
||||
"WPFTweaksDisableExplorerAutoDiscovery",
|
||||
"WPFTweaksWPBT",
|
||||
"WPFTweaksDVR",
|
||||
"WPFTweaksDeBloat",
|
||||
"WPFTweaksLocation",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksTelemetry",
|
||||
"WPFTweaksDeleteTempFiles",
|
||||
"WPFTweaksEndTaskOnTaskbar",
|
||||
"WPFTweaksDisableStoreSearch",
|
||||
"WPFTweaksRevertStartMenu",
|
||||
"WPFTweaksWidget",
|
||||
"WPFTweaksRemoveOneDrive",
|
||||
"WPFTweaksWindowsAI",
|
||||
"WPFTweaksRightClickMenu",
|
||||
"WPFTweaksPowershell7Tele"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -174,7 +174,7 @@
|
||||
},
|
||||
"WPFTweaksServices": {
|
||||
"Content": "Services - Set 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.",
|
||||
"Description": "Sets some services to Manual startup and adjusts the SvcHostSplitThresholdInKB registry value to better match system memory, which can significantly reduce the number of svchost.exe processes.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"service": [
|
||||
@@ -193,16 +193,6 @@
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Automatic"
|
||||
},
|
||||
{
|
||||
"Name": "RemoteAccess",
|
||||
"StartupType": "Disabled",
|
||||
"OriginalType": "Disabled"
|
||||
},
|
||||
{
|
||||
"Name": "RemoteRegistry",
|
||||
"StartupType": "Disabled",
|
||||
"OriginalType": "Disabled"
|
||||
},
|
||||
{
|
||||
"Name": "StorSvc",
|
||||
"StartupType": "Manual",
|
||||
@@ -212,26 +202,6 @@
|
||||
"Name": "SharedAccess",
|
||||
"StartupType": "Disabled",
|
||||
"OriginalType": "Automatic"
|
||||
},
|
||||
{
|
||||
"Name": "TermService",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Manual"
|
||||
},
|
||||
{
|
||||
"Name": "TroubleshootingSvc",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Manual"
|
||||
},
|
||||
{
|
||||
"Name": "seclogon",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Manual"
|
||||
},
|
||||
{
|
||||
"Name": "ssh-agent",
|
||||
"StartupType": "Disabled",
|
||||
"OriginalType": "Disabled"
|
||||
}
|
||||
],
|
||||
"InvokeScript": [
|
||||
@@ -637,6 +607,19 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/removeedge"
|
||||
},
|
||||
"WPFTweaksDisableBitLocker": {
|
||||
"Content": "BitLocker - Disable",
|
||||
"Description": "Disables BitLocker.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"Disable-BitLocker -MountPoint $Env:SystemDrive"
|
||||
],
|
||||
"UndoScript": [
|
||||
"Enable-BitLocker -MountPoint $Env:SystemDrive"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/disablebitlocker"
|
||||
},
|
||||
"WPFTweaksUTC": {
|
||||
"Content": "Date & Time - Set Time to UTC",
|
||||
"Description": "Essential for computers that are dual booting. Fixes the time sync with Linux systems.",
|
||||
@@ -691,41 +674,28 @@
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/removeonedrive"
|
||||
},
|
||||
"WPFTweaksRemoveHome": {
|
||||
"Content": "File Explorer Home - Disable",
|
||||
"Description": "Removes the Home from Explorer and sets This PC as default.",
|
||||
"Content": "File Explorer Home and Gallery - Disable",
|
||||
"Description": "Removes the Home and Gallery from Explorer and sets This PC as default.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"
|
||||
Remove-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\"
|
||||
Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" -Name LaunchTo -Value 1
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
New-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\"
|
||||
Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" -Name LaunchTo -Value 0
|
||||
"
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Classes\\CLSID\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}",
|
||||
"Name": "System.IsPinnedToNameSpaceTree",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced",
|
||||
"Name": "LaunchTo",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/removehome"
|
||||
},
|
||||
"WPFTweaksRemoveGallery": {
|
||||
"Content": "File Explorer Gallery - Disable",
|
||||
"Description": "Removes the Gallery from Explorer and sets This PC as default.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"
|
||||
Remove-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
New-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/removegallery"
|
||||
},
|
||||
"WPFTweaksDisplay": {
|
||||
"Content": "Visual Effects - Set to Best Performance",
|
||||
"Description": "Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.",
|
||||
@@ -850,8 +820,8 @@
|
||||
},
|
||||
"WPFTweaksDeBloat": {
|
||||
"Content": "Unwanted Pre-Installed Apps - Remove",
|
||||
"Description": "This will remove a bunch of Windows pre-installed applications which most people dont want on there system.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"Description": "This will remove a bunch of Windows pre-installed applications which most people dont want on their system.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"appx": [
|
||||
"Microsoft.WindowsFeedbackHub",
|
||||
@@ -887,7 +857,7 @@
|
||||
}
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/debloat"
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/debloat"
|
||||
},
|
||||
"WPFTweaksRestorePoint": {
|
||||
"Content": "Restore Point - Create",
|
||||
@@ -961,32 +931,45 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/storage"
|
||||
},
|
||||
"WPFTweaksRemoveCopilot": {
|
||||
"Content": "Microsoft Copilot - Disable",
|
||||
"Description": "Removes Copilot AppXPackages and related ai packages",
|
||||
"WPFTweaksWindowsAI": {
|
||||
"Content": "Windows AI - Disable",
|
||||
"Description": "Removes or disables all ai features and packages",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer",
|
||||
"Name": "SettingsPageVisibility",
|
||||
"Value": "hide:aicomponents",
|
||||
"Type": "String",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\WindowsNotepad",
|
||||
"Name": "DisableAIFeatures",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
],
|
||||
"InvokeScript": [
|
||||
"
|
||||
Get-AppxPackage -AllUsers *Copilot* | Remove-AppxPackage -AllUsers
|
||||
Get-AppxPackage -AllUsers Microsoft.MicrosoftOfficeHub | Remove-AppxPackage -AllUsers
|
||||
|
||||
$Appx = (Get-AppxPackage MicrosoftWindows.Client.CoreAI).PackageFullName
|
||||
$Sid = (Get-LocalUser $Env:UserName).Sid.Value
|
||||
|
||||
New-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Appx\\AppxAllUserStore\\EndOfLife\\$Sid\\$Appx\" -Force
|
||||
|
||||
Get-AppxPackage -AllUsers *Copilot* | Remove-AppxPackage -AllUsers
|
||||
Get-AppxPackage -AllUsers Microsoft.MicrosoftOfficeHub | Remove-AppxPackage -AllUsers
|
||||
Remove-AppxPackage $Appx
|
||||
|
||||
Write-Host \"Copilot Removed\"
|
||||
Set-Service -Name WSAIFabricSvc -StartupType Disabled
|
||||
Disable-WindowsOptionalFeature -FeatureName Recall -Online
|
||||
|
||||
Write-Host \"Windows AI Disabled\"
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
Write-Host \"Installing Copilot...\"
|
||||
winget install --name Copilot --source msstore --accept-package-agreements --accept-source-agreements --silent
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/removecopilot"
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/windowsai"
|
||||
},
|
||||
"WPFTweaksWPBT": {
|
||||
"Content": "Windows Platform Binary Table (WPBT) - Disable",
|
||||
@@ -1491,6 +1474,14 @@
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "5",
|
||||
"DefaultState": "true"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\GraphicsDrivers",
|
||||
"Name": "DisableOverlays",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "false"
|
||||
}
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/customize-preferences/multiplaneoverlay"
|
||||
@@ -1771,6 +1762,50 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/customize-preferences/taskview"
|
||||
},
|
||||
"WPFToggleGameMode": {
|
||||
"Content": "Game Mode",
|
||||
"Description": "If enabled, Windows prioritizes gaming performance by allocating system resources. Disable for audio/video production to prevent interference.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\GameBar",
|
||||
"Name": "AllowAutoGameMode",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "true"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\GameBar",
|
||||
"Name": "AutoGameModeEnabled",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "true"
|
||||
}
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/customize-preferences/gamemode"
|
||||
},
|
||||
"WPFToggleLongPaths": {
|
||||
"Content": "Enable Long Paths",
|
||||
"Description": "Enables support for file paths longer than 260 characters.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\FileSystem",
|
||||
"Name": "LongPathsEnabled",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "false"
|
||||
}
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/customize-preferences/longpaths"
|
||||
},
|
||||
"WPFOOSUbutton": {
|
||||
"Content": "O&O ShutUp10++ - Run",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
@@ -1788,19 +1823,19 @@
|
||||
},
|
||||
"WPFAddUltPerf": {
|
||||
"Content": "Ultimate Performance Profile - Enable",
|
||||
"category": "Performance Plans",
|
||||
"category": "Performance Plans - NOT FOR LAPTOPS",
|
||||
"panel": "2",
|
||||
"Type": "Button",
|
||||
"ButtonWidth": "300",
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/performance-plans/addultperf"
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/performance-plans---not-for-laptops/addultperf"
|
||||
},
|
||||
"WPFRemoveUltPerf": {
|
||||
"Content": "Ultimate Performance Profile - Disable",
|
||||
"category": "Performance Plans",
|
||||
"category": "Performance Plans - NOT FOR LAPTOPS",
|
||||
"panel": "2",
|
||||
"Type": "Button",
|
||||
"ButtonWidth": "300",
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/performance-plans/removeultperf"
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/performance-plans---not-for-laptops/removeultperf"
|
||||
},
|
||||
"WPFTweaksDisableExplorerAutoDiscovery": {
|
||||
"Content": "File Explorer Automatic Folder Discovery - Disable",
|
||||
|
||||
|
Before Width: | Height: | Size: 9.6 KiB |
|
Before Width: | Height: | Size: 194 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 164 KiB After Width: | Height: | Size: 139 KiB |
|
Before Width: | Height: | Size: 92 KiB |
|
After Width: | Height: | Size: 139 KiB |
|
Before Width: | Height: | Size: 228 KiB After Width: | Height: | Size: 139 KiB |
|
After Width: | Height: | Size: 139 KiB |
|
After Width: | Height: | Size: 139 KiB |
|
Before Width: | Height: | Size: 77 KiB |
|
Before Width: | Height: | Size: 14 MiB |
|
Before Width: | Height: | Size: 4.2 MiB After Width: | Height: | Size: 173 KiB |
|
After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 9.6 KiB |
|
Before Width: | Height: | Size: 196 KiB |
|
Before Width: | Height: | Size: 198 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 170 KiB |
|
Before Width: | Height: | Size: 170 KiB |
|
After Width: | Height: | Size: 149 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 7.8 KiB |
@@ -2,114 +2,152 @@
|
||||
toc: true
|
||||
---
|
||||
|
||||
# How to Contribute?
|
||||
## Contributing Code
|
||||
|
||||
## Testing
|
||||
### Before You Start
|
||||
|
||||
* Test the latest changes to Winutil by running the pre-release and reporting issues you are encountering to help us continually improve Winutil!
|
||||
- Keep each pull request focused on a single feature or fix.
|
||||
- Avoid unnecessary formatting changes or large unrelated edits.
|
||||
- Document what changed and why in your PR description.
|
||||
|
||||
#### **Run the latest pre-release**
|
||||
```
|
||||
irm https://christitus.com/windev | iex
|
||||
```
|
||||
---
|
||||
|
||||
> [!WARNING]
|
||||
> This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!
|
||||
## Basic Git Workflow
|
||||
|
||||
## Issues
|
||||
### 1. Fork the Repository
|
||||
|
||||
* If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
|
||||
Go to the ChrisTitusTech/winutil repository on GitHub and click the Fork button in the top right corner.
|
||||
|
||||
## Contribute Code
|
||||
<img width="171" height="50" alt="{650A4723-F38A-44A4-9820-D232BC87C8A0}" src="https://github.com/user-attachments/assets/a214f27c-2fee-444a-920f-d87b14f5896f" />
|
||||
|
||||
* Pull requests are now handled directly on the **MAIN branch**. This was done since we can now select specific releases to launch via releases in GitHub.
|
||||
---
|
||||
|
||||
* If you're doing code changes, then you can submit a PR to the `main` branch, but I am very selective about these.
|
||||
### 2. Clone Your Fork
|
||||
|
||||
> [!IMPORTANT]
|
||||
> Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!
|
||||
|
||||
* When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the `tweaks` section and corresponding `undo tweak`, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.
|
||||
|
||||
* By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.
|
||||
|
||||
> [!NOTE]
|
||||
> When creating a function, please include "WPF" or "Winutil" in the file name so it can be loaded into the runspace.
|
||||
|
||||
## Walk through
|
||||
|
||||
* This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
|
||||
* [Commit through WEB](https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits)
|
||||
* [Commit through GitHub Desktop](https://docs.github.com/en/desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project-in-github-desktop#about-commits)
|
||||
* [Create a Pull Request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request)
|
||||
|
||||
|
||||
### Overview
|
||||
|
||||
``` mermaid
|
||||
%%{init: {"flowchart": {"curve": "cardinal"}} }%%
|
||||
graph TD
|
||||
A[Fork Project] --> B[Clone Repository];
|
||||
B --> C[Create New Branch];
|
||||
C --> D[Make Changes];
|
||||
D --> G[Test Changes];
|
||||
G --> H{Tests Passed?};
|
||||
H -->|Yes| E[Commit Changes];
|
||||
H -->|No| J[Fix Issues];
|
||||
J --> G;
|
||||
E --> F[Push Branch];
|
||||
F --> K[Create Pull Request];
|
||||
K --> L[Fill out PR template];
|
||||
classDef default stroke:#333,stroke-width:4px,font-size:12pt;
|
||||
```bash
|
||||
git clone https://github.com/YOUR_USERNAME/winutil.git
|
||||
cd winutil
|
||||
```
|
||||
> [!NOTE]
|
||||
> This is a diagram to guide you through the process. It may vary depending on the type of change you're making.
|
||||
|
||||
### Fork the Repo
|
||||
* Fork the Winutil Repository [here](https://github.com/ChrisTitusTech/Winutil) to create a copy that will be available in your repository list.
|
||||
---
|
||||
|
||||
{{< image src="images/Fork-Button" alt="Fork Image" >}}
|
||||
### 3. Create a Branch
|
||||
|
||||
### Clone the Fork
|
||||
Never work directly on `main`.
|
||||
|
||||
> [!TIP]
|
||||
> While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in Winutil) to test your fork easily.
|
||||
Create a branch related to your change:
|
||||
|
||||
* Install GitHub Desktop if it is not already installed.
|
||||
* Log in using the same GitHub account you used to fork Winutil.
|
||||
* Choose the fork under "Your Repositories" and press "clone {repo name}"
|
||||
* Create a new branch and name it something relatable to your changes.
|
||||
```bash
|
||||
git checkout -b feature-name
|
||||
```
|
||||
|
||||
* Now you can modify Winutil to your liking using your preferred text editor.
|
||||
Example:
|
||||
|
||||
```bash
|
||||
git checkout -b add-firefox-tweak
|
||||
```
|
||||
|
||||
### Testing your changes
|
||||
---
|
||||
|
||||
* To test to see if your changes work as intended, run the following commands in a PowerShell terminal as admin:
|
||||
### 4. Edit the Code
|
||||
|
||||
* Change the directory where you are running the commands to the forked project.
|
||||
* `cd {path to the folder with the compile.ps1}`
|
||||
* Run the following command to compile and run Winutil:
|
||||
* `.\Compile.ps1 -run`
|
||||
Open the project in your preferred text editor and make your changes.
|
||||
|
||||
{{< image src="images/Compile" alt="Compile" >}}
|
||||
Keep changes small and focused.
|
||||
|
||||
* After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
|
||||
---
|
||||
|
||||
### Committing the changes
|
||||
* Before committing your changes, please discard changes made to the `Winutil.ps1` file, like the following:
|
||||
### 5. Test Your Changes
|
||||
|
||||
{{< image src="images/Discard-GHD" alt="Push Commit Image" >}}
|
||||
Open PowerShell as Administrator.
|
||||
|
||||
* Now, commit your changes once you are happy with the result.
|
||||
Go to the project folder:
|
||||
|
||||
{{< image src="images/Commit-GHD" alt="Commit Image" >}}
|
||||
```powershell
|
||||
cd path\to\winutil
|
||||
```
|
||||
|
||||
* Push the changes to upload them to your fork on github.com.
|
||||
Run:
|
||||
|
||||
{{< image src="images/Push-Commit" alt="Push Commit Image" >}}
|
||||
```powershell
|
||||
.\Compile.ps1 -Run
|
||||
```
|
||||
|
||||
### Making a PR
|
||||
* To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is no Winutil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the "/windev" build.
|
||||
* If you do not see your feature in the main "/win" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
|
||||
* Congratulations! You just submitted your first PR. Thank you so much for contributing to Winutil.
|
||||
Verify:
|
||||
|
||||
- WinUtil launches correctly
|
||||
- Your feature works
|
||||
- Nothing else breaks
|
||||
|
||||
If something fails, fix it before committing.
|
||||
|
||||
---
|
||||
|
||||
### 6. Review Your Changes
|
||||
|
||||
Check what changed:
|
||||
|
||||
```bash
|
||||
git status
|
||||
```
|
||||
|
||||
Review the diff:
|
||||
|
||||
```bash
|
||||
git diff
|
||||
```
|
||||
|
||||
Make sure you did not accidentally modify unrelated files.
|
||||
|
||||
---
|
||||
|
||||
### 7. Commit Your Changes
|
||||
|
||||
Stage files:
|
||||
|
||||
```bash
|
||||
git add .
|
||||
```
|
||||
|
||||
Commit them:
|
||||
|
||||
```bash
|
||||
git commit -m "Add feature description"
|
||||
```
|
||||
|
||||
Example:
|
||||
|
||||
```bash
|
||||
git commit -m "Add Firefox package tweak"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 8. Push Your Branch
|
||||
|
||||
```bash
|
||||
git push origin branch-name
|
||||
```
|
||||
|
||||
Example:
|
||||
|
||||
```bash
|
||||
git push origin add-firefox-tweak
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 9. Open a Pull Request
|
||||
|
||||
Go to your fork on GitHub.
|
||||
|
||||
GitHub will show a button to create a pull request.
|
||||
<img width="1009" height="71" alt="{C8C6A3CC-79D4-44FD-A54C-4C5717F12730}" src="https://github.com/user-attachments/assets/0419d193-d4e7-47c0-87cf-b986742201a0" />
|
||||
|
||||
Before submitting:
|
||||
|
||||
- Explain what changed
|
||||
- Explain why you changed it
|
||||
- Make sure unrelated files are not included
|
||||
|
||||
Once submitted, maintainers will review your PR.
|
||||
|
||||
@@ -27,3 +27,9 @@ If you run WinUtil and get the error:
|
||||
`"WinUtil is unable to run on your system, powershell execution is restricted by security policies,"`
|
||||
|
||||
this means that your PowerShell session is in **Constrained Language Mode**, which prevents WinUtil from running.
|
||||
|
||||
### Ultimate Performance Plan Not Working
|
||||
|
||||
The Ultimate Performance power plan may not work on some laptops who do not fully support this power plan.
|
||||
|
||||
In these cases, the power plan may fail to apply, This is expected behavior on unsupported hardware.
|
||||
|
||||
@@ -12,6 +12,8 @@ width: full
|
||||
|
||||
Welcome to the official documentation for Winutil, your go-to utility for optimizing and managing your Windows environment. Whether you’re an IT professional, power user, or regular user, Winutil provides a comprehensive set of tools to enhance your Windows experience.
|
||||
|
||||
{{< image src="images/Title-Screen" alt="Winutil title screen" >}}
|
||||
|
||||
## Running the latest release of Winutil
|
||||
|
||||
* You will first need to start a PowerShell terminal **as Admin**.
|
||||
|
||||
@@ -654,7 +654,7 @@ Outputs `winutil.ps1` in the root directory.
|
||||
|
||||
- [Contributing Guide](../../contributing/) - How to contribute code
|
||||
- [User Guide](../../userguide/) - End-user documentation
|
||||
- [Win11 Creator Guide](../../userguide/win11Creator/) - Building customized Windows 11 ISOs
|
||||
- [Win11 Creator Guide](../../userguide/win11creator/) - Building customized Windows 11 ISOs
|
||||
- [FAQ](../../faq/) - Common questions
|
||||
|
||||
## Additional Resources
|
||||
|
||||
@@ -5,11 +5,18 @@ description: ""
|
||||
|
||||
```powershell {filename="functions/private/Invoke-WinUtilInstallPSProfile.ps1",linenos=inline,linenostart=1}
|
||||
function Invoke-WinUtilInstallPSProfile {
|
||||
|
||||
if (Test-Path $Profile) {
|
||||
Rename-Item $Profile -NewName ($Profile + '.bak')
|
||||
if (-not (Get-Command wt)) {
|
||||
Write-Host "Windows Terminal not found installing..."
|
||||
Install-WinUtilWinget
|
||||
winget install Microsoft.WindowsTerminal --source winget --silent
|
||||
}
|
||||
|
||||
Start-Process pwsh -ArgumentList '-Command "irm https://github.com/ChrisTitusTech/powershell-profile/raw/main/setup.ps1 | iex"'
|
||||
if (-not (Get-Command pwsh)) {
|
||||
Write-Host "Powershell 7 not found installing..."
|
||||
Install-WinUtilWinget
|
||||
winget install Microsoft.PowerShell --source winget --silent
|
||||
}
|
||||
|
||||
wt new-tab pwsh -NoExit -Command "irm https://github.com/ChrisTitusTech/powershell-profile/raw/main/setup.ps1 | iex"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -5,12 +5,11 @@ description: ""
|
||||
|
||||
```powershell {filename="functions/private/Invoke-WinUtilUninstallPSProfile.ps1",linenos=inline,linenostart=1}
|
||||
function Invoke-WinUtilUninstallPSProfile {
|
||||
if (Test-Path ($Profile + '.bak')) {
|
||||
Remove-Item $Profile
|
||||
Rename-Item ($Profile + '.bak') -NewName $Profile
|
||||
}
|
||||
else {
|
||||
Remove-Item $Profile
|
||||
|
||||
if (Test-Path ($Profile + ".bak")) {
|
||||
Move-Item -Path ($Profile + ".bak") -Destination $Profile
|
||||
} else {
|
||||
Remove-Item -Path $Profile
|
||||
}
|
||||
|
||||
Write-Host "Successfully uninstalled CTT PowerShell Profile." -ForegroundColor Green
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "System Tray Battery Percentage"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1285}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1268}
|
||||
"WPFToggleBatteryPercentage": {
|
||||
"Content": "System Tray Battery Percentage",
|
||||
"Description": "If enabled, Shows numeric battery percentage next to the battery icon in the system tray.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Start Menu Bing Search"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1612}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1603}
|
||||
"WPFToggleBingSearch": {
|
||||
"Content": "Start Menu Bing Search",
|
||||
"Description": "If enabled, Bing web search results will be included in your Start Menu search.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Dark Theme for Windows"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1303}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1286}
|
||||
"WPFToggleDarkMode": {
|
||||
"Content": "Dark Theme for Windows",
|
||||
"Description": "Enable/Disable Dark Mode.",
|
||||
@@ -50,4 +50,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "BSoD Verbose Mode"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1259}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1242}
|
||||
"WPFToggleDetailedBSoD": {
|
||||
"Content": "BSoD Verbose Mode",
|
||||
"Description": "If enabled, you will see a detailed Blue Screen of Death (BSOD) with more information.",
|
||||
@@ -34,4 +34,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Cross-Device Resume"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1241}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1224}
|
||||
"WPFToggleDisableCrossDeviceResume": {
|
||||
"Content": "Cross-Device Resume",
|
||||
"Description": "This tweak controls the Resume function in Windows 11 24H2 and later, which allows you to resume an activity from a mobile device and vice-versa.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
---
|
||||
title: "Game Mode"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1765}
|
||||
"WPFToggleGameMode": {
|
||||
"Content": "Game Mode",
|
||||
"Description": "If enabled, Windows prioritizes gaming performance by allocating system resources. Disable for audio/video production to prevent interference.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\GameBar",
|
||||
"Name": "AllowAutoGameMode",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "true"
|
||||
},
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\GameBar",
|
||||
"Name": "AutoGameModeEnabled",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "true"
|
||||
}
|
||||
],
|
||||
```
|
||||
|
||||
## 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://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
@@ -3,7 +3,7 @@ title: "File Explorer Hidden Files"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1373}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1356}
|
||||
"WPFToggleHiddenFiles": {
|
||||
"Content": "File Explorer Hidden Files",
|
||||
"Description": "If enabled, Hidden Files will be shown.",
|
||||
@@ -36,4 +36,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Settings Home Page"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1594}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1585}
|
||||
"WPFToggleHideSettingsHome": {
|
||||
"Content": "Settings Home Page",
|
||||
"Description": "Enable or disable the Home Page in the Windows Settings app.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Logon Screen Acrylic Blur"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1630}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1621}
|
||||
"WPFToggleLoginBlur": {
|
||||
"Content": "Logon Screen Acrylic Blur",
|
||||
"Description": "If disabled, the acrylic blur effect will be removed on the Windows 10/11 login screen background.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
---
|
||||
title: "Enable Long Paths"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1791}
|
||||
"WPFToggleLongPaths": {
|
||||
"Content": "Enable Long Paths",
|
||||
"Description": "Enables support for file paths longer than 260 characters.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\FileSystem",
|
||||
"Name": "LongPathsEnabled",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "false"
|
||||
}
|
||||
],
|
||||
```
|
||||
|
||||
## 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://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
@@ -3,7 +3,7 @@ title: "Mouse Acceleration"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1498}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1489}
|
||||
"WPFToggleMouseAcceleration": {
|
||||
"Content": "Mouse Acceleration",
|
||||
"Description": "If enabled, the Cursor movement is affected by the speed of your physical mouse movements.",
|
||||
@@ -42,4 +42,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Multiplane Overlay"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1480}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1463}
|
||||
"WPFToggleMultiplaneOverlay": {
|
||||
"Content": "Multiplane Overlay",
|
||||
"Description": "Enable or disable the Multiplane Overlay, which can sometimes cause issues with graphics cards.",
|
||||
@@ -18,6 +18,14 @@ description: ""
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "5",
|
||||
"DefaultState": "true"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\GraphicsDrivers",
|
||||
"Name": "DisableOverlays",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "false"
|
||||
}
|
||||
],
|
||||
```
|
||||
@@ -26,4 +34,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Microsoft Outlook New Version"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1419}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1402}
|
||||
"WPFToggleNewOutlook": {
|
||||
"Content": "Microsoft Outlook New Version",
|
||||
"Description": "If disabled, it removes the new Outlook toggle, disables the new Outlook migration, and ensures the classic Outlook application is used.",
|
||||
@@ -50,4 +50,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Num Lock on Startup"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1532}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1523}
|
||||
"WPFToggleNumLock": {
|
||||
"Content": "Num Lock on Startup",
|
||||
"Description": "Toggle the Num Lock key state when your computer starts.",
|
||||
@@ -34,4 +34,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "S3 Sleep"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1576}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1567}
|
||||
"WPFToggleS3Sleep": {
|
||||
"Content": "S3 Sleep",
|
||||
"Description": "Toggles between Modern Standby and S3 Sleep.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -8,4 +8,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "File Explorer File Extensions"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1345}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1328}
|
||||
"WPFToggleShowExt": {
|
||||
"Content": "File Explorer File Extensions",
|
||||
"Description": "If enabled, File extensions (e.g., .txt, .jpg) are visible.",
|
||||
@@ -36,4 +36,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "S0 Sleep Network Connectivity"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1558}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1549}
|
||||
"WPFToggleStandbyFix": {
|
||||
"Content": "S0 Sleep Network Connectivity",
|
||||
"Description": "Enable or disable network connectivity during S0 Sleep.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Start Menu Recommendations"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1648}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1639}
|
||||
"WPFToggleStartMenuRecommendations": {
|
||||
"Content": "Start Menu Recommendations",
|
||||
"Description": "If disabled, then you will not see recommendations in the Start Menu. WARNING: This will also disable Windows Spotlight on your Lock Screen as a side effect.",
|
||||
@@ -52,4 +52,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Sticky Keys"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1692}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1683}
|
||||
"WPFToggleStickyKeys": {
|
||||
"Content": "Sticky Keys",
|
||||
"Description": "If enabled, Sticky Keys is activated. Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Taskbar Task View Icon"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1756}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1747}
|
||||
"WPFToggleTaskView": {
|
||||
"Content": "Taskbar Task View Icon",
|
||||
"Description": "If enabled, Task View Button in Taskbar will be shown.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Taskbar Centered Icons"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1710}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1701}
|
||||
"WPFToggleTaskbarAlignment": {
|
||||
"Content": "Taskbar Centered Icons",
|
||||
"Description": "[Windows 11] If enabled, the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.",
|
||||
@@ -36,4 +36,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Taskbar Search Icon"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1738}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1729}
|
||||
"WPFToggleTaskbarSearch": {
|
||||
"Content": "Taskbar Search Icon",
|
||||
"Description": "If enabled, Search Button will be on the Taskbar.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Logon Verbose Mode"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1401}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1384}
|
||||
"WPFToggleVerboseLogon": {
|
||||
"Content": "Logon Verbose Mode",
|
||||
"Description": "Show detailed messages during the login process for troubleshooting and diagnostics.",
|
||||
@@ -26,4 +26,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -38,4 +38,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "ConsumerFeatures - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=489}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=459}
|
||||
"WPFTweaksConsumerFeatures": {
|
||||
"Content": "ConsumerFeatures - Disable",
|
||||
"Description": "Windows will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link).",
|
||||
@@ -24,4 +24,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,11 +3,11 @@ title: "Unwanted Pre-Installed Apps - Remove"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=851}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=821}
|
||||
"WPFTweaksDeBloat": {
|
||||
"Content": "Unwanted Pre-Installed Apps - Remove",
|
||||
"Description": "This will remove a bunch of Windows pre-installed applications which most people dont want on there system.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"Description": "This will remove a bunch of Windows pre-installed applications which most people dont want on their system.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"appx": [
|
||||
"Microsoft.WindowsFeedbackHub",
|
||||
@@ -3,7 +3,7 @@ title: "Temporary Files - Remove"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1136}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1119}
|
||||
"WPFTweaksDeleteTempFiles": {
|
||||
"Content": "Temporary Files - Remove",
|
||||
"Description": "Erases TEMP Folders.",
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
---
|
||||
title: "BitLocker - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=610}
|
||||
"WPFTweaksDisableBitLocker": {
|
||||
"Content": "BitLocker - Disable",
|
||||
"Description": "Disables BitLocker.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"Disable-BitLocker -MountPoint $Env:SystemDrive"
|
||||
],
|
||||
"UndoScript": [
|
||||
"Enable-BitLocker -MountPoint $Env:SystemDrive"
|
||||
],
|
||||
```
|
||||
@@ -3,7 +3,7 @@ title: "File Explorer Automatic Folder Discovery - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1805}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1840}
|
||||
"WPFTweaksDisableExplorerAutoDiscovery": {
|
||||
"Content": "File Explorer Automatic Folder Discovery - Disable",
|
||||
"Description": "Windows Explorer automatically tries to guess the type of the folder based on its contents, slowing down the browsing experience. WARNING! Will disable File Explorer grouping.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Disk Cleanup - Run"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1123}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1106}
|
||||
"WPFTweaksDiskCleanup": {
|
||||
"Content": "Disk Cleanup - Run",
|
||||
"Description": "Runs Disk Cleanup on Drive C: and removes old Windows Updates.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "End Task With Right Click - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=919}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=889}
|
||||
"WPFTweaksEndTaskOnTaskbar": {
|
||||
"Content": "End Task With Right Click - Enable",
|
||||
"Description": "Enables option to end task when right clicking a program in the taskbar.",
|
||||
@@ -24,4 +24,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -37,4 +37,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -45,4 +45,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "PowerShell 7 Telemetry - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=935}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=905}
|
||||
"WPFTweaksPowershell7Tele": {
|
||||
"Content": "PowerShell 7 Telemetry - Disable",
|
||||
"Description": "Creates an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell PowerShell 7 to not send Telemetry Data.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Restore Point - Create"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=892}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=862}
|
||||
"WPFTweaksRestorePoint": {
|
||||
"Content": "Restore Point - Create",
|
||||
"Description": "Creates a restore point at runtime in case a revert is needed from WinUtil modifications.",
|
||||
@@ -35,4 +35,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -6,7 +6,7 @@ description: ""
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=175}
|
||||
"WPFTweaksServices": {
|
||||
"Content": "Services - Set 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.",
|
||||
"Description": "Sets some services to Manual startup and adjusts the SvcHostSplitThresholdInKB registry value to better match system memory, which can significantly reduce the number of svchost.exe processes.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"service": [
|
||||
@@ -25,16 +25,6 @@ description: ""
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Automatic"
|
||||
},
|
||||
{
|
||||
"Name": "RemoteAccess",
|
||||
"StartupType": "Disabled",
|
||||
"OriginalType": "Disabled"
|
||||
},
|
||||
{
|
||||
"Name": "RemoteRegistry",
|
||||
"StartupType": "Disabled",
|
||||
"OriginalType": "Disabled"
|
||||
},
|
||||
{
|
||||
"Name": "StorSvc",
|
||||
"StartupType": "Manual",
|
||||
@@ -44,26 +34,6 @@ description: ""
|
||||
"Name": "SharedAccess",
|
||||
"StartupType": "Disabled",
|
||||
"OriginalType": "Automatic"
|
||||
},
|
||||
{
|
||||
"Name": "TermService",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Manual"
|
||||
},
|
||||
{
|
||||
"Name": "TroubleshootingSvc",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Manual"
|
||||
},
|
||||
{
|
||||
"Name": "seclogon",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Manual"
|
||||
},
|
||||
{
|
||||
"Name": "ssh-agent",
|
||||
"StartupType": "Disabled",
|
||||
"OriginalType": "Disabled"
|
||||
}
|
||||
],
|
||||
"InvokeScript": [
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Telemetry - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=505}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=475}
|
||||
"WPFTweaksTelemetry": {
|
||||
"Content": "Telemetry - Disable",
|
||||
"Description": "Disables Microsoft Telemetry.",
|
||||
@@ -127,4 +127,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Windows Platform Binary Table (WPBT) - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=991}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=974}
|
||||
"WPFTweaksWPBT": {
|
||||
"Content": "Windows Platform Binary Table (WPBT) - Disable",
|
||||
"Description": "If enabled, WPBT allows your computer vendor to execute programs at boot time, such as anti-theft software, software drivers, as well as force install software without user consent. Poses potential security risk.",
|
||||
@@ -24,4 +24,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
---
|
||||
title: "Ultimate Performance Profile - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```powershell {filename="functions/public/Invoke-WPFUltimatePerformance.ps1",linenos=inline,linenostart=1}
|
||||
function Invoke-WPFUltimatePerformance {
|
||||
param(
|
||||
[switch]$Do
|
||||
)
|
||||
|
||||
if ($Do) {
|
||||
if (-not (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan")) {
|
||||
if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
|
||||
powercfg /restoredefaultschemes
|
||||
if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
|
||||
Write-Host "Failed to restore High Performance plan. Default plans do not include high performance. If you are on a laptop, do NOT use High Performance or Ultimate Performance plans." -ForegroundColor Red
|
||||
return
|
||||
}
|
||||
}
|
||||
$guid = ((powercfg /duplicatescheme 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c) -split '\s+')[3]
|
||||
powercfg /changename $guid "ChrisTitus - Ultimate Power Plan"
|
||||
powercfg /setacvalueindex $guid SUB_PROCESSOR IDLEDISABLE 1
|
||||
powercfg /setacvalueindex $guid 54533251-82be-4824-96c1-47b60b740d00 4d2b0152-7d5c-498b-88e2-34345392a2c5 1
|
||||
powercfg /setacvalueindex $guid SUB_PROCESSOR PROCTHROTTLEMIN 100
|
||||
powercfg /setactive $guid
|
||||
Write-Host "ChrisTitus - Ultimate Power Plan plan installed and activated." -ForegroundColor Green
|
||||
} else {
|
||||
Write-Host "ChrisTitus - Ultimate Power Plan plan is already installed." -ForegroundColor Red
|
||||
return
|
||||
}
|
||||
} else {
|
||||
if (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan") {
|
||||
powercfg /setactive SCHEME_BALANCED
|
||||
powercfg /delete ((powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan").ToString().Split()[3])
|
||||
Write-Host "ChrisTitus - Ultimate Power Plan plan was removed." -ForegroundColor Red
|
||||
} else {
|
||||
Write-Host "ChrisTitus - Ultimate Power Plan plan is not installed." -ForegroundColor Yellow
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
@@ -1,42 +0,0 @@
|
||||
---
|
||||
title: "Ultimate Performance Profile - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```powershell {filename="functions/public/Invoke-WPFUltimatePerformance.ps1",linenos=inline,linenostart=1}
|
||||
function Invoke-WPFUltimatePerformance {
|
||||
param(
|
||||
[switch]$Do
|
||||
)
|
||||
|
||||
if ($Do) {
|
||||
if (-not (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan")) {
|
||||
if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
|
||||
powercfg /restoredefaultschemes
|
||||
if (-not (powercfg /list | Select-String "8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")) {
|
||||
Write-Host "Failed to restore High Performance plan. Default plans do not include high performance. If you are on a laptop, do NOT use High Performance or Ultimate Performance plans." -ForegroundColor Red
|
||||
return
|
||||
}
|
||||
}
|
||||
$guid = ((powercfg /duplicatescheme 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c) -split '\s+')[3]
|
||||
powercfg /changename $guid "ChrisTitus - Ultimate Power Plan"
|
||||
powercfg /setacvalueindex $guid SUB_PROCESSOR IDLEDISABLE 1
|
||||
powercfg /setacvalueindex $guid 54533251-82be-4824-96c1-47b60b740d00 4d2b0152-7d5c-498b-88e2-34345392a2c5 1
|
||||
powercfg /setacvalueindex $guid SUB_PROCESSOR PROCTHROTTLEMIN 100
|
||||
powercfg /setactive $guid
|
||||
Write-Host "ChrisTitus - Ultimate Power Plan plan installed and activated." -ForegroundColor Green
|
||||
} else {
|
||||
Write-Host "ChrisTitus - Ultimate Power Plan plan is already installed." -ForegroundColor Red
|
||||
return
|
||||
}
|
||||
} else {
|
||||
if (powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan") {
|
||||
powercfg /setactive SCHEME_BALANCED
|
||||
powercfg /delete ((powercfg /list | Select-String "ChrisTitus - Ultimate Power Plan").ToString().Split()[3])
|
||||
Write-Host "ChrisTitus - Ultimate Power Plan plan was removed." -ForegroundColor Red
|
||||
} else {
|
||||
Write-Host "ChrisTitus - Ultimate Power Plan plan is not installed." -ForegroundColor Yellow
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
@@ -3,7 +3,7 @@ title: "Adobe URL Block List - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1071}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1054}
|
||||
"WPFTweaksBlockAdobeNet": {
|
||||
"Content": "Adobe URL Block List - Enable",
|
||||
"Description": "Reduces user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Brave Browser - Debloat"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=245}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=215}
|
||||
"WPFTweaksBraveDebloat": {
|
||||
"Content": "Brave Browser - Debloat",
|
||||
"Description": "Disables various annoyances like Brave Rewards, Leo AI, Crypto Wallet and VPN.",
|
||||
@@ -101,4 +101,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Background Apps - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1209}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1192}
|
||||
"WPFTweaksDisableBGapps": {
|
||||
"Content": "Background Apps - Disable",
|
||||
"Description": "Disables all Microsoft Store apps from running in the background, which has to be done individually since Windows 11.",
|
||||
@@ -24,4 +24,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Fullscreen Optimizations - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1225}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1208}
|
||||
"WPFTweaksDisableFSO": {
|
||||
"Content": "Fullscreen Optimizations - Disable",
|
||||
"Description": "Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen.",
|
||||
@@ -24,4 +24,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "IPv6 - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1187}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1170}
|
||||
"WPFTweaksDisableIPv6": {
|
||||
"Content": "IPv6 - Disable",
|
||||
"Description": "Disables IPv6.",
|
||||
@@ -30,4 +30,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "System Tray Notifications & Calendar - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1048}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1031}
|
||||
"WPFTweaksDisableNotifications": {
|
||||
"Content": "System Tray Notifications & Calendar - Disable",
|
||||
"Description": "Disables all Notifications INCLUDING Calendar.",
|
||||
@@ -31,4 +31,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "RDP Unsigned File Warnings - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=338}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=308}
|
||||
"WPFTweaksDisableWarningForUnsignedRdp": {
|
||||
"Content": "RDP Unsigned File Warnings - Disable",
|
||||
"Description": "Disables warnings shown when launching unsigned RDP files introduced with the latest Windows 10 and 11 updates.",
|
||||
@@ -31,4 +31,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Visual Effects - Set to Best Performance"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=729}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=699}
|
||||
"WPFTweaksDisplay": {
|
||||
"Content": "Visual Effects - Set to Best Performance",
|
||||
"Description": "Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.",
|
||||
@@ -107,4 +107,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Microsoft Edge - Debloat"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=361}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=331}
|
||||
"WPFTweaksEdgeDebloat": {
|
||||
"Content": "Microsoft Edge - Debloat",
|
||||
"Description": "Disables various telemetry options, popups, and other annoyances in Edge.",
|
||||
@@ -136,4 +136,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "IPv6 - Set IPv4 as Preferred"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1149}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1132}
|
||||
"WPFTweaksIPv46": {
|
||||
"Content": "IPv6 - Set IPv4 as Preferred",
|
||||
"Description": "Setting the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.",
|
||||
@@ -24,4 +24,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Razer Software Auto-Install - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1007}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=990}
|
||||
"WPFTweaksRazerBlock": {
|
||||
"Content": "Razer Software Auto-Install - Disable",
|
||||
"Description": "Blocks ALL Razer Software installations. The hardware works fine without any software.",
|
||||
@@ -49,4 +49,4 @@ description: ""
|
||||
|
||||
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).
|
||||
You can find information about the registry on [Wikipedia](https://en.wikipedia.org/wiki/Windows_Registry) and [Microsoft's Website](https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry).
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
---
|
||||
title: "Microsoft Copilot - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=964}
|
||||
"WPFTweaksRemoveCopilot": {
|
||||
"Content": "Microsoft Copilot - Disable",
|
||||
"Description": "Removes Copilot AppXPackages and related ai packages",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"
|
||||
Get-AppxPackage -AllUsers *Copilot* | Remove-AppxPackage -AllUsers
|
||||
Get-AppxPackage -AllUsers Microsoft.MicrosoftOfficeHub | Remove-AppxPackage -AllUsers
|
||||
|
||||
$Appx = (Get-AppxPackage MicrosoftWindows.Client.CoreAI).PackageFullName
|
||||
$Sid = (Get-LocalUser $Env:UserName).Sid.Value
|
||||
|
||||
New-Item \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Appx\\AppxAllUserStore\\EndOfLife\\$Sid\\$Appx\" -Force
|
||||
Remove-AppxPackage $Appx
|
||||
|
||||
Write-Host \"Copilot Removed\"
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
Write-Host \"Installing Copilot...\"
|
||||
winget install --name Copilot --source msstore --accept-package-agreements --accept-source-agreements --silent
|
||||
"
|
||||
],
|
||||
```
|
||||