├── .gitignore
├── .github
├── CODEOWNERS
├── dependabot.yml
└── workflows
│ ├── pull_request.yml
│ ├── schedule.yml
│ ├── issue_comment.yml
│ ├── issue.yml
│ └── ci.yml
├── .vscode
└── settings.json
├── test
└── Scoop-Bucket.Tests.ps1
├── bin
├── checkver.ps1
├── checkurls.ps1
├── formatjson.ps1
├── checkhashes.ps1
├── missing-checkver.ps1
├── auto-pr.ps1
└── test.ps1
├── .gitattributes
├── .editorconfig
├── bucket
├── regester.json
├── edrawmax8.json
├── aboboo-full.json
├── aboboo.json
├── mpv.net-cm.json
├── kingdraw.json
├── freetex.json
├── malware-patch.json
├── wifi-crack-tool.json
├── revoke-msg-patcher.json
├── evplayer.json
├── subrenamer.json
├── edgeless.json
├── pixpin.json
├── heu-kms-activator.json
├── evcapture.json
├── ting-en.json
├── ting-de.json
├── ting-es.json
├── ting-fr.json
├── feeluown.json
├── adrive.json
├── dashplayer.json
├── texstudio-cn.json
├── fishing-funds.json
├── eudic.json
├── lyx-cn.json
├── dingtalk.json
├── lky-officetools.json
├── navicat-premium-lite-cn.json
├── weasel.json
├── blender-cn.json
├── cnkiexpress.json
├── wegame.json
├── qt-creator-cn.json
├── reader.json
├── douyin.json
├── qqmusic.json
├── edrawmax.json
├── dehelper.json
├── eshelper.json
├── frhelper.json
├── ffmpegfreeui.json
├── wpsoffice-cn.json
├── partition-assistant.json
├── m3u8-downloader.json
├── downkyi.json
├── jianying-pro.json
├── yuque.json
├── octave-cn.json
├── pot-desktop.json
├── julia-cn.json
├── utools.json
├── aigcpanel.json
├── videocaptioner.json
├── hbuilderx.json
├── tencent-meeting.json
├── feishu.json
├── esearch.json
├── tim.json
├── baidupcs-go.json
├── misakatranslator.json
├── i4tools.json
├── lx-music.json
├── inkscape-cn.json
├── vlc-cn.json
├── wechatdevtools.json
├── cajviewer.json
├── baidunetdisk.json
├── git-cn.json
├── obs-studio-cn.json
├── kicad-cn.json
├── neteasemusic.json
├── msys2-cn.json
├── quarkclouddrive.json
├── vscode-win7.json
├── miniforge-cn.json
├── phpstudy-lagecy-scoop.json
├── gimp-cn.json
├── libreoffice-cn.json
└── gimp-cn-dev.json
├── LICENSE
├── scripts
└── AppsUtils.psm1
└── README.md
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | * @ivaquero
2 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "cmake.configureOnOpen": false
3 | }
4 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | - package-ecosystem: github-actions
4 | directory: '/.github/workflows'
5 | schedule:
6 | interval: monthly
7 |
--------------------------------------------------------------------------------
/test/Scoop-Bucket.Tests.ps1:
--------------------------------------------------------------------------------
1 | if (!$env:SCOOP_HOME) {
2 | $env:SCOOP_HOME = Resolve-Path (Split-Path (Split-Path (scoop which scoop)))
3 | }
4 | . "$env:SCOOP_HOME\test\Import-Bucket-Tests.ps1"
5 |
--------------------------------------------------------------------------------
/bin/checkver.ps1:
--------------------------------------------------------------------------------
1 | if (!$env:SCOOP_HOME) { $env:SCOOP_HOME = Convert-Path (scoop prefix scoop) }
2 | $checkver = "$env:SCOOP_HOME/bin/checkver.ps1"
3 | $dir = "$PSScriptRoot/../bucket"
4 | & $checkver -Dir $dir @Args
5 |
--------------------------------------------------------------------------------
/bin/checkurls.ps1:
--------------------------------------------------------------------------------
1 | if (!$env:SCOOP_HOME) { $env:SCOOP_HOME = Convert-Path (scoop prefix scoop) }
2 | $checkurls = "$env:SCOOP_HOME/bin/checkurls.ps1"
3 | $dir = "$PSScriptRoot/../bucket"
4 | & $checkurls -Dir $dir @Args
5 |
--------------------------------------------------------------------------------
/bin/formatjson.ps1:
--------------------------------------------------------------------------------
1 | if (!$env:SCOOP_HOME) { $env:SCOOP_HOME = Convert-Path (scoop prefix scoop) }
2 | $formatjson = "$env:SCOOP_HOME/bin/formatjson.ps1"
3 | $path = "$PSScriptRoot/../bucket"
4 | & $formatjson -Dir $path @Args
5 |
--------------------------------------------------------------------------------
/bin/checkhashes.ps1:
--------------------------------------------------------------------------------
1 | if (!$env:SCOOP_HOME) { $env:SCOOP_HOME = Convert-Path (scoop prefix scoop) }
2 | $checkhashes = "$env:SCOOP_HOME/bin/checkhashes.ps1"
3 | $dir = "$PSScriptRoot/../bucket"
4 | & $checkhashes -Dir $dir @Args
5 |
--------------------------------------------------------------------------------
/bin/missing-checkver.ps1:
--------------------------------------------------------------------------------
1 | if (!$env:SCOOP_HOME) { $env:SCOOP_HOME = Convert-Path (scoop prefix scoop) }
2 | $missing_checkver = "$env:SCOOP_HOME/bin/missing-checkver.ps1"
3 | $dir = "$PSScriptRoot/../bucket"
4 | & $missing_checkver -Dir $dir @Args
5 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Since Scoop is a Windows-only tool, we can safely use CRLF line endings for all text files.
2 | # If Git decides that the content is text, its line endings will be normalized to CRLF in the working tree on checkout.
3 | # In the Git index/repository the files will always be stored with LF line endings. This is fine.
4 | * text=auto eol=crlf
5 |
--------------------------------------------------------------------------------
/bin/auto-pr.ps1:
--------------------------------------------------------------------------------
1 | #Requires -Version 5.1
2 | param(
3 | # overwrite upstream param
4 | [String]$upstream = 'scoopforge/main-plus:main'
5 | )
6 |
7 | if (!$env:SCOOP_HOME) { $env:SCOOP_HOME = Convert-Path (scoop prefix scoop) }
8 | $autopr = "$env:SCOOP_HOME/bin/auto-pr.ps1"
9 | $dir = "$PSScriptRoot/../bucket"
10 | & $autopr -Dir $dir -Upstream $Upstream @Args
11 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | # EditorConfig (is awesome): http://EditorConfig.org
2 |
3 | # * top-most EditorConfig file
4 | root = true
5 |
6 | # default style settings
7 | [*]
8 | charset = utf-8
9 | end_of_line = crlf
10 | indent_size = 4
11 | indent_style = space
12 | insert_final_newline = true
13 | trim_trailing_whitespace = true
14 |
15 | [*.{yml,yaml}]
16 | indent_size = 2
17 |
--------------------------------------------------------------------------------
/.github/workflows/pull_request.yml:
--------------------------------------------------------------------------------
1 | on:
2 | pull_request_target:
3 | types: [opened]
4 | name: Pull Requests
5 | jobs:
6 | pullRequestHandler:
7 | name: PullRequestHandler
8 | runs-on: windows-latest
9 | steps:
10 | - uses: actions/checkout@main
11 | - name: PullRequestHandler
12 | uses: ScoopInstaller/GithubActions@main
13 | env:
14 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
15 |
--------------------------------------------------------------------------------
/.github/workflows/schedule.yml:
--------------------------------------------------------------------------------
1 | on:
2 | workflow_dispatch:
3 | schedule:
4 | # run every 12 hours
5 | - cron: "20 */12 * * *"
6 | name: Excavator
7 | jobs:
8 | excavate:
9 | name: Excavate
10 | runs-on: windows-latest
11 | steps:
12 | - uses: actions/checkout@main
13 | - name: Excavate
14 | uses: ScoopInstaller/GithubActions@main
15 | env:
16 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
17 | SKIP_UPDATED: "1"
18 |
--------------------------------------------------------------------------------
/.github/workflows/issue_comment.yml:
--------------------------------------------------------------------------------
1 | on:
2 | issue_comment:
3 | types: [created]
4 | name: Commented Pull Request
5 | jobs:
6 | pullRequestHandler:
7 | name: PullRequestHandler
8 | runs-on: windows-latest
9 | steps:
10 | - uses: actions/checkout@main
11 | - name: PullRequestHandler
12 | uses: ScoopInstaller/GithubActions@main
13 | if: startsWith(github.event.comment.body, '/verify')
14 | env:
15 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
16 |
--------------------------------------------------------------------------------
/bucket/regester.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0.1",
3 | "description": "测试和分析正则表达式工具",
4 | "homepage": "https://deerchao.cn/tools/regester/index.htm",
5 | "license": "Freeware",
6 | "url": "https://deerchao.cn/tools/regester/regester.zip",
7 | "hash": "14139c90d02718110c45db08c198b6f6f3ac6f13d28d4a8f590a42d47f909c92",
8 | "shortcuts": [
9 | [
10 | "Regester.exe",
11 | "Regester"
12 | ]
13 | ],
14 | "extract_dir": "Regester"
15 | }
16 |
--------------------------------------------------------------------------------
/bucket/edrawmax8.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "8.4",
3 | "description": "集两百多种绘图于一身的综合图形图表设计软件(历史版本)",
4 | "homepage": "https://edrawsoft.cn/download-edrawmax.html",
5 | "license": "Proprietary",
6 | "url": "https://edrawsoft.cn/2download/edrawmax-cn8.4.exe",
7 | "hash": "bbeb55432a9e2cff6f2c9b81488f77d5968b59ad02b4b8c26a0b380d0a142133",
8 | "innosetup": true,
9 | "shortcuts": [
10 | [
11 | "EdrawMax.exe",
12 | "亿图图示"
13 | ]
14 | ]
15 | }
16 |
--------------------------------------------------------------------------------
/bin/test.ps1:
--------------------------------------------------------------------------------
1 | #Requires -Version 5.1
2 | #Requires -Modules @{ ModuleName = 'BuildHelpers'; ModuleVersion = '2.0.1' }
3 | #Requires -Modules @{ ModuleName = 'Pester'; ModuleVersion = '5.2.0' }
4 |
5 | $pesterConfig = New-PesterConfiguration -Hashtable @{
6 | Run = @{
7 | Path = "$PSScriptRoot/.."
8 | PassThru = $true
9 | }
10 | Output = @{
11 | Verbosity = 'Detailed'
12 | }
13 | }
14 | $result = Invoke-Pester -Configuration $pesterConfig
15 | exit $result.FailedCount
16 |
--------------------------------------------------------------------------------
/.github/workflows/issue.yml:
--------------------------------------------------------------------------------
1 | on:
2 | issues:
3 | types: [opened, labeled]
4 | name: Issues
5 | jobs:
6 | issueHandler:
7 | name: IssueHandler
8 | runs-on: windows-latest
9 | steps:
10 | - uses: actions/checkout@main
11 | - name: IssueHandler
12 | uses: ScoopInstaller/GithubActions@main
13 | if: github.event.action == 'opened' || (github.event.action == 'labeled' && contains(github.event.issue.labels.*.name, 'verify'))
14 | env:
15 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
16 |
--------------------------------------------------------------------------------
/bucket/aboboo-full.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.9.7",
3 | "description": "学外语必备神器",
4 | "homepage": "http://aboboo.com/",
5 | "license": "Freeware",
6 | "url": "https://download.aboboo.com/release/Aboboo.Full.3.9.7.zip",
7 | "shortcuts": [
8 | [
9 | "Aboboo.exe",
10 | "Aboboo"
11 | ]
12 | ],
13 | "checkver": {
14 | "url": "https://aboboo.com/g/#/changelog",
15 | "regex": "(V\\d[\\.\\d+]+)"
16 | },
17 | "autoupdate": {
18 | "url": "https://download.aboboo.com/release/Aboboo.Full.$version.zip"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/bucket/aboboo.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.10.4",
3 | "description": "学外语必备神器",
4 | "homepage": "http://aboboo.com/",
5 | "license": "Freeware",
6 | "url": "https://download.aboboo.com/release/Aboboo.Portable.3.10.4.zip",
7 | "hash": "01df7d3746d9477c6b2464060675de7baed50a004dfcf648c9faf8739ef2a21d",
8 | "shortcuts": [
9 | [
10 | "Aboboo.exe",
11 | "Aboboo"
12 | ]
13 | ],
14 | "checkver": {
15 | "url": "https://aboboo.com/g/#/changelog",
16 | "regex": "(V\\d[\\.\\d+]+)"
17 | },
18 | "autoupdate": {
19 | "url": "https://download.aboboo.com/release/Aboboo.Portable.$version.zip"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/bucket/mpv.net-cm.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "6032-20230128",
3 | "description": "基于 mpv.net 上游的中文分支模组",
4 | "homepage": "https://hooke007.github.io/index2#mpvnetcm",
5 | "license": "GPL-2.0-only",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/hooke007/mpv.net_CM/releases/download/6032re/mpvnet-CM-obs.exe/#dl.7z",
9 | "hash": "80674dc6989c29d1fdb9c6868cdb9b764260d501259fba85f34a130af31ea101",
10 | "extract_dir": "mpvnet"
11 | }
12 | },
13 | "extract_dir": "mpvnet",
14 | "bin": "mpvnet.exe",
15 | "shortcuts": [
16 | [
17 | "mpvnet.exe",
18 | "mpvnet"
19 | ]
20 | ]
21 | }
22 |
--------------------------------------------------------------------------------
/bucket/kingdraw.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.0.2.20",
3 | "description": "专业型化学结构式编辑器",
4 | "homepage": "http://kingdraw.cn/",
5 | "license": "Freeware",
6 | "url": "https://windowsdownload.kingdraw.cn/KingDrawPCV3/KingDrawPc_V3.0.2.20-zh-cn.exe",
7 | "hash": "be545944e9d431130afab99cabbfeba891b91ea630b93f0a447b25a5b7f12af4",
8 | "shortcuts": [
9 | [
10 | "KingDraw.exe",
11 | "KingDraw"
12 | ]
13 | ],
14 | "checkver": {
15 | "url": "http://kingdraw.cn/js/public.js",
16 | "regex": "KingDrawPc_V([\\d.]+)-zh-cn.exe"
17 | },
18 | "autoupdate": {
19 | "url": "http://windows.download.kingdraw.cn/KingDrawPc_V$version-zh-cn.exe"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/bucket/freetex.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.0.0",
3 | "description": "一个免费的公式智能识别软件",
4 | "homepage": "https://xdxsb.top/FreeTex/",
5 | "license": "GPL-3.0-only",
6 | "url": "https://github.com/zstar1003/FreeTex/releases/download/v1.0.0/FreeTex_setup_v1.0.0.exe",
7 | "hash": "fa81110021933868f4f9089430cf5561d90f6570c475eef1ee1351caa70d4df5",
8 | "innosetup": true,
9 | "shortcuts": [
10 | [
11 | "FreeTex.exe",
12 | "FreeTex"
13 | ]
14 | ],
15 | "checkver": {
16 | "github": "https://github.com/zstar1003/FreeTex"
17 | },
18 | "autoupdate": {
19 | "url": "https://github.com/zstar1003/FreeTex/releases/download/v$version/FreeTex_setup_v$version.exe"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/bucket/malware-patch.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.18.0",
3 | "description": "Prevent UAC authorization of Chinese malware",
4 | "homepage": "https://github.com/the1812/Malware-Patch",
5 | "license": "MIT",
6 | "url": "https://github.com/the1812/Malware-Patch/releases/download/v2.18.0/mwp.unbundled.zip",
7 | "hash": "271fe0efc445ca6643b1939cf412f02680ce0e204761d727ecf27cf0f0a9f1e0",
8 | "shortcuts": [
9 | [
10 | "mwp.exe",
11 | "Malware Patch"
12 | ]
13 | ],
14 | "checkver": {
15 | "github": "https://github.com/the1812/Malware-Patch"
16 | },
17 | "autoupdate": {
18 | "url": "https://github.com/the1812/Malware-Patch/releases/download/v$version/mwp.unbundled.zip"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/bucket/wifi-crack-tool.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.2.5",
3 | "description": "WiFi 密码暴力破解工具",
4 | "homepage": "https://github.com/baihengaead/wifi-crack-tool",
5 | "license": "MIT",
6 | "url": "https://github.com/baihengaead/wifi-crack-tool/releases/download/v1.2.5/wifi_crack_tool_v1.2.5_x64_release.exe",
7 | "hash": "a04aec39facd2253b3d3a21b03e3176cedf4c46d1269eaaa6833de83fc7a90e3",
8 | "shortcuts": [
9 | [
10 | "wifi_crack_tool_v1.2.5_x64_release.exe",
11 | "wifi-crack-tool"
12 | ]
13 | ],
14 | "checkver": {
15 | "github": "https://github.com/baihengaead/wifi-crack-tool"
16 | },
17 | "autoupdate": {
18 | "url": "https://github.com/baihengaead/wifi-crack-tool/releases/download/v$version/wifi_crack_tool_v$version_x64_release.exe"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/bucket/revoke-msg-patcher.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.1",
3 | "description": "PC 版微信/QQ/TIM 防撤回补丁",
4 | "homepage": "https://github.com/huiyadanli/RevokeMsgPatcher",
5 | "license": "GPL-3.0-or-later",
6 | "url": "https://github.com/huiyadanli/RevokeMsgPatcher/releases/download/2.1/RevokeMsgPatcher.v2.1.zip",
7 | "hash": "9febecbbe2b9973feb7411944a3abe3249b99159b35fdd7b0c42402cc7ac9789",
8 | "extract_dir": "RevokeMsgPatcher.v2.1",
9 | "shortcuts": [
10 | [
11 | "RevokeMsgPatcher.exe",
12 | "RevokeMsgPatcher"
13 | ]
14 | ],
15 | "checkver": "github",
16 | "autoupdate": {
17 | "url": "https://github.com/huiyadanli/RevokeMsgPatcher/releases/download/$version/RevokeMsgPatcher.v$version.zip",
18 | "extract_dir": "RevokeMsgPatcher.v$version"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/bucket/evplayer.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.5.7",
3 | "description": "轻量、小巧的视频播放器",
4 | "homepage": "https://ieway.cn/evplayer.html",
5 | "license": "Freeware",
6 | "url": "https://ctpublic.ieway.cn/public/download/EVPlayer_v3.5.7.exe",
7 | "shortcuts": [
8 | [
9 | "EVPlayer_v3.5.7.exe",
10 | "EVPlayer"
11 | ]
12 | ],
13 | "checkver": {
14 | "url": "https://ieway.cn/evplayer.html",
15 | "regex": "([\\d.]+)",
20 | "autoupdate": {
21 | "architecture": {
22 | "64bit": {
23 | "url": "https://mirror.nju.edu.cn/github-release/texstudio-org/texstudio/LatestRelease/texstudio-$version-win-portable-qt6.zip"
24 | }
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/bucket/fishing-funds.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "8.5.0",
3 | "description": "基金,大盘,股票,虚拟货币状态栏显示小应用",
4 | "homepage": "https://github.com/1zilc/fishing-funds",
5 | "license": "LGPL-3.0-only",
6 | "url": "https://github.com/1zilc/fishing-funds/releases/download/v8.5.0/Fishing-Funds-Setup-8.5.0.exe#/dl.7z",
7 | "hash": "e52fc0b4f9dbe5dc5783e98ce23a9b916039531c43b66aa16c97823cebe73b53",
8 | "shortcuts": [
9 | [
10 | "Fishing Funds.exe",
11 | "Fishing Funds"
12 | ]
13 | ],
14 | "pre_install": [
15 | "Expand-7zipArchive \"$dir\\`$PLUGINSDIR\\app-64.7z\" \"$dir\"",
16 | "Move-Item \"$dir\\`$R0\\*\" \"$dir\"",
17 | "Remove-Item \"$dir\\`$PLUGINSDIR\",\"$dir\\`$R0\" -Force -Recurse"
18 | ],
19 | "checkver": {
20 | "github": "https://github.com/1zilc/fishing-funds"
21 | },
22 | "autoupdate": {
23 | "url": "https://github.com/1zilc/fishing-funds/releases/download/$version/Fishing-Funds-Setup-$version.exe#/dl.7z"
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/bucket/eudic.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2025-02-21",
3 | "description": "权威的英语词典软件,英语学习者必备的工具",
4 | "homepage": "https://eudic.net/",
5 | "license": "Freeware",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://static.frdic.com/pkg/eudic_win.zip"
9 | },
10 | "32bit": {
11 | "url": "https://static.frdic.com/pkg/eudic_win32.zip"
12 | }
13 | },
14 | "installer": {
15 | "script": [
16 | "Expand-7ZipArchive \"$dir\\eudic_win.exe\" \"$dir\\\" -Removal",
17 | "Expand-7ZipArchive \"$dir\\app.7z\" \"$dir\" -Removal",
18 | "Remove-Item \"$dir\\uninst.exe.nsis\",\"$dir\\`$PLUGINSDIR\" -Force -Recurse"
19 | ]
20 | },
21 | "shortcuts": [
22 | [
23 | "eudic.exe",
24 | "欧路词典"
25 | ]
26 | ],
27 | "checkver": {
28 | "url": "https://eudic.net/v4/en/app/download",
29 | "regex": "[\\d]+)-Installer-(?[\\d]+)-x64.exe"
22 | },
23 | "autoupdate": {
24 | "architecture": {
25 | "64bit": {
26 | "url": "https://mirrors.ustc.edu.cn/lyx/bin/$version/LyX-$cleanVersion-Installer-$matchBuild-x64.exe#/dl.7z"
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/bucket/dingtalk.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "7.8.8.250704005",
3 | "description": "钉钉",
4 | "homepage": "https://www.dingtalk.com/",
5 | "license": {
6 | "identifier": "Freeware"
7 | },
8 | "url": "https://dtapp-pub.dingtalk.com/dingtalk-desktop/win_installer/Release/overseas/DingTalk_v7.8.8.250704005.exe#/dl.7z",
9 | "pre_install": "Move-Item \"$dir\\build\\dist\\*\" -Destination \"$dir\"",
10 | "hash": "b084339cb4d437a6155b5a626d46b3c059ee877b79d00ccc221b3ffda21635ab",
11 | "shortcuts": [
12 | [
13 | "DingTalk.exe",
14 | "钉钉"
15 | ]
16 | ],
17 | "checkver": {
18 | "script": [
19 | "$i = Invoke-WebRequest 'https://www.dingtalk.com/win/d/qd=oversea' -MaximumRedirection 0 -ErrorAction Ignore",
20 | "$i.Headers.Location"
21 | ],
22 | "regex": "DingTalk_v([\\d\\.]+)\\.exe"
23 | },
24 | "autoupdate": {
25 | "url": "https://dtapp-pub.dingtalk.com/dingtalk-desktop/win_installer/Release/overseas/DingTalk_v$version.exe#/dl.7z"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/bucket/lky-officetools.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.3.0.223",
3 | "description": "一键自动化 下载、安装、激活 Office 的利器",
4 | "homepage": "https://github.com/OdysseusYuan/LKY_OfficeTools",
5 | "license": {
6 | "identifier": "GPL-3.0 license",
7 | "url": "https://github.com/OdysseusYuan/LKY_OfficeTools/blob/master/LICENSE.txt"
8 | },
9 | "url": "https://github.com/OdysseusYuan/LKY_OfficeTools/releases/download/v1.3.0/LKY_OfficeTools_v1.3.0.223.zip",
10 | "hash": "821fd472dd201c8846b88832b60862e2bb367acc38f115231ce4588047b0b4cb",
11 | "shortcuts": [
12 | [
13 | "LKY_OfficeTools.exe",
14 | "LKY_OfficeTools"
15 | ]
16 | ],
17 | "checkver": {
18 | "url": "https://api.github.com/repos/OdysseusYuan/LKY_OfficeTools/releases",
19 | "regex": "(?sm)browser_download_url.*?releases/download/v(?[\\d.]+)/LKY_OfficeTools_v([\\d.]+).zip"
20 | },
21 | "autoupdate": {
22 | "url": "https://github.com/OdysseusYuan/LKY_OfficeTools/releases/download/v$matchTag/LKY_OfficeTools_v$version.zip"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/bucket/navicat-premium-lite-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "17.3.7",
3 | "description": "Database administration and development tool",
4 | "homepage": "https://navicat.com.cn/products/navicat-premium-lite",
5 | "license": "Freeware",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://dn.navicat.com.cn/download/navicat17_premium_lite_en_x64.exe",
9 | "hash": "a87329a61160307dcb20ee24d306aba5810d3b87b0202f54ae598502e51d9c0e"
10 | }
11 | },
12 | "innosetup": true,
13 | "shortcuts": [
14 | [
15 | "navicat.exe",
16 | "Navicat Premium Lite"
17 | ]
18 | ],
19 | "checkver": {
20 | "url": "https://navicat.com.cn/products/navicat-premium-release-note",
21 | "regex": "Navicat\\s+Premium\\s+\\(Windows\\)\\s+version\\s+([\\d.]+)"
22 | },
23 | "autoupdate": {
24 | "architecture": {
25 | "64bit": {
26 | "url": "https://dn.navicat.com.cn/download/navicat$majorVersion_premium_lite_en_x64.exe"
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/bucket/weasel.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.17.4",
3 | "homepage": "https://rime.im/",
4 | "license": "GPL-3.0-or-later",
5 | "description": "Rime for Windows",
6 | "url": "https://github.com/rime/weasel/releases/download/0.17.4/weasel-0.17.4.0-installer.exe#/dl.7z",
7 | "hash": "cf509534a8f5f8af9c98ed7cbb8f135439f145a8cbe7e50ede42bb5b5ab45c29",
8 | "pre_install": [
9 | "if(!(Test-Path \"$dir\\Rime\")) {New-Item \"$dir\\Rime\" -ItemType Directory | Out-Null} ",
10 | "& \"$dir\\WeaselSetup.exe\" /i",
11 | "& \"$dir\\WeaselDeployer.exe\" /install",
12 | "& \"$dir\\WeaselServer.exe\""
13 | ],
14 | "post_install": "Remove-Item \"$dir\\`$PLUGINSDIR\" -Recurse",
15 | "uninstaller": {
16 | "script": "Invoke-ExternalCommand \"$dir/uninstall.exe\" -ArgumentList '/S' -RunAs | Out-Null"
17 | },
18 | "checkver": {
19 | "github": "https://github.com/rime/weasel"
20 | },
21 | "autoupdate": {
22 | "url": "https://github.com/rime/weasel/releases/download/$version/weasel-$version.0-installer.exe#/dl.7z"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/bucket/blender-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "5.0.1",
3 | "description": "3D creation suite",
4 | "homepage": "https://blender.org",
5 | "license": "GPL-3.0-or-later",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirror.nju.edu.cn/blender/release/Blender5.0/blender-5.0.1-windows-x64.zip",
9 | "hash": "921d77f6c505a35b2c2f6e67d4ad1c10b72418338ba0e0d3ea7f582a5e5fe46e",
10 | "extract_dir": "blender-5.0.1-windows-x64"
11 | }
12 | },
13 | "shortcuts": [
14 | [
15 | "blender.exe",
16 | "Blender"
17 | ]
18 | ],
19 | "checkver": {
20 | "url": "https://blender.org/download/",
21 | "regex": "blender-([\\w.]+)-windows-x64\\.zip"
22 | },
23 | "autoupdate": {
24 | "architecture": {
25 | "64bit": {
26 | "url": "https://mirror.nju.edu.cn/blender/release/Blender$majorVersion.$minorVersion/blender-$version-windows-x64.zip",
27 | "extract_dir": "blender-$version-windows-x64",
28 | "hash": {
29 | "url": "$baseurl/blender-$version.sha256"
30 | }
31 | }
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/bucket/cnkiexpress.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.1.21",
3 | "description": "全球学术快报 for Windows",
4 | "homepage": "https://cajviewer.cnki.net/index.html",
5 | "license": "Freeware",
6 | "url": "https://download.cnki.net/cnkiexpress/%E5%85%A8%E7%90%83%E5%AD%A6%E6%9C%AF%E5%BF%AB%E6%8A%A5%20Setup%200.1.21.exe#dl.7z",
7 | "hash": "f06931ba754803c48a9461591ab230d61659220e522591688cb58ad0d767eacc",
8 | "shortcuts": [
9 | [
10 | "全球学术快报.exe",
11 | "全球学术快报"
12 | ]
13 | ],
14 | "installer": {
15 | "script": [
16 | "7z x \"$dir\\`$PLUGINSDIR\\app-64.7z\" -o\"$dir\"| FIND \"ing \"",
17 | "Remove-Item \"$dir\\`$PLUGINSDIR\" -Recurse"
18 | ]
19 | },
20 | "checkver": {
21 | "url": "https://cajviewer.cnki.net/download.html",
22 | "regex": "%E5%85%A8%E7%90%83%E5%AD%A6%E6%9C%AF%E5%BF%AB%E6%8A%A5%20Setup%20(\\d+.\\d+.\\d).exe"
23 | },
24 | "autoupdate": {
25 | "url": "https://download.cnki.net/cnkiexpress/%E5%85%A8%E7%90%83%E5%AD%A6%E6%9C%AF%E5%BF%AB%E6%8A%A5%20Setup%20$version.exe#dl.7z"
26 | },
27 | "notes": "We don't persist your cnki express data, they are still storaged in \"%APPDATA%\\cnkiexpress\"."
28 | }
29 |
--------------------------------------------------------------------------------
/bucket/wegame.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "6.1.2.9172",
3 | "description": "WeGame是国内最大的数字游戏发行平台",
4 | "homepage": "https://www.wegame.com.cn/",
5 | "license": "https://www.wegame.com.cn/contract",
6 | "url": "https://dldir1.qq.com/tgc/wegame/full/WeGameSetup6.1.2.9172_gjwegame_0_0.exe#/dl.7z",
7 | "hash": "ae5450d5e9a164dabc9d8fdd807dadc6b70e54f73eb592ed45b5a85677b4d3dc",
8 | "pre_install": [
9 | "Expand-7zipArchive \"$dir\\WeGameSetup.exe\" \"$dir\"",
10 | "Remove-Item \"$dir\\`$PLUGINSDIR\", \"$dir\\`$SYSDIR\",\"$dir\\WeGameSetup.exe\" -Force -Recurse"
11 | ],
12 | "bin": "wegame.exe",
13 | "shortcuts": [
14 | [
15 | "wegame.exe",
16 | "WeGame"
17 | ]
18 | ],
19 | "persist": [
20 | "downloads",
21 | "games",
22 | "data",
23 | "config",
24 | "client_config"
25 | ],
26 | "checkver": {
27 | "url": "https://pc.qq.com/detail/1/detail_23761.html",
28 | "regex": "\\n\\s+(?
[\\d.]+)"
29 | },
30 | "autoupdate": {
31 | "url": "https://dldir1.qq.com/tgc/wegame/full/WeGameSetup$matchVersion_gjwegame_0_0.exe#/dl.7z"
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/bucket/qt-creator-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "18.0.1",
3 | "description": "IDE for development with the Qt framework",
4 | "homepage": "https://doc.qt.io/qtcreator/index.html",
5 | "license": "GPL-3.0-only",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirrors.ustc.edu.cn/qtproject/official_releases/qtcreator/18.0/18.0.1/installer_source/windows_x64/qtcreator.7z",
9 | "hash": "md5:bfb85f9c8302201390fe282e47a3e4bc"
10 | }
11 | },
12 | "suggest": {
13 | "vcredist": "extras/vcredist2022"
14 | },
15 | "shortcuts": [
16 | [
17 | "bin\\qtcreator.exe",
18 | "Qt Creator"
19 | ]
20 | ],
21 | "checkver": {
22 | "url": "https://qt.io/offline-installers",
23 | "regex": "Qt Creator\\s+([\\d.]+)\\s+for Windows"
24 | },
25 | "autoupdate": {
26 | "architecture": {
27 | "64bit": {
28 | "url": "https://mirrors.ustc.edu.cn/qtproject/official_releases/qtcreator/$majorVersion.$minorVersion/$version/installer_source/windows_x64/qtcreator.7z"
29 | }
30 | },
31 | "hash": {
32 | "url": "$baseurl/md5sums.txt"
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/bucket/reader.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0.0.4",
3 | "description": "A win32 txt/epub/online file reader",
4 | "homepage": "https://github.com/binbyu/Reader",
5 | "license": "unkown",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/binbyu/Reader/releases/download/v2.0.0.4/Reader_v2.0.0.4_x64.7z",
9 | "hash": "33c529483486fec1be62d7ce6a554418e3e98510eb374086a13f025e474d3b03"
10 | },
11 | "32bit": {
12 | "url": "https://github.com/binbyu/Reader/releases/download/v2.0.0.4/Reader_v2.0.0.4.7z",
13 | "hash": "8ee7cadbe05eefed989b042bbcbceca7adf74b5dfcebd14ca597989b4d6db775"
14 | }
15 | },
16 | "shortcuts": [
17 | [
18 | "Reader.exe",
19 | "Reader"
20 | ]
21 | ],
22 | "checkver": "github",
23 | "autoupdate": {
24 | "architecture": {
25 | "64bit": {
26 | "url": "https://github.com/binbyu/Reader/releases/download/v$version/Reader_v$version_x64.7z"
27 | },
28 | "32bit": {
29 | "url": "https://github.com/binbyu/Reader/releases/download/v$version/Reader_v$version.7z"
30 | }
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/bucket/douyin.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "7.0.0",
3 | "description": "短视频社交应用程序",
4 | "homepage": "https://douyin.com/",
5 | "license": "Proprietary",
6 | "url": "https://douyin.com/download/pc/obj/douyin-pc-web/douyin-pc-client/7044145585217083655/releases/273089372/7.0.0/win32-ia32/douyin-v7.0.0-win32-ia32-douyin.exe#/dl.7z",
7 | "hash": "134461597ed2d7fa50cfb832f5b110346b411f439ec06a854220efa9544a07dc",
8 | "pre_install": "Expand-7zipArchive \"$dir\\app.7z\" \"$dir\"",
9 | "post_install": "Remove-Item \"$dir\\app.7z\", \"$dir\\`$*\", \"$dir\\uninst*\", \"$dir\\resources\\app-update.yml\", \"$dir\\installer_downloader*\", \"$dir\\app_shell_updater*\" -Force -Recurse",
10 | "shortcuts": [
11 | [
12 | "douyin.exe",
13 | "抖音",
14 | "--user-data-dir=\"$dir\\User Data\""
15 | ]
16 | ],
17 | "persist": "User Data",
18 | "checkver": {
19 | "url": "https://douyin.com/downloadpage/pc",
20 | "regex": "/douyin-pc-client/(?\\d+)/releases/(?\\d+)/([\\d.]+)/win32-ia32/"
21 | },
22 | "autoupdate": {
23 | "url": "https://douyin.com/download/pc/obj/douyin-pc-web/douyin-pc-client/$matchId/releases/$matchBuild/$version/win32-ia32/douyin-v$version-win32-ia32-douyin.exe#/dl.7z"
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/bucket/qqmusic.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "21.96",
3 | "description": "The official QQ Music client.",
4 | "homepage": "https://y.qq.com/",
5 | "license": "Freeware",
6 | "notes": "We don't persist your QQMusic data, they are still storaged in '%LOCALAPPDATA%\\Tencent\\QQMusic'.",
7 | "url": "https://c.y.qq.com/cgi-bin/file_redirect.fcg?bid=dldir&file=ecosfile%2Fmusic_clntupate%2Fpc%2Fother%2FQQMusic_Setup_2196.exe&sign=1-3a8c352f31e08d7e71ad9ac307d21395c02b8789c622e129a8edbc31934507ad-692d7f5f#/dl.7z",
8 | "hash": "b1a63efb25b44d88383574a3c623a8447358ba1aa38b404541201820c06cca34",
9 | "shortcuts": [
10 | [
11 | "QQMusic.exe",
12 | "QQ Music"
13 | ]
14 | ],
15 | "checkver": {
16 | "script": [
17 | ". \"$pwd\\bin\\utils.ps1\"",
18 | "$dl_info = get_installer_info 'Tencent/QQMusic'",
19 | "\"ver:$($dl_info.PackageVersion);\"",
20 | "\"x64:$($dl_info.x64.InstallerUrl);\"",
21 | "\"hash:$($dl_info.x64_exe.InstallerSha256);\""
22 | ],
23 | "regex": "ver:(?[^;]+)(?:; x64:(?[^;]*))?(?:; x86:(?[^;]*))?(?:; arm64:(?[^;]*))?"
24 | },
25 | "autoupdate": {
26 | "url": "$matchX64#/dl.7z",
27 | "hash": "$matchHash"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/bucket/edrawmax.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "14.0.2",
3 | "description": "集两百多种绘图于一身的综合图形图表设计软件",
4 | "homepage": "https://edrawsoft.cn/download-edrawmax.html",
5 | "license": "Proprietary",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://cc-download.edrawsoft.cn/origin/edraw-max_cn_full5374.exe",
9 | "hash": "84e73ea2646d68de4bf97c3c9a2722292dbe2b049b2240b97a5d5fa6b241c8b5"
10 | },
11 | "32bit": {
12 | "url": "https://cc-download.edrawsoft.cn/edraw-max_cn_13.0.5_full5374.exe",
13 | "hash": "84e73ea2646d68de4bf97c3c9a2722292dbe2b049b2240b97a5d5fa6b241c8b5"
14 | }
15 | },
16 | "innosetup": true,
17 | "shortcuts": [
18 | [
19 | "EdrawMax.exe",
20 | "亿图图示"
21 | ]
22 | ],
23 | "checkver": {
24 | "url": "https://edrawsoft.cn/download/",
25 | "regex": "版本 ([\\d.]+)("
26 | },
27 | "autoupdate": {
28 | "architecture": {
29 | "64bit": {
30 | "url": "https://cc-download.edrawsoft.cn/origin/edraw-max_cn_full5374.exe"
31 | },
32 | "32bit": {
33 | "url": "https://cc-download.edrawsoft.cn/edraw-max_cn_13.0.5_full5374.exe"
34 | }
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/bucket/dehelper.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2024-10-25",
3 | "description": "权威的德语词典软件 德语学习者必备的工具",
4 | "homepage": "https://eudic.net/v4/de/app/dehelper",
5 | "license": "Freeware",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://francochinois.com/download/dhsetup.zip"
9 | },
10 | "32bit": {
11 | "url": "https://francochinois.com/download/dhsetup_win32.zip"
12 | }
13 | },
14 | "installer": {
15 | "script": [
16 | "Expand-7ZipArchive \"$dir\\dhsetup.exe\" \"$dir\\\" -Removal",
17 | "Expand-7ZipArchive \"$dir\\app.7z\" \"$dir\" -Removal"
18 | ]
19 | },
20 | "shortcuts": [
21 | [
22 | "dehelper.exe",
23 | "德语助手"
24 | ]
25 | ],
26 | "checkver": {
27 | "url": "https://eudic.net/v4/de/app/download",
28 | "regex": "版本:([\\d.]+)"
45 | },
46 | "autoupdate": {
47 | "url": "http://www2.aomeisoftware.com/download/pacn/PAGreen.zip"
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/bucket/m3u8-downloader.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0.8",
3 | "homepage": "https://github.com/HeiSir2014/M3U8-Downloader/",
4 | "description": "M3U8 Downloader",
5 | "license": "Unlicense",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/HeiSir2014/M3U8-Downloader/releases/download/v2.0.8/M3U8-Downloader-win_x64-2.0.8.zip",
9 | "hash": "d2669c8c8ef9ee54076ee80d84215d5c59af266eae95d01f2c9bfcde168e65bb"
10 | },
11 | "32bit": {
12 | "url": "https://github.com/HeiSir2014/M3U8-Downloader/releases/download/v2.0.8/M3U8-Downloader-win_ia32-2.0.8.zip",
13 | "hash": "c1ea56296bcb96dc504ac60808608e4418bab716d0fa82e76a1c9fb00db345c4"
14 | }
15 | },
16 | "shortcuts": [
17 | [
18 | "M3U8-Downloader.exe",
19 | "M3U8-Downloader"
20 | ]
21 | ],
22 | "checkver": {
23 | "github": "https://github.com/HeiSir2014/M3U8-Downloader"
24 | },
25 | "autoupdate": {
26 | "architecture": {
27 | "64bit": {
28 | "url": "https://github.com/HeiSir2014/M3U8-Downloader/releases/download/v$version/M3U8-Downloader-win_x64-$version.zip"
29 | },
30 | "32bit": {
31 | "url": "https://github.com/HeiSir2014/M3U8-Downloader/releases/download/v$version/M3U8-Downloader-win_ia32-$version.zip"
32 | }
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/bucket/downkyi.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.0.23",
3 | "description": "哔哩哔哩网站视频下载工具",
4 | "homepage": "https://github.com/yaobiao131/downkyicore",
5 | "license": "GPL",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/yaobiao131/downkyicore/releases/download/v1.0.23/DownKyi-1.0.23-1.win-x64.zip",
9 | "hash": "9bef160f3e64b34484d135a34ae4cf014c87d9878dea1d54bcf79e8c0b315fa7"
10 | },
11 | "32bit": {
12 | "url": "https://github.com/yaobiao131/downkyicore/releases/download/v1.0.23/DownKyi-1.0.23-1.win-x86.zip",
13 | "hash": "76462dbc1c28717db2411ca0de1396df363601767f7210f2143ee86b5384498d"
14 | }
15 | },
16 | "shortcuts": [
17 | [
18 | "DownKyi.exe",
19 | "DownKyi"
20 | ]
21 | ],
22 | "persist": [
23 | "Config",
24 | "Storage",
25 | "Media"
26 | ],
27 | "checkver": {
28 | "github": "https://github.com/yaobiao131/downkyicore"
29 | },
30 | "autoupdate": {
31 | "architecture": {
32 | "64bit": {
33 | "url": "https://github.com/yaobiao131/downkyicore/releases/download/v$version/DownKyi-$version-1.win-x64.zip"
34 | },
35 | "32bit": {
36 | "url": "https://github.com/yaobiao131/downkyicore/releases/download/v$version/DownKyi-$version-1.win-x86.zip"
37 | }
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/bucket/jianying-pro.json:
--------------------------------------------------------------------------------
1 | {
2 | "homepage": "https://www.capcut.cn/",
3 | "description": "Video editing application produced by ByteDance",
4 | "license": "Proprietary",
5 | "version": "9.7.1.13726",
6 | "url": "https://lf3-package.vlabstatic.com/obj/faceu-packages/Jianying_9_7_1_13726_jianyingpro_0_creatortool.exe#/jianyingpro.7z",
7 | "hash": "de188511216ee0a3e2d2c4a1d7e1df6d6d72cf1d5722da310658acd6129da5fc",
8 | "extract_dir": "JYPacket/9.7.1.13726",
9 | "shortcuts": [
10 | [
11 | "JianyingPro.exe",
12 | "剪映专业版"
13 | ]
14 | ],
15 | "checkver": {
16 | "url": "https://lv-api-hl.ulikecam.com/service/settings/v3/?device_platform=windows&channel=jianyingpro_0&os_version=10.0.22631&iid=182985411834634&aid=3704&version_code=393984&rom_version=12011&did=182985411830538&language=zh-Hans®ion=CN&store_region=cn&device_brand=EFI%20Development%20Kit%20II%20%2F%20OVMF&cpu=virt-7.2&gpu=Microsoft%20Basic%20Render%20Driver",
17 | "regex": "lastest_stable_url\"\\: \"https://lf3-package.vlabstatic.com/obj/faceu-packages/Jianying_(?[\\d]+)_(?[\\d]+)_(?[\\d]+)_(?[\\d]+)_jianyingpro_0_creatortool.exe",
18 | "replace": "${major}.${minor}.${patch}.${build}"
19 | },
20 | "autoupdate": {
21 | "url": "https://lf3-package.vlabstatic.com/obj/faceu-packages/Jianying_$underscoreVersion_jianyingpro_0_creatortool.exe#/jianyingpro.7z",
22 | "extract_dir": "JYPacket/$version"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/bucket/yuque.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "4.1.7.1320",
3 | "description": "Professional note and document repositories",
4 | "homepage": "https://yuque.com/",
5 | "license": {
6 | "identifier": "EULA",
7 | "url": "https://yuque.com/terms"
8 | },
9 | "notes": "Your Yuque data are not persisted by Scoop and still storaged in '%APPDATA%\\yuque-desktop'.",
10 | "architecture": {
11 | "64bit": {
12 | "url": "https://app.nlark.com/yuque-desktop/4.1.7.1320/BJf30853eb74f6492ab1da0a91edf5d71e/Yuque-4.1.7.1320.exe#/dl.7z",
13 | "hash": "2e5f7aad1b07ecedd71b4a06effa3544046e0922f20bae9115a3deec8f49249d",
14 | "installer": {
15 | "script": [
16 | "Expand-7zipArchive \"$dir\\`$PLUGINSDIR/app-64.7z\" \"$dir\" -Removal",
17 | "Remove-Item \"$dir\\`$PLUGINSDIR\" -Recurse"
18 | ]
19 | }
20 | }
21 | },
22 | "shortcuts": [
23 | [
24 | "语雀.exe",
25 | "语雀"
26 | ]
27 | ],
28 | "checkver": {
29 | "url": "https://yuque.com/download",
30 | "regex": "yuque-desktop%2F(?[\\d.]+)%2F(?\\w+)%2FYuque-[\\d.]+\\.exe"
31 | },
32 | "autoupdate": {
33 | "architecture": {
34 | "64bit": {
35 | "url": "https://app.nlark.com/yuque-desktop/$matchVersion/$matchRelease/Yuque-$matchVersion.exe#/dl.7z"
36 | }
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/bucket/octave-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "10.3.0",
3 | "description": "A high-level language primarily intended for numerical computations",
4 | "homepage": "https://gnu.org/software/octave/",
5 | "license": "GPL-3.0-only",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirrors.nju.edu.cn/gnu/octave/windows/octave-10.3.0-w64.zip",
9 | "hash": "d201e9b5a082427b22e5691a039b861b2a27167f7771b3e3cf0a74556f986777",
10 | "extract_dir": "octave-10.3.0-w64",
11 | "bin": [
12 | [
13 | "post-install.bat",
14 | "octave-post-install"
15 | ],
16 | "mingw64\\bin\\octave.bat",
17 | "mingw64\\bin\\octave-gui.exe",
18 | "mingw64\\bin\\octave-cli.exe",
19 | "mingw64\\bin\\octave-config.exe"
20 | ]
21 | }
22 | },
23 | "shortcuts": [
24 | [
25 | "octave-launch.exe",
26 | "Octave"
27 | ]
28 | ],
29 | "checkver": {
30 | "url": "https://wiki.octave.org/GNU_Octave_Wiki",
31 | "regex": "GNU Octave ([\\d.]+).*is the current stable release"
32 | },
33 | "autoupdate": {
34 | "architecture": {
35 | "64bit": {
36 | "url": "https://mirrors.nju.edu.cn/gnu/octave/windows/octave-$version-w64.zip",
37 | "extract_dir": "octave-$version-w64"
38 | }
39 | }
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/bucket/pot-desktop.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.0.7",
3 | "homepage": "https://pot-app.com/",
4 | "description": "A cross-platform translation software",
5 | "license": "GPL-3.0-only",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/pot-app/pot-desktop/releases/download/3.0.7/pot_3.0.7_x64-setup.exe#/dl.7z",
9 | "hash": "0a6ac5309bfc41234d58cf6615a779c66d167d3a0da5542a0de2ea118fc6bc56"
10 | },
11 | "32bit": {
12 | "url": "https://github.com/pot-app/pot-desktop/releases/download/3.0.7/pot_3.0.7_x86-setup.exe#/dl.7z",
13 | "hash": "ff9b69bea285ca60b9f0075a740dc022f9baf873221b14e2c20a960502f09761"
14 | }
15 | },
16 | "post_install": "Remove-Item \"$dir\\`$PLUGINSDIR\" -Force -Recurse",
17 | "shortcuts": [
18 | [
19 | "pot.exe",
20 | "Pot"
21 | ]
22 | ],
23 | "persist": "config.toml",
24 | "checkver": {
25 | "github": "https://github.com/pot-app/pot-desktop"
26 | },
27 | "autoupdate": {
28 | "architecture": {
29 | "64bit": {
30 | "url": "https://github.com/pot-app/pot-desktop/releases/download/$version/pot_$version_x64-setup.exe#/dl.7z"
31 | },
32 | "32bit": {
33 | "url": "https://github.com/pot-app/pot-desktop/releases/download/$version/pot_$version_x86-setup.exe#/dl.7z"
34 | }
35 | }
36 | },
37 | "notes": "You may need to install Edge WebView2 Runtime to use Pot."
38 | }
39 |
--------------------------------------------------------------------------------
/bucket/julia-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "homepage": "https://mirrors.ustc.edu.cn/julia-releases/",
3 | "description": "A programming language that is a fresh approach to technical computing.",
4 | "version": "1.12.2",
5 | "license": "MIT",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirrors.ustc.edu.cn/julia-releases/bin/winnt/x64/1.12/julia-1.12.2-win64.zip",
9 | "hash": "d4f3404259e4f4f94cfe99dd3ead0a811a2a79bcec2e140f5c993c7b41c58ef2",
10 | "extract_dir": "julia-1.12.2"
11 | },
12 | "32bit": {
13 | "url": "https://mirrors.ustc.edu.cn/julia-releases/bin/winnt/x86/1.12/julia-1.12.2-win32.zip",
14 | "hash": "e207ed10046b3cfd1abd2b2cb3c3db7194685ecfd137f7826dabfc29b66707db",
15 | "extract_dir": "julia-1.12.2"
16 | }
17 | },
18 | "bin": "bin\\julia.exe",
19 | "checkver": {
20 | "url": "https://julialang.org/downloads/",
21 | "regex": "Current stable release: v([\\d.]+)"
22 | },
23 | "autoupdate": {
24 | "architecture": {
25 | "64bit": {
26 | "url": "https://mirrors.ustc.edu.cn/julia-releases/bin/winnt/x64/$majorVersion.$minorVersion/julia-$version-win64.zip",
27 | "extract_dir": "julia-$version"
28 | },
29 | "32bit": {
30 | "url": "https://mirrors.ustc.edu.cn/julia-releases/bin/winnt/x86/$majorVersion.$minorVersion/julia-$version-win32.zip",
31 | "extract_dir": "julia-$version"
32 | }
33 | }
34 | },
35 | "shortcuts": [
36 | [
37 | "bin\\julia.exe",
38 | "Julia"
39 | ]
40 | ]
41 | }
42 |
--------------------------------------------------------------------------------
/bucket/utools.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "7.3.2",
3 | "homepage": "https://u.tools/",
4 | "description": "新一代效率工具平台",
5 | "license": "Freeware",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://open.u-tools.cn/download/uTools-7.3.2.exe#/uTools.7z",
9 | "hash": "549a14ba9a6e6e56da8ddb1c2ca9187bf2747ad7fa8eb28d370f604eca7778cc",
10 | "installer": {
11 | "script": "7z x $original_dir/PLUGINSDIR/app-64.7z -o\"$original_dir\\utools\""
12 | }
13 | },
14 | "32bit": {
15 | "url": "https://open.u-tools.cn/download/uTools-7.3.2-ia32.exe#/uTools.7z",
16 | "hash": "b156b571470b3543176e30f110a3e13728b8b4db87583ed0074d8e715b263d99",
17 | "installer": {
18 | "script": "7z x $original_dir/PLUGINSDIR/app-32.7z -o\"$original_dir\\utools\""
19 | }
20 | }
21 | },
22 | "extract_dir": "$PLUGINSDIR",
23 | "extract_to": "PLUGINSDIR",
24 | "post_install": "Remove-Item -RECURSE $original_dir/PLUGINSDIR",
25 | "shortcuts": [
26 | [
27 | "utools\\uTools.exe",
28 | "uTools"
29 | ]
30 | ],
31 | "checkver": {
32 | "url": "https://u.tools/download/",
33 | "regex": "uTools-(\\d+[\\.\\d]+)\\.exe"
34 | },
35 | "autoupdate": {
36 | "architecture": {
37 | "64bit": {
38 | "url": "https://open.u-tools.cn/download/uTools-$version.exe#/uTools.7z"
39 | },
40 | "32bit": {
41 | "url": "https://open.u-tools.cn/download/uTools-$version-ia32.exe#/uTools.7z"
42 | }
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/bucket/aigcpanel.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.14.0",
3 | "description": "开源 AI 数字人系统",
4 | "homepage": "https://aigcpanel.com/",
5 | "license": "AGPL-3.0 license",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/modstart-lib/aigcpanel/releases/download/v0.14.0/AigcPanel-0.13.0-win-setup-x64.exe#/dl.7z",
9 | "hash": "b888c7b1031c0eea2392d69aafe7f2f654610a587702cbf3131ff54962634d0d",
10 | "installer": {
11 | "script": "Expand-7zipArchive \"$dir\\`$PLUGINSDIR\\app-64.7z\" \"$dir\""
12 | }
13 | },
14 | "arm64": {
15 | "url": "https://github.com/modstart-lib/aigcpanel/releases/download/v0.14.0/AigcPanel-0.13.0-win-setup-arm64.exe#/dl.7z",
16 | "hash": "7363e9347c2a053bc0578f1b3a662894dab14d4c2f78ad4197d7d377a326c15d",
17 | "installer": {
18 | "script": "Expand-7zipArchive \"$dir\\`$PLUGINSDIR\\app-arm64.7z\" \"$dir\""
19 | }
20 | }
21 | },
22 | "shortcuts": [
23 | [
24 | "AigcPanel.exe",
25 | "AigcPanel"
26 | ]
27 | ],
28 | "checkver": {
29 | "github": "https://github.com/modstart-lib/aigcpanel"
30 | },
31 | "autoupdate": {
32 | "architecture": {
33 | "64bit": {
34 | "url": "https://github.com/modstart-lib/aigcpanel/releases/download/v$version/AigcPanel-v$version-win-setup-x64.exe#/dl.7z"
35 | },
36 | "arm64": {
37 | "url": "https://github.com/modstart-lib/aigcpanel/releases/download/v$version/AigcPanel-v$version-win-setup-arm64.exe#/dl.7z"
38 | }
39 | }
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/bucket/videocaptioner.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.3.3",
3 | "description": "An LLM-powered video subtitle processing assistant, supporting speech recognition, subtitle segmentation, optimization, and translation.",
4 | "homepage": "https://github.com/WEIFENG2333/VideoCaptioner",
5 | "license": "GPLv3",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/WEIFENG2333/VideoCaptioner/releases/download/v1.3.3/VideoCaptioner-Setup-win64-v1.3.3.exe",
9 | "hash": "7aee706e8e99921d879d4b088c94e025e7f13868b06de09ad7d69870102ac8f1"
10 | },
11 | "32bit": {
12 | "url": "https://github.com/WEIFENG2333/VideoCaptioner/releases/download/v1.3.3/VideoCaptioner-Setup-win64-v1.3.3.exe",
13 | "hash": "7aee706e8e99921d879d4b088c94e025e7f13868b06de09ad7d69870102ac8f1"
14 | }
15 | },
16 | "innosetup": true,
17 | "pre_install": [
18 | "if (!(Test-Path -Path \"$persist_dir\\AppData\")) { New-Item -Path \"$dir\\AppData\" -ItemType directory | Out-Null }"
19 | ],
20 | "persist": "AppData",
21 | "shortcuts": [
22 | [
23 | "VideoCaptioner.exe",
24 | "VideoCaptioner"
25 | ]
26 | ],
27 | "checkver": "github",
28 | "autoupdate": {
29 | "architecture": {
30 | "64bit": {
31 | "url": "https://github.com/WEIFENG2333/VideoCaptioner/releases/download/v$version/VideoCaptioner-Setup-win64-v$version.exe"
32 | },
33 | "32bit": {
34 | "url": "https://github.com/WEIFENG2333/VideoCaptioner/releases/download/v$version/VideoCaptioner-Setup-win64-v$version.exe"
35 | }
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/bucket/hbuilderx.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "4.45.2025010502",
3 | "description": "轻如编辑器、强如 IDE 的 HTML 构建工具",
4 | "homepage": "https://dcloud.io/hbuilderx.html",
5 | "license": "Unlicense",
6 | "url": "https://qiniu-ecdn.dcloud.net.cn/download/HBuilderX.4.45.2025010502.zip",
7 | "hash": "6f51e5a50c9f13d165c5b9e58a90fee0af9883e66b5fc193ab832284cbc77ea4",
8 | "extract_dir": "HBuilderX",
9 | "shortcuts": [
10 | [
11 | "HBuilderX.exe",
12 | "HBuilder X"
13 | ]
14 | ],
15 | "pre_install": [
16 | "$bucket=(scoop bucket list | where-Object { $_.Source -match '(gitee|github).com/abgox/abgo_bucket'})[0].Name",
17 | ". \"$bucketsdir\\$bucket\\bin\\utils.ps1\"",
18 | "persist_file -dir @(\"$user_AppData\\HBuilder X\") @(\"$persist_dir\\HBuilder X\")",
19 | "handle_app_lnk",
20 | "do_some_things"
21 | ],
22 | "pre_uninstall": [
23 | "$bucket=(scoop bucket list | where-Object { $_.Source -match '(gitee|github).com/abgox/abgo_bucket'})[0].Name",
24 | ". \"$bucketsdir\\$bucket\\bin\\utils.ps1\"",
25 | "stop_process",
26 | "remove_files @(\"$user_AppData\\HBuilder X\")"
27 | ],
28 | "checkver": {
29 | "script": [
30 | "$url=\"https://hx.dcloud.net.cn/Tutorial/changelog/ReleaseNote_release\"",
31 | "$regex=\"([\\d\\.]+)\"",
32 | "$page=python $pwd\\bin\\get_page.py $url",
33 | "$matches=[regex]::Matches($page, $regex)",
34 | "$matches[0]"
35 | ],
36 | "regex": "([\\d\\.]+)"
37 | },
38 | "autoupdate": {
39 | "url": "https://qiniu-ecdn.dcloud.net.cn/download/HBuilderX.$version.zip"
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/bucket/tencent-meeting.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.40.2.407",
3 | "description": "一站式音视频会议解决方案",
4 | "homepage": "https://meeting.tencent.com/",
5 | "license": {
6 | "identifier": "Proprietary",
7 | "url": "https://meeting.tencent.com/declare.html"
8 | },
9 | "url": "https://updatecdn.meeting.qq.com/cos/094ae549509699a3a0d1095de2756464/TencentMeeting_0300000000_3.40.2.407_x86_64.publish.officialwebsite.exe#/dl.7z",
10 | "hash": "56b3a9e9d05f2ff698e0a1a4d1576c22b08c83674da7cd7882d246b4d6ade5ef",
11 | "post_install": [
12 | "Get-ChildItem \"$dir\\`$_*\" | Rename-Item -NewName \"$version\" -Force",
13 | "Remove-Item \"$dir\\`$*\" -Recurse -Force -ErrorAction SilentlyContinue",
14 | "Remove-Item \"$dir\\wemeetapp_new.exe\" -Force -ErrorAction SilentlyContinue",
15 | "create_startmenu_shortcuts $manifest $original_dir $global $architecture",
16 | "$manifest.shortcuts = @()"
17 | ],
18 | "shortcuts": [
19 | [
20 | "wemeetapp.exe",
21 | "Tencent Meeting"
22 | ]
23 | ],
24 | "checkver": {
25 | "url": "https://meeting.tencent.com/web-service/query-download-info?q=%5B%7B%22package-type%22%3A%22app%22%2C%22channel%22%3A%220300000000%22%2C%22platform%22%3A%22windows%22%2C%22arch%22%3A%22x86_64%22%7D%5D&nonce=iS5D7ipf63myinXi",
26 | "regex": "\"md5\":\"(?[a-f0-9]+)\".+\"version\":\"([\\d\\.]+)\""
27 | },
28 | "autoupdate": {
29 | "url": "https://updatecdn.meeting.qq.com/cos/$matchHash/TencentMeeting_0300000000_$version_x86_64.publish.officialwebsite.exe#/dl.7z"
30 | },
31 | "notes": "We don't persist your Tencent Meeting data, they are still storaged in \"$env:APPDATA\\Tencent\\WeMeet\"."
32 | }
33 |
--------------------------------------------------------------------------------
/bucket/feishu.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "7.58.8",
3 | "homepage": "https://feishu.cn/",
4 | "description": "AI 时代先进生产力平台",
5 | "license": {
6 | "identifier": "EULA",
7 | "url": "https://feishu.cn/en/terms"
8 | },
9 | "architecture": {
10 | "64bit": {
11 | "url": "https://sf3-cn.feishucdn.com/obj/ee-appcenter/7a035a78/Feishu-win32_x64-7.58.8-signed.exe#/dl.7z",
12 | "hash": "md5:fe5fd8aba7d0db3c9b741245352bc5db"
13 | },
14 | "32bit": {
15 | "url": "https://sf3-cn.feishucdn.com/obj/ee-appcenter/7a035a78/Feishu-win32_ia32-7.58.8-signed.exe#/dl.7z",
16 | "hash": "md5:fe5fd8aba7d0db3c9b741245352bc5db"
17 | }
18 | },
19 | "extract_to": "app",
20 | "shortcuts": [
21 | [
22 | "app/Feishu.exe",
23 | "飞书"
24 | ]
25 | ],
26 | "checkver": {
27 | "url": "https://feishu.cn/api/downloads",
28 | "jp": "$.versions.Windows.download_link",
29 | "regex": "/(?[\\d\\w]+)/Feishu-(?[\\d\\w]+)-([\\d\\.]+)\\-signed\\.exe"
30 | },
31 | "autoupdate": {
32 | "architecture": {
33 | "64bit": {
34 | "url": "https://sf3-cn.feishucdn.com/obj/ee-appcenter/$matchId/Feishu-win32_x64-$version-signed.exe#/dl.7z"
35 | },
36 | "32bit": {
37 | "url": "https://sf3-cn.feishucdn.com/obj/ee-appcenter/$matchId/Feishu-win32_ia32-$version-signed.exe#/dl.7z"
38 | }
39 | },
40 | "hash": {
41 | "url": "https://feishu.cn/api/downloads",
42 | "jp": "$.versions.Windows.hash"
43 | }
44 | },
45 | "notes": "Runtime data are stored in '%APPDATA%\\LarkShell', and are not persisted by Scoop."
46 | }
47 |
--------------------------------------------------------------------------------
/bucket/esearch.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "15.2.1",
3 | "description": "Screenshot, OCR, Search, Translation, Pasting, Reverse Image Search, Screen Recording",
4 | "homepage": "https://esearch-app.netlify.app/",
5 | "license": "GPL-3.0-only",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/xushengfeng/eSearch/releases/download/15.2.1/eSearch-15.2.1-win32-x64.zip",
9 | "hash": "960b4c0042c4dc23e42cb809931997562dbd7d3387ef8688af402c5be3951598"
10 | },
11 | "arm64": {
12 | "url": "https://github.com/xushengfeng/eSearch/releases/download/15.2.1/eSearch-15.2.1-win32-arm64.zip",
13 | "hash": "180d3551f088625b1a8314c374f585df70410b717b1af807d8187a40b295c9d8"
14 | }
15 | },
16 | "installer": {
17 | "script": [
18 | "ensure \"$persist_dir\" | Out-Null",
19 | "New-Item \"$env:APPDATA\\eSearch\" -ItemType Junction -Target \"$persist_dir\" | Out-Null"
20 | ]
21 | },
22 | "uninstaller": {
23 | "script": "Remove-Item \"$env:APPDATA\\eSearch\" -Recurse -Force -ErrorAction 'SilentlyContinue'"
24 | },
25 | "shortcuts": [
26 | [
27 | "eSearch.exe",
28 | "eSearch"
29 | ]
30 | ],
31 | "checkver": {
32 | "github": "https://github.com/xushengfeng/eSearch"
33 | },
34 | "autoupdate": {
35 | "architecture": {
36 | "64bit": {
37 | "url": "https://github.com/xushengfeng/eSearch/releases/download/$version/eSearch-$version-win32-x64.zip"
38 | },
39 | "arm64": {
40 | "url": "https://github.com/xushengfeng/eSearch/releases/download/$version/eSearch-$version-win32-arm64.zip"
41 | }
42 | }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/.github/workflows/ci.yml:
--------------------------------------------------------------------------------
1 | name: Tests
2 |
3 | on:
4 | pull_request:
5 | push:
6 | branches:
7 | - "master"
8 | workflow_dispatch:
9 |
10 | jobs:
11 | test_powershell:
12 | name: WindowsPowerShell
13 | runs-on: windows-latest
14 | steps:
15 | - name: Checkout Bucket
16 | uses: actions/checkout@v5
17 | with:
18 | fetch-depth: 2
19 | path: "my_bucket"
20 | - name: Checkout Scoop
21 | uses: actions/checkout@v5
22 | with:
23 | repository: ScoopInstaller/Scoop
24 | ref: develop
25 | path: "scoop_core"
26 | - name: Init Test Suite
27 | uses: potatoqualitee/psmodulecache@v6.2.1
28 | with:
29 | modules-to-cache: PSScriptAnalyzer, BuildHelpers, Pester:5.7.1
30 | shell: powershell
31 | - name: Test
32 | shell: powershell
33 | run: |
34 | $env:SCOOP_HOME="$(Resolve-Path '.\scoop_core')"
35 | .\my_bucket\bin\test.ps1
36 | test_pwsh:
37 | name: PowerShell
38 | runs-on: windows-latest
39 | steps:
40 | - name: Checkout Bucket
41 | uses: actions/checkout@v5
42 | with:
43 | fetch-depth: 2
44 | path: "my_bucket"
45 | - name: Checkout Scoop
46 | uses: actions/checkout@v5
47 | with:
48 | repository: ScoopInstaller/Scoop
49 | ref: develop
50 | path: "scoop_core"
51 | - name: Init Test Suite
52 | uses: potatoqualitee/psmodulecache@v6.2.1
53 | with:
54 | modules-to-cache: PSScriptAnalyzer, BuildHelpers, Pester:5.7.1
55 | shell: pwsh
56 | - name: Test
57 | shell: pwsh
58 | run: |
59 | $env:SCOOP_HOME="$(Resolve-Path '.\scoop_core')"
60 | .\my_bucket\bin\test.ps1
61 |
--------------------------------------------------------------------------------
/bucket/tim.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.5.0.22143",
3 | "description": "Tencent TIM, lightweight alternative to QQ",
4 | "homepage": "https://office.qq.com/",
5 | "license": {
6 | "identifier": "Unknown",
7 | "url": "http://play.mobile.qq.com/yy/eim/help/serverinfo.html"
8 | },
9 | "url": "http://dldir1.qq.com/qqfile/qq/TIM3.5.0/TIM3.5.0.22143.exe#/dl.7z",
10 | "hash": "4143f88baa26d4e61b0380eb917d20918f64b4b7a86e93c39cbf08ff841934e1",
11 | "pre_install": [
12 | "if (Test-Path \"$env:AppData\\Tencent\\Tim\") {",
13 | " info '[Persistent data]: Copying user data...'",
14 | " ensure \"$dir\\User Data\" | Out-Null",
15 | " Copy-Item \"$env:AppData\\Tencent\\Tim\\*\" \"$dir\\User Data\\\" -Recurse -Force -ErrorAction 'SilentlyContinue'",
16 | " Remove-Item \"$env:AppData\\Tencent\\Tim\" -Recurse -Force -ErrorAction 'SilentlyContinue'",
17 | "}",
18 | "Move-Item \"$dir\\Files\\*\" \"$dir\\\""
19 | ],
20 | "post_install": "Remove-Item \"$dir\\Application Data\", \"$dir\\Common\" -Recurse -Force -ErrorAction 'SilentlyContinue'",
21 | "shortcuts": [
22 | [
23 | "Bin\\QQScLauncher.exe",
24 | "Tim",
25 | "--user-data-dir=\"$dir\\User Data\""
26 | ]
27 | ],
28 | "persist": "User Data",
29 | "checkver": {
30 | "url": "https://im.qq.com/rainbow/TIMDownload/",
31 | "regex": "\"pcLink\":\"https?://dldir1\\.qq\\.com/qqfile/qq(?.*)/TIM(?\\d+\\.\\d+\\.\\d+)/TIM.*\\.(?\\d+)\\.exe",
32 | "replace": "${main}.${patch}"
33 | },
34 | "autoupdate": {
35 | "url": "http://dldir1.qq.com/qqfile/qq$matchExtra/TIM$matchMain/TIM$version.exe#/dl.7z",
36 | "hash": {
37 | "mode": "download"
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/bucket/baidupcs-go.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "4.0.0",
3 | "description": "iikira/BaiduPCS-Go 原版基础上集成了分享链接/秒传链接转存功能",
4 | "homepage": "https://github.com/qjfoidnh/BaiduPCS-Go",
5 | "license": "Apache-2.0",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/qjfoidnh/BaiduPCS-Go/releases/download/v4.0.0/BaiduPCS-Go-v4.0.0-windows-x64.zip",
9 | "hash": "be4a285cf5edccef55ce25b7d53dbc34d703782f9bf713b2327d5a85f5993dd9",
10 | "extract_dir": "BaiduPCS-Go-v4.0.0-windows-x64"
11 | },
12 | "32bit": {
13 | "url": "https://github.com/qjfoidnh/BaiduPCS-Go/releases/download/v4.0.0/BaiduPCS-Go-v4.0.0-windows-x86.zip",
14 | "hash": "7a0972192d9d7a67bb0df238f80435d2491c60efc886b4d5364d68b4fdbf71f8",
15 | "extract_dir": "BaiduPCS-Go-v4.0.0-windows-x86"
16 | }
17 | },
18 | "shortcuts": [
19 | [
20 | "BaiduPCS-Go.exe",
21 | "BaiduPCS-Go"
22 | ]
23 | ],
24 | "bin": [
25 | "BaiduPCS-Go.exe"
26 | ],
27 | "persist": [
28 | "config",
29 | "Downloads"
30 | ],
31 | "env_set": {
32 | "BAIDUPCS_GO_CONFIG_DIR": "$dir\\config"
33 | },
34 | "checkver": "github",
35 | "autoupdate": {
36 | "architecture": {
37 | "64bit": {
38 | "url": "https://github.com/qjfoidnh/BaiduPCS-Go/releases/download/v$version/BaiduPCS-Go-v$version-windows-x64.zip",
39 | "extract_dir": "BaiduPCS-Go-v$version-windows-x64"
40 | },
41 | "32bit": {
42 | "url": "https://github.com/qjfoidnh/BaiduPCS-Go/releases/download/v$version/BaiduPCS-Go-v$version-windows-x86.zip",
43 | "extract_dir": "BaiduPCS-Go-v$version-windows-x86"
44 | }
45 | }
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/bucket/misakatranslator.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.12.2",
3 | "description": "御坂翻译器",
4 | "homepage": "https://github.com/hanmin0822/MisakaTranslator/",
5 | "license": "GPLv3",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/hanmin0822/MisakaTranslator/releases/download/2.12.2/MisakaTranslator.2.12.2.zip",
9 | "hash": "a64dab9cba7e076add52b9afcc4411198fcc3169b5ab906cc9ddcd3abb6d7dfe"
10 | },
11 | "32bit": {
12 | "url": "https://github.com/hanmin0822/MisakaTranslator/releases/download/2.12.2/MisakaTranslator.2.12.2.zip",
13 | "hash": "a64dab9cba7e076add52b9afcc4411198fcc3169b5ab906cc9ddcd3abb6d7dfe"
14 | }
15 | },
16 | "extract_dir": "Debug",
17 | "pre_install": [
18 | "if (!(Test-Path -Path \"$persist_dir\\settings\")) { New-Item -Path \"$dir\\settings\" -ItemType directory | Out-Null }",
19 | "if (Test-Path -Path \"$persist_dir\\MisakaGameLibrary.sqlite\") { Copy-Item -Path \"$persist_dir\\MisakaGameLibrary.sqlite\" \"$dir\\\" }"
20 | ],
21 | "pre_uninstall": "if (Test-Path -Path \"$dir\\MisakaGameLibrary.sqlite\") { Copy-Item -Path \"$dir\\MisakaGameLibrary.sqlite\" \"$persist_dir\\\" }",
22 | "shortcuts": [
23 | [
24 | "MisakaTranslator-WPF.exe",
25 | "MisakaTranslator"
26 | ]
27 | ],
28 | "persist": "settings",
29 | "checkver": "github",
30 | "autoupdate": {
31 | "architecture": {
32 | "64bit": {
33 | "url": "https://github.com/hanmin0822/MisakaTranslator/releases/download/$version/MisakaTranslator.$version.zip"
34 | },
35 | "32bit": {
36 | "url": "https://github.com/hanmin0822/MisakaTranslator/releases/download/$version/MisakaTranslator.$version.zip"
37 | }
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/bucket/i4tools.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "8.33",
3 | "description": "简单好用的多功能苹果设备管理助手",
4 | "homepage": "https://i4.cn/pro_pc.html",
5 | "license": "Freeware",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://url.i4.cn/2MvQruaa#/dl.7z",
9 | "hash": "5dfee102ba80e24fdaf9d9e6816fb38f278159bcd9a21fed6675e7bb8850fc1d"
10 | },
11 | "32bit": {
12 | "url": "https://url.i4.cn/R7BzEfaa#/dl.7z",
13 | "hash": "10ef8bc6190a602fa9745838008d935e15036afdc35909a9ae08cde3576fe00d"
14 | }
15 | },
16 | "shortcuts": [
17 | [
18 | "i4Tools.exe",
19 | "爱思助手"
20 | ]
21 | ],
22 | "persist": [
23 | "Download",
24 | "cache",
25 | "extrastools"
26 | ],
27 | "pre_install": [
28 | "if (Test-Path \"$persist_dir\\data.db\") { Move-Item \"$persist_dir\\data.db\" \"$dir\" -Force }",
29 | "if (Test-Path \"$persist_dir\\setting.cfg\") { Move-Item \"$persist_dir\\setting.cfg\" \"$dir\" -Force }"
30 | ],
31 | "post_install": "Remove-Item \"$dir\\Uninstall*\", \"$dir\\updater*\" -Force -Recurse",
32 | "uninstaller": {
33 | "script": [
34 | "if(Test-Path \"$dir\\data.db\") { Move-Item \"$dir\\data.db\" \"$persist_dir\" -Force }",
35 | "if(Test-Path \"$dir\\setting.cfg\") { Move-Item \"$dir\\setting.cfg\" \"$persist_dir\" -Force }"
36 | ]
37 | },
38 | "checkver": {
39 | "url": "https://url.i4.cn/2MvQruaa",
40 | "regex": "i4Tools8_v(\\d+[\\.\\d]+)_Setup_x64.exe"
41 | },
42 | "autoupdate": {
43 | "architecture": {
44 | "64bit": {
45 | "url": "https://url.i4.cn/2MvQruaa#/dl.7z"
46 | },
47 | "32bit": {
48 | "url": "https://url.i4.cn/R7BzEfaa#/dl.7z"
49 | }
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/bucket/lx-music.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.12.0",
3 | "description": "An electron-based music player",
4 | "homepage": "https://github.com/lyswhut/lx-music-desktop",
5 | "license": "Apache-2.0",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://github.com/lyswhut/lx-music-desktop/releases/download/v2.12.0/lx-music-desktop-v2.12.0-win_x64-green.7z",
9 | "hash": "f928fa6ed0279000a5ecf039307139b128d654c5e4980b26256c545877bf9936"
10 | },
11 | "32bit": {
12 | "url": "https://github.com/lyswhut/lx-music-desktop/releases/download/v2.12.0/lx-music-desktop-v2.12.0-win7_x86-green.7z",
13 | "hash": "c651da034dc48464546a5d71bda2a052ecb4fa66e54818d707a6dcfce2839ed5"
14 | },
15 | "arm64": {
16 | "url": "https://github.com/lyswhut/lx-music-desktop/releases/download/v2.12.0/lx-music-desktop-v2.12.0-win_arm64-green.7z",
17 | "hash": "af06d10f75c4956c9cfa1a3ae602261e0e54b001da431259ba166fb983218ccd"
18 | }
19 | },
20 | "shortcuts": [
21 | [
22 | "lx-music-desktop.exe",
23 | "洛雪音乐助手"
24 | ]
25 | ],
26 | "checkver": {
27 | "github": "https://github.com/lyswhut/lx-music-desktop"
28 | },
29 | "autoupdate": {
30 | "architecture": {
31 | "64bit": {
32 | "url": "https://github.com/lyswhut/lx-music-desktop/releases/download/v$version/lx-music-desktop-v$version-win_x64-green.7z"
33 | },
34 | "32bit": {
35 | "url": "https://github.com/lyswhut/lx-music-desktop/releases/download/v$version/lx-music-desktop-v$version-win7_x86-green.7z"
36 | },
37 | "arm64": {
38 | "url": "https://github.com/lyswhut/lx-music-desktop/releases/download/v$version/lx-music-desktop-v$version-win_arm64-green.7z"
39 | }
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/bucket/inkscape-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.4.2_2025-05-13_f4327f4",
3 | "description": "Professional vector graphics editor",
4 | "homepage": "https://inkscape.org",
5 | "license": "GPL-3.0-or-later",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirror.nju.edu.cn/inkscape/inkscape-1.4.2_2025-05-13_f4327f4-x64.7z",
9 | "hash": "757e0358512630e65505a4cca89885369087f2908469439bc41b5a346604cbd4"
10 | }
11 | },
12 | "extract_dir": "inkscape",
13 | "bin": [
14 | [
15 | "bin\\inkscape.com",
16 | "inkscape"
17 | ],
18 | [
19 | "bin\\inkview.com",
20 | "inkview"
21 | ]
22 | ],
23 | "shortcuts": [
24 | [
25 | "bin\\inkscape.exe",
26 | "Inkscape"
27 | ]
28 | ],
29 | "checkver": {
30 | "script": [
31 | "$redirUrl = [System.Net.HttpWebRequest]::Create('https://inkscape.org/release/').GetResponse().ResponseUri.AbsoluteUri",
32 | "$test_dl = Invoke-WebRequest ($redirUrl + 'windows/64-bit/compressed-7z/dl/') -UseBasicParsing",
33 | "$filename = ($test_dl.Links | Where-Object href -match '.7z$' | Select-Object -First 1 -ExpandProperty href) -split '/' | Select-Object -Last 1",
34 | "$clean_filename = $filename -replace '-x64.7z'",
35 | "$ink_version = $clean_filename -replace 'inkscape-'",
36 | "Write-Output $ink_version $clean_filename"
37 | ],
38 | "regex": "(?.+)\\s(?.+)"
39 | },
40 | "autoupdate": {
41 | "architecture": {
42 | "64bit": {
43 | "url": "https://mirror.nju.edu.cn/inkscape/$matchCleanfilename-x64.7z",
44 | "hash": {
45 | "url": "https://media.inkscape.org/media/resources/sigs/$matchCleanfilename-x64.7z.sha256"
46 | }
47 | }
48 | }
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/bucket/vlc-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.0.21",
3 | "description": "A free and open source cross-platform multimedia player and framework that plays most multimedia files as well as DVDs, Audio CDs, VCDs, and various streaming protocols.",
4 | "homepage": "https://videolan.org/",
5 | "license": "GPL-2.0-only",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirrors.ustc.edu.cn/videolan-ftp/vlc/3.0.21/win64/vlc-3.0.21-win64.7z",
9 | "hash": "9d2b24d6bc4196b3da8d181a3878678ba272e2a7690321f8826da76a69b2fb9c"
10 | },
11 | "32bit": {
12 | "url": "https://mirrors.ustc.edu.cn/videolan-ftp/vlc/3.0.21/win32/vlc-3.0.21-win32.7z",
13 | "hash": "77b2a79c4baf0dcc7c453f74f29fbdb55d42c790d277b5f9e0dbed0f3abc0131"
14 | }
15 | },
16 | "extract_dir": "vlc-3.0.21",
17 | "pre_install": [
18 | "if (!(Test-Path \"$persist_dir\\portable\") -and (Test-Path \"$env:APPDATA\\vlc\")) {",
19 | " info \"Copying old '$env:APPDATA\\vlc' to '$persist_dir\\portable'\"",
20 | " ensure \"$dir\\portable\\vlc\" | Out-Null",
21 | " Copy-Item \"$env:APPDATA\\vlc\\*\" \"$dir\\portable\" -Recurse -Force",
22 | " Move-Item \"$dir\\portable\\vlc-qt-interface.ini\" \"$dir\\portable\\vlc\"",
23 | "}"
24 | ],
25 | "shortcuts": [
26 | [
27 | "vlc.exe",
28 | "VLC media player"
29 | ]
30 | ],
31 | "persist": "portable",
32 | "checkver": {
33 | "url": "https://videolan.org/vlc/download-windows.html",
34 | "regex": "\\s+([\\d.]+)"
35 | },
36 | "autoupdate": {
37 | "architecture": {
38 | "64bit": {
39 | "url": "https://mirrors.ustc.edu.cn/videolan-ftp/vlc/$version/win64/vlc-$version-win64.7z"
40 | },
41 | "32bit": {
42 | "url": "https://mirrors.ustc.edu.cn/videolan-ftp/vlc/$version/win32/vlc-$version-win32.7z"
43 | }
44 | },
45 | "hash": {
46 | "url": "$url.sha256"
47 | },
48 | "extract_dir": "vlc-$version"
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/bucket/wechatdevtools.json:
--------------------------------------------------------------------------------
1 | {
2 | "homepage": "https://developers.weixin.qq.com/miniprogram/dev/devtools/devtools.html",
3 | "description": "The official devtool to develop and debug WeChat Mini Programs",
4 | "version": "2.01.2510260",
5 | "license": "Freeware",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://servicewechat.com/wxa-dev-logic/download_redirect?type=x64&from=mpwiki&download_version=2012510260&version_type=1#/installer.exe",
9 | "hash": "62981f7c5b3b4bc61641832a555c494326db6c95c193d9e1e0f1a266d99969d6"
10 | },
11 | "32bit": {
12 | "url": "https://servicewechat.com/wxa-dev-logic/download_redirect?type=ia32&from=mpwiki&download_version=2012510260&version_type=1#/installer.exe",
13 | "hash": "17f04128750f671481eba21129216da23ad77601a9e41cca26984eae22e29ac3"
14 | }
15 | },
16 | "installer": {
17 | "script": [
18 | "Expand-7zipArchive \"$dir\\installer.exe\" \"$dir\\app\" -Removal",
19 | "@('$PLUGINSDIR', '卸载微信开发者工具.exe.nsis') | ForEach-Object {",
20 | " Remove-Item \"$dir\\app\\$_\" -Recurse -Force",
21 | "}"
22 | ]
23 | },
24 | "shortcuts": [
25 | [
26 | "app\\微信开发者工具.exe",
27 | "微信开发者工具"
28 | ]
29 | ],
30 | "checkver": {
31 | "url": "https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html",
32 | "regex": "# ([\\d.]+) [\\w.]+)-64-bit"
44 | },
45 | "autoupdate": {
46 | "architecture": {
47 | "64bit": {
48 | "url": "https://mirrors.ustc.edu.cn/github-release/git-for-windows/git/LatestRelease/PortableGit-$matchFull-64-bit.7z.exe#/dl.7z"
49 | },
50 | "32bit": {
51 | "url": "https://mirrors.ustc.edu.cn/github-release/git-for-windows/git/LatestRelease/PortableGit-$matchFull-32-bit.7z.exe#/dl.7z"
52 | }
53 | },
54 | "hash": {
55 | "url": "https://github.com/git-for-windows/git/releases/tag/v$version",
56 | "regex": "$basename | \\s*$sha256 | "
57 | }
58 | }
59 | }
60 |
--------------------------------------------------------------------------------
/bucket/obs-studio-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "31.1.2",
3 | "description": "Video Recording And Live Streaming Software",
4 | "homepage": "https://obsproject.com",
5 | "license": "GPL-2.0-only",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirror.nju.edu.cn/github-release/obsproject/obs-studio/LatestRelease/OBS-Studio-31.1.2-Windows-x64.zip",
9 | "hash": "9513cd402936593a6a5500da5d2bd49e6cd04dce05509c7b7f48dd25c391d2d8",
10 | "shortcuts": [
11 | [
12 | "bin\\64bit\\obs64.exe",
13 | "OBS Studio"
14 | ]
15 | ]
16 | },
17 | "arm64": {
18 | "url": "https://mirror.nju.edu.cn/github-release/obsproject/obs-studio/LatestRelease/OBS-Studio-31.1.2-Windows-arm64.zip",
19 | "hash": "1e6740c7ddb7b9ee0049d402b9922df95ff2fdb4d0415eafb6e57556d8af648d",
20 | "shortcuts": [
21 | [
22 | "bin\\64bit\\obs64.exe",
23 | "OBS Studio"
24 | ]
25 | ]
26 | }
27 | },
28 | "pre_install": "if (!(Test-Path \"$persist_dir\\portable_mode.txt\")) { New-Item \"$dir\\portable_mode.txt\" | Out-Null }",
29 | "persist": [
30 | "config",
31 | "portable_mode.txt",
32 | "obs-plugins"
33 | ],
34 | "post_install": [
35 | "if (!(Test-Path \"$dir\\obs-plugins.original\")) { return }",
36 | "Copy-Item \"$dir\\obs-plugins.original\\*\" \"$dir\\obs-plugins\" -Recurse -Force",
37 | "Remove-Item \"$dir\\obs-plugins.original\" -Recurse -Force"
38 | ],
39 | "checkver": "github",
40 | "autoupdate": {
41 | "architecture": {
42 | "64bit": {
43 | "url": "https://mirror.nju.edu.cn/github-release/obsproject/obs-studio/LatestRelease/OBS-Studio-$version-Windows-x64.zip"
44 | },
45 | "arm64": {
46 | "url": "https://mirror.nju.edu.cn/github-release/obsproject/obs-studio/LatestRelease/OBS-Studio-$version-Windows-arm64.zip"
47 | }
48 | },
49 | "hash": {
50 | "url": "https://github.com/obsproject/obs-studio/releases/$version",
51 | "regex": "(?sm)$basename.*?$sha256"
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/bucket/kicad-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "description": "Electronics Design Automation Suite",
3 | "homepage": "https://kicad.org",
4 | "version": "9.0.3",
5 | "license": "GPL-3.0-only",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirror.nju.edu.cn/kicad/windows/stable/kicad-9.0.3-x86_64.exe#/dl.7z",
9 | "hash": "582635ced8552c07e043ce9f2eba01dc0c42c96dcb87ce12ba85db1530da593f"
10 | }
11 | },
12 | "pre_install": "Remove-Item \"$dir\\`$*\" -Recurse",
13 | "bin": "bin\\kicad-cli.exe",
14 | "shortcuts": [
15 | [
16 | "bin\\kicad.exe",
17 | "KiCad"
18 | ],
19 | [
20 | "bin\\eeschema.exe",
21 | "Eeschema"
22 | ],
23 | [
24 | "bin\\pcbnew.exe",
25 | "PCBNew"
26 | ],
27 | [
28 | "bin\\gerbview.exe",
29 | "Gerber Viewer"
30 | ]
31 | ],
32 | "post_install": [
33 | "'install-file-associations', 'uninstall-file-associations' | ForEach-Object {",
34 | " $reg_file_in = \"$bucketsdir\\main\\scripts\\kicad\\$_.reg\"",
35 | " $reg_file_out = \"$dir\\$_.reg\"",
36 | " $kicad_root = \"$dir\".Replace('\\', '\\\\')",
37 | " if (Test-Path $reg_file_in) {",
38 | " $content = Get-Content $reg_file_in",
39 | " $content = $content.Replace('$kicad_root', $kicad_root)",
40 | " if ($global) {",
41 | " $content = $content.Replace('HKEY_CURRENT_USER', 'HKEY_LOCAL_MACHINE')",
42 | " }",
43 | " Set-Content -Path $reg_file_out -Value $content -Encoding Ascii",
44 | " }",
45 | "}"
46 | ],
47 | "post_uninstall": [
48 | "'uninstall-file-associations' | ForEach-Object {",
49 | " $reg_file = \"$dir\\$_.reg\"",
50 | " if (Test-Path $reg_file) {",
51 | " regedit /s $reg_file",
52 | " }",
53 | "}"
54 | ],
55 | "checkver": {
56 | "url": "https://mirror.nju.edu.cn/kicad/windows/stable/",
57 | "regex": "kicad-([\\d.]+)-x86_64\\.exe",
58 | "replace": "${1}${2}"
59 | },
60 | "autoupdate": {
61 | "url": "https://mirror.nju.edu.cn/kicad/windows/stable/$version/kicad-$version-x86_64.exe#/dl.7z"
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/bucket/neteasemusic.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.1.16.204365",
3 | "description": "网易云音乐客户端",
4 | "homepage": "https://music.163.com/",
5 | "license": {
6 | "identifier": "EULA",
7 | "url": "https://music.163.com/html/web2/service.html"
8 | },
9 | "architecture": {
10 | "64bit": {
11 | "url": "https://d1.music.126.net/dmusic/NeteaseCloudMusic_Music_official_3.1.16.204365_64.exe#/dl.7z",
12 | "hash": "2e203755b0dbe402fd9d56e078a38dade1026e692b271587ec2e65a1a8a75daf"
13 | },
14 | "32bit": {
15 | "url": "https://d1.music.126.net/dmusic/NeteaseCloudMusic_Music_official_3.1.16.204365_32.exe#/dl.7z",
16 | "hash": "cfbfecf64984adadc111c5d7a6ec206d940f9302c40e25c064c1121e7a81332e"
17 | }
18 | },
19 | "installer": {
20 | "script": [
21 | "Get-ChildItem \"$dir\\redist_packages\" | Move-Item -Destination \"$dir\" -Force",
22 | "Import-Module $(Join-Path $(Find-BucketDirectory -Root -Name dorado) scripts/DoradoUtils.psm1)",
23 | "Mount-ExternalRuntimeData -Source \"$persist_dir\\appdata\" -Target \"$env:LOCALAPPDATA\\Netease\\CloudMusic\"",
24 | "Remove-Module -Name DoradoUtils"
25 | ]
26 | },
27 | "post_install": "Remove-Item \"$dir\\`$PLUGINSDIR\",\"$dir\\redist_packages\" -Force -Recurse",
28 | "uninstaller": {
29 | "script": [
30 | "Import-Module $(Join-Path $(Find-BucketDirectory -Root -Name dorado) scripts/DoradoUtils.psm1)",
31 | "Dismount-ExternalRuntimeData -Target \"$env:LOCALAPPDATA\\Netease\\CloudMusic\"",
32 | "Remove-Module -Name DoradoUtils"
33 | ]
34 | },
35 | "shortcuts": [
36 | [
37 | "cloudmusic.exe",
38 | "网易云音乐"
39 | ]
40 | ],
41 | "checkver": {
42 | "url": "https://music.163.com/api/appcustomconfig/get",
43 | "jsonpath": "$.data.web-new-download.pc64.downloadUrl",
44 | "regex": "NeteaseCloudMusic_Music_official_([\\d.]+)_64.exe"
45 | },
46 | "autoupdate": {
47 | "architecture": {
48 | "64bit": {
49 | "url": "https://d1.music.126.net/dmusic/NeteaseCloudMusic_Music_official_$version_64.exe#/dl.7z"
50 | },
51 | "32bit": {
52 | "url": "https://d1.music.126.net/dmusic/NeteaseCloudMusic_Music_official_$version_32.exe#/dl.7z"
53 | }
54 | }
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/bucket/msys2-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2025-12-13",
3 | "description": "A software distro and building platform for Windows.",
4 | "homepage": "http://www.msys2.org/",
5 | "license": "GPL-2.0-only|BSD-3-Clause",
6 | "notes": "Please run 'msys2' now for the MSYS2 setup to complete!",
7 | "architecture": {
8 | "64bit": {
9 | "url": "https://mirrors.tuna.tsinghua.edu.cn/msys2/distrib/x86_64/msys2-base-x86_64-20251213.tar.xz",
10 | "hash": "999f63c2fc7525af5cd41b55e9ea704471a4f9d0278a257fff3b0d1183c441b9",
11 | "extract_dir": "msys64"
12 | }
13 | },
14 | "bin": [
15 | [
16 | "msys2_shell.cmd",
17 | "msys2",
18 | "-msys2 -defterm -here -no-start"
19 | ],
20 | [
21 | "msys2_shell.cmd",
22 | "mingw",
23 | "-mingw -defterm -here -full-path -no-start"
24 | ],
25 | [
26 | "msys2_shell.cmd",
27 | "mingw32",
28 | "-mingw32 -defterm -here -full-path -no-start"
29 | ],
30 | [
31 | "msys2_shell.cmd",
32 | "mingw64",
33 | "-mingw64 -defterm -here -full-path -no-start"
34 | ],
35 | [
36 | "msys2_shell.cmd",
37 | "clang64",
38 | "-clang64 -defterm -here -full-path -no-start"
39 | ],
40 | [
41 | "msys2_shell.cmd",
42 | "clangarm64",
43 | "-clangarm64 -defterm -here -full-path -no-start"
44 | ],
45 | [
46 | "msys2_shell.cmd",
47 | "ucrt64",
48 | "-ucrt64 -defterm -here -full-path -no-start"
49 | ]
50 | ],
51 | "shortcuts": [
52 | [
53 | "msys2.exe",
54 | "MSYS2"
55 | ],
56 | [
57 | "mingw32.exe",
58 | "MinGW32"
59 | ],
60 | [
61 | "mingw64.exe",
62 | "MinGW64"
63 | ],
64 | [
65 | "clang64.exe",
66 | "Clang64"
67 | ],
68 | [
69 | "clangarm64.exe",
70 | "ClangArm64"
71 | ],
72 | [
73 | "ucrt64.exe",
74 | "UCRT64"
75 | ]
76 | ],
77 | "persist": "home",
78 | "checkver": {
79 | "url": "https://github.com/msys2/msys2-installer/releases",
80 | "regex": "/releases/tag/(?(?\\d{4})-(?\\d{2})-(?\\d{2}))"
81 | },
82 | "autoupdate": {
83 | "architecture": {
84 | "64bit": {
85 | "url": "https://mirrors.tuna.tsinghua.edu.cn/msys2/distrib/x86_64/msys2-base-x86_64-$matchYear$matchMonth$matchDay.tar.xz"
86 | }
87 | }
88 | }
89 | }
90 |
--------------------------------------------------------------------------------
/bucket/quarkclouddrive.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.23.2",
3 | "description": "夸克网盘",
4 | "homepage": "https://pan.quark.cn/",
5 | "license": "Proprietary",
6 | "url": "https://pdds.quark.cn/download/stfile/yy65y8z68yz4y282i/QuarkCloudDrive_v3.23.2_release_(Build2384776-20250822102933).exe",
7 | "hash": "4c04168ec7b259b16fadf99daae1af61f938e28d85e52ac567328d481c234776",
8 | "innosetup": true,
9 | "shortcuts": [
10 | [
11 | "QuarkCloudDrive.exe",
12 | "QuarkCloudDrive"
13 | ]
14 | ],
15 | "pre_install": [
16 | "Move-Item -Force -Path \"$dir\\app-$version\\*\" -Destination \"$dir\"",
17 | "Remove-Item -Force -Recurse -Path \"$dir\\app-$version\""
18 | ],
19 | "installer": {
20 | "script": [
21 | "Ensure \"$persist_dir\" | Out-Null",
22 | "$quarkData1 = \"$env:APPDATA\\quark-cloud-drive\"",
23 | "$quarkData2 = \"$env:APPDATA\\Quark\"",
24 | "foreach ($path in @($quarkData1, $quarkData2)) {",
25 | " if (Test-Path $path) {",
26 | " $linkType = (Get-Item -Path $path -ErrorAction SilentlyContinue).LinkType",
27 | " if ($linkType -eq 'Junction') {",
28 | " Remove-Item -Path $path -Force",
29 | " } else {",
30 | " Get-ChildItem -Path $path -Force | Move-Item -Destination \"$persist_dir\\$(Split-Path $path -Leaf)\" -Force",
31 | " Remove-Item -Path $path -Force -Recurse",
32 | " }",
33 | " }",
34 | " $targetPersist = \"$persist_dir\\$(Split-Path $path -Leaf)\"",
35 | " if (!(Test-Path $targetPersist)) {",
36 | " New-Item -ItemType Directory -Path $targetPersist -Force | Out-Null",
37 | " }",
38 | " New-Item -Path $path -ItemType Junction -Target $targetPersist | Out-Null",
39 | "}"
40 | ]
41 | },
42 | "uninstaller": {
43 | "script": [
44 | "Remove-Item \"$env:APPDATA\\quark-cloud-drive\" -Recurse -Force -ErrorAction SilentlyContinue",
45 | "Remove-Item \"$env:APPDATA\\Quark\" -Recurse -Force -ErrorAction SilentlyContinue"
46 | ]
47 | },
48 | "checkver": {
49 | "url": "https://pan.quark.cn/api/client_version",
50 | "jsonpath": "$.data.clouddrive_backup_packages[1].winInstallerUrl",
51 | "re": "pdds.quark.cn/download/stfile/(?\\w+)/QuarkCloudDrive_v(?[\\d.]+)_release_\\(Build(?\\d+)-(?\\d+)\\).exe",
52 | "replace": "${version}"
53 | },
54 | "autoupdate": {
55 | "url": "https://pdds.quark.cn/download/stfile/$matchRelease/QuarkCloudDrive_v$matchVersion_release_(Build$matchBuild-$matchTimestamp).exe"
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/bucket/vscode-win7.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.70.2",
3 | "description": "The last VSCode release supporting Windows 7",
4 | "homepage": "https://code.visualstudio.com/",
5 | "license": {
6 | "identifier": "Freeware",
7 | "url": "https://code.visualstudio.com/License/"
8 | },
9 | "notes": [
10 | "Add Visual Studio Code as a context menu option by running:",
11 | "'reg import \"$dir\\install-context.reg\"'",
12 | "For file associations, run:",
13 | "'reg import \"$dir\\install-associations.reg\"'"
14 | ],
15 | "architecture": {
16 | "64bit": {
17 | "url": "https://update.code.visualstudio.com/1.70.2/win32-x64-archive/stable#/dl.7z",
18 | "hash": "3b20ef59eb1e6446e8c3ed65ada0af4531e52aa6f8add052a7f5740221e76323"
19 | }
20 | },
21 | "env_add_path": "bin",
22 | "shortcuts": [
23 | [
24 | "code.exe",
25 | "Visual Studio Code"
26 | ]
27 | ],
28 | "post_install": [
29 | "$dirpath = \"$dir\".Replace('\\', '\\\\')",
30 | "$exepath = \"$dir\\Code.exe\".Replace('\\', '\\\\')",
31 | "'install-associations', 'uninstall-associations', 'install-context', 'uninstall-context' | ForEach-Object {",
32 | " if (Test-Path \"$bucketsdir\\extras\\scripts\\vscode\\$_.reg\") {",
33 | " $content = Get-Content \"$bucketsdir\\extras\\scripts\\vscode\\$_.reg\"",
34 | " $content = $content.Replace('$codedir', $dirpath)",
35 | " $content = $content.Replace('$code', $exepath)",
36 | " if ($global) {",
37 | " $content = $content.Replace('HKEY_CURRENT_USER', 'HKEY_LOCAL_MACHINE')",
38 | " }",
39 | " $content | Set-Content -Path \"$dir\\$_.reg\"",
40 | " }",
41 | "}",
42 | "if (!(Test-Path \"$dir\\data\\extensions\") -and (Test-Path \"$env:USERPROFILE\\.vscode\\extensions\")) {",
43 | " info '[Portable Mode] Copying extensions...'",
44 | " Copy-Item \"$env:USERPROFILE\\.vscode\\extensions\" \"$dir\\data\" -Recurse",
45 | "}",
46 | "if (!(Test-Path \"$dir\\data\\user-data\") -and (Test-Path \"$env:AppData\\Code\")) {",
47 | " info '[Portable Mode] Copying user data...'",
48 | " Copy-Item \"$env:AppData\\Code\" \"$dir\\data\\user-data\" -Recurse",
49 | "}",
50 | "$extensions_file = \"$dir\\data\\extensions\\extensions.json\"",
51 | "if ((Test-Path \"$extensions_file\")) {",
52 | " info 'Adjusting path in extensions file...'",
53 | " (Get-Content \"$extensions_file\") -replace '(?<=vscode(/|\\\\\\\\)).*?(?=(/|\\\\\\\\)data(/|\\\\\\\\)extensions)', $version | Set-Content \"$extensions_file\"",
54 | "}"
55 | ],
56 | "uninstaller": {
57 | "script": "if ($cmd -eq 'uninstall') { reg import \"$dir\\uninstall-context.reg\" }"
58 | },
59 | "persist": "data",
60 | "checkver": {
61 | "url": "https://code.visualstudio.com/sha?build=stable",
62 | "jsonpath": "$.products[?(@.platform.os == 'win32-x64-archive')].name"
63 | }
64 | }
65 |
--------------------------------------------------------------------------------
/bucket/miniforge-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "25.11.0-1",
3 | "description": "A conda-forge distribution",
4 | "homepage": "https://mirror.nju.edu.cn/github-release/conda-forge/miniforge/",
5 | "license": "BSD-3-Clause",
6 | "architecture": {
7 | "64bit": {
8 | "url": "https://mirror.nju.edu.cn/github-release/conda-forge/miniforge/LatestRelease/Miniforge3-25.11.0-1-Windows-x86_64.exe",
9 | "hash": "c09c1185040d7a085e954be226c9a9c8dfaad43286d89de6b73455a7d848365c"
10 | }
11 | },
12 | "pre_install": "if ($dir -match ' ') { error 'The installation directory cannot include a space'; break}",
13 | "installer": {
14 | "script": [
15 | "# https://github.com/ScoopInstaller/Scoop/pull/5065",
16 | "Import-Module $(Join-Path $(Find-BucketDirectory -Root -Name extras-cn) scripts/AppsUtils.psm1)",
17 | "Move-Item \"$dir\\$fname\" \"$dir\\..\\setup.exe\" | Out-Null",
18 | "Invoke-ExternalCommand2 -Path \"$dir\\..\\setup.exe\" -ArgumentList @('/S', '/InstallationType=JustMe', '/RegisterPython=0', '/AddToPath=0', '/NoRegistry=1', '/NoShortcuts=1', \"/D=$dir\") | Out-Null",
19 | "Remove-Module -Name AppsUtils"
20 | ]
21 | },
22 | "uninstaller": {
23 | "script": [
24 | "Import-Module $(Join-Path $(Find-BucketDirectory -Root -Name extras-cn) scripts/AppsUtils.psm1)",
25 | "Start-Process \"$dir\\Uninstall-Miniforge3.exe\" -ArgumentList '/S' -Wait | Out-Null",
26 | "Remove-Module -Name AppsUtils"
27 | ]
28 | },
29 | "bin": "scripts\\conda.exe",
30 | "post_install": [
31 | "Remove-Item \"$dir\\..\\setup.exe\" -Force | Out-Null",
32 | "# Set auto_activate_base to false",
33 | "(& $dir\\scripts\\conda.exe config --system --set auto_activate_base false) | Out-Null",
34 | "# Invoke hook for current shell session",
35 | "(& $dir\\scripts\\conda.exe shell.powershell hook) | Out-String | Invoke-Expression"
36 | ],
37 | "checkver": {
38 | "github": "https://github.com/conda-forge/miniforge",
39 | "regex": "tag/([\\d.-]+)"
40 | },
41 | "autoupdate": {
42 | "architecture": {
43 | "64bit": {
44 | "url": "https://mirror.nju.edu.cn/github-release/conda-forge/miniforge/LatestRelease/Miniforge3-$version-Windows-x86_64.exe",
45 | "hash": {
46 | "url": "$url.sha256"
47 | }
48 | }
49 | }
50 | },
51 | "notes": [
52 | "This variant does not add the default venv into your PATH unless you activate it with 'conda activate base'.",
53 | "You may choose to install the one from the official bucket if you do not care about python PATH pollution.",
54 | "",
55 | "Conda base env is not persisted by Scoop, packages installed to the base env will be removed when upgrading the app.",
56 | "We advice to setup 'envs_dirs' to use a seperated path like '~/.conda/envs' and avoid using the base env.",
57 | "https://conda.io/projects/conda/en/latest/user-guide/configuration/use-condarc.html#specify-environment-directories-envs-dirs",
58 | "",
59 | "To enable conda tab-completion autoload, you can add the following code to your PowerShell $PROFILE:",
60 | "(& conda 'shell.powershell' 'hook') | Out-String | Invoke-Expression"
61 | ]
62 | }
63 |
--------------------------------------------------------------------------------
/bucket/phpstudy-lagecy-scoop.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.0",
3 | "homepage": "https://github.com/chawyehsu/phpstudy-lagecy-scoop",
4 | "description": "A minimized package of the phpStudy2016 lagecy, repacked for working with Scoop.",
5 | "license": "Freeware",
6 | "url": "https://raw.githubusercontent.com/chawyehsu/phpstudy-lagecy-scoop/master/phpstudy-lagecy-scoop/phpstudy-lagecy-scoop_v3.0.zip",
7 | "hash": "6fba686528a373db9255290781662dd361016d92c531678f2761ec85af292687",
8 | "depends": [
9 | "apache",
10 | "nginx",
11 | "mysql57",
12 | "php-nts"
13 | ],
14 | "suggest": {
15 | "vcruntime": "extras/vcredist2019"
16 | },
17 | "installer": {
18 | "script": [
19 | "if (!$env:SCOOP_APPS_DIR) { $env:SCOOP_APPS_DIR = Split-Path (Split-Path (Resolve-Path (scoop prefix scoop))) }",
20 | "Write-Host 'Creating Junctions...' -f DarkCyan",
21 | "New-Item -Type Junction -Path \"$dir\\apache\" -Target \"$env:SCOOP_APPS_DIR\\apache\\current\" | Out-Null",
22 | "New-Item -Type Junction -Path \"$dir\\nginx\" -Target \"$env:SCOOP_APPS_DIR\\nginx\\current\" | Out-Null",
23 | "New-Item -Type Junction -Path \"$dir\\mysql\" -Target \"$env:SCOOP_APPS_DIR\\mysql57\\current\" | Out-Null",
24 | "New-Item -Type Junction -Path \"$dir\\php\\php-current-nts\" -Target \"$env:SCOOP_APPS_DIR\\php-nts\\current\" | Out-Null",
25 | "Write-Host 'Adding mod_fcgid for Apache...' -f DarkCyan",
26 | "if (!(Test-Path \"$dir\\apache\\modules\\mod_fcgid.so\")) { Move-Item \"$dir\\conf\\mod_fcgid.so\" \"$dir\\apache\\modules\\mod_fcgid.so\" }",
27 | "Write-Host 'Updating apache/nginx/php config files...' -f DarkCyan",
28 | "(Get-Content \"$dir\\conf\\httpd.conf\").Replace(\"C:/Apache24\", \"$dir\\apache\".Replace('\\','/')) | Set-Content \"$dir\\conf\\httpd.conf\"",
29 | "(Get-Content \"$dir\\conf\\httpd.conf\").Replace(\"`${SRVROOT}/htdocs\", \"$persist_dir\\www\".Replace('\\','/')) | Set-Content \"$dir\\conf\\httpd.conf\"",
30 | "(Get-Content \"$dir\\conf\\httpd.conf\").Replace(\"C:/PHP\", \"$dir\\php\\php-current-nts\".Replace('\\','/')) | Set-Content \"$dir\\conf\\httpd.conf\"",
31 | "Remove-Item -Force \"$dir\\apache\\conf\\httpd.conf\"",
32 | "Move-Item \"$dir\\conf\\httpd.conf\" \"$dir\\apache\\conf\\httpd.conf\"",
33 | "(Get-Content \"$dir\\conf\\nginx.conf\").Replace(\"D:/phpstudy/www\", \"$persist_dir\\www\".Replace('\\','/')) | Set-Content \"$dir\\conf\\nginx.conf\"",
34 | "Remove-Item -Force \"$dir\\nginx\\conf\\nginx.conf\"",
35 | "Move-Item \"$dir\\conf\\nginx.conf\" \"$dir\\nginx\\conf\\nginx.conf\"",
36 | "Write-Host \"apache/nginx root directory was reset to $persist_dir\\www\" -f DarkCyan",
37 | "if (Test-Path \"$dir\\php\\php-current-nts\\php.ini\") { Remove-Item -Force \"$dir\\php\\php-current-nts\\php.ini\" }",
38 | "Move-Item \"$dir\\conf\\php.ini\" \"$dir\\php\\php-current-nts\\php.ini\""
39 | ]
40 | },
41 | "persist": [
42 | "tools\\phpStudy.ini"
43 | ],
44 | "shortcuts": [
45 | [
46 | "phpStudy.exe",
47 | "phpStudy Lagecy"
48 | ]
49 | ],
50 | "checkver": "github",
51 | "autoupdate": {
52 | "url": "https://raw.githubusercontent.com/chawyehsu/phpstudy-lagecy-scoop/master/phpstudy-lagecy-scoop/phpstudy-lagecy-scoop_v$version.zip",
53 | "hash": {
54 | "url": "$url.sha256"
55 | }
56 | },
57 | "notes": "If Apache/nginx/MySQL can't start, please view and edit your httpd.conf/nginx.conf/my.ini config files."
58 | }
59 |
--------------------------------------------------------------------------------
/bucket/gimp-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.0.6-1",
3 | "description": "GNU Image Manipulation Program",
4 | "homepage": "https://gimp.org",
5 | "license": "GPL-3.0-only",
6 | "url": "https://mirrors.ustc.edu.cn/gimp/v3.0/windows/gimp-3.0.6-setup-1.exe",
7 | "hash": "1521ae318ff176d3d428279d52ff5abdf328ddf8644b48de75684e55e1057167",
8 | "innosetup": true,
9 | "installer": {
10 | "script": [
11 | "$scriptver = $version -split '[-.]'",
12 | "$shortver = $scriptver[0] + '.' + $scriptver[1]",
13 | "Push-Location \"$dir\"",
14 | "Get-ChildItem -Filter '*.debug' -Recurse | Remove-Item -Recurse",
15 | "$file64 = Get-ChildItem -Recurse -Filter '*,?.*' | Where-Object {",
16 | " $_.Name -match '^(.*?),[12]\\.(.*?)$' -and",
17 | " (-not (Test-Path (Join-Path $_.Directory.FullName \"$($matches[1]),3.$($matches[2])\"))) -and",
18 | " $matches[1] -ne 'libhwy'",
19 | "}",
20 | "$file64 | Rename-Item -NewName { $_.name -Replace ',2', ',3' }",
21 | "$file64 | Rename-Item -NewName { $_.name -Replace ',1', ',2' }",
22 | "if ($architecture -eq '32bit') {",
23 | " Get-ChildItem -Filter '*,1*' -Recurse | Rename-Item -NewName { $_.name -Replace ',1', '' }",
24 | "} else {",
25 | " # 'twain.exe' is for 'gimp32on64' which is not included.",
26 | " Remove-Item \"lib\\gimp\\$shortver\\plug-ins\\twain\" -Recurse -Force",
27 | " if ($architecture -eq '64bit') {",
28 | " Get-ChildItem -Filter '*,2*' -Recurse | Rename-Item -NewName { $_.name -Replace ',2', '' }",
29 | " } else {",
30 | " Get-ChildItem -Filter '*,3*' -Recurse | Rename-Item -NewName { $_.name -Replace ',3', '' }",
31 | " }",
32 | "}",
33 | "Get-ChildItem -Filter '*,*' -Recurse | Remove-Item",
34 | "Pop-Location"
35 | ]
36 | },
37 | "bin": [
38 | "bin\\gimp-console-3.0.exe",
39 | [
40 | "bin\\gimp-console-3.0.exe",
41 | "gimp-console"
42 | ],
43 | [
44 | "bin\\gimp-console-3.0.exe",
45 | "gimp"
46 | ],
47 | "bin\\gimptool-3.0.exe",
48 | [
49 | "bin\\gimptool-3.0.exe",
50 | "gimptool"
51 | ]
52 | ],
53 | "shortcuts": [
54 | [
55 | "bin\\gimp-3.0.exe",
56 | "GIMP"
57 | ]
58 | ],
59 | "checkver": {
60 | "url": "https://www.gimp.org/downloads/",
61 | "regex": "gimp-(?[\\d.]+)-setup(?-\\d)?\\.exe",
62 | "replace": "${version}${build}"
63 | },
64 | "autoupdate": {
65 | "url": "https://mirrors.ustc.edu.cn/gimp/v$majorVersion.$minorVersion/windows/gimp-$matchHead-setup$matchTail.exe",
66 | "hash": {
67 | "url": "$baseurl/SHA256SUMS"
68 | },
69 | "bin": [
70 | "bin\\gimp-console-$majorVersion.$minorVersion.exe",
71 | [
72 | "bin\\gimp-console-$majorVersion.$minorVersion.exe",
73 | "gimp-console"
74 | ],
75 | [
76 | "bin\\gimp-console-$majorVersion.$minorVersion.exe",
77 | "gimp"
78 | ],
79 | "bin\\gimptool-$majorVersion.$minorVersion.exe",
80 | [
81 | "bin\\gimptool-$majorVersion.$minorVersion.exe",
82 | "gimptool"
83 | ]
84 | ],
85 | "shortcuts": [
86 | [
87 | "bin\\gimp-$majorVersion.$minorVersion.exe",
88 | "GIMP"
89 | ]
90 | ]
91 | }
92 | }
93 |
--------------------------------------------------------------------------------
/bucket/libreoffice-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "25.2.4",
3 | "description": "Powerful and free office suite, a successor to OpenOffice(.org).",
4 | "homepage": "https://libreoffice.org/",
5 | "license": "MPL-2.0",
6 | "suggest": {
7 | "vcredist": "extras/vcredist2022"
8 | },
9 | "notes": "If you are upgrading from portable version, you can migrate settings by copying \"$persist_dir\\Data\" to \"%AppData%\\LibreOffice\"",
10 | "architecture": {
11 | "64bit": {
12 | "url": "https://mirrors.ustc.edu.cn/libreoffice/libreoffice/stable/25.2.4/win/x86_64/LibreOffice_25.2.4_Win_x86-64.msi#/dl.msi_",
13 | "hash": "a985d08e5311f0fdefbf6b0a599b60112d1fcd388d7ad34121e0be53d597b048"
14 | },
15 | "32bit": {
16 | "url": "https://mirrors.ustc.edu.cn/libreoffice/libreoffice/stable/25.2.4/win/x86/LibreOffice_25.2.4_Win_x86.msi#/dl.msi_",
17 | "hash": "380bbdd36593d725aa288894f988accaf40cea8b932bff41998cea92a42a9036"
18 | },
19 | "arm64": {
20 | "url": "https://mirrors.ustc.edu.cn/libreoffice/libreoffice/stable/25.2.4/win/aarch64/LibreOffice_25.2.4_Win_aarch64.msi#/dl.msi_",
21 | "hash": "71dd1564b666473951a6d2843af7989caf27e879855f4fdba84a6ae639515a19"
22 | }
23 | },
24 | "pre_install": [
25 | "# keeping files in 'LibreOffice' directory so that bundled font can work properly",
26 | "ensure \"$dir\\LibreOffice\\share\\fonts\" | Out-Null",
27 | "# usage: get_config ($name, $default). $default ==> set to what value if the value is empty (not being set before)",
28 | "if (get_config USE_LESSMSI $false) {",
29 | " # if 'use_lessmsi' is true",
30 | " Expand-MsiArchive \"$dir\\dl.msi_\" \"$dir\" | Out-Null",
31 | " Move-Item \"$dir\\Fonts\" \"$dir\\LibreOffice\\share\\fonts\\truetype\" -Force",
32 | " Remove-Item \"$dir\\System*\" -Recurse -Force",
33 | "} else {",
34 | " # if 'use_lessmsi' is false or not set",
35 | " Expand-MsiArchive \"$dir\\dl.msi_\" \"$dir\\LibreOffice\" | Out-Null",
36 | " Expand-MsiArchive \"$dir\\dl.msi_\" \"$dir\\LibreOffice\\share\\fonts\\truetype\" -ExtractDir 'Fonts' | Out-Null",
37 | " Remove-Item \"$dir\\LibreOffice\\Fonts\", \"$dir\\LibreOffice\\System*\" -Recurse -Force",
38 | "}",
39 | "Remove-Item \"$dir\\dl.msi_\""
40 | ],
41 | "shortcuts": [
42 | [
43 | "LibreOffice\\program\\soffice.exe",
44 | "LibreOffice\\LibreOffice"
45 | ],
46 | [
47 | "LibreOffice\\program\\sbase.exe",
48 | "LibreOffice\\LibreOffice Base"
49 | ],
50 | [
51 | "LibreOffice\\program\\scalc.exe",
52 | "LibreOffice\\LibreOffice Calc"
53 | ],
54 | [
55 | "LibreOffice\\program\\sdraw.exe",
56 | "LibreOffice\\LibreOffice Draw"
57 | ],
58 | [
59 | "LibreOffice\\program\\simpress.exe",
60 | "LibreOffice\\LibreOffice Impress"
61 | ],
62 | [
63 | "LibreOffice\\program\\smath.exe",
64 | "LibreOffice\\LibreOffice Math"
65 | ],
66 | [
67 | "LibreOffice\\program\\swriter.exe",
68 | "LibreOffice\\LibreOffice Writer"
69 | ]
70 | ],
71 | "checkver": {
72 | "url": "https://mirrors.ustc.edu.cn/libreoffice/libreoffice/stable/",
73 | "regex": "([\\d.]+)/"
74 | },
75 | "autoupdate": {
76 | "architecture": {
77 | "64bit": {
78 | "url": "https://mirrors.ustc.edu.cn/libreoffice/libreoffice/stable/$version/win/x86_64/LibreOffice_$version_Win_x86-64.msi#/dl.msi_"
79 | },
80 | "32bit": {
81 | "url": "https://mirrors.ustc.edu.cn/libreoffice/libreoffice/stable/$version/win/x86/LibreOffice_$version_Win_x86.msi#/dl.msi_"
82 | },
83 | "arm64": {
84 | "url": "https://mirrors.ustc.edu.cn/libreoffice/libreoffice/stable/$version/win/aarch64/LibreOffice_$version_Win_aarch64.msi#/dl.msi_"
85 | }
86 | },
87 | "hash": {
88 | "url": "$url.sha256"
89 | }
90 | }
91 | }
92 |
--------------------------------------------------------------------------------
/bucket/gimp-cn-dev.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3.1.4",
3 | "description": "GNU Image Manipulation Program",
4 | "homepage": "https://gimp.org",
5 | "license": "GPL-3.0-only",
6 | "url": "https://mirrors.ustc.edu.cn/gimp/v3.1/windows/gimp-3.1.4-setup.exe",
7 | "hash": "89359bec1348bc19729c25b52f08111dd97b32a8c9e8b51aa117a84a76ac4476",
8 | "innosetup": true,
9 | "installer": {
10 | "script": [
11 | "$scriptver = ($fname -split '-' | Select-Object -First 1 -Skip 1).Split('.')",
12 | "$shortver = $scriptver[0] + '.' + $scriptver[1]",
13 | "Push-Location \"$dir\"",
14 | "Get-ChildItem -Filter '*.debug' -Recurse | Remove-Item -Recurse",
15 | "if ($architecture -eq '64bit') {",
16 | " Rename-Item \"lib\\gimp\\$shortver\\plug-ins\\twain\\twain,3.exe\" 'twain.exe'",
17 | " Remove-Item \"lib\\gimp\\$shortver\\plug-ins\\twain\\twain,1.exe\"",
18 | " Get-ChildItem -Filter '*,1*' -Recurse | Rename-Item -NewName { $_.name -Replace ',\\d','' }",
19 | " Get-ChildItem -Filter '*,*' -Recurse | Remove-Item",
20 | "} else {",
21 | " Rename-Item \"lib\\gimp\\$shortver\\plug-ins\\twain\\twain,1.exe\" 'twain.exe'",
22 | " Remove-Item \"lib\\gimp\\$shortver\\plug-ins\\twain\\twain,3.exe\"",
23 | " Get-ChildItem -Filter '*,1*' -Recurse | Remove-Item",
24 | " Get-ChildItem -Filter '*,*' -Recurse | Rename-Item -NewName { $_.name -Replace ',\\d','' }",
25 | "}",
26 | "$defpath = \"`nPATH=`${gimp_installation_dir}\\bin`n\"",
27 | "$defenv = Get-Content \"lib\\gimp\\$shortver\\environ\\default.env\" -Raw",
28 | "$defenv += $defpath",
29 | "$defenv += \"PYTHONPATH=`${gimp_installation_dir}\\lib\\gimp\\$shortver\\python;`${gimp_plug_in_dir}\\plug-ins\\python-console\"",
30 | "$defenv | Set-Content \"lib\\gimp\\$shortver\\environ\\default.env\"",
31 | "# Only worked for versions <2.99, installer no longer supplies 'pygimp.env'",
32 | "# $pyenv = (Get-Content \"lib\\gimp\\$shortver\\environ\\pygimp.env\" -Raw) + '__COMPAT_LAYER=HIGHDPIAWARE'",
33 | "# $pyenv | Set-Content \"lib\\gimp\\$shortver\\environ\\pygimp.env\"",
34 | "'__COMPAT_LAYER=HIGHDPIAWARE' | Set-Content \"lib\\gimp\\$shortver\\environ\\pygimp.env\"",
35 | "$pyint = Get-Content \"lib\\gimp\\$shortver\\interpreters\\pygimp.interp\" -Raw",
36 | "$pyint = $pyint -Replace '(python|python2)=(.*)', \"`$1=$dir\\bin\\pythonw.exe\"",
37 | "$pyint = $pyint -Replace 'py::python2', 'py::python'",
38 | "$pyint | Set-Content \"lib\\gimp\\$shortver\\interpreters\\pygimp.interp\"",
39 | "Pop-Location"
40 | ]
41 | },
42 | "bin": [
43 | "bin\\gimp-console-3.1.exe",
44 | [
45 | "bin\\gimp-console-3.1.exe",
46 | "gimp-console"
47 | ],
48 | [
49 | "bin\\gimp-console-3.1.exe",
50 | "gimp"
51 | ],
52 | "bin\\gimptool-3.1.exe",
53 | [
54 | "bin\\gimptool-3.1.exe",
55 | "gimptool"
56 | ]
57 | ],
58 | "shortcuts": [
59 | [
60 | "bin\\gimp-3.1.exe",
61 | "GIMP Development Version"
62 | ]
63 | ],
64 | "checkver": {
65 | "url": "https://testing.gimp.org/downloads/devel/",
66 | "regex": "The current development release of GIMP is \\([\\d.]+)"
67 | },
68 | "autoupdate": {
69 | "url": "https://mirrors.ustc.edu.cn/gimp/v$majorVersion.$minorVersion/windows/gimp-$matchHead-setup$matchTail.exe",
70 | "hash": {
71 | "url": "$baseurl/SHA256SUMS"
72 | },
73 | "bin": [
74 | "bin\\gimp-console-$majorVersion.$minorVersion.exe",
75 | [
76 | "bin\\gimp-console-$majorVersion.$minorVersion.exe",
77 | "gimp-console"
78 | ],
79 | [
80 | "bin\\gimp-console-$majorVersion.$minorVersion.exe",
81 | "gimp"
82 | ],
83 | "bin\\gimptool-$majorVersion.$minorVersion.exe",
84 | [
85 | "bin\\gimptool-$majorVersion.$minorVersion.exe",
86 | "gimptool"
87 | ]
88 | ],
89 | "shortcuts": [
90 | [
91 | "bin\\gimp-$majorVersion.$minorVersion.exe",
92 | "GIMP Development Version"
93 | ]
94 | ]
95 | }
96 | }
97 |
--------------------------------------------------------------------------------
/scripts/AppsUtils.psm1:
--------------------------------------------------------------------------------
1 | #Requires -Version 5.1
2 | Set-StrictMode -Version 3.0
3 |
4 | # A temp fix for https://github.com/ScoopInstaller/Scoop/pull/5066#issuecomment-1372087032
5 | function Invoke-ExternalCommand2 {
6 | [CmdletBinding(DefaultParameterSetName = 'Default')]
7 | [OutputType([Boolean])]
8 | param (
9 | [Parameter(Mandatory = $true,
10 | Position = 0)]
11 | [Alias('Path')]
12 | [ValidateNotNullOrEmpty()]
13 | [String]
14 | $FilePath,
15 | [Parameter(Position = 1)]
16 | [Alias('Args')]
17 | [String[]]
18 | $ArgumentList,
19 | [Parameter(ParameterSetName = 'UseShellExecute')]
20 | [Switch]
21 | $RunAs,
22 | [Parameter(ParameterSetName = 'UseShellExecute')]
23 | [Switch]
24 | $Quiet,
25 | [Alias('Msg')]
26 | [String]
27 | $Activity,
28 | [Alias('cec')]
29 | [Hashtable]
30 | $ContinueExitCodes,
31 | [Parameter(ParameterSetName = 'Default')]
32 | [Alias('Log')]
33 | [String]
34 | $LogPath
35 | )
36 | if ($Activity) {
37 | Write-Host "$Activity " -NoNewline
38 | }
39 | $Process = New-Object System.Diagnostics.Process
40 | $Process.StartInfo.FileName = $FilePath
41 | $Process.StartInfo.UseShellExecute = $false
42 | $redirectToLogFile = $false
43 | if ($LogPath) {
44 | if ($FilePath -match '^msiexec(.exe)?$') {
45 | $ArgumentList += "/lwe `"$LogPath`""
46 | } else {
47 | $redirectToLogFile = $true
48 | $Process.StartInfo.RedirectStandardOutput = $true
49 | $Process.StartInfo.RedirectStandardError = $true
50 | }
51 | }
52 | if ($RunAs) {
53 | $Process.StartInfo.UseShellExecute = $true
54 | $Process.StartInfo.Verb = 'RunAs'
55 | }
56 | if ($Quiet) {
57 | $Process.StartInfo.UseShellExecute = $true
58 | $Process.StartInfo.WindowStyle = [System.Diagnostics.ProcessWindowStyle]::Hidden
59 | }
60 | if ($ArgumentList.Length -gt 0) {
61 | if ($FilePath -match '^((cmd|cscript|wscript|msiexec)(\.exe)?|.*\.(bat|cmd|js|vbs|wsf))$') {
62 | $Process.StartInfo.Arguments = $ArgumentList -join ' '
63 | } elseif ($Process.StartInfo.PSObject.Properties.Name -contains 'ArgumentList') {
64 | # ArgumentList is supported in PowerShell 6.1 and later (built on .NET Core 2.1+)
65 | # ref-1: https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.processstartinfo.argumentlist?view=net-6.0
66 | # ref-2: https://docs.microsoft.com/en-us/powershell/scripting/whats-new/differences-from-windows-powershell?view=powershell-7.2#net-framework-vs-net-core
67 | $ArgumentList | ForEach-Object { $Process.StartInfo.ArgumentList.Add($_) }
68 | } else {
69 | # escape arguments manually in lower versions, refer to https://docs.microsoft.com/en-us/previous-versions/17w5ykft(v=vs.85)
70 | $escapedArgs = $ArgumentList | ForEach-Object {
71 | # escape N consecutive backslash(es), which are followed by a double quote, to 2N consecutive ones
72 | $s = $_ -replace '(\\+)"', '$1$1"'
73 | # escape N consecutive backslash(es), which are at the end of the string, to 2N consecutive ones
74 | $s = $s -replace '(\\+)$', '$1$1'
75 | # escape double quotes
76 | $s = $s -replace '"', '\"'
77 | # https://github.com/ScoopInstaller/Scoop/issues/5231#issuecomment-1295840608
78 | $s
79 | }
80 | $Process.StartInfo.Arguments = $escapedArgs -join ' '
81 | Write-Host $Process.StartInfo.Arguments
82 | }
83 | }
84 | try {
85 | [void]$Process.Start()
86 | } catch {
87 | if ($Activity) {
88 | Write-Host 'error.' -ForegroundColor DarkRed
89 | }
90 | Write-Host $_.Exception.Message -ForegroundColor DarkRed
91 | return $false
92 | }
93 | if ($redirectToLogFile) {
94 | # we do this to remove a deadlock potential
95 | # ref: https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.process.standardoutput?view=netframework-4.5#remarks
96 | $stdoutTask = $Process.StandardOutput.ReadToEndAsync()
97 | $stderrTask = $Process.StandardError.ReadToEndAsync()
98 | }
99 | $Process.WaitForExit()
100 | if ($redirectToLogFile) {
101 | Out-UTF8File -FilePath $LogPath -Append -InputObject $stdoutTask.Result
102 | Out-UTF8File -FilePath $LogPath -Append -InputObject $stderrTask.Result
103 | }
104 | if ($Process.ExitCode -ne 0) {
105 | if ($ContinueExitCodes -and ($ContinueExitCodes.ContainsKey($Process.ExitCode))) {
106 | if ($Activity) {
107 | Write-Host 'done.' -ForegroundColor DarkYellow
108 | }
109 | Write-Host $ContinueExitCodes[$Process.ExitCode] -ForegroundColor DarkYellow
110 | return $true
111 | } else {
112 | if ($Activity) {
113 | Write-Host 'error.' -ForegroundColor DarkRed
114 | }
115 | Write-Host "Exit code was $($Process.ExitCode)!" -ForegroundColor DarkRed
116 | return $false
117 | }
118 | }
119 | if ($Activity) {
120 | Write-Host 'done.' -ForegroundColor Green
121 | }
122 | return $true
123 | }
124 |
125 | function Out-UTF8File {
126 | param(
127 | [Parameter(Mandatory = $True, Position = 0)]
128 | [Alias('Path')]
129 | [String] $FilePath,
130 | [Switch] $Append,
131 | [Switch] $NoNewLine,
132 | [Parameter(ValueFromPipeline = $True)]
133 | [PSObject] $InputObject
134 | )
135 | process {
136 | if ($Append) {
137 | [System.IO.File]::AppendAllText($FilePath, $InputObject)
138 | } else {
139 | if (!$NoNewLine) {
140 | # Ref: https://stackoverflow.com/questions/5596982
141 | # Performance Note: `WriteAllLines` throttles memory usage while
142 | # `WriteAllText` needs to keep the complete string in memory.
143 | [System.IO.File]::WriteAllLines($FilePath, $InputObject)
144 | } else {
145 | # However `WriteAllText` does not add ending newline.
146 | [System.IO.File]::WriteAllText($FilePath, $InputObject)
147 | }
148 | }
149 | }
150 | }
151 |
152 | function Mount-ExternalRuntimeData {
153 | <#
154 | .SYNOPSIS
155 | Mount external runtime data
156 |
157 | .PARAMETER Source
158 | The source path, which is the persist_dir
159 |
160 | .PARAMETER Target
161 | The target path, which is the actual path app uses to access the runtime data
162 | #>
163 | [CmdletBinding()]
164 | param (
165 | [Parameter(Mandatory = $true, Position = 0)]
166 | [string] $Source,
167 | [Parameter(Mandatory = $true, Position = 1)]
168 | [string] $Target
169 | )
170 |
171 | if (Test-Path $Source) {
172 | Remove-Item $Target -Force -Recurse -ErrorAction SilentlyContinue
173 | } else {
174 | New-Item -ItemType Directory $Source -Force | Out-Null
175 | if (Test-Path $Target) {
176 | Get-ChildItem $Target | Move-Item -Destination $Source -Force
177 | Remove-Item $Target
178 | }
179 | }
180 |
181 | New-Item -ItemType Junction -Path $Target -Target $Source -Force | Out-Null
182 | }
183 |
184 | function Dismount-ExternalRuntimeData {
185 | <#
186 | .SYNOPSIS
187 | Unmount external runtime data
188 |
189 | .PARAMETER Target
190 | The target path, which is the actual path app uses to access the runtime data
191 | #>
192 | [CmdletBinding()]
193 | param (
194 | [Parameter(Mandatory = $true, Position = 0)]
195 | [string] $Target
196 | )
197 |
198 | if (Test-Path $Target) {
199 | Remove-Item $Target -Force -Recurse
200 | }
201 | }
202 |
203 | Export-ModuleMember `
204 | -Function `
205 | Mount-ExternalRuntimeData, Dismount-ExternalRuntimeData, `
206 | Invoke-ExternalCommand2
207 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 🍨 Extras-CN 🍨
2 |
3 | [](https://github.com/Scoopforge/Extras-CN/actions/workflows/ci.yml)
4 | [](https://github.com/Scoopforge/Extras-CN/blob/master/LICENSE)
5 | [](https://img.shields.io/github/languages/code-size/Scoopforge/Extras-CN.svg)
6 | [](https://img.shields.io/github/repo-size/Scoopforge/Extras-CN.svg)
7 |
8 | 专注于服务国人的 Windows 最佳包管理器 [Scoop](https://github.com/ScoopInstaller/Scoop)扩展库
9 |
10 | > ⚠️ 为更好的进行管理,本仓库只收录主要针对国内用户的软件,国际通用软件请添加仓库[Extras-Plus](https://github.com/Scoopforge/Extras-Plus)。
11 | >
12 | > ⚠️ For a better management, this repo now only contains manifests of softwares for Chinese users, for international softwares, please add the bucket [Extras-Plus](https://github.com/Scoopforge/Extras-Plus).
13 |
14 | ## 🏃 开始
15 |
16 | 对于熟悉 Scoop 的用户:
17 |
18 | ```powershell
19 | scoop bucket add extras-cn https://github.com/Scoopforge/Extras-CN
20 | ```
21 |
22 | ## 🚲 安装 Scoop
23 |
24 | ### 💻 步骤 1:在 PowerShell 中打开远程权限
25 |
26 | ```powershell
27 | Set-ExecutionPolicy RemoteSigned -scope CurrentUser
28 | ```
29 |
30 | ### ⚙️ 步骤 2:下载并安装 Scoop
31 |
32 | ```powershell
33 | irm get.scoop.sh -outfile 'install.ps1'
34 | .\install.ps1 -ScoopDir ['Scoop_Path'] -ScoopGlobalDir ['GlobalScoopApps_Path'] -NoProxy
35 | # 例如
36 | .\install.ps1 -ScoopDir 'C:\Scoop' -ScoopGlobalDir 'C:\Program Files' -NoProxy
37 | ```
38 |
39 | > 如果跳过该步骤,Scoop 将默认把所有用户安装的 App 和 Scoop 本身置于 `c:/users/user_name/scoop`
40 |
41 | ### 📖 步骤 3:通过`scoop help`查看快速上手方法
42 |
43 | 更多信息,请访问 Scoop 官网 👉 👈
44 |
45 | ## 🚗 利用扩展库安装 App
46 |
47 | ### 🚋 步骤 1:安装 Aria2 来加速下载
48 |
49 | ```powershell
50 | scoop install aria2
51 | ```
52 |
53 | 如果使用 VPN,需要通过如下命令关闭 aria2
54 |
55 | ```powershell
56 | scoop config aria2-enabled false
57 | ```
58 |
59 | ### 🎫 步骤 2:安装 Git 来添加新仓库
60 |
61 | ```powershell
62 | scoop install git
63 | ```
64 |
65 | ### ✈️ 步骤 3:添加本仓库并更新,么么哒~ 💋
66 |
67 | ```powershell
68 | scoop bucket add extras-cn https://github.com/Scoopforge/Extras-CN
69 | scoop update
70 | ```
71 |
72 | ### 🚀 步骤 4:安装 App
73 |
74 | #### 使用 `scoop search` 命令搜索 App 的具体名称
75 |
76 | ```powershell
77 | scoop search
78 | ```
79 |
80 | #### 利用插件 `scoop-completion` 协助安装
81 |
82 | ```powershell
83 | scoop install scoop-completion
84 | scoop install
85 | ```
86 |
87 | > 使用`scoop-completion`:键入 App 名称的前几个字母后敲击`tab`键进行补全
88 |
89 | ## 📝 杂项
90 |
91 | ### Aria2 的参数自定义
92 |
93 | ```powershell
94 | # aria2 在 Scoop 中默认开启
95 | scoop config aria2-enabled true
96 | # 关于以下参数的作用,详见 aria2 的相关资料
97 | scoop config aria2-retry-wait 4
98 | scoop config aria2-split 16
99 | scoop config aria2-max-connection-per-server 16
100 | scoop config aria2-min-split-size 4M
101 | ```
102 |
103 | ## ⭐️ 总结
104 |
105 | ### 跨平台
106 |
107 | #### 外语学习
108 |
109 | | 中文名称 | App | 自动更新 | 备注 |
110 | |:------------:|:------------------------------------------------------:|:--------:|:------:|
111 | | 阿波波外语 | [aboboo](http://aboboo.com) | ✓ | 精简版 |
112 | | 阿波波外语 | [aboboo-full](http://aboboo.com) | ✓ | 完整版 |
113 | | 欧路词典 | [eudic](https://eudic.net) | ✓ | |
114 | | 德语助手 | [dehelper](https://eudic.net/v4/es/app/dehelper) | ✓ | |
115 | | 西语助手 | [eshelper](https://eudic.net/v4/es/app/eshelper) | ✓ | |
116 | | 法语助手 | [frhelper](https://eudic.net/v4/fr/app/frhelper) | ✓ | |
117 | | 每日英语听力 | [ting-en](http://dict.eudic.net/ting) | ✓ | |
118 | | 每日德语听力 | [ting-de](https://eudic.net/v4/de/app/ting) | ✓ | |
119 | | 每日西语听力 | [ting-es](https://eudic.net/v4/es/app/ting) | ✓ | |
120 | | 每日法语听力 | [ting-fr](https://eudic.net/v4/fr/app/ting) | ✓ | |
121 | | DashPlayer | [dashplayer](https://github.com/solidSpoon/DashPlayer) | ✓ | |
122 | | Pot-Desktop | [pot-desktop](https://pot-app.com) | ✓ | |
123 |
124 | #### 学术研究
125 |
126 | | 中文名称 | App | 自动更新 | 备注 |
127 | |:------------:|:--------------------------------------------------:|:--------:|:---------------:|
128 | | CAJViewer | [cajviewer](https://cajviewer.cnki.net/index.html) | ✓ | by @rayinfinite |
129 | | FreeTex | [freetex](https://xdxsb.top/FreeTex) | ✓ | |
130 | | 全球学术快报 | [cnkiexpress](https://express.cnki.net) | ✓ | by @rayinfinite |
131 | | KingDraw | [kingdraw](http://kingdraw.cn) | ✓ | |
132 |
133 | #### 日常使用
134 |
135 | | 中文名称 | App | 自动更新 | 备注 |
136 | |:---------------:|:-----------------------------------------------------------------------------------------:|:--------:|:----------------------------------------------------:|
137 | | 阿里云盘 | [adrive](https://alipan.com) | ✓ | |
138 | | 百度云盘 | [baidunetdisk](https://pan.baidu.com/download) | ✓ | 推荐 WinGet 安装 |
139 | | 钉钉 | [dingtalk](https://dingtalk.com) | ✓ | |
140 | | 抖音 | [douyin](https://douyin.com) | ✓ | |
141 | | 哔哩下载姬 | [downkyi](https://github.com/leiurayer/downkyi) | ✓ | by @CronusLM |
142 | | Edgeless | [edgeless](https://home.edgeless.top) | ✓ | by @IsaacWangTT |
143 | | 亿图图示 | [edrawmax](https://edrawsoft.cn) | ✓ | |
144 | | 飞书 | [feishu](https://feishu.cn) | ✓ | |
145 | | EV 录屏 | [evcapture](https://ieway.cn/evcapture.html) | ✓ | |
146 | | 剪映 | [jianying-pro](https://capcut.cn) | ✓ | |
147 | | 爱思助手 | [i4tools](https://i4.cn/pro_pc.html) | ✓ | |
148 | | 洛雪音乐助手 | [lx-music](https://github.com/lyswhut/lx-music-desktop) | ✓ | |
149 | | 网易云音乐 | [neteasemusic](https://music.163.com) | ✓ | |
150 | | 腾讯会议 | [tencent-meeting](https://meeting.tencent.com) | ✓ | by @Ryanjiena |
151 | | 夸克网盘 | [quarkclouddrive](https://pan.quark.cn) | ✓ | |
152 | | TIM | [tim](https://tim.qq.com) | ✓ | |
153 | | QQ 音乐 | [qqmusic](hhttps://y.qq.com/) | ✓ | |
154 | | uTools | [utools](https://u.tools) | ✓ | |
155 | | 小狼毫 | [weasel](https://rime.im) | ✓ | |
156 | | WPSOffice | [wpsoffice-cn](https://wps.com/zh-hant) | ✓ | |
157 | | 语雀 | [yuque](https://yuque.com) | ✓ | 复制于 [dorado](https://github.com/chawyehsu/dorado) |
158 | | AIGCPanel | [aigcpanel](https://aigcpanel.com) | ✓ | |
159 | | BaiduPCS-Go | [baidupcs-go](https://github.com/qjfoidnh/BaiduPCS-Go) | ✓ | |
160 | | eSearch | [esearch](https://github.com/xushengfeng/eSearch) | ✓ | |
161 | | Fishing-Funds | [fishing-funds](https://github.com/1zilc/fishing-funds) | ✓ | |
162 | | HBuilderX | [hbuilderx](https://dcloud.io/hbuilderx.html) | ✓ | |
163 | | 微信小程序 SDK | [wechatdevtools](https://developers.weixin.qq.com/miniprogram/dev/devtools/devtools.html) | ✓ | |
164 | | WeGame | [wegame](https://www.wegame.com.cn) | ✓ | |
165 | | M3u8-Downloader | [m3u8-downloader](https://github.com/HeiSir2014/M3U8-Downloader) | ✓ | |
166 |
167 | ### Win 专属
168 |
169 | | 中文名称 | App | 自动更新 | 备注 |
170 | |:----------------------:|:---------------------------------------------------------------------------:|:--------:|:------------:|
171 | | MisakaTranslator | [misakatranslator](https://github.com/hanmin0822/MisakaTranslator) | ✓ | by @CronusLM |
172 | | mpv.net_CM | [mpv.net-cm](https://hooke007.github.io/index2#mpvnetcm) | ✓ | |
173 | | HEU_KMS_Activator | [heu-kms-activator](https://github.com/zbezj/HEU_KMS_Activator) | ✓ | |
174 | | LKY-OfficeTools | [lky-officetools](https://github.com/OdysseusYuan/LKY_OfficeTools) | ✓ | |
175 | | PHPStudy2016 scoop | [phpstudy-lagecy-scoop](https://github.com/chawyehsu/phpstudy-lagecy-scoop) | ✓ | |
176 | | Reader | [reader](https://github.com/binbyu/Reader) | ✓ | |
177 | | RegEster | [regester](https://deerchao.cn/tools/regester/index.htm) | ✓ | |
178 | | SubRenamer | [subrenamer](https://github.com/arition/SubRenamer) | ✓ | |
179 | | WiFi 密码暴力破解 | [wifi-crack-tool](https://github.com/baihengaead/wifi-crack-tool) | ✓ | |
180 | | 傲梅分区助手 | [partition-assistant](https://disktool.cn) | ✓ | |
181 | | 软件屏蔽器 | [malware-patch](https://github.com/the1812/Malware-Patch) | ✓ | |
182 | | 微信/QQ/TIM 防撤回补丁 | [revoke-msg-patcher](https://github.com/huiyadanli/RevokeMsgPatcher) | ✓ | |
183 |
184 | ### 开源镜像
185 |
186 | | App | 自动更新 |
187 | |:-----------------------:|:--------:|
188 | | Blender-cn | ✓ |
189 | | Git-cn | ✓ |
190 | | GIMP-cn | ✓ |
191 | | GIMP@dev-cn | ✓ |
192 | | Inkscape-cn | ✓ |
193 | | Julia-cn | ✓ |
194 | | KiCAD-cn | ✓ |
195 | | LibreOffice-cn | ✓ |
196 | | LyX-cn | ✓ |
197 | | Miniforge-cn | ✓ |
198 | | MSYS2-cn | ✓ |
199 | | Navicat-Premium-Lite-cn | ✓ |
200 | | OBS-Studio-cn | ✓ |
201 | | Octave-cn | ✓ |
202 | | Qt-Creator-cn | ✓ |
203 | | TeXStudio-cn | ✓ |
204 | | VLC-cn | ✓ |
205 |
206 | ## 备注
207 |
208 | 由于 Win 到权限管理复杂,对于一些常见的不提供 portable 安装包,且需要管理员应用的权限,建议使用 WinGet 进行安装
209 |
210 | ```powershell
211 | scoop install winget
212 | winget install Rakuten.Viber
213 | ```
214 |
--------------------------------------------------------------------------------