# scoop **Repository Path**: cmontage/scoop ## Basic Information - **Project Name**: scoop - **Description**: No description available - **Primary Language**: Unknown - **License**: Unlicense - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-08-01 - **Last Updated**: 2026-05-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: Scoop ## README

Scoop

Scoop Logo

Features | Installation | Documentation

---

Code Size Repository size License

该 Scoop 基于 [官方 Scoop](https://github.com/ScoopInstaller/Scoop) 修改,针对**中国大陆网络环境**进行了深度优化,并新增了多项实用特性。 --- ## 与官方 Scoop 的区别 ### 🚀 智能代理加速 原版 Scoop 下载国外资源时经常因为网络问题失败或者速度极慢。本版本通过**基于 IP 地理位置的智能代理**自动加速下载: - **基于真实 IP 判断**:通过阿里云 DNS(`223.5.5.5`)解析域名的真实 IP 地址,再通过国内 IP 归属地查询(太平洋电脑网 whois)判断服务器物理位置。 - **自动路由**: - 国内 IP → **直连下载**(无需代理,保证速度) - 国外 IP → **自动走 Cloudflare 代理加速** - 内网 / Fake-IP 地址 → **自动直连**(兼容本地代理环境如 Clash 等) - **自定义白名单**:自建域名自动跳过代理。 - **可配置代理地址**:通过 `scoop config URL_PROXY ` 自定义代理服务器。 > 相比原版手动配置代理或完全无加速的方式,本方案免维护、零配置,开箱即用。 ### 🔄 自动停止运行中的进程 原版 Scoop 在更新/卸载应用时,如果检测到应用进程仍在运行,会直接报错并中止操作,需要用户手动关闭进程后重试。 该版本改进了这一流程: - **交互式提示**:检测到运行中的进程时,提示用户 `Stop all processes for this program and continue? (y/n)`,回车默认 `y`。 - **自动停止进程**:选择 `y` 后自动停止所有相关进程。 - **自动提权重试**:如果当前权限不足以停止进程(如全局安装的应用),自动以管理员权限重试停止。 - **完整性验证**:停止后自动验证进程是否全部退出,确保更新流程安全。 - **可配置跳过**:通过 `scoop config IGNORE_RUNNING_PROCESSES true` 配置忽略运行中进程的检测,直接覆盖更新。 ### 📦 自定义 Bucket(软件源)体系 | 对比项 | 官方 Scoop | 本版本 | |--------|-----------|--------| | 默认 Bucket | `main`(GitHub 托管) | `official`(Gitee 镜像,自建聚合桶) | | Bucket 仓库源 | GitHub | **Gitee 镜像**(国内访问快) | | 默认 Bucket 检测 | 检测 `main` 桶是否存在 | **移除检测**,避免不必要的报错 | | 内置已知 Bucket | 仅官方桶 | 额外添加 `official`、`third` 和 `soup` | - **[official](https://github.com/cmontage/scoopbucket)**:自建官方集合桶,聚合多个官方桶并聚合。 - **[third](https://github.com/cmontage/scoopbucket-third)**:第三方应用集合桶,收录其他人自建的桶。 - **[soup](https://github.com/cmontage/scoopbucket-soup)**:我自建的应用桶,优化安装/卸载逻辑,提供一些自己用得到的应用(持续更新中)。 - 所有内置已知桶的 URL 均改为 **Gitee 镜像**,确保 `scoop bucket add ` 快速可用。 ### 🔧 Bucket 自动 Git 初始化 原版 Scoop 通过 zip 包安装时,默认 Bucket 目录没有 `.git` 元数据,导致后续 `scoop update` 无法正常拉取更新。 本版本在执行 `scoop update` 时自动检测: - 如果 `official` 桶不是 Git 仓库,自动删除旧目录并以 `git clone` 重新初始化。 - 确保后续所有更新操作正常运行,无需用户手动干预。 ### 🇨🇳 全面国内源优化 - **Scoop 自身更新源**:默认从 Gitee(`gitee.com/cmontage/scoop`)拉取更新,代替 GitHub。 - **安装脚本源**:安装脚本(`install.ps1`)使用 Gitee + Cloudflare Proxy 双链路下载,兼顾有无 Git 环境。 - **默认 Bucket 更新源**:所有已知 Bucket 均使用 Gitee 镜像地址。 ### 📋 改动汇总 | 特性 | 官方 Scoop | 本版本 | |------|-----------|--------| | 国外资源下载 | 直连(可能超时) | 智能代理加速 | | 运行中进程处理 | 报错中止 | 交互式自动停止 + 提权重试 | | 默认 Bucket | `main`(GitHub) | `official`(Gitee 镜像) | | Bucket 源 | GitHub | Gitee 镜像 | | Scoop 更新源 | GitHub | Gitee | | Bucket Git 初始化 | 需手动处理 | 自动转换 | | 安装脚本 | GitHub 官方 | Gitee + CF Proxy 双链路 | ## 如何使用? ### 推荐安装方式 ```powershell # 设置 PowerShell 执行策略(非管理员启动) Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser # 下载安装脚本到本地 irm https://gitee.com/cmontage/scoop/raw/master/install.ps1 -outfile 'install.ps1' # 自定义 Scoop 安装目录,以下是我的路径例子,你可以自己根据情况修改 # 可以不设全局文件夹ScoopGlobalDir,全局文件夹里的应用需要管理员权限 .\install.ps1 -ScoopDir 'D:\Apps\Scoop\ScoopApps' -ScoopGlobalDir 'D:\Apps\Scoop\ScoopApps-G' -NoProxy # 已内置 'official' 桶 ,下载 7zip git,如果要添加别的 Bucket,必须有 git、7zip scoop install 7zip git ``` ### 官方安装方式 ```powershell Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression ``` **Note**: 它会将 Scoop 安装到其默认位置:`C:\Users\\scoop` 您可以在 [ScoopInstaller/Install](https://github.com/ScoopInstaller/Install) 中找到有关安装程序的完整文档,包括高级安装配置。如果您对安装有任何疑问,请在那里创建新问题。 ## 常用命令 Scoop 常用命令 ```powershell scoop update # 更新 scoop 及软件包列表 scoop update * # 更新 app 目录所有应用 scoop status # 检查哪些软件有更新 scoop bucket list # 列出所有已安装的 bucket scoop bucket add # 添加已知的内置 bucket scoop bucket add # 添加第三方 bucket scoop bucket rm # 删除 bucket scoop cleanup * # 清理所有已安装的旧版本软件 scoop cache rm * # 清除下载缓存 ``` 应用相关 ```powershell scoop search # 搜索应用 scoop-search # 高效率搜索应用,需要安装 scoop-search scoop install # 非全局安装应用 scoop install -g # 全局安装应用 (需要管理员权限/添加前缀sudo) scoop install / # 指定 bucket (软件源) 安装程序 scoop uninstall # 非全局卸载应用 scoop uninstall -g # 全局卸载应用 (需要管理员权限/添加前缀sudo) scoop update ... # 更新非全局应用 scoop update ... -g # 更新全局应用 scoop reset @ # 同一程序不同版本之间切换 ```