Public/Reset-ChocolateyConfig.ps1

function Reset-ChocolateyConfig {
    [CmdletBinding()]
    param (
        
    )
    
    begin {
        $Config = Join-Path $env:ChocolateyInstall 'config\chocolatey.config'
        $ConfigBackup = Join-Path $env:ChocolateyInstall 'config\chocolatey.config.backup'

    }
    
    process {
        #Validate Configuration Files Exist
        if (Test-Path -Path $Config) {
            [xml]$ConfigXml = Get-Content -Path $Config -ErrorAction SilentlyContinue
        }
        if (Test-Path -Path $ConfigBackup) {
            [xml]$ConfigBackupXml = Get-Content -Path $ConfigBackup -ErrorAction SilentlyContinue
        }
        #Restore last config backup
        if ($ConfigBackupXml) {
            Copy-Item -Path $ConfigBackup -Destination $Config -Force        
        }
        #Purge files and restore default
        else {
            Remove-Item -Path $Config -Force -ErrorAction SilentlyContinue
            Remove-Item -Path $ConfigBackup -Force -ErrorAction SilentlyContinue
            $null = choco.exe
        }
    }
    
    end {
        if (Test-ChocolateyConfig) {
            $Status = $True
        }
        else {
            $Status = $False
        }
        return [PSCustomObject]@{
            Config = $Config
            Reset  = $Status
        }
    }
    
}