Skip to content

Commit 0713508

Browse files
committed
集成 MicaForEveryone 并实现基于 XAML Island 的插件商店页面
0 parents  commit 0713508

File tree

1,132 files changed

+154006
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,132 files changed

+154006
-0
lines changed

.appveyor.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
version: '{build}'
2+
branches:
3+
only:
4+
- master
5+
skip_branch_with_pr: true
6+
image: Visual Studio 2022
7+
configuration: Release
8+
platform: Any CPU
9+
clone_script:
10+
- cmd: >-
11+
git clone -q --branch=%APPVEYOR_REPO_BRANCH% https://github.com/%APPVEYOR_REPO_NAME%.git %APPVEYOR_BUILD_FOLDER%
12+
13+
cd %APPVEYOR_BUILD_FOLDER%
14+
15+
git checkout -qf %APPVEYOR_REPO_COMMIT%
16+
17+
git submodule update --init --recursive
18+
cache:
19+
- packages -> **\packages.config
20+
- '%USERPROFILE%\.nuget\packages -> **\project.json'
21+
before_build:
22+
- ps: >-
23+
$env:GIT_TAG = git describe --always --tags --exclude latest
24+
25+
nuget restore -verbosity detailed
26+
build:
27+
verbosity: minimal
28+
after_build:
29+
- ps: >-
30+
Get-Content GitVersion.cs
31+
32+
Move-Item Build\QuickLook-$env:GIT_TAG.msi QuickLook-$env:GIT_TAG.msi
33+
34+
Move-Item Build\QuickLook-$env:GIT_TAG.zip QuickLook-$env:GIT_TAG.zip
35+
36+
artifacts:
37+
- path: QuickLook-%GIT_TAG%.zip
38+
name: QuickLook-%GIT_TAG%
39+
- path: QuickLook-%GIT_TAG%.msi
40+
name: QuickLook-%GIT_TAG%
41+
# deploy:
42+
# - provider: GitHub
43+
# auth_token:
44+
# secure: 5CSvkfKBq9kUho529L1tkH5ywQQFJY/A8Y6lNoHGJFi7mnSqQAaoiVPbUVU4a/KC
45+
# artifact: QuickLook-$(APPVEYOR_REPO_TAG_NAME)
46+
# draft: true
47+
# on:
48+
# APPVEYOR_REPO_TAG: true
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
name: Bug report
3+
about: Report bugs in Mica For Everyone itself. This can't be about rendering issues
4+
in other apps.
5+
title: ''
6+
labels: bug
7+
8+
---
9+
10+
[ ] This is not about other apps being displayed weird or etc.
11+
[ ] This is not about rendering issues that caused by a bug in the Windows.
12+
[ ] I've read [FAQ](https://github.com/MicaForEveryone/MicaForEveryone/wiki/FAQ).
13+
[ ] I've checked other issues and this is not a duplicate.
14+
15+
**Describe the bug**
16+
A clear and concise description of what the bug is.
17+
18+
**To Reproduce**
19+
Steps to reproduce the behavior:
20+
1. Go to '...'
21+
2. Click on '....'
22+
3. Scroll down to '....'
23+
4. See error
24+
25+
**Expected behavior**
26+
A clear and concise description of what you expected to happen.
27+
28+
**Screenshots**
29+
If applicable, add screenshots to help explain your problem.
30+
31+
**Windows Version**
32+
E.g. Windows 10 build 19042, Windows 11 Build 22000, Windows 11 Build 25217 Insider Dev Channel, ...
33+
34+
**Additional context**
35+
Add any other context about the problem here.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: enhancement
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
---
2+
name: Third-Party problems
3+
about: Issues related to third-party apps being displayed or rendered incorrectly
4+
when Mica For Everyone is running.
5+
title: ''
6+
labels: third-party
7+
assignees: ''
8+
9+
---
10+
11+
[ ] I've read [FAQ](https://github.com/MicaForEveryone/MicaForEveryone/wiki/FAQ).
12+
[ ] I've restarted the affected app after adding rule for it.
13+
[ ] I've checked other issues and this is not a duplicate.
14+
15+
**Describe the bug**
16+
A clear and concise description of what the bug is. Problems with third-party apps is not our priority and prefer finding a workaround on your own. Check our wiki for more help.
17+
18+
**Rule**
19+
The rule used for the target application
20+
21+
**Target Application**
22+
- Application Name
23+
- Application Version
24+
25+
**To Reproduce**
26+
Steps to reproduce the behavior:
27+
1. Go to '...'
28+
2. Click on '....'
29+
3. Scroll down to '....'
30+
4. See error
31+
32+
**Expected behavior**
33+
A clear and concise description of what you expected to happen.
34+
35+
**Screenshots**
36+
If applicable, add screenshots to help explain your problem.
37+
38+
**Windows Version**
39+
E.g. Windows 10 build 19042, Windows 11 Build 22000, Windows 11 Build 25217 Insider Dev Channel, ...
40+
41+
**Other tools being used**
42+
[ ] Rectify11
43+
[ ] StartIsBack
44+
[ ] Chrome/Firefox themes or config to add system backdrop
45+
[ ] Add it yourself (Any other tool that you may use)
46+
47+
**Additional context**
48+
Add any other context about the problem here.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
## PR Checklist
2+
- [ ] Functionality has been tested, no obvious bugs
3+
- [ ] Code style follows project conventions
4+
- [ ] Documentation/comments updated (if applicable)
5+
6+
## Brief Description of Changes
7+
Please briefly describe the main changes in this PR:
8+
9+
## Related Issue (if any)
10+
Please provide related issue numbers:
11+
12+
## Additional Notes
13+
Add any extra notes here:
14+

.github/dependabot.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
5+
schedule:
6+
interval: "daily"
7+
- package-ecosystem: "nuget"
8+
directory: "/"
9+
schedule:
10+
interval: "daily"

.github/workflows/ci.yml

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ "main" ]
6+
tags:
7+
- "v*"
8+
branches-ignore:
9+
- gh-pages
10+
pull_request:
11+
branches: [ "main" ]
12+
branches-ignore:
13+
- gh-pages
14+
15+
jobs:
16+
build_nonpackaged:
17+
strategy:
18+
matrix:
19+
configuration: [Debug, Release]
20+
platform: [x64]
21+
runs-on: windows-latest
22+
23+
env:
24+
ZIP_FILE: MicaForEveryone-${{ matrix.platform }}-${{ matrix.configuration }}.zip
25+
INSTALLER_FILE_BASE_NAME: MicaForEveryone-${{ matrix.platform }}-${{ matrix.configuration }}-Installer
26+
RELEASE_DIR: Release
27+
28+
steps:
29+
- name: Checkout
30+
uses: actions/checkout@v4
31+
with:
32+
fetch-depth: 0
33+
- name: Get Version
34+
id: get_version
35+
uses: MicaForEveryone/get-version-action@v2.3.1
36+
if: startsWith(github.ref, 'refs/tags/v')
37+
- name: Add msbuild to PATH
38+
uses: microsoft/setup-msbuild@v1.3
39+
40+
# Zip
41+
- name: Build the application
42+
run: msbuild MicaForEveryone\MicaForEveryone.csproj /restore /p:BuildingInCI=true /p:Configuration=${{ matrix.configuration }} /p:Platform=${{ matrix.platform }} /p:ReleaseDirectory=..\${{ env.RELEASE_DIR }} /p:ZipName=${{ env.ZIP_FILE }} /t:ReleaseZip
43+
- name: Upload ZIP artifact
44+
uses: actions/upload-artifact@v3
45+
with:
46+
name: ${{ env.ZIP_FILE }}
47+
path: ${{ env.RELEASE_DIR }}\${{ env.ZIP_FILE }}
48+
if-no-files-found: error
49+
50+
# Installer
51+
- name: Build Installer
52+
run: iscc Installer.iss /O${{ env.RELEASE_DIR }}
53+
env:
54+
Source: MicaForEveryone\bin\${{ matrix.platform }}\${{ matrix.configuration }}\netcoreapp3.1
55+
VERSION: ${{ startsWith(github.ref, 'refs/tags/v') && steps.get_version.outputs.version-without-v || '0.0.0.0' }} # Use version tag if available, else use 0.0.0.0
56+
- name: Upload installer artifact
57+
uses: actions/upload-artifact@v3
58+
with:
59+
name: ${{ env.INSTALLER_FILE_BASE_NAME }}
60+
path: ${{ env.RELEASE_DIR }}\${{ env.INSTALLER_FILE_BASE_NAME }}.exe
61+
if-no-files-found: error
62+
63+
build_packaged:
64+
strategy:
65+
matrix:
66+
configuration: [Debug, Release]
67+
platform: [x64]
68+
runs-on: windows-latest
69+
70+
env:
71+
MSIX_FILE: MicaForEveryone-${{ matrix.platform }}-${{ matrix.configuration }}.msix
72+
RELEASE_DIR: Release
73+
74+
steps:
75+
- name: Checkout
76+
uses: actions/checkout@v4
77+
with:
78+
fetch-depth: 0
79+
- name: Get Version
80+
id: get_version
81+
uses: MicaForEveryone/get-version-action@v2.3.1
82+
if: startsWith(github.ref, 'refs/tags/v')
83+
- name: Add msbuild to PATH
84+
uses: microsoft/setup-msbuild@v1.3
85+
86+
- name: Package MSIX
87+
run: msbuild MicaForEveryone.Package\MicaForEveryone.Package.wapproj /restore /p:BuildingInCI=true /p:Configuration=${{ matrix.configuration }} /p:AppxBundle=Never /p:Platform=${{ matrix.platform }} /p:ErrorOnDuplicatePublishOutputFiles=false /p:ReleaseDirectory=..\${{ env.RELEASE_DIR }} /p:MsixName=${{ env.MSIX_FILE }} /t:ReleaseMsix
88+
- name: Sign Package
89+
env:
90+
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
91+
if: "${{ env.KEY_PASSWORD != '' }}"
92+
run: '& "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x64\signtool.exe" sign /fd SHA256 /a /f MicaForEveryone.pfx /p "${{ secrets.KEY_PASSWORD }}" ${{ env.RELEASE_DIR }}\${{ env.MSIX_FILE }}'
93+
- name: Upload MSIX
94+
uses: actions/upload-artifact@v3
95+
with:
96+
name: ${{ env.MSIX_FILE }}
97+
path: ${{ env.RELEASE_DIR }}\${{ env.MSIX_FILE }}
98+
if-no-files-found: error
99+
100+
release:
101+
needs: [build_nonpackaged, build_packaged]
102+
runs-on: ubuntu-latest
103+
if: startsWith(github.ref, 'refs/tags/v')
104+
105+
steps:
106+
- uses: actions/download-artifact@v3
107+
with:
108+
path: artifacts
109+
- name: Release
110+
uses: softprops/action-gh-release@v1
111+
with:
112+
draft: true
113+
files: artifacts/**/*
114+
115+
winget:
116+
needs: [release]
117+
runs-on: ubuntu-latest
118+
steps:
119+
- uses: vedantmgoyal2009/winget-releaser@v2
120+
with:
121+
identifier: MicaForEveryone.MicaForEveryone
122+
installers-regex: 'MicaForEveryone-\w+-Release-Installer\.exe$'
123+
token: ${{ secrets.WINGET_TOKEN }}

.github/workflows/msbuild.yml

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# run a build for the latest version and upload the artifacts to a "latest" pre-release
2+
3+
name: build
4+
5+
on:
6+
push:
7+
branches: [ "master" ]
8+
pull_request:
9+
branches: [ "master" ]
10+
workflow_dispatch:
11+
12+
env:
13+
# Path to the solution file relative to the root of the project.
14+
SOLUTION_FILE_PATH: ./QuickLook.sln
15+
16+
# Configuration type to build.
17+
# You can convert this to a build matrix if you need coverage of multiple configuration types.
18+
# https://docs.github.com/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
19+
BUILD_CONFIGURATION: Release
20+
21+
permissions:
22+
contents: read
23+
24+
jobs:
25+
build:
26+
runs-on: windows-latest
27+
28+
steps:
29+
- uses: actions/checkout@v4
30+
with:
31+
submodules: recursive
32+
fetch-depth: 0
33+
ref: master
34+
35+
- name: Add MSBuild to PATH
36+
uses: microsoft/setup-msbuild@v1.1.3
37+
38+
- name: Restore NuGet packages
39+
working-directory: ${{env.GITHUB_WORKSPACE}}
40+
run: nuget restore ${{env.SOLUTION_FILE_PATH}}
41+
42+
- name: Build
43+
working-directory: ${{env.GITHUB_WORKSPACE}}
44+
# Add additional options to the MSBuild command line here (like platform or verbosity level).
45+
# See https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference
46+
run: msbuild /m /p:BuildInParallel=true /p:Configuration=${{env.BUILD_CONFIGURATION}} ${{env.SOLUTION_FILE_PATH}}
47+
48+
# upload msi and zip artifacts so the publish job below can download and then update latest release via Linux
49+
- uses: actions/upload-artifact@v6
50+
with:
51+
name: quicklook-build-files
52+
path: Build/QuickLook-*.*
53+
54+
publish:
55+
# don't run in parallel - wait for build to complete first
56+
needs: build
57+
58+
# one of the steps uses container action which is Linux only
59+
runs-on: ubuntu-latest
60+
61+
permissions: write-all
62+
63+
# only run this job on push events, not pull_request
64+
if: github.event_name == 'push'
65+
66+
steps:
67+
- uses: actions/download-artifact@v6
68+
with:
69+
name: quicklook-build-files
70+
71+
- name: Update latest release
72+
# see https://github.com/pyTooling/Actions/tree/r6/releaser
73+
uses: pyTooling/Actions/releaser@r6
74+
with:
75+
tag: latest
76+
rm: true
77+
token: ${{ secrets.GITHUB_TOKEN }}
78+
files: QuickLook-*.*
79+
80+

0 commit comments

Comments
 (0)