mirror of
https://github.com/NexusOne23/noid-privacy.git
synced 2026-04-05 15:27:21 +02:00
Some checks failed
CI - PowerShell Quality Checks / PSScriptAnalyzer (push) Has been cancelled
CI - PowerShell Quality Checks / Test on PowerShell 5.1 (push) Has been cancelled
CI - PowerShell Quality Checks / Test on PowerShell 7.4 (push) Has been cancelled
CI - PowerShell Quality Checks / Validate Project Structure (push) Has been cancelled
Pester Tests / test (push) Has been cancelled
Version bump across 62 files (2.2.3 → 2.2.4). CHANGELOG.md: New [2.2.4] section with EDR/XDR detection and version tooling. README.md: Updated release highlights, AV detection example output synced with code. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
70 lines
1.9 KiB
PowerShell
70 lines
1.9 KiB
PowerShell
#Requires -Version 5.1
|
|
#Requires -RunAsAdministrator
|
|
|
|
<#
|
|
.SYNOPSIS
|
|
Privacy & Telemetry hardening module loader
|
|
|
|
.DESCRIPTION
|
|
Loads all Privacy module functions for Windows 11 telemetry control,
|
|
personalization settings, bloatware removal, and OneDrive configuration.
|
|
|
|
Supports 3 operating modes:
|
|
- MSRecommended: Fully supported by Microsoft (default)
|
|
- Strict: Maximum privacy (AllowTelemetry=0 only on Enterprise/Education, other settings work everywhere)
|
|
- Paranoid: Hardcore mode (not recommended)
|
|
|
|
.NOTES
|
|
Module: Privacy
|
|
Version: 2.2.4
|
|
Author: NoID Privacy
|
|
#>
|
|
|
|
# Get module root path
|
|
$script:ModuleRoot = $PSScriptRoot
|
|
|
|
# Import private functions
|
|
$privateFunctions = @(
|
|
'Backup-PrivacySettings',
|
|
'Set-TelemetrySettings',
|
|
'Set-PersonalizationSettings',
|
|
'Set-AppPrivacySettings',
|
|
'Set-OneDriveSettings',
|
|
'Set-PolicyBasedAppRemoval',
|
|
'Disable-TelemetryServices',
|
|
'Disable-TelemetryTasks',
|
|
'Remove-Bloatware'
|
|
)
|
|
|
|
foreach ($function in $privateFunctions) {
|
|
$functionPath = Join-Path $ModuleRoot "Private\$function.ps1"
|
|
if (Test-Path $functionPath) {
|
|
. $functionPath
|
|
}
|
|
}
|
|
|
|
# Import Test-PrivacyCompliance (located in module root)
|
|
$testCompliancePath = Join-Path $ModuleRoot "Test-PrivacyCompliance.ps1"
|
|
if (Test-Path $testCompliancePath) {
|
|
. $testCompliancePath
|
|
}
|
|
|
|
# Import public functions
|
|
$publicFunctions = @(
|
|
'Invoke-PrivacyHardening',
|
|
'Restore-Bloatware'
|
|
)
|
|
|
|
foreach ($function in $publicFunctions) {
|
|
$functionPath = Join-Path $ModuleRoot "Public\$function.ps1"
|
|
if (Test-Path $functionPath) {
|
|
. $functionPath
|
|
}
|
|
}
|
|
|
|
# Export public functions + Test-PrivacyCompliance (needed for Invoke-PrivacyHardening verification)
|
|
Export-ModuleMember -Function @($publicFunctions + 'Test-PrivacyCompliance')
|
|
|
|
# Alias for naming consistency (non-breaking change)
|
|
New-Alias -Name 'Invoke-Privacy' -Value 'Invoke-PrivacyHardening' -Force
|
|
Export-ModuleMember -Alias 'Invoke-Privacy'
|