forked from uup-dump/api
17650 pack template, support of single file editions
This commit is contained in:
parent
32e9b283e1
commit
6ff681b273
42
get.php
42
get.php
@ -62,8 +62,13 @@ function uupGetFiles($updateId = 'c2a1d787-647b-486d-b264-f90f3782cdc6', $usePac
|
|||||||
$packsForLangs = $packs['packsForLangs'];
|
$packsForLangs = $packs['packsForLangs'];
|
||||||
$editionPacks = $packs['editionPacks'];
|
$editionPacks = $packs['editionPacks'];
|
||||||
$checkEditions = $packs['allEditions'];
|
$checkEditions = $packs['allEditions'];
|
||||||
|
$skipNeutral = $packs['skipNeutral'];
|
||||||
|
$skipLangPack = $packs['skipLangPack'];
|
||||||
$packs = $packs['packs'];
|
$packs = $packs['packs'];
|
||||||
|
|
||||||
|
$noLangPack = 0;
|
||||||
|
$noNeutral = 0;
|
||||||
|
|
||||||
if($usePack) {
|
if($usePack) {
|
||||||
$usePack = strtolower($usePack);
|
$usePack = strtolower($usePack);
|
||||||
if(!isset($packsForLangs[$usePack])) {
|
if(!isset($packsForLangs[$usePack])) {
|
||||||
@ -73,8 +78,10 @@ function uupGetFiles($updateId = 'c2a1d787-647b-486d-b264-f90f3782cdc6', $usePac
|
|||||||
|
|
||||||
$desiredEdition = strtoupper($desiredEdition);
|
$desiredEdition = strtoupper($desiredEdition);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
switch($desiredEdition) {
|
switch($desiredEdition) {
|
||||||
case 0: break;
|
case '0': break;
|
||||||
case 'WUBFILE': break;
|
case 'WUBFILE': break;
|
||||||
|
|
||||||
case 'UPDATEONLY':
|
case 'UPDATEONLY':
|
||||||
@ -101,10 +108,32 @@ function uupGetFiles($updateId = 'c2a1d787-647b-486d-b264-f90f3782cdc6', $usePac
|
|||||||
}
|
}
|
||||||
unset($supported);
|
unset($supported);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if(isset($skipLangPack[$desiredEdition])) {
|
||||||
|
if($skipLangPack[$desiredEdition]) {
|
||||||
|
$noLangPack = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(isset($skipNeutral[$desiredEdition])) {
|
||||||
|
if($skipNeutral[$desiredEdition]) {
|
||||||
|
$noNeutral = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$checkEditions = array($desiredEdition);
|
$checkEditions = array($desiredEdition);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($noNeutral) {
|
||||||
|
foreach($packsForLangs[$usePack] as $num) {
|
||||||
|
if(isset($packs[$num]['editionNeutral'])) {
|
||||||
|
unset($packs[$num]['editionNeutral']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$rev = 1;
|
$rev = 1;
|
||||||
if(preg_match('/_rev\./', $updateId)) {
|
if(preg_match('/_rev\./', $updateId)) {
|
||||||
$rev = preg_replace('/.*_rev\./', '', $updateId);
|
$rev = preg_replace('/.*_rev\./', '', $updateId);
|
||||||
@ -282,11 +311,14 @@ function uupGetFiles($updateId = 'c2a1d787-647b-486d-b264-f90f3782cdc6', $usePac
|
|||||||
$filesKeys = array_keys($files);
|
$filesKeys = array_keys($files);
|
||||||
$filesTemp = array();
|
$filesTemp = array();
|
||||||
|
|
||||||
$temp = preg_grep('/.*'.$usePack.'-Package.*/i', $filesKeys);
|
|
||||||
$filesTemp = array_merge($filesTemp, $temp);
|
|
||||||
|
|
||||||
$temp = preg_grep('/.*'.$usePack.'_lp..../i', $filesKeys);
|
if(!$noLangPack) {
|
||||||
$filesTemp = array_merge($filesTemp, $temp);
|
$temp = preg_grep('/.*'.$usePack.'-Package.*/i', $filesKeys);
|
||||||
|
$filesTemp = array_merge($filesTemp, $temp);
|
||||||
|
|
||||||
|
$temp = preg_grep('/.*'.$usePack.'_lp..../i', $filesKeys);
|
||||||
|
$filesTemp = array_merge($filesTemp, $temp);
|
||||||
|
}
|
||||||
|
|
||||||
foreach($packsForLangs[$usePack] as $num) {
|
foreach($packsForLangs[$usePack] as $num) {
|
||||||
foreach($packs[$num] as $key => $val) {
|
foreach($packs[$num] as $key => $val) {
|
||||||
|
@ -16,7 +16,7 @@ limitations under the License.
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
function uupApiVersion() {
|
function uupApiVersion() {
|
||||||
return '1.12.0';
|
return '1.13.0';
|
||||||
}
|
}
|
||||||
|
|
||||||
function uupApiPrintBrand() {
|
function uupApiPrintBrand() {
|
||||||
|
@ -61,6 +61,7 @@ function uupGetPacks($build = 15063) {
|
|||||||
'ANALOGONECORE',
|
'ANALOGONECORE',
|
||||||
'ANDROMEDA',
|
'ANDROMEDA',
|
||||||
'CLOUD',
|
'CLOUD',
|
||||||
|
'CLOUDE',
|
||||||
'CLOUDN',
|
'CLOUDN',
|
||||||
'CORE',
|
'CORE',
|
||||||
'CORECOUNTRYSPECIFIC',
|
'CORECOUNTRYSPECIFIC',
|
||||||
@ -148,6 +149,8 @@ function uupGetPacks($build = 15063) {
|
|||||||
|
|
||||||
if($build < 17063) {
|
if($build < 17063) {
|
||||||
require dirname(__FILE__).'/packs/legacy.php';
|
require dirname(__FILE__).'/packs/legacy.php';
|
||||||
|
} elseif ($build >= 17650) {
|
||||||
|
require dirname(__FILE__).'/packs/17650.php';
|
||||||
} elseif ($build >= 17634) {
|
} elseif ($build >= 17634) {
|
||||||
require dirname(__FILE__).'/packs/17634.php';
|
require dirname(__FILE__).'/packs/17634.php';
|
||||||
} elseif ($build >= 17623) {
|
} elseif ($build >= 17623) {
|
||||||
@ -165,6 +168,8 @@ function uupGetPacks($build = 15063) {
|
|||||||
'fancyEditionNames' => $fancyEditionNames,
|
'fancyEditionNames' => $fancyEditionNames,
|
||||||
'fancyLangNames' => $fancyLangNames,
|
'fancyLangNames' => $fancyLangNames,
|
||||||
'allEditions' => $allEditions,
|
'allEditions' => $allEditions,
|
||||||
|
'skipNeutral' => $skipNeutral,
|
||||||
|
'skipLangPack' => $skipLangPack,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
@ -183,4 +183,7 @@ $fancyEditionNames = array(
|
|||||||
'PROFESSIONAL' => 'Windows 10 Pro',
|
'PROFESSIONAL' => 'Windows 10 Pro',
|
||||||
'PROFESSIONALN' => 'Windows 10 Pro N',
|
'PROFESSIONALN' => 'Windows 10 Pro N',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$skipNeutral = array();
|
||||||
|
$skipLangPack = array();
|
||||||
?>
|
?>
|
||||||
|
@ -184,4 +184,7 @@ $fancyEditionNames = array(
|
|||||||
'PROFESSIONAL' => 'Windows 10 Pro',
|
'PROFESSIONAL' => 'Windows 10 Pro',
|
||||||
'PROFESSIONALN' => 'Windows 10 Pro N',
|
'PROFESSIONALN' => 'Windows 10 Pro N',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$skipNeutral = array();
|
||||||
|
$skipLangPack = array();
|
||||||
?>
|
?>
|
||||||
|
@ -188,4 +188,7 @@ $fancyEditionNames = array(
|
|||||||
'PROFESSIONAL' => 'Windows 10 Pro',
|
'PROFESSIONAL' => 'Windows 10 Pro',
|
||||||
'PROFESSIONALN' => 'Windows 10 Pro N',
|
'PROFESSIONALN' => 'Windows 10 Pro N',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$skipNeutral = array();
|
||||||
|
$skipLangPack = array();
|
||||||
?>
|
?>
|
||||||
|
@ -191,4 +191,7 @@ $fancyEditionNames = array(
|
|||||||
'PROFESSIONAL' => 'Windows 10 Pro',
|
'PROFESSIONAL' => 'Windows 10 Pro',
|
||||||
'PROFESSIONALN' => 'Windows 10 Pro N',
|
'PROFESSIONALN' => 'Windows 10 Pro N',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$skipNeutral = array();
|
||||||
|
$skipLangPack = array();
|
||||||
?>
|
?>
|
||||||
|
205
shared/packs/17650.php
Normal file
205
shared/packs/17650.php
Normal file
@ -0,0 +1,205 @@
|
|||||||
|
<?php
|
||||||
|
/*
|
||||||
|
Copyright 2018 UUP dump API authors
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
$packs = array(
|
||||||
|
// Base pack
|
||||||
|
0 => array(
|
||||||
|
'editionNeutral' => array(
|
||||||
|
'Microsoft-Windows-Foundation-Package',
|
||||||
|
'Microsoft-Windows-Client-Desktop-Required',
|
||||||
|
'Microsoft-Windows-Client-Desktop-Required-WOW64-Package',
|
||||||
|
'Microsoft-Windows-Client-Desktop-Required-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-Client-Features-Package',
|
||||||
|
'Microsoft-Windows-Client-Features-WOW64-Package',
|
||||||
|
'Microsoft-Windows-Client-Features-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-WowPack-CoreARM-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-ContactSupport-Package',
|
||||||
|
'Microsoft-Windows-Not-Supported-On-LTSB-Package',
|
||||||
|
'Microsoft-Windows-Not-Supported-On-LTSB-WOW64-Package',
|
||||||
|
'Microsoft-Windows-Not-Supported-On-LTSB-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-RegulatedPackages-Package',
|
||||||
|
'Microsoft-Windows-RegulatedPackages-WOW64-Package',
|
||||||
|
'Microsoft-Windows-RegulatedPackages-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-Holographic-Desktop-Merged-Package',
|
||||||
|
'Microsoft-Windows-Holographic-Desktop-Merged-WOW64-Package',
|
||||||
|
'Microsoft-Windows-Holographic-Desktop-Analog-Package',
|
||||||
|
'Microsoft-Windows-QuickAssist-Package',
|
||||||
|
'Microsoft-Windows-InternetExplorer-Optional-Package',
|
||||||
|
'Microsoft-Windows-MediaPlayer-Package',
|
||||||
|
'Microsoft-Windows-Hello-Face-Resource-.-Package',
|
||||||
|
'Microsoft-OneCore-ApplicationModel-Sync-Desktop-FOD-Package',
|
||||||
|
'Microsoft-Windows-TabletPCMath-Package',
|
||||||
|
'OpenSSH-Client-Package',
|
||||||
|
'Windows10\.0-KB',
|
||||||
|
),
|
||||||
|
'CORE' => array(
|
||||||
|
'Microsoft-Windows-EditionPack-Core-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Core-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Core-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-Core-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-Core-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-Core-arm64arm-Package',
|
||||||
|
'Microsoft\.ModernApps\.Client\.All',
|
||||||
|
'Microsoft\.ModernApps\.Client\.core',
|
||||||
|
),
|
||||||
|
'PROFESSIONAL' => array(
|
||||||
|
'Microsoft-Windows-EditionPack-Professional-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Professional-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Professional-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-Professional-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-Professional-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-Professional-arm64arm-Package',
|
||||||
|
'Microsoft\.ModernApps\.Client\.All',
|
||||||
|
'Microsoft\.ModernApps\.Client\.professional',
|
||||||
|
),
|
||||||
|
'CLOUDE' => array(),
|
||||||
|
),
|
||||||
|
|
||||||
|
// European "N" Editions
|
||||||
|
1 => array(
|
||||||
|
'COREN' => array(
|
||||||
|
'Microsoft-Windows-EditionPack-Core-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Core-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Core-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-CoreN-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-CoreN-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-CoreN-arm64arm-Package',
|
||||||
|
'Microsoft\.ModernApps\.ClientN\.All',
|
||||||
|
),
|
||||||
|
'PROFESSIONALN' => array(
|
||||||
|
'Microsoft-Windows-EditionPack-Professional-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Professional-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Professional-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-ProfessionalN-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-ProfessionalN-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-ProfessionalN-arm64arm-Package',
|
||||||
|
'Microsoft\.ModernApps\.ClientN\.All',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
|
||||||
|
// China specific editions
|
||||||
|
2 => array(
|
||||||
|
'CORECOUNTRYSPECIFIC' => array(
|
||||||
|
'Microsoft-Windows-EditionPack-Core-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Core-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionPack-Core-arm64arm-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-CoreCountrySpecific-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-CoreCountrySpecific-WOW64-Package',
|
||||||
|
'Microsoft-Windows-EditionSpecific-CoreCountrySpecific-arm64arm-Package',
|
||||||
|
'Microsoft\.ModernApps\.Client\.All',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
|
||||||
|
// Additional packages for some languages
|
||||||
|
3 => array(
|
||||||
|
'editionNeutral' => array(
|
||||||
|
'Microsoft-Windows-LanguageFeatures-Basic-en-us-Package',
|
||||||
|
'Microsoft-Windows-LanguageFeatures-OCR-en-us-Package',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
|
||||||
|
// Additional packages for ar-sa language
|
||||||
|
4 => array(
|
||||||
|
'editionNeutral' => array(
|
||||||
|
'Microsoft-Windows-LanguageFeatures-TextToSpeech-ar-eg-Package',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
|
||||||
|
// Additional packages for fr-ca language
|
||||||
|
5 => array(
|
||||||
|
'editionNeutral' => array(
|
||||||
|
'Microsoft-Windows-LanguageFeatures-Basic-fr-fr-Package',
|
||||||
|
'Microsoft-Windows-LanguageFeatures-Handwriting-fr-fr-Package',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
|
||||||
|
// Additional packages for zh-tw language
|
||||||
|
6 => array(
|
||||||
|
'editionNeutral' => array(
|
||||||
|
'Microsoft-Windows-LanguageFeatures-Speech-zh-hk-Package',
|
||||||
|
'Microsoft-Windows-LanguageFeatures-TextToSpeech-zh-hk-Package',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
|
$packsForLangs = array(
|
||||||
|
'ar-sa' => array(0, 3, 4),
|
||||||
|
'bg-bg' => array(0, 1, 3),
|
||||||
|
'cs-cz' => array(0, 1),
|
||||||
|
'da-dk' => array(0, 1, 3),
|
||||||
|
'de-de' => array(0, 1),
|
||||||
|
'el-gr' => array(0, 1, 3),
|
||||||
|
'en-gb' => array(0, 1),
|
||||||
|
'en-us' => array(0, 1),
|
||||||
|
'es-es' => array(0, 1),
|
||||||
|
'es-mx' => array(0),
|
||||||
|
'et-ee' => array(0, 1),
|
||||||
|
'fi-fi' => array(0, 1),
|
||||||
|
'fr-ca' => array(0, 3, 5),
|
||||||
|
'fr-fr' => array(0, 1),
|
||||||
|
'he-il' => array(0, 3),
|
||||||
|
'hr-hr' => array(0, 1),
|
||||||
|
'hu-hu' => array(0, 1),
|
||||||
|
'it-it' => array(0, 1),
|
||||||
|
'ja-jp' => array(0),
|
||||||
|
'ko-kr' => array(0, 1),
|
||||||
|
'lt-lt' => array(0, 1),
|
||||||
|
'lv-lv' => array(0, 1),
|
||||||
|
'nb-no' => array(0, 1),
|
||||||
|
'nl-nl' => array(0, 1),
|
||||||
|
'pl-pl' => array(0, 1),
|
||||||
|
'pt-br' => array(0),
|
||||||
|
'pt-pt' => array(0, 1),
|
||||||
|
'ro-ro' => array(0, 1),
|
||||||
|
'ru-ru' => array(0, 3),
|
||||||
|
'sk-sk' => array(0, 1),
|
||||||
|
'sl-si' => array(0, 1),
|
||||||
|
'sr-latn-rs' => array(0),
|
||||||
|
'sv-se' => array(0, 1),
|
||||||
|
'th-th' => array(0, 3),
|
||||||
|
'tr-tr' => array(0),
|
||||||
|
'uk-ua' => array(0, 3),
|
||||||
|
'zh-cn' => array(0, 2),
|
||||||
|
'zh-tw' => array(0, 6),
|
||||||
|
);
|
||||||
|
|
||||||
|
$editionPacks = array(
|
||||||
|
'CLOUDE' => 0,
|
||||||
|
'CORE' => 0,
|
||||||
|
'CORECOUNTRYSPECIFIC' => 2,
|
||||||
|
'COREN' => 1,
|
||||||
|
'PROFESSIONAL' => 0,
|
||||||
|
'PROFESSIONALN' => 1,
|
||||||
|
);
|
||||||
|
|
||||||
|
$fancyEditionNames = array(
|
||||||
|
'CLOUDE' => 'Windows 10 Lean',
|
||||||
|
'CORE' => 'Windows 10 Home',
|
||||||
|
'CORECOUNTRYSPECIFIC' => 'Windows 10 Home China',
|
||||||
|
'COREN' => 'Windows 10 Home N',
|
||||||
|
'PROFESSIONAL' => 'Windows 10 Pro',
|
||||||
|
'PROFESSIONALN' => 'Windows 10 Pro N',
|
||||||
|
);
|
||||||
|
|
||||||
|
$skipNeutral = array(
|
||||||
|
'CLOUDE' => 1,
|
||||||
|
);
|
||||||
|
|
||||||
|
$skipLangPack = array(
|
||||||
|
'CLOUDE' => 1,
|
||||||
|
);
|
||||||
|
?>
|
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
/*
|
/*
|
||||||
Copyright 2017 UUP dump API authors
|
Copyright 2018 UUP dump API authors
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
@ -267,4 +267,7 @@ $fancyEditionNames = array(
|
|||||||
'PROFESSIONAL' => 'Windows 10 Pro',
|
'PROFESSIONAL' => 'Windows 10 Pro',
|
||||||
'PROFESSIONALN' => 'Windows 10 Pro N',
|
'PROFESSIONALN' => 'Windows 10 Pro N',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$skipNeutral = array();
|
||||||
|
$skipLangPack = array();
|
||||||
?>
|
?>
|
||||||
|
Loading…
Reference in New Issue
Block a user