mirror of
https://github.com/QL-Win/QuickLook.git
synced 2025-09-14 12:19:08 +00:00
Update the build scripts
This commit is contained in:
7
.gitignore
vendored
7
.gitignore
vendored
@@ -290,8 +290,11 @@ __pycache__/
|
||||
/QuickLook.Installer/C_QuickLookComponents.wxs
|
||||
/Build/*
|
||||
!/Build/Assets
|
||||
!/Build/AppxManifest.*
|
||||
!/Build/AppxManifest.xml
|
||||
!/Build/assetslayout.resfiles
|
||||
!/Build/priconfig.xml
|
||||
!/Build/micasetup.json
|
||||
!/Build/micasetup.cmd
|
||||
!/Build/openssl-sign.cnf
|
||||
!/Build/sideload.crt
|
||||
!/Build/sideload.key
|
||||
!/Build/sideload.pfx
|
@@ -1,53 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
|
||||
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
|
||||
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
|
||||
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10">
|
||||
<Identity Name="21090PaddyXu.QuickLook" Version="0.0.0.0"
|
||||
Publisher='E=xupaddy@gmail.com, CN="Open Source Developer, Pengfei Xu", O=Open Source Developer, C=FI' />
|
||||
<Properties>
|
||||
<DisplayName>QuickLook</DisplayName>
|
||||
<PublisherDisplayName>Paddy Xu</PublisherDisplayName>
|
||||
<Description>Bring macOS “Quick Look” feature to Windows</Description>
|
||||
<Logo>Assets\storelogo.png</Logo>
|
||||
</Properties>
|
||||
<Resources>
|
||||
<Resource Language="en-us" />
|
||||
<Resource uap:Scale="100" />
|
||||
<Resource uap:Scale="125" />
|
||||
<Resource uap:Scale="150" />
|
||||
<Resource uap:Scale="200" />
|
||||
<Resource uap:Scale="400" />
|
||||
</Resources>
|
||||
<Dependencies>
|
||||
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14316.0" MaxVersionTested="10.0.15063.0" />
|
||||
</Dependencies>
|
||||
<Capabilities>
|
||||
<rescap:Capability Name="runFullTrust" />
|
||||
</Capabilities>
|
||||
<Applications>
|
||||
<Application Id="Main" Executable="Package\QuickLook.exe" EntryPoint="Windows.FullTrustApplication">
|
||||
<Extensions>
|
||||
<desktop:Extension Category="windows.startupTask" Executable="Package\QuickLook.exe"
|
||||
EntryPoint="Windows.FullTrustApplication">
|
||||
<desktop:StartupTask TaskId="QuickLookTask" Enabled="true" DisplayName="QuickLook" />
|
||||
</desktop:Extension>
|
||||
</Extensions>
|
||||
<uap:VisualElements DisplayName="QuickLook"
|
||||
Description="Bring macOS “Quick Look” feature to Windows"
|
||||
BackgroundColor="transparent"
|
||||
Square150x150Logo="Assets\Square150x150Logo.png"
|
||||
Square44x44Logo="Assets\Square44x44Logo.png">
|
||||
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png"
|
||||
Square310x310Logo="Assets\LargeTile.png"
|
||||
Square71x71Logo="Assets\SmallTile.png">
|
||||
<uap:ShowNameOnTiles>
|
||||
<uap:ShowOn Tile="square150x150Logo" />
|
||||
<uap:ShowOn Tile="wide310x150Logo" />
|
||||
<uap:ShowOn Tile="square310x310Logo" />
|
||||
</uap:ShowNameOnTiles>
|
||||
</uap:DefaultTile>
|
||||
</uap:VisualElements>
|
||||
</Application>
|
||||
</Applications>
|
||||
</Package>
|
@@ -3,10 +3,15 @@
|
||||
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
|
||||
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
|
||||
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10">
|
||||
<!-- Invalid package identity name: QL-Win.QuickLook (expected: 21090PaddyXu.QuickLook) -->
|
||||
<!-- Invalid package family name: QL-Win.QuickLook_wgqddy12gm212 (expected: 21090PaddyXu.QuickLook_egxr34yet59cg) -->
|
||||
<!-- Invalid package publisher name: CN=F4F538EC-55CB-41B8-9531-25CC140D0339 (expected: CN=CE36AF3D-FF94-43EB-9908-7EC8FD1D29FB) -->
|
||||
<Identity Name="21090PaddyXu.QuickLook" Version="0.0.0.0" Publisher="CN=CE36AF3D-FF94-43EB-9908-7EC8FD1D29FB" />
|
||||
<Properties>
|
||||
<DisplayName>QuickLook</DisplayName>
|
||||
<PublisherDisplayName>Paddy Xu</PublisherDisplayName>
|
||||
<!-- We can not set the name to QL-Win, see the following error message -->
|
||||
<!-- Package acceptance validation error: The PublisherDisplayName element in the app manifest of QuickLook-4.0.1.0.appx is QL-Win, which doesn't match your publisher display name: emako. -->
|
||||
<PublisherDisplayName>emako</PublisherDisplayName>
|
||||
<Description>Bring macOS “Quick Look” feature to Windows</Description>
|
||||
<Logo>Assets\storelogo.png</Logo>
|
||||
</Properties>
|
||||
@@ -19,7 +24,7 @@
|
||||
<Resource uap:Scale="400" />
|
||||
</Resources>
|
||||
<Dependencies>
|
||||
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14316.0" MaxVersionTested="10.0.15063.0" />
|
||||
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14316.0" MaxVersionTested="10.0.26100.0" />
|
||||
</Dependencies>
|
||||
<Capabilities>
|
||||
<rescap:Capability Name="runFullTrust" />
|
||||
|
@@ -1,4 +0,0 @@
|
||||
cd /d %~dp0
|
||||
@REM 7z a Package.7z .\Package\* -t7z -mx=5 -mf=BCJ2 -r -y
|
||||
makemica micasetup.json
|
||||
@pause
|
13
Build/openssl-sign.cnf
Normal file
13
Build/openssl-sign.cnf
Normal file
@@ -0,0 +1,13 @@
|
||||
[req]
|
||||
default_bits = 2048
|
||||
prompt = no
|
||||
default_md = sha256
|
||||
distinguished_name = dn
|
||||
x509_extensions = v3_req
|
||||
|
||||
[dn]
|
||||
CN = CE36AF3D-FF94-43EB-9908-7EC8FD1D29FB
|
||||
|
||||
[v3_req]
|
||||
keyUsage = critical, digitalSignature
|
||||
extendedKeyUsage = codeSigning
|
20
Build/sideload.crt
Normal file
20
Build/sideload.crt
Normal file
@@ -0,0 +1,20 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDMjCCAhqgAwIBAgIUBIWdItfat0Fw6npbHI2W7HE/0KYwDQYJKoZIhvcNAQEL
|
||||
BQAwLzEtMCsGA1UEAwwkQ0UzNkFGM0QtRkY5NC00M0VCLTk5MDgtN0VDOEZEMUQy
|
||||
OUZCMB4XDTI1MDUxMzE3NDgzNVoXDTI4MDUxMjE3NDgzNVowLzEtMCsGA1UEAwwk
|
||||
Q0UzNkFGM0QtRkY5NC00M0VCLTk5MDgtN0VDOEZEMUQyOUZCMIIBIjANBgkqhkiG
|
||||
9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnAtbhjH01YmWv1U98kMj3epdpuZLE04pGXOR
|
||||
xfdBb1zX8Q75hy5SmIaHrsow7fTXfHsUzuJEmanllMbJGUpi46fLsb8Ijd4uQgXO
|
||||
wSDfIXrm34Buzpk6EKwEWmRMyORmfPwy0A+XdTHydDhEXndy1eGPJ1ZZnldVI8Ho
|
||||
ZF2MW35QBZDjlWZh3RppWNMksvlngrOX4PFfJ+DtOQUvNswbpyqVATMFBk9kShGM
|
||||
XHuieibzDlzxGNKSn3tDvutLBW5hm7iLqEuAeM7dwSac4C+N5FKWnXJndkN3k8AN
|
||||
nD0MHlErN1dLoJQqvAaCarZr8RSPhdanVOylMGkt97NLYZrLTQIDAQABo0YwRDAO
|
||||
BgNVHQ8BAf8EBAMCB4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwHQYDVR0OBBYEFJEL
|
||||
e4QaWs4H2djQ6nnnc/30sZ/nMA0GCSqGSIb3DQEBCwUAA4IBAQBYBXkl/vEsGUHI
|
||||
qogCfb/DxFlsm059sxHAIhaNjuoTlgwzgj6KSPbKsfnYVMHZFqkg4AaTuRs9iqTL
|
||||
TStM14OjG95gn+7fJ4zxqquEEytk9yb2xj9ZpLAvzZzUrw5qo1lmM7yPRso38l62
|
||||
9g1G1/MVP6pO03QWKzvSV+IlU3DIP3M2r74G8dexL5/Cut1LkOc/tn2ZYt3Ij95e
|
||||
RM2vqxzK2pw6IAVG3wdNGAyN9K8BATRuAXFV6RXkeEBHFNV3wpyq4W+H6hpsrMJM
|
||||
rMZUUqLa8BTUQAsZ1jmL+dRmj2rESeOaOO9jPks4J4c8+v8aJQBmZhvxRyjyMtdL
|
||||
pWHSCCgm
|
||||
-----END CERTIFICATE-----
|
28
Build/sideload.key
Normal file
28
Build/sideload.key
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCcC1uGMfTViZa/
|
||||
VT3yQyPd6l2m5ksTTikZc5HF90FvXNfxDvmHLlKYhoeuyjDt9Nd8exTO4kSZqeWU
|
||||
xskZSmLjp8uxvwiN3i5CBc7BIN8heubfgG7OmToQrARaZEzI5GZ8/DLQD5d1MfJ0
|
||||
OERed3LV4Y8nVlmeV1UjwehkXYxbflAFkOOVZmHdGmlY0ySy+WeCs5fg8V8n4O05
|
||||
BS82zBunKpUBMwUGT2RKEYxce6J6JvMOXPEY0pKfe0O+60sFbmGbuIuoS4B4zt3B
|
||||
JpzgL43kUpadcmd2Q3eTwA2cPQweUSs3V0uglCq8BoJqtmvxFI+F1qdU7KUwaS33
|
||||
s0thmstNAgMBAAECggEABS51XWPhmt5E5K6Pw4XKNkS207jC68MFJ1oIkE0bsvcf
|
||||
boWORe2vrW6OKSt/627dYZNJXMNI/tyUNIKooSUwr8QzGysE6DJlUSjrNXYszT+i
|
||||
VJqUU1o614c2unT+fbnj01OhMPp2OjHXOK0OTCAQQ/IySYlFqYssgbxJxgdl2+XX
|
||||
rDiSk5PvZ0Z8PUuG7EvNbRAnUmIQDVTd81My0kPk4M0w8Rg2p0sIN5klIDxTzC98
|
||||
5iUvS+53xch4f8jJOr8s7J/56R+tnIoqfVkIDI3Q4CUhq3s0DAC7GP4vpoynGXn0
|
||||
pLzHvOttFbqgcHkS2zrVOXKwl4Zym4p+kMCub6BCmwKBgQDcGzCvrMon4fIJrymG
|
||||
lmGZMeN8acjD0MKDT8JPgHkwXTz61AbOC2EGoOpWNqrYGOCv6xSMPiub1un6Y5X2
|
||||
KIuAJm+bY+py0Ed+EzZjrFkQpGt6xQ3FY2aFvA5uS3esgcF+OtcUrXEEq0dK9bZ6
|
||||
HB9P90QuND72bvfx9wjLon0dvwKBgQC1fcRbLpqA2lSGglcRoioA/okMPyMk7jH3
|
||||
n3IHjnpjsBu1FPrWH8Tqtop4vrEVS1cxM7P7FXWwWPqUH/2XbCk1R3T9ZD+i1kHi
|
||||
qvSqp4L0dfTk6ibZpywGXRnpQzT5kKJTrSSx9L7Ni00HcvCI1+p4XNdJZm7jNDSy
|
||||
dGSPg1ox8wKBgB6TaF//ENYZfRX7TzlzCnvNglx2FX2eMmcrXULOBgfB7AasDYXx
|
||||
7riNAgCX94OtcQj/DwusV0J+yGIQE3TujPJwZHChoJ/ybvwEjzmpZ3X4YTXcydzx
|
||||
wfwx848+zJEaNVbjtZ0Zuul7IZw4JfEwluj04HPKrjRtleP2/THMkLThAoGBAJYh
|
||||
BwB2OJBGCo2J3ARWJHDWHP/oamXuM58mYekmTs+PqhvM0wG1HesaPMlM1KdMvz+Q
|
||||
CV21jrjlocJOBDPx4NSV24yQFKPaoH2j9OgF0SnvOTjzCFgbFSveb8SpN3UJ031s
|
||||
SGJ8lijpBjsXNSm9kdMm2V96QFfpo33LEjQ077NJAoGARnnvnenmfwlu/5Oq2Ojs
|
||||
WWzOxXTpiGXLnbUNUvQMvqXxGygCGoA18vVveLr6eKfojM8iKtGF91S9NsUkBEkd
|
||||
VKOFnc9OQ5dtoBkN6XZBUCmJCzQZS20A3jq9oionsJlIWOgb/X3L1cS2SZ3ocgKS
|
||||
lCCN2IGaKiGJCPJprpFW7fg=
|
||||
-----END PRIVATE KEY-----
|
BIN
Build/sideload.pfx
Normal file
BIN
Build/sideload.pfx
Normal file
Binary file not shown.
10
Scripts/pack-7z.ps1
Normal file
10
Scripts/pack-7z.ps1
Normal file
@@ -0,0 +1,10 @@
|
||||
$version = git describe --always --tags --exclude latest
|
||||
|
||||
Set-Location ../Build
|
||||
|
||||
Write-Output "This file makes QuickLook portable." >> .\Package\portable.lock
|
||||
|
||||
Remove-Item .\QuickLook-$version.7z -ErrorAction SilentlyContinue
|
||||
7z.exe a .\QuickLook-$version.7z .\Package\* -t7z -mx=9 -ms=on -m0=lzma2 -mf=BCJ2 -r -y
|
||||
|
||||
Remove-Item .\Package\portable.lock
|
6
Scripts/pack-all.ps1
Normal file
6
Scripts/pack-all.ps1
Normal file
@@ -0,0 +1,6 @@
|
||||
# Please build the msi installation package in advance
|
||||
powershell -file "$(SolutionDir)Scripts\pack-7z.ps1"
|
||||
powershell -file "$(SolutionDir)Scripts\pack-setup.ps1"
|
||||
powershell -file "$(SolutionDir)Scripts\pack-appx.ps1"
|
||||
powershell -file "$(SolutionDir)Scripts\sign-appx.ps1"
|
||||
Pause
|
@@ -1,35 +0,0 @@
|
||||
$version = git describe --always --tags "--abbrev=0" --exclude latest
|
||||
|
||||
if($version.Split('.').Length.Equals(3))
|
||||
{
|
||||
$version += ".0"
|
||||
}
|
||||
|
||||
function Update-Version($path)
|
||||
{
|
||||
$xml = [xml](Get-Content $path)
|
||||
$xml.Package.Identity.Version="$version"
|
||||
$xml.Save("$path")
|
||||
}
|
||||
|
||||
if(-not (Test-Path env:CI))
|
||||
{
|
||||
# prapare folders
|
||||
Remove-Item -Recurse ..\Build\Appx -ErrorAction SilentlyContinue
|
||||
Copy-Item -Recurse ..\Build\Package ..\Build\Appx\Package
|
||||
Copy-Item -Recurse ..\Build\Assets ..\Build\Appx\Assets
|
||||
Copy-item ..\Build\AppxManifest.dev.xml ..\Build\Appx\AppxManifest.xml
|
||||
|
||||
# set version to git version
|
||||
Update-Version("..\Build\Appx\AppxManifest.xml")
|
||||
|
||||
# generate resources
|
||||
$priExe = 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x86\makepri.exe'
|
||||
.$priExe new /pr ..\Build\Appx /cf ..\Build\priconfig.xml /of ..\Build\Appx\resources.pri
|
||||
|
||||
# packing
|
||||
$packExe = 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x86\makeappx.exe'
|
||||
$folder = '..\Build\Appx\'
|
||||
|
||||
.$packExe pack /l /o /d ..\Build\Appx /p ..\Build\QuickLook-$version.appx
|
||||
}
|
@@ -24,11 +24,11 @@ if(-not (Test-Path env:CI))
|
||||
Update-Version("..\Build\Appx\AppxManifest.xml")
|
||||
|
||||
# generate resources
|
||||
$priExe = 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86\makepri.exe'
|
||||
$priExe = 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86\makepri.exe'
|
||||
.$priExe new /pr ..\Build\Appx /cf ..\Build\priconfig.xml /of ..\Build\Appx\resources.pri
|
||||
|
||||
# packing
|
||||
$packExe = 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86\makeappx.exe'
|
||||
$packExe = 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86\makeappx.exe'
|
||||
$folder = '..\Build\Appx\'
|
||||
|
||||
.$packExe pack /l /o /d ..\Build\Appx /p ..\Build\QuickLook-$version.appx
|
||||
|
@@ -1,16 +1,10 @@
|
||||
$version = git describe --always --tags --exclude latest
|
||||
|
||||
Set-Location ../Build
|
||||
|
||||
Remove-Item .\QuickLook.7z -ErrorAction SilentlyContinue
|
||||
7z a QuickLook.7z .\Package\* -t7z -mx=5 -mf=BCJ2 -r -y
|
||||
Remove-Item .\Package.7z -ErrorAction SilentlyContinue
|
||||
7z a Package.7z .\Package\* -t7z -mx=9 -ms=on -m0=lzma2 -mf=BCJ2 -r -y
|
||||
makemica micasetup.json
|
||||
|
||||
Write-Output "This file makes QuickLook portable." >> .\Package\portable.lock
|
||||
7z a QuickLook.7z .\Package\portable.lock -t7z -mx=5 -mf=BCJ2 -r -y
|
||||
|
||||
$version = git describe --always --tags --exclude latest
|
||||
Remove-Item .\QuickLook-$version.7z -ErrorAction SilentlyContinue
|
||||
Rename-Item .\QuickLook.7z QuickLook-$version.7z
|
||||
Remove-Item .\QuickLook-$version.exe -ErrorAction SilentlyContinue
|
||||
Rename-Item .\QuickLook.exe QuickLook-$version.exe
|
||||
|
||||
pause
|
||||
Remove-Item .\Package.7z -ErrorAction SilentlyContinue
|
@@ -1,5 +1,22 @@
|
||||
$signExe = 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x86\signtool.exe'
|
||||
$files = gci '..\Build\QuickLook-*.appx' | %{('"{0}"' -f $_.FullName)}
|
||||
$opensslExe = 'C:\Program Files\Git\usr\bin\openssl.exe'
|
||||
$signExe = 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86\signtool.exe'
|
||||
$timestampUrl = 'http://time.certum.pl/'
|
||||
$version = git describe --always --tags "--abbrev=0" --exclude latest
|
||||
|
||||
.$signExe sign /a /v /fd sha256 /t $timestampUrl $files
|
||||
if($version.Split('.').Length.Equals(3))
|
||||
{
|
||||
$version += ".0"
|
||||
}
|
||||
|
||||
Set-Location ../Build
|
||||
|
||||
if (-not (Test-Path sideload.key)) {
|
||||
.$opensslExe genrsa -out "sideload.key" 2048
|
||||
}
|
||||
if (-not (Test-Path sideload.pfx)) {
|
||||
.$opensslExe req -new -x509 -days 825 -key "sideload.key" -out "sideload.crt" -config "openssl-sign.cnf" -subj "/CN=CE36AF3D-FF94-43EB-9908-7EC8FD1D29FB"
|
||||
.$opensslExe pkcs12 -export -out "sideload.pfx" -inkey "sideload.key" -in "sideload.crt" -password pass:123456
|
||||
}
|
||||
|
||||
.$signExe sign /fd sha256 /f "sideload.pfx" /p 123456 /td sha256 /tr $timestampUrl QuickLook-$version.appx
|
||||
.$signExe verify /pa /v QuickLook-$version.appx
|
||||
|
Reference in New Issue
Block a user