src/public/Resolve-PackageSource.ps1

# This function gets called during find-package, install-package, get-packagesource etc.
# OneGet uses this method to identify which provider can handle the packages from a particular source location.
function Resolve-PackageSource {

    Write-Debug ($LocalizedData.ProviderDebugMessage -f ('Resolve-PackageSource'))

    $SourceNames = $request.PackageSources

    # No source name pattern specified, so return everything
    if (-not $SourceNames) {
        $SourceNames = "*"
    }

    # Get sources from WinGet
    [array]$RegisteredPackageSources = Get-PackageSources

    # Filter sources by whether they're disabled in WinGet
    $RegisteredPackageSources | Where-Object {
        $src = $_.Name
        Write-Debug "Source $src is registred"
        # Pass the source on only if it matches the provided name pattern
        $SourceNames | Where-Object { $src -like $_ }
    } | ForEach-Object {
        New-PackageSource -Name $_.Name -Location $_.Location -Trusted $true -Registered $true
    }
}