├── .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 | [![Excavator](https://github.com/Scoopforge/Extras-CN/actions/workflows/ci.yml/badge.svg)](https://github.com/Scoopforge/Extras-CN/actions/workflows/ci.yml) 4 | [![license](https://img.shields.io/github/license/Scoopforge/Extras-CN)](https://github.com/Scoopforge/Extras-CN/blob/master/LICENSE) 5 | [![code size](https://img.shields.io/github/languages/code-size/Scoopforge/Extras-CN.svg)](https://img.shields.io/github/languages/code-size/Scoopforge/Extras-CN.svg) 6 | [![repo size](https://img.shields.io/github/repo-size/Scoopforge/Extras-CN.svg)](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 | --------------------------------------------------------------------------------