Files
Windows/README.md
T
olivier 64352817f5 Add winget repair helper and remove winget configure --enable prerequisite
Initialize-Winget.ps1 refreshes PATH, re-registers App Installer and
falls back to the provisioned package before exiting with a Store link.
All scripts that call winget now dot-source this helper instead of
failing on a missing winget.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 10:54:56 +02:00

129 lines
5.8 KiB
Markdown

<div align="center">
# 🪟 Windows libre software toolkit
Small Windows toolkit to install libre software packs with `winget` and remove selected built-in Windows apps.
[![Windows](https://img.shields.io/badge/Windows-10%20%2F%2011-0078D4?style=flat-square&logo=windows&logoColor=white)](#requirements)
[![winget](https://img.shields.io/badge/winget-configuration-0B6AB3?style=flat-square)](#automated-packs)
[![PowerShell](https://img.shields.io/badge/PowerShell-scripts-5391FE?style=flat-square&logo=powershell&logoColor=white)](#interactive-installer)
[![License](https://img.shields.io/badge/license-GPL--3.0--or--later-2E8B57?style=flat-square)](./LICENSE)
**English** | [Français](./README.fr.md)
</div>
---
## 📦 What is inside?
| Path | Purpose |
| --- | --- |
| 🧭 [`powershell/libres-softwares-install.ps1`](./powershell/libres-softwares-install.ps1) | Interactive installer for a curated list of applications. |
| 🦊 [`powershell/Install-Firefox.ps1`](./powershell/Install-Firefox.ps1) | Installs Firefox ESR, sets it as default browser and force-installs uBlock Origin for all users. |
| 🧹 [`powershell/Winget-Remove-BuiltInApps.ps1`](./powershell/Winget-Remove-BuiltInApps.ps1) | Removes selected built-in Windows applications for the current user with winget. |
| 🚫 [`powershell/Remove-BuiltInApps.ps1`](./powershell/Remove-BuiltInApps.ps1) | Removes selected built-in Appx applications without winget and writes registry blocks for future users. |
| 🚀 [`winget/libre-soft-start-pack.yaml`](./winget/libre-soft-start-pack.yaml) | Automated starter pack: Firefox ESR, 7-Zip and VLC. |
| 📄 [`winget/libre-soft-base-libreoffice.yaml`](./winget/libre-soft-base-libreoffice.yaml) | Starter pack plus LibreOffice. |
| 📝 [`winget/libre-soft-base-onlyoffice.yaml`](./winget/libre-soft-base-onlyoffice.yaml) | Starter pack plus ONLYOFFICE. |
<a id="requirements"></a>
## ✅ Requirements
Run the commands from an **administrator terminal** on Windows. winget must be available (App Installer from the Microsoft Store).
The automated YAML packs require winget 1.6 or later.
<a id="interactive-installer"></a>
## 🧭 Interactive Installer
Choose the software you want to install from a PowerShell menu. When Firefox ESR is installed from this script, Firefox defaults and uBlock Origin policies are configured automatically.
![Interactive installer screenshot](./img/interactive.png)
Run from the repository root:
```powershell
powershell -ExecutionPolicy Bypass -File .\powershell\libres-softwares-install.ps1
```
Available applications:
| Application | winget ID |
| --- | --- |
| Firefox ESR (FR) | `Mozilla.Firefox.ESR.fr` |
| 7-Zip | `7zip.7zip` |
| VLC Media Player | `VideoLAN.VLC` |
| ONLYOFFICE | `ONLYOFFICE.DesktopEditors` |
| LibreOffice | `TheDocumentFoundation.LibreOffice` |
| GIMP | `GIMP.GIMP.3` |
| Inkscape | `Inkscape.Inkscape` |
| Chromium | `Hibbiki.Chromium` |
| Bitwarden | `Bitwarden.Bitwarden` |
| Thunderbird | `Mozilla.Thunderbird` |
<a id="automated-packs"></a>
## 🚀 Automated Packs
Use winget configuration files when you want a repeatable installation.
| Pack | Includes | Command |
| --- | --- | --- |
| Starter pack | Firefox ESR, 7-Zip, VLC | `winget configure --file .\winget\libre-soft-start-pack.yaml --accept-configuration-agreements` |
| LibreOffice pack | Starter pack, LibreOffice | `winget configure --file .\winget\libre-soft-base-libreoffice.yaml --accept-configuration-agreements` |
| ONLYOFFICE pack | Starter pack, ONLYOFFICE | `winget configure --file .\winget\libre-soft-base-onlyoffice.yaml --accept-configuration-agreements` |
Example:
```powershell
winget configure --file .\winget\libre-soft-start-pack.yaml --accept-configuration-agreements
```
To install Firefox ESR with the default browser and uBlock Origin configuration in one step, run:
```powershell
powershell -ExecutionPolicy Bypass -File .\powershell\Install-Firefox.ps1
```
The script installs Firefox ESR, writes Firefox enterprise policies, force-installs uBlock Origin from Mozilla Add-ons, configures managed uBlock Origin defaults and imports Windows default app associations for future users.
More details: [Firefox ESR and uBlock Origin configuration](./docs/firefox-ublock.md).
## 🧹 Remove Built-In Apps
Use the Appx cleanup script when you want to remove selected built-in applications without winget and reduce reprovisioning for newly created users.
```powershell
powershell -ExecutionPolicy Bypass -File .\powershell\Remove-BuiltInApps.ps1
```
The script removes installed and provisioned Appx packages, disables Microsoft consumer experiences, blocks OneDrive startup for future users, updates the default user profile `ContentDeliveryManager` settings and writes Appx deprovisioning registry markers.
OneDrive is blocked for future users by default. It is not an Appx package on most Windows installations, so pass `-IncludeOneDrive` only when you also want to call the built-in OneDrive uninstaller on the current machine:
```powershell
powershell -ExecutionPolicy Bypass -File .\powershell\Remove-BuiltInApps.ps1 -IncludeOneDrive
```
The older winget-based cleanup script is still available, but it only targets the current user:
```powershell
powershell -ExecutionPolicy Bypass -File .\powershell\Winget-Remove-BuiltInApps.ps1
```
Run this script before creating the new Windows user profile, then restart Windows. Targeted applications include Xbox components, Outlook for Windows, Feedback Hub, Power Automate, Sticky Notes, Weather, Teams, Microsoft To Do, Bing apps, Clipchamp, Windows Web Experience Pack, OneDrive startup and related built-in packages.
## 🔁 Maintenance Note
When changing scripts, package IDs, pack contents or documented commands, update both README files:
- [`README.md`](./README.md) for English.
- [`README.fr.md`](./README.fr.md) for French.
## 📜 License
This project is distributed under the [GPL-3.0-or-later license](./LICENSE).