Compare commits
74 Commits
d8193fd8ac
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| e83033a122 | |||
| 5832f0df81 | |||
| 26f3284919 | |||
| 1f8455e90d | |||
| 62c43e6e82 | |||
| a1949ed917 | |||
| 74a3ddad1c | |||
| d7b0389a93 | |||
| 23f197b644 | |||
| b2eeda9eb2 | |||
| ceec8aeb53 | |||
| 6b125346cd | |||
| 5f8e493536 | |||
| 4db0248911 | |||
| 2bee0d6f2c | |||
| 58df36841f | |||
| 5ba840f87f | |||
| fe2dd829b8 | |||
| 5cdb6c6e22 | |||
| 4bda00ec2d | |||
| 462cc40a6a | |||
| 0e061692ba | |||
| ffec7a8a8f | |||
| 6e4b1d26c6 | |||
| 32cec06ed6 | |||
| a24193ce18 | |||
| 8f919be14b | |||
| ad5d103df9 | |||
| b5160d9e24 | |||
| 614eb949db | |||
| d1edd5b2ba | |||
| 333937d2fa | |||
| 3ca87648b4 | |||
| 4894a545f0 | |||
| 9f55bced01 | |||
| 56e0541113 | |||
| 7607b92e21 | |||
| 153900a77b | |||
| 691224f465 | |||
| 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 |
@@ -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
|
||||
---
|
||||
|
||||
## Basic Git Workflow
|
||||
|
||||
### 1. Fork the Repository
|
||||
|
||||
Go to the ChrisTitusTech/winutil repository on GitHub and click the Fork button in the top right corner.
|
||||
|
||||
<img width="171" height="50" alt="{650A4723-F38A-44A4-9820-D232BC87C8A0}" src="https://github.com/user-attachments/assets/a214f27c-2fee-444a-920f-d87b14f5896f" />
|
||||
|
||||
---
|
||||
|
||||
### 2. Clone Your Fork
|
||||
|
||||
```powershell
|
||||
git clone https://github.com/YOUR_USERNAME/winutil.git
|
||||
cd winutil
|
||||
```
|
||||
|
||||
!!! bug "Keep in mind"
|
||||
---
|
||||
|
||||
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!
|
||||
### 3. Create a Branch
|
||||
|
||||
## Issues
|
||||
Never work directly on `main`.
|
||||
|
||||
* 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.
|
||||
Create a branch related to your change:
|
||||
|
||||
## 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.
|
||||
|
||||
* 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 checkout -b feature-name
|
||||
```
|
||||
!!! info
|
||||
|
||||
This is a diagram to guide you through the process. It may vary depending on the type of change you're making.
|
||||
Example:
|
||||
|
||||
### 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.
|
||||
```powershell
|
||||
git checkout -b add-firefox-tweak
|
||||
```
|
||||
|
||||

|
||||
---
|
||||
|
||||

|
||||
### 4. Edit the Code
|
||||
|
||||
### Clone the Fork
|
||||
!!! tip
|
||||
Open the project in your preferred text editor and make your changes.
|
||||
|
||||
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.
|
||||
Keep changes small and focused.
|
||||
|
||||
* 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.
|
||||
---
|
||||
|
||||
* Now you can modify WinUtil to your liking using your preferred text editor.
|
||||
### 5. Test Your Changes
|
||||
|
||||
Open Pwsh (Not Powershell) as Administrator.
|
||||
|
||||
### Testing your changes
|
||||
Go to the project folder:
|
||||
|
||||
* To test to see if your changes work as intended, run the following commands in a PowerShell terminal as admin:
|
||||
```powershell
|
||||
cd path\to\winutil
|
||||
```
|
||||
|
||||
* 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`
|
||||
Run:
|
||||
|
||||

|
||||
```powershell
|
||||
.\Compile.ps1 -Run
|
||||
```
|
||||
|
||||
* 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.
|
||||
Verify:
|
||||
|
||||
### Committing the changes
|
||||
* Before committing your changes, please discard changes made to the `winutil.ps1` file, like the following:
|
||||
- WinUtil launches correctly
|
||||
- Your feature works
|
||||
- Nothing else breaks
|
||||
|
||||

|
||||
If something fails, fix it before committing.
|
||||
|
||||
* Now, commit your changes once you are happy with the result.
|
||||
---
|
||||
|
||||

|
||||
### 6. Review Your Changes
|
||||
|
||||
* Push the changes to upload them to your fork on github.com.
|
||||
Check what changed:
|
||||
|
||||

|
||||
```powershell
|
||||
git status
|
||||
```
|
||||
|
||||
### 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.
|
||||
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.
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
# Chris Titus Tech's Windows Utility
|
||||
|
||||
[](https://github.com/ChrisTitusTech/winutil/releases/latest)
|
||||

|
||||
[](https://discord.gg/RUbZUZyByQ)
|
||||
[](https://winutil.christitus.com/)
|
||||
|
||||
Questa utility è una raccolta di attività Windows che eseguo personalmente su ogni sistema che utilizzo. È progettata per snellire le *installazioni*, rimuovere i componenti superflui tramite *ottimizzazioni*, risolvere problemi tramite la *configurazione*, e riparare *aggiornamenti* di Windows. Sono estremamente selettivo riguardo ai contributi per mantenere questo progetto pulito ed efficiente.
|
||||
|
||||

|
||||
|
||||
## 💡 Come usarlo
|
||||
|
||||
Winutil deve essere eseguito con privilegi di amministratore, poiché apporta modifiche all'intero sistema. Per farlo, avvia PowerShell come amministratore. Ecco alcuni modi per procedere:
|
||||
|
||||
1. **Metodo del menu di Start:**
|
||||
- Fai clic con il tasto destro sul menu Start.
|
||||
- Scegli "Windows PowerShell (esegui come Amministratore)" (per Windows 10) o "Terminale (esegui come Amministratore)" (per Windows 11).
|
||||
|
||||
2. **Metodo tramite ricerca:**
|
||||
- Premi il tasto Windows.
|
||||
- Digita "PowerShell" o "Terminal" (per Windows 11).
|
||||
- Premi `Ctrl + Shift + Invio` oppure fai clic con il tasto destro e seleziona "Esegui come amministratore" per avviarlo con privilegi elevati.
|
||||
|
||||
### Comando di avvio
|
||||
|
||||
#### Branch stabile (Consigliato)
|
||||
|
||||
```ps1
|
||||
irm "https://christitus.com/win" | iex
|
||||
```
|
||||
#### Branch Sviluppatore
|
||||
|
||||
```ps1
|
||||
irm "https://christitus.com/windev" | iex
|
||||
```
|
||||
|
||||
### Automazione
|
||||
|
||||
Winutil supporta anche preset predefiniti che applicano automaticamente configurazioni comuni:
|
||||
|
||||
- `Standard`
|
||||
- `Minimal`
|
||||
- `Advanced`
|
||||
|
||||
Esempio:
|
||||
|
||||
```powershell
|
||||
& ([ScriptBlock]::Create((irm "https://christitus.com/win"))) -Preset Standard
|
||||
```
|
||||
|
||||
Per vedere esattamente cosa fa ogni preset, consulta:
|
||||
https://github.com/ChrisTitusTech/winutil/blob/main/config/preset.json
|
||||
|
||||
In caso di problemi, consulta i [Problemi noti](https://winutil.christitus.com/knownissues/) o [Apri una segnalazione](https://github.com/ChrisTitusTech/winutil/issues)
|
||||
|
||||
## 🎓 Documentazione
|
||||
|
||||
### [Documentazione ufficiale di WinUtil](https://winutil.christitus.com/)
|
||||
|
||||
### [Tutorial su YouTube](https://www.youtube.com/watch?v=6UQZ5oQg8XA)
|
||||
|
||||
### [Articolo su ChrisTitus.com](https://christitus.com/windows-tool/)
|
||||
|
||||
## 🛠️ Build & Sviluppo
|
||||
|
||||
> [!NOTE]
|
||||
> Winutil è uno script piuttosto esteso, per questo è suddiviso in più file che vengono combinati in un unico file `.ps1` tramite un compilatore personalizzato. Questo rende la manutenzione del progetto molto più semplice.
|
||||
|
||||
Ottieni una copia del codice sorgente. Puoi farlo tramite l'interfaccia di GitHub (**Code** > **Download ZIP**), oppure clonando (scaricando) la repo tramite git.
|
||||
|
||||
Se git è installato, esegui i seguenti comandi in una finestra PowerShell per clonare e accedere alla directory del progetto:
|
||||
```ps1
|
||||
git clone --depth 1 "https://github.com/ChrisTitusTech/winutil.git"
|
||||
cd winutil
|
||||
```
|
||||
|
||||
Per compilare il progetto, esegui lo script di compilazione in una finestra PowerShell (i permessi di amministratore NON sono richiesti):
|
||||
```ps1
|
||||
.\Compile.ps1
|
||||
```
|
||||
|
||||
Troverai un nuovo file chiamato `winutil.ps1`, creato dallo script `Compile.ps1`. Ora puoi eseguirlo come amministratore e apparirà una nuova finestra. Goditi la tua versione compilata di WinUtil :)
|
||||
|
||||
> [!TIP]
|
||||
> Per ulteriori informazioni sull'utilizzo di WinUtil e su come contribuire allo sviluppo, ti invitiamo a leggere le [Linee guida per i contributi](https://winutil.christitus.com/contributing/). Se non sai da dove iniziare o hai domande, puoi chiedere sul nostro [Server Discord della community](https://discord.gg/RUbZUZyByQ); i membri attivi del progetto risponderanno appena possibile.
|
||||
|
||||
## 💖 Supporto
|
||||
- Per sostenere il progetto moralmente e mentalmente, non dimenticare di lasciare una ⭐️!
|
||||
- Wrapper EXE a 10$ su https://www.cttstore.com/windows-toolbox
|
||||
|
||||
## 💖 Sponsor
|
||||
|
||||
Questi sono gli sponsor che aiutano a mantenere vivo il progetto con contributi mensili.
|
||||
|
||||
<!-- sponsors --><a href="https://github.com/dwelfusius"><img src="https://github.com/dwelfusius.png" width="60px" alt="Avatar utente: " /></a><a href="https://github.com/mews-se"><img src="https://github.com/mews-se.png" width="60px" alt="Avatar utente: Martin Stockzell" /></a><a href="https://github.com/jdiegmueller"><img src="https://github.com/jdiegmueller.png" width="60px" alt="Avatar utente: Jason A. Diegmueller" /></a><a href="https://github.com/robertsandrock"><img src="https://github.com/robertsandrock.png" width="60px" alt="Avatar utente: RMS" /></a><a href="https://github.com/paulsheets"><img src="https://github.com/paulsheets.png" width="60px" alt="Avatar utente: Paul" /></a><a href="https://github.com/djones369"><img src="https://github.com/djones369.png" width="60px" alt="Avatar utente: Dave J (WhamGeek)" /></a><a href="https://github.com/anthonymendez"><img src="https://github.com/anthonymendez.png" width="60px" alt="Avatar utente: Anthony Mendez" /></a><a href="https://github.com/FatBastard0"><img src="https://github.com/FatBastard0.png" width="60px" alt="Avatar utente: " /></a><a href="https://github.com/DursleyGuy"><img src="https://github.com/DursleyGuy.png" width="60px" alt="Avatar utente: DursleyGuy" /></a><a href="https://github.com/DwayneTheRockLobster1"><img src="https://github.com/DwayneTheRockLobster1.png" width="60px" alt="Avatar utente: " /></a><a href="https://github.com/KieraKujisawa"><img src="https://github.com/KieraKujisawa.png" width="60px" alt="Avatar utente: Kiera Meredith" /></a><a href="https://github.com/andrewpayne68"><img src="https://github.com/andrewpayne68.png" width="60px" alt="Avatar utente: Andrew P" /></a><!-- sponsors -->
|
||||
|
||||
## 🏅 Grazie a tutti i collaboratori
|
||||
Un ringraziamento speciale per aver dedicato il vostro tempo ad aiutare Winutil a crescere. Grazie mille! Continuate così 🍻.
|
||||
|
||||
[](https://github.com/ChrisTitusTech/winutil/graphs/contributors)
|
||||
|
||||
## 📊 Statistiche GitHub
|
||||
|
||||

|
||||
@@ -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" "GabiNun2" "FluffyPunk")
|
||||
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.user == 'true' && 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.user == 'true' && 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.user == 'true' && 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.user == 'true' && 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,62 +1,19 @@
|
||||
### VSCode ###
|
||||
|
||||
# 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
|
||||
|
||||
# Ignore Generated XAML Files
|
||||
xaml/inputApp.xaml
|
||||
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
|
||||
|
||||
# Libraries
|
||||
# winutil
|
||||
System.Management.Automation.dll
|
||||
Microsoft.PowerShell.ConsoleHost.dll
|
||||
|
||||
# Compressed files
|
||||
*.zip
|
||||
|
||||
### MacOS ###
|
||||
|
||||
# General
|
||||
.DS_Store
|
||||
True
|
||||
test.ps1
|
||||
winutil.exe.config
|
||||
winutil.ps1
|
||||
|
||||
# temporary excludes for docs
|
||||
.github/site/
|
||||
|
||||
binary/
|
||||
|
||||
.preprocessor_hashes.json
|
||||
# general software/os specific
|
||||
desktop.ini
|
||||
.DS_Store
|
||||
|
||||
# Hugo Files
|
||||
.vscode/
|
||||
.idea/
|
||||
|
||||
# hugo files
|
||||
docs/public/
|
||||
docs/.hugo_build.lock
|
||||
docs/resources/
|
||||
|
||||
@@ -1,144 +1,44 @@
|
||||
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
|
||||
|
||||
# Variable to sync between runspaces
|
||||
$sync = [Hashtable]::Synchronized(@{})
|
||||
$sync.configs = @{}
|
||||
|
||||
function Update-Progress {
|
||||
param (
|
||||
[Parameter(Mandatory, position=0)]
|
||||
[string]$StatusMessage,
|
||||
$script = (Get-Content -Path scripts\start.ps1) -replace '#{replaceme}', (Get-Date -Format 'yy.MM.dd')
|
||||
|
||||
[Parameter(Mandatory, position=1)]
|
||||
[ValidateRange(0,100)]
|
||||
[int]$Percent,
|
||||
$script += Get-ChildItem -Path functions -Recurse -File | Get-Content -Raw
|
||||
|
||||
[Parameter(position=2)]
|
||||
[string]$Activity = "Compiling"
|
||||
)
|
||||
Get-ChildItem config | ForEach-Object {
|
||||
$obj = Get-Content -Path $_.FullName -Raw | ConvertFrom-Json
|
||||
|
||||
Write-Progress -Activity $Activity -Status $StatusMessage -PercentComplete $Percent
|
||||
if ($_.Name -eq "applications.json") {
|
||||
$fixed = [ordered]@{}
|
||||
foreach ($p in $obj.PSObject.Properties) {
|
||||
$fixed["WPFInstall$($p.Name)"] = $p.Value
|
||||
}
|
||||
$obj = [pscustomobject]$fixed
|
||||
}
|
||||
|
||||
Update-Progress "Pre-req: Running Preprocessor..." 0
|
||||
$json = $obj | ConvertTo-Json -Depth 10
|
||||
|
||||
# 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'
|
||||
)
|
||||
|
||||
$msg = "Pre-req: Code Formatting"
|
||||
Invoke-Preprocessing -WorkingDir "$workingdir" -ExcludedFiles $excludedFiles -ProgressStatusMessage $msg
|
||||
|
||||
# Create the script in memory.
|
||||
Update-Progress "Pre-req: Allocating Memory" 0
|
||||
$script_content = [System.Collections.Generic.List[string]]::new()
|
||||
|
||||
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
|
||||
}
|
||||
$sync.configs[$_.BaseName] = $obj
|
||||
$script += "`$sync.configs.$($_.BaseName) = @'`r`n$json`r`n'@ | ConvertFrom-Json"
|
||||
}
|
||||
|
||||
# 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)
|
||||
"@
|
||||
$xaml = Get-Content -Path xaml\inputXML.xaml -Raw
|
||||
$script += "`$inputXML = @'`r`n$xaml`r`n'@"
|
||||
|
||||
$sync.configs.$($psitem.BaseName) = $json | ConvertFrom-Json
|
||||
$script_content.Add($(Write-Output "`$sync.configs.$($psitem.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
|
||||
|
||||
Update-Progress "Adding: Xaml " 90
|
||||
|
||||
# Add the XAML content to $script_content using a here-string
|
||||
$script_content.Add(@"
|
||||
`$inputXML = @'
|
||||
$xaml
|
||||
'@
|
||||
"@)
|
||||
|
||||
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
|
||||
'@
|
||||
"@)
|
||||
|
||||
$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
|
||||
$autounattendXml = Get-Content -Path tools\autounattend.xml -Raw
|
||||
$script += "`$WinUtilAutounattendXml = @'`r`n$autounattendXml`r`n'@"
|
||||
|
||||
$script += Get-Content -Path scripts\main.ps1 -Raw
|
||||
|
||||
Set-Content -Path winutil.ps1 -Value $script
|
||||
|
||||
if ($Run) {
|
||||
.\Winutil.ps1
|
||||
}
|
||||
|
||||
@@ -1,88 +1,88 @@
|
||||
# Chris Titus Tech's Windows Utility
|
||||
|
||||
[](https://github.com/ChrisTitusTech/winutil/releases/latest)
|
||||

|
||||
[](https://discord.gg/RUbZUZyByQ)
|
||||
[](https://winutil.christitus.com/)
|
||||

|
||||
[](https://discord.gg/RUbZUZyByQ)
|
||||
|
||||
This utility is a compilation of Windows tasks I perform on each Windows system I use. It is meant to streamline *installs*, debloat with *tweaks*, troubleshoot with *config*, and fix Windows *updates*. I am extremely picky about any contributions to keep this project clean and efficient.
|
||||
A curated compilation of Windows system tasks streamline **installs**, debloat with **tweaks**, troubleshoot with **config**, and configure **Windows updates**. Run it fresh on every new Windows install.
|
||||
|
||||

|
||||

|
||||
|
||||
## 💡 Usage
|
||||
---
|
||||
|
||||
Winutil must be run in Admin mode because it performs system-wide tweaks. To achieve this, run PowerShell as an administrator. Here are a few ways to do it:
|
||||
## Quick Start
|
||||
|
||||
1. **Start menu Method:**
|
||||
- Right-click on the start menu.
|
||||
- Choose "Windows PowerShell (Admin)" (for Windows 10) or "Terminal (Admin)" (for Windows 11).
|
||||
> **WinUtil must be run as Administrator** Because it performs system-wide changes.
|
||||
|
||||
2. **Search and Launch Method:**
|
||||
- Press the Windows key.
|
||||
- Type "PowerShell" or "Terminal" (for Windows 11).
|
||||
- Press `Ctrl + Shift + Enter` or Right-click and choose "Run as administrator" to launch it with administrator privileges.
|
||||
|
||||
### Launch Command
|
||||
|
||||
#### Stable Branch (Recommended)
|
||||
Open PowerShell or Terminal as admin, then run:
|
||||
|
||||
**Stable Branch (recommended)**
|
||||
```ps1
|
||||
irm "https://christitus.com/win" | iex
|
||||
```
|
||||
#### Dev Branch
|
||||
|
||||
```ps1
|
||||
irm "https://christitus.com/windev" | iex
|
||||
irm https://christitus.com/win | iex
|
||||
```
|
||||
|
||||
If you have Issues, refer to [Known Issues](https://winutil.christitus.com/knownissues/) or [Create Issue](https://github.com/ChrisTitusTech/winutil/issues)
|
||||
|
||||
## 🎓 Documentation
|
||||
|
||||
### [WinUtil Official Documentation](https://winutil.christitus.com/)
|
||||
|
||||
### [YouTube Tutorial](https://www.youtube.com/watch?v=6UQZ5oQg8XA)
|
||||
|
||||
### [ChrisTitus.com Article](https://christitus.com/windows-tool/)
|
||||
|
||||
## 🛠️ Build & Develop
|
||||
|
||||
> [!NOTE]
|
||||
> Winutil is a relatively large script, so it's split into multiple files which're combined into a single `.ps1` file using a custom compiler. This makes maintaining the project a lot easier.
|
||||
|
||||
Get a copy of the source code. This can be done using GitHub UI (**Code** > **Download ZIP**), or by cloning (downloading) the repo using git.
|
||||
|
||||
If git is installed, run the following commands under a PowerShell window to clone and move into the project's directory:
|
||||
**Development Branch**
|
||||
```ps1
|
||||
git clone --depth 1 "https://github.com/ChrisTitusTech/winutil.git"
|
||||
cd winutil
|
||||
irm https://christitus.com/windev | iex
|
||||
```
|
||||
|
||||
To build the project, run the Compile Script under a PowerShell window (admin permissions IS NOT required):
|
||||
```ps1
|
||||
.\Compile.ps1
|
||||
### How to open an admin terminal
|
||||
|
||||
- **Start menu:** Right-click Start → *Windows PowerShell (Admin)* or *Terminal (Admin)*
|
||||
- **Search:** Press the `Windows key`, and type `PowerShell` or `Terminal`, then `Ctrl + Shift + Enter`
|
||||
|
||||
---
|
||||
|
||||
## Automation / Presets
|
||||
|
||||
Apply a predefined configuration without manual selection:
|
||||
|
||||
```powershell
|
||||
& ([ScriptBlock]::Create((irm https://christitus.com/win))) -Preset Standard
|
||||
```
|
||||
|
||||
You'll see a new file named `winutil.ps1`, which was created by `Compile.ps1` script. Now you can run it as admin, and a new window will pop up. Enjoy your own compiled version of WinUtil :)
|
||||
| Preset | Description |
|
||||
|--------|-------------|
|
||||
| `Standard` | Balanced defaults for most users |
|
||||
| `Minimal` | Minimal changes to suit every user |
|
||||
| `Advanced` | Deep tweaks for power users |
|
||||
|
||||
> [!TIP]
|
||||
> For more info on using WinUtil and how to develop for it, please consider reading [the Contribution Guidelines](https://winutil.christitus.com/contributing/). If you don't know where to start, or have questions, you can ask over on our [Discord Community Server](https://discord.gg/RUbZUZyByQ), and active project members will answer when they can.
|
||||
To view exactly what each preset does, see:
|
||||
https://github.com/ChrisTitusTech/winutil/blob/main/config/preset.json
|
||||
|
||||
## 💖 Support
|
||||
- To morally and mentally support the project, make sure to leave a ⭐️!
|
||||
---
|
||||
|
||||
## Build & Develop
|
||||
|
||||
See https://github.com/ChrisTitusTech/winutil/blob/main/.github/CONTRIBUTING.md
|
||||
|
||||
---
|
||||
|
||||
## Resources
|
||||
|
||||
- [Official Documentation](https://winutil.christitus.com/)
|
||||
- [YouTube Tutorial](https://www.youtube.com/watch?v=6UQZ5oQg8XA)
|
||||
- [ChrisTitus.com Article](https://christitus.com/windows-tool/)
|
||||
- [Known Issues](https://winutil.christitus.com/knownissues/)
|
||||
- [Report an Issue](https://github.com/ChrisTitusTech/winutil/issues)
|
||||
|
||||
---
|
||||
|
||||
## Support
|
||||
|
||||
- Leave a ⭐ to show support!
|
||||
- EXE Wrapper for $10 @ https://www.cttstore.com/windows-toolbox
|
||||
|
||||
## 💖 Sponsors
|
||||
## Sponsors
|
||||
|
||||
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><!-- sponsors -->
|
||||
|
||||
## 🏅 Thanks to all Contributors
|
||||
Thanks a lot for spending your time helping Winutil grow. Thanks a lot! Keep rocking 🍻.
|
||||
---
|
||||
|
||||
## Contributors
|
||||
|
||||
[](https://github.com/ChrisTitusTech/winutil/graphs/contributors)
|
||||
|
||||
## 📊 GitHub Stats
|
||||
|
||||

|
||||
Thanks to everyone who has contributed time and effort to this project. Keep rocking 🍻
|
||||
|
||||
@@ -505,7 +505,7 @@
|
||||
},
|
||||
"heroiclauncher": {
|
||||
"category": "Games",
|
||||
"choco": "na",
|
||||
"choco": "heroic-games-launcher",
|
||||
"content": "Heroic Games Launcher",
|
||||
"description": "Heroic Games Launcher is an open-source alternative game launcher for Epic Games Store.",
|
||||
"link": "https://heroicgameslauncher.com/",
|
||||
@@ -686,7 +686,7 @@
|
||||
"category": "Multimedia Tools",
|
||||
"choco": "mediainfo",
|
||||
"content": "mpc-qt",
|
||||
"description": "MPC-HC (Media Player Classic Home Cinema) is considered by many to be the quintessential media player for the Windows desktop. MPC-QT (Media Player Classic Qute Theater) aims to reproduce most of the interface and functionality of MPC-HC while using libmpv to play video instead of DirectShow.",
|
||||
"description": "Media Player Classic Qute Theater",
|
||||
"link": "https://github.com/mpc-qt/mpc-qt",
|
||||
"winget": "mpc-qt.mpc-qt",
|
||||
"foss": true
|
||||
@@ -702,7 +702,7 @@
|
||||
},
|
||||
"modrinth": {
|
||||
"category": "Games",
|
||||
"choco": "na",
|
||||
"choco": "modrinth-app",
|
||||
"content": "Modrinth App",
|
||||
"description": "Modrinth App is a desktop application for managing Minecraft mods and modpacks.",
|
||||
"link": "https://modrinth.com/app",
|
||||
@@ -763,6 +763,15 @@
|
||||
"winget": "MullvadVPN.MullvadBrowser",
|
||||
"foss": true
|
||||
},
|
||||
"nomacs": {
|
||||
"category": "Multimedia Tools",
|
||||
"choco": "nomacs",
|
||||
"content": "nomacs",
|
||||
"description": "nomacs is a free, open source image viewer, which supports multiple platforms. You can use it for viewing all common image formats including RAW and psd images.",
|
||||
"link": "https://nomacs.org/",
|
||||
"winget": "nomacs.nomacs",
|
||||
"foss": true
|
||||
},
|
||||
"nanazip": {
|
||||
"category": "Utilities",
|
||||
"choco": "nanazip",
|
||||
@@ -945,7 +954,7 @@
|
||||
},
|
||||
"processexplorer": {
|
||||
"category": "Microsoft Tools",
|
||||
"choco": "na",
|
||||
"choco": "procexp",
|
||||
"content": "Process Explorer",
|
||||
"description": "Process Explorer is a task manager and system monitor.",
|
||||
"link": "https://learn.microsoft.com/sysinternals/downloads/process-explorer",
|
||||
@@ -979,6 +988,15 @@
|
||||
"winget": "Giorgiotani.Peazip",
|
||||
"foss": true
|
||||
},
|
||||
"playnite": {
|
||||
"category": "Games",
|
||||
"choco": "playnite",
|
||||
"content": "Playnite",
|
||||
"description": "Playnite is an open source video game library manager with one simple goal: To provide a unified interface for all of your games.",
|
||||
"link": "https://playnite.link/",
|
||||
"winget": "Playnite.Playnite",
|
||||
"foss": true
|
||||
},
|
||||
"plex": {
|
||||
"category": "Selfhosted Tools",
|
||||
"choco": "plexmediaserver",
|
||||
@@ -1159,15 +1177,6 @@
|
||||
"winget": "Rufus.Rufus",
|
||||
"foss": true
|
||||
},
|
||||
"rustdesk": {
|
||||
"category": "Pro Tools",
|
||||
"choco": "rustdesk.portable",
|
||||
"content": "RustDesk",
|
||||
"description": "RustDesk is a free and open-source remote desktop application. It provides a secure way to connect to remote machines and access desktop environments.",
|
||||
"link": "https://rustdesk.com/",
|
||||
"winget": "RustDesk.RustDesk",
|
||||
"foss": true
|
||||
},
|
||||
"rustlang": {
|
||||
"category": "Development",
|
||||
"choco": "rust",
|
||||
@@ -1413,7 +1422,7 @@
|
||||
},
|
||||
"vc2015_32": {
|
||||
"category": "Microsoft Tools",
|
||||
"choco": "na",
|
||||
"choco": "vcredist2015",
|
||||
"content": "Visual C++ 2015-2022 32-bit",
|
||||
"description": "Visual C++ 2015-2022 32-bit redistributable package installs runtime components of Visual C++ libraries required to run 32-bit applications.",
|
||||
"link": "https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads",
|
||||
@@ -1422,7 +1431,7 @@
|
||||
},
|
||||
"vc2015_64": {
|
||||
"category": "Microsoft Tools",
|
||||
"choco": "na",
|
||||
"choco": "vcredist2015",
|
||||
"content": "Visual C++ 2015-2022 64-bit",
|
||||
"description": "Visual C++ 2015-2022 64-bit redistributable package installs runtime components of Visual C++ libraries required to run 64-bit applications.",
|
||||
"link": "https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads",
|
||||
|
||||
@@ -29,9 +29,6 @@
|
||||
"feature": [
|
||||
"Microsoft-Hyper-V-All"
|
||||
],
|
||||
"InvokeScript": [
|
||||
"bcdedit /set hypervisorschedulertype classic"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/features/features/hyperv"
|
||||
},
|
||||
"WPFFeatureslegacymedia": {
|
||||
@@ -129,7 +126,7 @@
|
||||
"link": "https://winutil.christitus.com/dev/features/features/sandbox"
|
||||
},
|
||||
"WPFFeatureInstall": {
|
||||
"Content": "Run Features",
|
||||
"Content": "Install Features",
|
||||
"category": "Features",
|
||||
"panel": "1",
|
||||
"Type": "Button",
|
||||
|
||||
@@ -4,16 +4,15 @@
|
||||
"WPFTweaksConsumerFeatures",
|
||||
"WPFTweaksDisableExplorerAutoDiscovery",
|
||||
"WPFTweaksWPBT",
|
||||
"WPFTweaksDVR",
|
||||
"WPFTweaksDeBloat",
|
||||
"WPFTweaksLocation",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksTelemetry",
|
||||
"WPFTweaksDeliveryOptimization",
|
||||
"WPFTweaksDiskCleanup",
|
||||
"WPFTweaksDeleteTempFiles",
|
||||
"WPFTweaksEndTaskOnTaskbar",
|
||||
"WPFTweaksRestorePoint",
|
||||
"WPFTweaksPowershell7Tele"
|
||||
"WPFTweaksRestorePoint"
|
||||
],
|
||||
"Minimal": [
|
||||
"WPFTweaksConsumerFeatures",
|
||||
@@ -21,5 +20,24 @@
|
||||
"WPFTweaksWPBT",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksTelemetry"
|
||||
],
|
||||
"Advanced": [
|
||||
"WPFTweaksActivity",
|
||||
"WPFTweaksConsumerFeatures",
|
||||
"WPFTweaksDisableExplorerAutoDiscovery",
|
||||
"WPFTweaksWPBT",
|
||||
"WPFTweaksDeBloat",
|
||||
"WPFTweaksLocation",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksTelemetry",
|
||||
"WPFTweaksDeliveryOptimization",
|
||||
"WPFTweaksDeleteTempFiles",
|
||||
"WPFTweaksEndTaskOnTaskbar",
|
||||
"WPFTweaksDisableStoreSearch",
|
||||
"WPFTweaksRevertStartMenu",
|
||||
"WPFTweaksWidget",
|
||||
"WPFTweaksRemoveOneDrive",
|
||||
"WPFTweaksWindowsAI",
|
||||
"WPFTweaksRightClickMenu"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -75,16 +75,6 @@
|
||||
Write-Host \"Removed widgets\"
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
Write-Host \"Restoring widgets AppxPackages\"
|
||||
|
||||
Add-AppxPackage -Register \"C:\\Program Files\\WindowsApps\\Microsoft.WidgetsPlatformRuntime*\\AppxManifest.xml\" -DisableDevelopmentMode
|
||||
Add-AppxPackage -Register \"C:\\Program Files\\WindowsApps\\MicrosoftWindows.Client.WebExperience*\\AppxManifest.xml\" -DisableDevelopmentMode
|
||||
|
||||
Invoke-WinUtilExplorerUpdate -action \"restart\"
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/widget"
|
||||
},
|
||||
"WPFTweaksRevertStartMenu": {
|
||||
@@ -574,6 +564,9 @@
|
||||
# Disable (Windows Error Reporting Manager) Service
|
||||
Set-Service -Name wermgr -StartupType Disabled
|
||||
|
||||
# Disable PowerShell 7 telemetry
|
||||
[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')
|
||||
|
||||
Remove-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Siuf\\Rules\" -Name PeriodInNanoSeconds
|
||||
"
|
||||
],
|
||||
@@ -587,10 +580,29 @@
|
||||
|
||||
# Enable (Windows Error Reporting Manager) Service
|
||||
Set-Service -Name wermgr -StartupType Automatic
|
||||
|
||||
# Enable PowerShell 7 telemetry
|
||||
[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/telemetry"
|
||||
},
|
||||
"WPFTweaksDeliveryOptimization": {
|
||||
"Content": "Delivery Optimization - Disable",
|
||||
"Description": "Stops Windows from using your bandwidth to upload updates to other PCs on the internet or local network.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\DeliveryOptimization",
|
||||
"Name": "DODownloadMode",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/deliveryoptimization"
|
||||
},
|
||||
"WPFTweaksRemoveEdge": {
|
||||
"Content": "Microsoft Edge - Remove",
|
||||
"Description": "Unblocks Microsoft Edge uninstaller restrictions then uses that uninstaller to remove Microsoft Edge.",
|
||||
@@ -607,6 +619,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.",
|
||||
@@ -638,13 +663,20 @@
|
||||
|
||||
# Some of OneDrive files use explorer, and OneDrive uses FileCoAuth
|
||||
Write-Host \"Removing leftover OneDrive Files...\"
|
||||
|
||||
Stop-Process -Name FileCoAuth,Explorer
|
||||
|
||||
Remove-Item \"$Env:LocalAppData\\Microsoft\\OneDrive\" -Recurse -Force
|
||||
Remove-Item \"C:\\ProgramData\\Microsoft OneDrive\" -Recurse -Force
|
||||
|
||||
# Grant back permission to access OneDrive folder
|
||||
icacls $Env:OneDrive /grant \"Administrators:(D,DC)\"
|
||||
|
||||
if (-not (Get-ChildItem -Path $Env:OneDrive)) {
|
||||
Remove-Item -Path $Env:OneDrive
|
||||
[Environment]::SetEnvironmentVariable('OneDrive', $null, 'User')
|
||||
}
|
||||
|
||||
# Disable OneSyncSvc
|
||||
Set-Service -Name OneSyncSvc -StartupType Disabled
|
||||
"
|
||||
@@ -807,7 +839,7 @@
|
||||
},
|
||||
"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.",
|
||||
"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": [
|
||||
@@ -889,19 +921,6 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/endtaskontaskbar"
|
||||
},
|
||||
"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.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')"
|
||||
],
|
||||
"UndoScript": [
|
||||
"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/powershell7tele"
|
||||
},
|
||||
"WPFTweaksStorage": {
|
||||
"Content": "Storage Sense - Disable",
|
||||
"Description": "Storage Sense deletes temp files automatically.",
|
||||
@@ -934,7 +953,7 @@
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\WindowsNotepad",
|
||||
"Name": "DisableAIFeatures",
|
||||
"Value": 1,
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
@@ -1045,25 +1064,21 @@
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"
|
||||
$hostsUrl = \"https://github.com/Ruddernation-Designs/Adobe-URL-Block-List/raw/refs/heads/master/hosts\"
|
||||
$hosts = \"$Env:SystemRoot\\System32\\drivers\\etc\\hosts\"
|
||||
$hostsUrl = Invoke-RestMethod -Uri https://github.com/Ruddernation-Designs/Adobe-URL-Block-List/raw/refs/heads/master/hosts
|
||||
Add-Content -Path \"$Env:SystemRoot\\System32\\drivers\\etc\\hosts\" -Value $hostsUrl
|
||||
|
||||
Move-Item $hosts \"$hosts.bak\"
|
||||
Invoke-WebRequest $hostsUrl -OutFile $hosts
|
||||
ipconfig /flushdns
|
||||
|
||||
Write-Host \"Added Adobe url block list from host file\"
|
||||
Write-Host 'Added Adobe url block list from host file'
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
$hosts = \"$Env:SystemRoot\\System32\\drivers\\etc\\hosts\"
|
||||
Set-Content \"$Env:SystemRoot\\System32\\drivers\\etc\\hosts\" (
|
||||
(Get-Content \"$Env:SystemRoot\\System32\\drivers\\etc\\hosts\") -join \"`n\" -replace '(?s)#New Ver.*', ''
|
||||
)
|
||||
|
||||
Remove-Item $hosts
|
||||
Move-Item \"$hosts.bak\" $hosts
|
||||
ipconfig /flushdns
|
||||
|
||||
Write-Host \"Removed Adobe url block list from host file\"
|
||||
Write-Host 'Removed Adobe url block list from host file'
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/blockadobenet"
|
||||
@@ -1208,27 +1223,64 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/disablefso"
|
||||
},
|
||||
"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.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\CrossDeviceResume\\Configuration",
|
||||
"Name": "IsResumeAllowed",
|
||||
"Value": "1",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"DefaultState": "true"
|
||||
"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.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"
|
||||
# Previously detected folders
|
||||
$bags = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\"
|
||||
|
||||
# Folder types lookup table
|
||||
$bagMRU = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\BagMRU\"
|
||||
|
||||
# Flush Explorer view database
|
||||
Remove-Item -Path $bags -Recurse -Force
|
||||
Write-Host \"Removed $bags\"
|
||||
|
||||
Remove-Item -Path $bagMRU -Recurse -Force
|
||||
Write-Host \"Removed $bagMRU\"
|
||||
|
||||
# Every folder
|
||||
$allFolders = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell\"
|
||||
|
||||
if (!(Test-Path $allFolders)) {
|
||||
New-Item -Path $allFolders -Force
|
||||
Write-Host \"Created $allFolders\"
|
||||
}
|
||||
|
||||
# Generic view
|
||||
New-ItemProperty -Path $allFolders -Name \"FolderType\" -Value \"NotSpecified\" -PropertyType String -Force
|
||||
Write-Host \"Set FolderType to NotSpecified\"
|
||||
|
||||
Write-Host Please sign out and back in, or restart your computer to apply the changes!
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/customize-preferences/disablecrossdeviceresume"
|
||||
"UndoScript": [
|
||||
"
|
||||
# Previously detected folders
|
||||
$bags = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\"
|
||||
|
||||
# Folder types lookup table
|
||||
$bagMRU = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\BagMRU\"
|
||||
|
||||
# Flush Explorer view database
|
||||
Remove-Item -Path $bags -Recurse -Force
|
||||
Write-Host \"Removed $bags\"
|
||||
|
||||
Remove-Item -Path $bagMRU -Recurse -Force
|
||||
Write-Host \"Removed $bagMRU\"
|
||||
|
||||
Write-Host Please sign out and back in, or restart your computer to apply the changes!
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/disableexplorerautodiscovery"
|
||||
},
|
||||
"WPFToggleDetailedBSoD": {
|
||||
"Content": "BSoD Verbose Mode",
|
||||
"Description": "If enabled, you will see a detailed Blue Screen of Death (BSOD) with more information.",
|
||||
"Description": "Gives more information when you blue screen.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1254,7 +1306,7 @@
|
||||
},
|
||||
"WPFToggleBatteryPercentage": {
|
||||
"Content": "System Tray Battery Percentage",
|
||||
"Description": "If enabled, Shows numeric battery percentage next to the battery icon in the system tray.",
|
||||
"Description": "Shows numeric battery percentage next to the battery icon in the system tray.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1272,7 +1324,7 @@
|
||||
},
|
||||
"WPFToggleDarkMode": {
|
||||
"Content": "Dark Theme for Windows",
|
||||
"Description": "Enable/Disable Dark Mode.",
|
||||
"Description": "Dark Mode for the system and applications.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1314,7 +1366,7 @@
|
||||
},
|
||||
"WPFToggleShowExt": {
|
||||
"Content": "File Explorer File Extensions",
|
||||
"Description": "If enabled, File extensions (e.g., .txt, .jpg) are visible.",
|
||||
"Description": "Shows .file extensions in explorer (.exe, .png, etc)",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1342,7 +1394,7 @@
|
||||
},
|
||||
"WPFToggleHiddenFiles": {
|
||||
"Content": "File Explorer Hidden Files",
|
||||
"Description": "If enabled, Hidden Files will be shown.",
|
||||
"Description": "reveals hidden files in explorer",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1370,7 +1422,7 @@
|
||||
},
|
||||
"WPFToggleVerboseLogon": {
|
||||
"Content": "Logon Verbose Mode",
|
||||
"Description": "Show detailed messages during the login process for troubleshooting and diagnostics.",
|
||||
"Description": "Show detailed messages during startup/shutdown.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1388,7 +1440,7 @@
|
||||
},
|
||||
"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.",
|
||||
"Description": "This will ensures the classic Outlook application is used.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1449,7 +1501,7 @@
|
||||
},
|
||||
"WPFToggleMultiplaneOverlay": {
|
||||
"Content": "Multiplane Overlay",
|
||||
"Description": "Enable or disable the Multiplane Overlay, which can sometimes cause issues with graphics cards.",
|
||||
"Description": "Multiplane Overlay compose multiple image layers, which can sometimes cause issues with graphics cards.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1461,13 +1513,21 @@
|
||||
"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"
|
||||
},
|
||||
"WPFToggleMouseAcceleration": {
|
||||
"Content": "Mouse Acceleration",
|
||||
"Description": "If enabled, the Cursor movement is affected by the speed of your physical mouse movements.",
|
||||
"Description": "Makes it so Cursor movement is affected by the speed of your physical mouse movements.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1527,7 +1587,7 @@
|
||||
},
|
||||
"WPFToggleStandbyFix": {
|
||||
"Content": "S0 Sleep Network Connectivity",
|
||||
"Description": "Enable or disable network connectivity during S0 Sleep.",
|
||||
"Description": "Toggles network connectivity during S0 Sleep which is low power idle in modern laptops.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1545,7 +1605,7 @@
|
||||
},
|
||||
"WPFToggleS3Sleep": {
|
||||
"Content": "S3 Sleep",
|
||||
"Description": "Toggles between Modern Standby and S3 Sleep.",
|
||||
"Description": "Toggles between Modern Standby and S3 Sleep which cuts of power to cpu while continuing to refreshes the memory.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1563,7 +1623,7 @@
|
||||
},
|
||||
"WPFToggleHideSettingsHome": {
|
||||
"Content": "Settings Home Page",
|
||||
"Description": "Enable or disable the Home Page in the Windows Settings app.",
|
||||
"Description": "Toggles the Home Page in the Windows Settings app.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1581,7 +1641,7 @@
|
||||
},
|
||||
"WPFToggleBingSearch": {
|
||||
"Content": "Start Menu Bing Search",
|
||||
"Description": "If enabled, Bing web search results will be included in your Start Menu search.",
|
||||
"Description": "Toggles Bing web search results in windows search",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1599,7 +1659,7 @@
|
||||
},
|
||||
"WPFToggleLoginBlur": {
|
||||
"Content": "Logon Screen Acrylic Blur",
|
||||
"Description": "If disabled, the acrylic blur effect will be removed on the Windows 10/11 login screen background.",
|
||||
"Description": "Toggles the acrylic blur effect on login screen background.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1617,7 +1677,7 @@
|
||||
},
|
||||
"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.",
|
||||
"Description": "Toggles the recommendations section in the Start Menu. WARNING: This will also disable Windows Spotlight on your Lock Screen as a side effect.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1661,7 +1721,7 @@
|
||||
},
|
||||
"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.",
|
||||
"Description": "Toggles the stick keys which active when clicking shift rapidly",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1679,7 +1739,7 @@
|
||||
},
|
||||
"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.",
|
||||
"Description": "Toggles the taskbar alignment either to the left or center",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1707,7 +1767,7 @@
|
||||
},
|
||||
"WPFToggleTaskbarSearch": {
|
||||
"Content": "Taskbar Search Icon",
|
||||
"Description": "If enabled, Search Button will be on the Taskbar.",
|
||||
"Description": "Toggles the Search Button on the Taskbar.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1715,9 +1775,9 @@
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search",
|
||||
"Name": "SearchboxTaskbarMode",
|
||||
"Value": "1",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"OriginalValue": "d",
|
||||
"DefaultState": "true"
|
||||
}
|
||||
],
|
||||
@@ -1725,7 +1785,7 @@
|
||||
},
|
||||
"WPFToggleTaskView": {
|
||||
"Content": "Taskbar Task View Icon",
|
||||
"Description": "If enabled, Task View Button in Taskbar will be shown.",
|
||||
"Description": "Toggles the Task View Button in the Taskbar.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -1741,6 +1801,50 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/customize-preferences/taskview"
|
||||
},
|
||||
"WPFToggleGameMode": {
|
||||
"Content": "Game Mode",
|
||||
"Description": "Toggles Windows prioritizes gaming performance by allocating system resources to games.",
|
||||
"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": "Toggles support for file paths longer than 260 characters in explorer.",
|
||||
"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",
|
||||
@@ -1758,73 +1862,18 @@
|
||||
},
|
||||
"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"
|
||||
},
|
||||
"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.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"InvokeScript": [
|
||||
"
|
||||
# Previously detected folders
|
||||
$bags = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\"
|
||||
|
||||
# Folder types lookup table
|
||||
$bagMRU = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\BagMRU\"
|
||||
|
||||
# Flush Explorer view database
|
||||
Remove-Item -Path $bags -Recurse -Force
|
||||
Write-Host \"Removed $bags\"
|
||||
|
||||
Remove-Item -Path $bagMRU -Recurse -Force
|
||||
Write-Host \"Removed $bagMRU\"
|
||||
|
||||
# Every folder
|
||||
$allFolders = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell\"
|
||||
|
||||
if (!(Test-Path $allFolders)) {
|
||||
New-Item -Path $allFolders -Force
|
||||
Write-Host \"Created $allFolders\"
|
||||
}
|
||||
|
||||
# Generic view
|
||||
New-ItemProperty -Path $allFolders -Name \"FolderType\" -Value \"NotSpecified\" -PropertyType String -Force
|
||||
Write-Host \"Set FolderType to NotSpecified\"
|
||||
|
||||
Write-Host Please sign out and back in, or restart your computer to apply the changes!
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
# Previously detected folders
|
||||
$bags = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\"
|
||||
|
||||
# Folder types lookup table
|
||||
$bagMRU = \"HKCU:\\Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\BagMRU\"
|
||||
|
||||
# Flush Explorer view database
|
||||
Remove-Item -Path $bags -Recurse -Force
|
||||
Write-Host \"Removed $bags\"
|
||||
|
||||
Remove-Item -Path $bagMRU -Recurse -Force
|
||||
Write-Host \"Removed $bagMRU\"
|
||||
|
||||
Write-Host Please sign out and back in, or restart your computer to apply the changes!
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/disableexplorerautodiscovery"
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/performance-plans---not-for-laptops/removeultperf"
|
||||
}
|
||||
}
|
||||
|
||||
|
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 |
|
Before Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 228 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 |
|
After Width: | Height: | Size: 139 KiB |
|
After Width: | Height: | Size: 139 KiB |
|
After Width: | Height: | Size: 139 KiB |
|
After Width: | Height: | Size: 139 KiB |
|
After Width: | Height: | Size: 139 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
|
||||
---
|
||||
|
||||
## Basic Git Workflow
|
||||
|
||||
### 1. Fork the Repository
|
||||
|
||||
Go to the ChrisTitusTech/winutil repository on GitHub and click the Fork button in the top right corner.
|
||||
|
||||
<img width="171" height="50" alt="{650A4723-F38A-44A4-9820-D232BC87C8A0}" src="https://github.com/user-attachments/assets/a214f27c-2fee-444a-920f-d87b14f5896f" />
|
||||
|
||||
---
|
||||
|
||||
### 2. Clone Your Fork
|
||||
|
||||
```bash
|
||||
git clone https://github.com/YOUR_USERNAME/winutil.git
|
||||
cd winutil
|
||||
```
|
||||
|
||||
> [!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!
|
||||
---
|
||||
|
||||
## Issues
|
||||
### 3. Create a Branch
|
||||
|
||||
* 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.
|
||||
Never work directly on `main`.
|
||||
|
||||
## Contribute Code
|
||||
Create a branch related to your change:
|
||||
|
||||
* 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.
|
||||
|
||||
> [!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 checkout -b feature-name
|
||||
```
|
||||
> [!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.
|
||||
Example:
|
||||
|
||||
{{< image src="images/Fork-Button" alt="Fork Image" >}}
|
||||
```bash
|
||||
git checkout -b add-firefox-tweak
|
||||
```
|
||||
|
||||
### Clone the Fork
|
||||
---
|
||||
|
||||
> [!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.
|
||||
### 4. Edit the Code
|
||||
|
||||
* 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.
|
||||
Open the project in your preferred text editor and make your changes.
|
||||
|
||||
* Now you can modify Winutil to your liking using your preferred text editor.
|
||||
Keep changes small and focused.
|
||||
|
||||
---
|
||||
|
||||
### Testing your changes
|
||||
### 5. Test Your Changes
|
||||
|
||||
* To test to see if your changes work as intended, run the following commands in a PowerShell terminal as admin:
|
||||
Open PowerShell as Administrator.
|
||||
|
||||
* 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`
|
||||
Go to the project folder:
|
||||
|
||||
{{< image src="images/Compile" alt="Compile" >}}
|
||||
```powershell
|
||||
cd path\to\winutil
|
||||
```
|
||||
|
||||
* 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.
|
||||
Run:
|
||||
|
||||
### Committing the changes
|
||||
* Before committing your changes, please discard changes made to the `Winutil.ps1` file, like the following:
|
||||
```powershell
|
||||
.\Compile.ps1 -Run
|
||||
```
|
||||
|
||||
{{< image src="images/Discard-GHD" alt="Push Commit Image" >}}
|
||||
Verify:
|
||||
|
||||
* Now, commit your changes once you are happy with the result.
|
||||
- WinUtil launches correctly
|
||||
- Your feature works
|
||||
- Nothing else breaks
|
||||
|
||||
{{< image src="images/Commit-GHD" alt="Commit Image" >}}
|
||||
If something fails, fix it before committing.
|
||||
|
||||
* Push the changes to upload them to your fork on github.com.
|
||||
---
|
||||
|
||||
{{< image src="images/Push-Commit" alt="Push Commit Image" >}}
|
||||
### 6. Review Your Changes
|
||||
|
||||
### 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.
|
||||
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.
|
||||
|
||||
@@ -5,20 +5,11 @@ toc: true
|
||||
|
||||
### Download not working
|
||||
|
||||
If `https://christitus.com/win` is not working, or you want to download the code from GitHub directly, you can use the direct download link:
|
||||
If you run WinUtil and get an error like:
|
||||
|
||||
```
|
||||
irm https://github.com/ChrisTitusTech/Winutil/releases/latest/download/Winutil.ps1 | iex
|
||||
```
|
||||
`< : The term '<' is not recognized as the name of a cmdlet, function, script file, or operable program.`
|
||||
|
||||
If it still isn't working in your region, it may be due to temporary ISP or network filtering of GitHub content domains. This has been reported by some users in India in the past. See: [Times of India](https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms).
|
||||
|
||||
If you are still having issues, try using a **VPN**, or changing your **DNS provider** to one of the following two providers:
|
||||
|
||||
| Provider | Primary DNS | Secondary DNS |
|
||||
| :--------: | :---------: | :-----------: |
|
||||
| Cloudflare | `1.1.1.1` | `1.0.0.1` |
|
||||
| Google | `8.8.8.8` | `8.8.4.4` |
|
||||
try using a **VPN** and if that doesn't work than report the issue to https://github.com/ChrisTitusTech/winutil/issues
|
||||
|
||||
### Script Won't Run
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Legacy F8 Boot Recovery - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=110}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=107}
|
||||
"WPFFeatureDisableLegacyRecovery": {
|
||||
"Content": "Legacy F8 Boot Recovery - Disable",
|
||||
"Description": "Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Legacy F8 Boot Recovery - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=99}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=96}
|
||||
"WPFFeatureEnableLegacyRecovery": {
|
||||
"Content": "Legacy F8 Boot Recovery - Enable",
|
||||
"Description": "Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Registry Backup (Daily Task 12:30am) - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=82}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=79}
|
||||
"WPFFeatureRegBackup": {
|
||||
"Content": "Registry Backup (Daily Task 12:30am) - Enable",
|
||||
"Description": "Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Windows Sandbox - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=121}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=118}
|
||||
"WPFFeaturesSandbox": {
|
||||
"Content": "Windows Sandbox - Enable",
|
||||
"Description": "Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.",
|
||||
|
||||
@@ -12,7 +12,4 @@ description: ""
|
||||
"feature": [
|
||||
"Microsoft-Hyper-V-All"
|
||||
],
|
||||
"InvokeScript": [
|
||||
"bcdedit /set hypervisorschedulertype classic"
|
||||
],
|
||||
```
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Legacy Media Components (WMP, DirectPlay) - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=37}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=34}
|
||||
"WPFFeatureslegacymedia": {
|
||||
"Content": "Legacy Media Components (WMP, DirectPlay) - Enable",
|
||||
"Description": "Enables legacy programs from previous versions of Windows.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Network File System (NFS) - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=63}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=60}
|
||||
"WPFFeaturenfs": {
|
||||
"Content": "Network File System (NFS) - Enable",
|
||||
"Description": "Network File System (NFS) is a mechanism for storing files on a network.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Windows Subsystem for Linux (WSL) - Enable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=51}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=48}
|
||||
"WPFFeaturewsl": {
|
||||
"Content": "Windows Subsystem for Linux (WSL) - Enable",
|
||||
"Description": "Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.",
|
||||
|
||||
@@ -5,15 +5,7 @@ description: ""
|
||||
|
||||
```powershell {filename="functions/public/Invoke-WPFPanelAutologin.ps1",linenos=inline,linenostart=1}
|
||||
function Invoke-WPFPanelAutologin {
|
||||
<#
|
||||
|
||||
.SYNOPSIS
|
||||
Enables autologin using Sysinternals Autologon.exe
|
||||
|
||||
#>
|
||||
|
||||
# Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon
|
||||
Invoke-WebRequest -Uri "https://live.sysinternals.com/Autologon.exe" -OutFile "$env:temp\autologin.exe"
|
||||
cmd /c "$env:temp\autologin.exe" /accepteula
|
||||
Invoke-WebRequest -Uri https://live.sysinternals.com/Autologon.exe -OutFile "$Env:Temp\autologin.exe"
|
||||
Start-Process -FilePath "$Env:Temp\autologin.exe" -ArgumentList /accepteula
|
||||
}
|
||||
```
|
||||
|
||||
@@ -5,39 +5,8 @@ description: ""
|
||||
|
||||
```powershell {filename="functions/public/Invoke-WPFFixesNetwork.ps1",linenos=inline,linenostart=1}
|
||||
function Invoke-WPFFixesNetwork {
|
||||
<#
|
||||
|
||||
.SYNOPSIS
|
||||
Resets various network configurations
|
||||
|
||||
#>
|
||||
|
||||
Write-Host "Resetting Network with netsh"
|
||||
|
||||
Set-WinUtilTaskbaritem -state "Normal" -value 0.01 -overlay "logo"
|
||||
# Reset WinSock catalog to a clean state
|
||||
Start-Process -NoNewWindow -FilePath "netsh" -ArgumentList "winsock", "reset"
|
||||
|
||||
Set-WinUtilTaskbaritem -state "Normal" -value 0.35 -overlay "logo"
|
||||
# Resets WinHTTP proxy setting to DIRECT
|
||||
Start-Process -NoNewWindow -FilePath "netsh" -ArgumentList "winhttp", "reset", "proxy"
|
||||
|
||||
Set-WinUtilTaskbaritem -state "Normal" -value 0.7 -overlay "logo"
|
||||
# Removes all user configured IP settings
|
||||
Start-Process -NoNewWindow -FilePath "netsh" -ArgumentList "int", "ip", "reset"
|
||||
|
||||
Set-WinUtilTaskbaritem -state "None" -overlay "checkmark"
|
||||
|
||||
Write-Host "Process complete. Please reboot your computer."
|
||||
|
||||
$ButtonType = [System.Windows.MessageBoxButton]::OK
|
||||
$MessageboxTitle = "Network Reset "
|
||||
$Messageboxbody = ("Stock settings loaded.`n Please reboot your computer")
|
||||
$MessageIcon = [System.Windows.MessageBoxImage]::Information
|
||||
|
||||
[System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
|
||||
Write-Host "=========================================="
|
||||
Write-Host "-- Network Configuration has been Reset --"
|
||||
Write-Host "=========================================="
|
||||
netsh winsock reset
|
||||
netsh int ip reset
|
||||
Write-Host "Network Configuration has been Reset Please restart your computer."
|
||||
}
|
||||
```
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Computer Management"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=196}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=193}
|
||||
"WPFPanelComputer": {
|
||||
"Content": "Computer Management",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Control Panel"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=185}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=182}
|
||||
"WPFPanelControl": {
|
||||
"Content": "Control Panel",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Network Connections"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=207}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=204}
|
||||
"WPFPanelNetwork": {
|
||||
"Content": "Network Connections",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Power Panel"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=218}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=215}
|
||||
"WPFPanelPower": {
|
||||
"Content": "Power Panel",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Printer Panel"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=229}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=226}
|
||||
"WPFPanelPrinter": {
|
||||
"Content": "Printer Panel",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Region"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=240}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=237}
|
||||
"WPFPanelRegion": {
|
||||
"Content": "Region",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Windows Restore"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=251}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=248}
|
||||
"WPFPanelRestore": {
|
||||
"Content": "Windows Restore",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Sound Settings"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=262}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=259}
|
||||
"WPFPanelSound": {
|
||||
"Content": "Sound Settings",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "System Properties"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=273}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=270}
|
||||
"WPFPanelSystem": {
|
||||
"Content": "System Properties",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Time and Date"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=284}
|
||||
```json {filename="config/feature.json",linenos=inline,linenostart=281}
|
||||
"WPFPanelTimedate": {
|
||||
"Content": "Time and Date",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -3,10 +3,10 @@ title: "System Tray Battery Percentage"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1255}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1307}
|
||||
"WPFToggleBatteryPercentage": {
|
||||
"Content": "System Tray Battery Percentage",
|
||||
"Description": "If enabled, Shows numeric battery percentage next to the battery icon in the system tray.",
|
||||
"Description": "Shows numeric battery percentage next to the battery icon in the system tray.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Start Menu Bing Search"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1582}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1642}
|
||||
"WPFToggleBingSearch": {
|
||||
"Content": "Start Menu Bing Search",
|
||||
"Description": "If enabled, Bing web search results will be included in your Start Menu search.",
|
||||
"Description": "Toggles Bing web search results in windows search",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Dark Theme for Windows"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1273}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1325}
|
||||
"WPFToggleDarkMode": {
|
||||
"Content": "Dark Theme for Windows",
|
||||
"Description": "Enable/Disable Dark Mode.",
|
||||
"Description": "Dark Mode for the system and applications.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "BSoD Verbose Mode"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1229}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1281}
|
||||
"WPFToggleDetailedBSoD": {
|
||||
"Content": "BSoD Verbose Mode",
|
||||
"Description": "If enabled, you will see a detailed Blue Screen of Death (BSOD) with more information.",
|
||||
"Description": "Gives more information when you blue screen.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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).
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
---
|
||||
title: "Cross-Device Resume"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1211}
|
||||
"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.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\CrossDeviceResume\\Configuration",
|
||||
"Name": "IsResumeAllowed",
|
||||
"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://www.wikiwand.com/en/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=1804}
|
||||
"WPFToggleGameMode": {
|
||||
"Content": "Game Mode",
|
||||
"Description": "Toggles Windows prioritizes gaming performance by allocating system resources to games.",
|
||||
"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,10 +3,10 @@ title: "File Explorer Hidden Files"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1343}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1395}
|
||||
"WPFToggleHiddenFiles": {
|
||||
"Content": "File Explorer Hidden Files",
|
||||
"Description": "If enabled, Hidden Files will be shown.",
|
||||
"Description": "reveals hidden files in explorer",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Settings Home Page"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1564}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1624}
|
||||
"WPFToggleHideSettingsHome": {
|
||||
"Content": "Settings Home Page",
|
||||
"Description": "Enable or disable the Home Page in the Windows Settings app.",
|
||||
"Description": "Toggles the Home Page in the Windows Settings app.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Logon Screen Acrylic Blur"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1600}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1660}
|
||||
"WPFToggleLoginBlur": {
|
||||
"Content": "Logon Screen Acrylic Blur",
|
||||
"Description": "If disabled, the acrylic blur effect will be removed on the Windows 10/11 login screen background.",
|
||||
"Description": "Toggles the acrylic blur effect on login screen background.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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=1830}
|
||||
"WPFToggleLongPaths": {
|
||||
"Content": "Enable Long Paths",
|
||||
"Description": "Toggles support for file paths longer than 260 characters in explorer.",
|
||||
"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,10 +3,10 @@ title: "Mouse Acceleration"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1468}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1528}
|
||||
"WPFToggleMouseAcceleration": {
|
||||
"Content": "Mouse Acceleration",
|
||||
"Description": "If enabled, the Cursor movement is affected by the speed of your physical mouse movements.",
|
||||
"Description": "Makes it so Cursor movement is affected by the speed of your physical mouse movements.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Multiplane Overlay"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1450}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1502}
|
||||
"WPFToggleMultiplaneOverlay": {
|
||||
"Content": "Multiplane Overlay",
|
||||
"Description": "Enable or disable the Multiplane Overlay, which can sometimes cause issues with graphics cards.",
|
||||
"Description": "Multiplane Overlay compose multiple image layers, which can sometimes cause issues with graphics cards.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Microsoft Outlook New Version"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1389}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1441}
|
||||
"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.",
|
||||
"Description": "This will ensures the classic Outlook application is used.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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=1502}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1562}
|
||||
"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,10 +3,10 @@ title: "S3 Sleep"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1546}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1606}
|
||||
"WPFToggleS3Sleep": {
|
||||
"Content": "S3 Sleep",
|
||||
"Description": "Toggles between Modern Standby and S3 Sleep.",
|
||||
"Description": "Toggles between Modern Standby and S3 Sleep which cuts of power to cpu while continuing to refreshes the memory.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "File Explorer File Extensions"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1315}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1367}
|
||||
"WPFToggleShowExt": {
|
||||
"Content": "File Explorer File Extensions",
|
||||
"Description": "If enabled, File extensions (e.g., .txt, .jpg) are visible.",
|
||||
"Description": "Shows .file extensions in explorer (.exe, .png, etc)",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "S0 Sleep Network Connectivity"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1528}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1588}
|
||||
"WPFToggleStandbyFix": {
|
||||
"Content": "S0 Sleep Network Connectivity",
|
||||
"Description": "Enable or disable network connectivity during S0 Sleep.",
|
||||
"Description": "Toggles network connectivity during S0 Sleep which is low power idle in modern laptops.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Start Menu Recommendations"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1618}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1678}
|
||||
"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.",
|
||||
"Description": "Toggles the recommendations section in the Start Menu. WARNING: This will also disable Windows Spotlight on your Lock Screen as a side effect.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Sticky Keys"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1662}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1722}
|
||||
"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.",
|
||||
"Description": "Toggles the stick keys which active when clicking shift rapidly",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Taskbar Task View Icon"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1726}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1786}
|
||||
"WPFToggleTaskView": {
|
||||
"Content": "Taskbar Task View Icon",
|
||||
"Description": "If enabled, Task View Button in Taskbar will be shown.",
|
||||
"Description": "Toggles the Task View Button in the Taskbar.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Taskbar Centered Icons"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1680}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1740}
|
||||
"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.",
|
||||
"Description": "Toggles the taskbar alignment either to the left or center",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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,10 +3,10 @@ title: "Taskbar Search Icon"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1708}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1768}
|
||||
"WPFToggleTaskbarSearch": {
|
||||
"Content": "Taskbar Search Icon",
|
||||
"Description": "If enabled, Search Button will be on the Taskbar.",
|
||||
"Description": "Toggles the Search Button on the Taskbar.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -14,9 +14,9 @@ description: ""
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search",
|
||||
"Name": "SearchboxTaskbarMode",
|
||||
"Value": "1",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "0",
|
||||
"OriginalValue": "d",
|
||||
"DefaultState": "true"
|
||||
}
|
||||
],
|
||||
@@ -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,10 +3,10 @@ title: "Logon Verbose Mode"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1371}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1423}
|
||||
"WPFToggleVerboseLogon": {
|
||||
"Content": "Logon Verbose Mode",
|
||||
"Description": "Show detailed messages during the login process for troubleshooting and diagnostics.",
|
||||
"Description": "Show detailed messages during startup/shutdown.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Type": "Toggle",
|
||||
@@ -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=459}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=449}
|
||||
"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,10 +3,10 @@ title: "Unwanted Pre-Installed Apps - Remove"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=808}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=840}
|
||||
"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.",
|
||||
"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": [
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Temporary Files - Remove"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1106}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1121}
|
||||
"WPFTweaksDeleteTempFiles": {
|
||||
"Content": "Temporary Files - Remove",
|
||||
"Description": "Erases TEMP Folders.",
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
---
|
||||
title: "Delivery Optimization - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=590}
|
||||
"WPFTweaksDeliveryOptimization": {
|
||||
"Content": "Delivery Optimization - Disable",
|
||||
"Description": "Stops Windows from using your bandwidth to upload updates to other PCs on the internet or local network.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\DeliveryOptimization",
|
||||
"Name": "DODownloadMode",
|
||||
"Value": "0",
|
||||
"Type": "DWord",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
],
|
||||
```
|
||||
|
||||
## 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).
|
||||
@@ -0,0 +1,18 @@
|
||||
---
|
||||
title: "BitLocker - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=622}
|
||||
"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=1775}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1226}
|
||||
"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: "Microsoft Store Recommended Search Results - Disable"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=125}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=115}
|
||||
"WPFTweaksDisableStoreSearch": {
|
||||
"Content": "Microsoft Store Recommended Search Results - Disable",
|
||||
"Description": "Will not display recommended Microsoft Store apps when searching for apps in the Start menu.",
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Disk Cleanup - Run"
|
||||
description: ""
|
||||
---
|
||||
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1093}
|
||||
```json {filename="config/tweaks.json",linenos=inline,linenostart=1108}
|
||||
"WPFTweaksDiskCleanup": {
|
||||
"Content": "Disk Cleanup - Run",
|
||||
"Description": "Runs Disk Cleanup on Drive C: and removes old Windows Updates.",
|
||||
|
||||