commit 5f18131b391ffc90bd00abc6f367488a0f5b61fb Author: ccovo Date: Sat Oct 11 00:09:15 2025 +0800 上传文件至 / diff --git a/README.md b/README.md new file mode 100644 index 0000000..3055b89 --- /dev/null +++ b/README.md @@ -0,0 +1,19 @@ +# **闲鱼ID:窗外听雨 代搭建20** +## **x86_64青龙拉库命令** + ```bash +ql repo https://git.xcovo.top/ccovo/miuiauto.git miuiauto.py x86_64|glibc main py|bin|apk + ``` +## **恶意下载刷流量封禁IP 若发现大量倒卖刷流量后续将开启白名单机制** +### **使用说明**: +扫码推荐用小米ai扫描、小米社区、小米浏览器 + +配置说明请参见 **[WiKi](https://git.xcovo.top/ccovo/miuiauto/wiki)** +### **更新说明**: +v1.4.2 + +统一常量,合并部分函数,去除废弃代码 +## **重要声明**: +- 反馈问题带整段日志私信我 +- 项目保持闭源更新,更新完成会上传 +- 虽然理论上本脚本不会影响账户安全,但您需要自行承担使用本脚本的后果 +# **倒卖死全家 倒卖死全家 倒卖死全家** \ No newline at end of file diff --git a/glibc-2.35-r1.apk b/glibc-2.35-r1.apk new file mode 100644 index 0000000..a7e0c20 Binary files /dev/null and b/glibc-2.35-r1.apk differ diff --git a/glibc.py b/glibc.py new file mode 100644 index 0000000..6742b26 --- /dev/null +++ b/glibc.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python3 +""" +Alpine glibc 纯离线自动安装工具 +""" +import os +import subprocess +import sys + +def run_cmd(cmd): + try: + result = subprocess.run(cmd, shell=True, capture_output=True, text=True, timeout=30) + return result.returncode == 0 + except: + return False + +def main(): + # 检查权限 + if os.geteuid() != 0: + print("[✗] 需要 root 权限") + sys.exit(1) + + # 检查是否已安装 + if os.path.exists("/usr/glibc-compat/lib/libc.so.6"): + print("[✓] glibc 已安装") + sys.exit(0) + + # 检查本地文件 + apk_file = "./glibc-2.35-r1.apk" + if not os.path.exists(apk_file): + print(f"[✗] 找不到 {apk_file}") + sys.exit(1) + + print("[*] 开始离线安装...") + + # 创建密钥目录 + os.makedirs("/etc/apk/keys", exist_ok=True) + + # 纯离线安装命令(按优先级排序) + commands = [ + f"apk add --allow-untrusted --no-network {apk_file}", + f"apk add --allow-untrusted --force-non-repository {apk_file}", + f"apk add --allow-untrusted {apk_file}" + ] + + # 依次尝试安装 + for cmd in commands: + if run_cmd(cmd): + print("[✓] glibc 安装成功") + sys.exit(0) + + print("[✗] 安装失败") + sys.exit(1) + +if __name__ == "__main__": + main() diff --git a/miuiauto-v1.4.2-linux-x86_64-alpine.bin b/miuiauto-v1.4.2-linux-x86_64-alpine.bin new file mode 100644 index 0000000..5dfff10 Binary files /dev/null and b/miuiauto-v1.4.2-linux-x86_64-alpine.bin differ diff --git a/miuiauto.py b/miuiauto.py new file mode 100644 index 0000000..64eab3b --- /dev/null +++ b/miuiauto.py @@ -0,0 +1,132 @@ +#!/usr/bin/env python3 +import os +import subprocess +import sys +import glob + +def log(level, msg): + icons = {'INFO': '[*]', 'SUCCESS': '[✓]', 'ERROR': '[✗]', 'WARNING': '[!]'} + print(f"{icons.get(level, '[*]')} {msg}") + +def run_cmd(cmd): + try: + result = subprocess.run(cmd, shell=True, capture_output=True, text=True) + return result.returncode == 0 + except: + return False + +def check_glibc(): + """检测 glibc 是否已安装""" + log('INFO', "检测 glibc...") + + # 检查关键路径 + paths = ['/lib/libc.so.6', '/usr/glibc-compat/lib/libc.so.6'] + for path in paths: + if os.path.exists(path): + log('SUCCESS', f"glibc 已安装: {path}") + return True + + # 检查 apk 包 + if run_cmd("apk list --installed | grep -q glibc"): + log('SUCCESS', "glibc 已通过 apk 安装") + return True + + log('WARNING', "未检测到 glibc") + return False + +def install_glibc(): + """运行 glibc.py 安装脚本""" + if not os.path.exists("glibc.py"): + log('ERROR', "找不到 glibc.py 脚本") + return False + + log('INFO', "运行 glibc.py 安装...") + return os.system("python3 glibc.py") == 0 + +def find_miuiauto_files(): + """查找 miuiauto 相关二进制文件""" + log('INFO', "搜索 miuiauto 二进制文件...") + + files = [] + for pattern in ["*miuiauto*", "*MIUIAUTO*", "*MiuiAuto*"]: + files.extend(glob.glob(pattern)) + + # 过滤二进制文件 + binaries = [] + for f in files: + if os.path.isfile(f) and is_binary(f): + binaries.append(f) + log('INFO', f"找到: {f}") + + return binaries + +def is_binary(file_path): + """检查是否为二进制文件""" + try: + with open(file_path, 'rb') as f: + chunk = f.read(512) + return b'\x00' in chunk or chunk.startswith(b'\x7fELF') + except: + return False + +def run_binary(binary_path): + """添加执行权限并运行二进制文件""" + name = os.path.basename(binary_path) + log('INFO', f"运行 {name}...") + + # 添加执行权限 + os.system(f"chmod +x '{binary_path}'") + + # 运行程序 + print("=" * 40) + result = os.system(f"./{name}") + print("=" * 40) + + if result == 0: + log('SUCCESS', f"{name} 运行完成") + else: + log('WARNING', f"{name} 退出码: {result}") + + return result == 0 + +def main(): + print("=" * 40) + print(" MiuiAuto 自动运行工具") + print("=" * 40) + + # 检查权限 + if os.geteuid() != 0: + log('ERROR', "需要 root 权限") + log('INFO', "使用: sudo python3 miuiauto.py") + return False + + # 1. 检测/安装 glibc + if check_glibc(): + log('SUCCESS', "glibc 已安装,跳过") + else: + log('INFO', "安装 glibc...") + if not install_glibc(): + log('ERROR', "glibc 安装失败") + return False + + # 2. 查找并运行 miuiauto 文件 + binaries = find_miuiauto_files() + if not binaries: + log('ERROR', "未找到 miuiauto 二进制文件") + return False + + # 3. 运行所有找到的文件 + for binary in binaries: + run_binary(binary) + + log('SUCCESS', "完成!") + return True + +if __name__ == "__main__": + try: + success = main() + sys.exit(0 if success else 1) + except KeyboardInterrupt: + print("\n") + log('WARNING', "用户中断") + sys.exit(1)