3e779be6f3
CI / lint (push) Failing after 13m4s
CI / test (3.11, ubuntu-latest) (push) Failing after 2m4s
CI / test (3.13, ubuntu-latest) (push) Successful in 13m30s
CI / test (3.14, ubuntu-latest) (push) Successful in 17m21s
CI / test (3.12, ubuntu-latest) (push) Successful in 17m55s
CI / discover-apps-ps (push) Successful in 1m56s
CI / test (3.9, ubuntu-latest) (push) Successful in 13m17s
CI / test (3.10, ubuntu-latest) (push) Successful in 26m21s
CI / audit (push) Successful in 13m38s
Deploy site / deploy (push) Has been cancelled
CI / test (3.14, ubuntu-24.04-arm) (push) Has been cancelled
149 lines
5.5 KiB
TOML
149 lines
5.5 KiB
TOML
# SPDX-License-Identifier: MIT
|
|
#
|
|
# Catalog of debloat items consumed by ``winpodx.core.debloat`` and
|
|
# exposed via ``winpodx debloat --list`` (and a future GUI picker).
|
|
#
|
|
# Each item is a TOML table:
|
|
#
|
|
# * ``label`` -- short user-facing name (shown in CLI / GUI lists).
|
|
# * ``description`` -- one-line explanation of what it disables / why.
|
|
# * ``script`` -- path under ``scripts/windows/debloat/`` to the
|
|
# PowerShell snippet that performs the action.
|
|
# Resolved against ``bundle_dir()`` at run time.
|
|
# * ``risk`` -- one of ``low`` / ``medium`` / ``high``.
|
|
# ``low`` = pure noise removal, no UX regression.
|
|
# ``medium`` = removes a feature some users want
|
|
# (OneDrive, common startup apps).
|
|
# ``high`` = trades a real capability for VM
|
|
# perf (Windows Search indexing).
|
|
# * ``undo_script`` -- (optional) path under ``scripts/windows/debloat/undo/``
|
|
# for the reverse-action ``.ps1``. Items without an
|
|
# ``undo_script`` field are flagged as one-way: ``winpodx
|
|
# debloat --undo --items <name>`` rejects them with a
|
|
# clear error. Used by #247 P2 to drive per-item undo
|
|
# + state tracking via ``%ProgramData%\winpodx\debloat-
|
|
# applied.json``.
|
|
#
|
|
# Presets in ``items_presets`` reference these item names. Adding a new
|
|
# item requires:
|
|
#
|
|
# 1. Append a ``[<name>]`` table here.
|
|
# 2. Drop the matching ``.ps1`` under ``scripts/windows/debloat/``.
|
|
# 3. (Optional) Drop an undo sibling under ``scripts/windows/debloat/undo/``
|
|
# and add the ``undo_script`` field to the table.
|
|
# 4. Add the name to whichever preset(s) it belongs to.
|
|
|
|
[items.telemetry]
|
|
label = "Telemetry & diagnostics"
|
|
description = "Disable DiagTrack / dmwappushservice services + AllowTelemetry policy."
|
|
script = "telemetry.ps1"
|
|
undo_script = "undo/telemetry.ps1"
|
|
risk = "low"
|
|
|
|
[items.ads]
|
|
label = "Ads & suggestions"
|
|
description = "Disable Start menu / lock-screen / settings ads (ContentDeliveryManager keys)."
|
|
script = "ads.ps1"
|
|
undo_script = "undo/ads.ps1"
|
|
risk = "low"
|
|
|
|
[items.onedrive]
|
|
label = "OneDrive"
|
|
description = "Remove OneDrive integration (uninstall + remove from File Explorer pane). One-way: undo requires reinstalling OneDrive from Microsoft."
|
|
script = "onedrive.ps1"
|
|
risk = "medium"
|
|
|
|
[items.sysmain]
|
|
label = "SuperFetch (SysMain)"
|
|
description = "Disable SysMain -- VM has no spinning disk; SuperFetch wastes RAM."
|
|
script = "sysmain.ps1"
|
|
undo_script = "undo/sysmain.ps1"
|
|
risk = "low"
|
|
|
|
[items.web_search]
|
|
label = "Cortana + Windows web search"
|
|
description = "Disable Cortana + Start menu web result lookups."
|
|
script = "web_search.ps1"
|
|
undo_script = "undo/web_search.ps1"
|
|
risk = "low"
|
|
|
|
[items.widgets]
|
|
label = "Widgets / news panel"
|
|
description = "Disable taskbar widgets + sliding news panel."
|
|
script = "widgets.ps1"
|
|
undo_script = "undo/widgets.ps1"
|
|
risk = "low"
|
|
|
|
[items.scheduled_tasks]
|
|
label = "Unnecessary scheduled tasks"
|
|
description = "Disable telemetry tasks: App Experience / CEIP / Feedback / WindowsAI + Office telemetry / Disk Diagnostic / Maps / RetailDemo / WER (no Defender, licensing, or update tasks)."
|
|
script = "scheduled_tasks.ps1"
|
|
undo_script = "undo/scheduled_tasks.ps1"
|
|
risk = "low"
|
|
|
|
[items.startup_programs]
|
|
label = "Common startup bloat"
|
|
description = "Disable common autostart entries (OneDrive, Teams, Skype, Spotify, Discord, OEM updaters). One-way: undo can't restore original autostart commands."
|
|
script = "startup_programs.ps1"
|
|
risk = "medium"
|
|
|
|
[items.visual_effects]
|
|
label = "Visual effects -> best performance"
|
|
description = "Disable animations; keep thumbnails, font smoothing, drag-window contents (sysguides recipe)."
|
|
script = "visual_effects.ps1"
|
|
undo_script = "undo/visual_effects.ps1"
|
|
risk = "low"
|
|
|
|
[items.search_indexing]
|
|
label = "Search indexing service"
|
|
description = "Disable the WSearch service. Tradeoff: Start menu search becomes file-system-walk slow."
|
|
script = "search_indexing.ps1"
|
|
undo_script = "undo/search_indexing.ps1"
|
|
risk = "high"
|
|
|
|
[items.transparency]
|
|
label = "Window transparency"
|
|
description = "Disable Windows acrylic / transparency effects (saves GPU + scanout bandwidth)."
|
|
script = "transparency.ps1"
|
|
undo_script = "undo/transparency.ps1"
|
|
risk = "low"
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Preset definitions. Each preset is an ordered list of item names; presets
|
|
# *seed* the picker's checkbox state, the actual run applies whatever the
|
|
# user has selected (which may diverge from any preset).
|
|
# ---------------------------------------------------------------------------
|
|
|
|
[presets]
|
|
# Current default. Conservative -- only zero-regression items.
|
|
normal = ["telemetry", "ads"]
|
|
# Adds OS-noise removal that some users notice (OneDrive, web search,
|
|
# widgets, scheduled tasks).
|
|
full = ["telemetry", "ads", "onedrive", "web_search", "widgets", "scheduled_tasks"]
|
|
# Adds VM-perf wins (SuperFetch, startup bloat, visual effects).
|
|
performance = [
|
|
"telemetry",
|
|
"ads",
|
|
"onedrive",
|
|
"web_search",
|
|
"widgets",
|
|
"scheduled_tasks",
|
|
"sysmain",
|
|
"startup_programs",
|
|
"visual_effects",
|
|
]
|
|
# Everything. Search indexing + transparency cost real UX in trade.
|
|
speed = [
|
|
"telemetry",
|
|
"ads",
|
|
"onedrive",
|
|
"web_search",
|
|
"widgets",
|
|
"scheduled_tasks",
|
|
"sysmain",
|
|
"startup_programs",
|
|
"visual_effects",
|
|
"search_indexing",
|
|
"transparency",
|
|
]
|