From 72ee57f0a88da77cd595b7ca735615cd48af5c8a Mon Sep 17 00:00:00 2001 From: AskaEth Date: Thu, 5 Nov 2026 18:05:11 +0800 Subject: [PATCH] =?UTF-8?q?docs(readme):=20M130=20r1=20=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E4=BA=A7=E7=89=A9=E5=90=8D=E7=9A=84=E6=A7=BD=E4=BD=8D=E8=AF=B4?= =?UTF-8?q?=E6=98=8E=E4=B8=8E=E8=87=AA=E7=9B=B8=E7=9F=9B=E7=9B=BE=E7=9A=84?= =?UTF-8?q?=20GUI=20=E4=BA=8C=E8=BF=9B=E5=88=B6=E7=A7=B0=E8=B0=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - P2-1:`[.exe]` 只对两个 Windows 槽成立,四个 Linux/macOS 槽是 .tar.gz (make_artifacts.py:76-82 SLOTS、:243 stage_archive;packaging/README.md §1)。 三处产物名统一写成 `unlucky-launcher___` + 按槽位说明形态。 - P2-2:删掉「`unlucky-launcher` once extracted or downloaded」与段尾「Windows 裸资产文件名带 版本段」的互相拆台;改成归档解出叫 `unlucky-launcher`、Windows 裸资产叫 `unlucky-launcher___.exe`。中英同步。 --- README.md | 16 +++++++++------- README.zh-CN.md | 11 +++++++---- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 57490bb..9faa2cf 100644 --- a/README.md +++ b/README.md @@ -79,15 +79,16 @@ Binaries you may run into, so you can tell them apart: | Binary | Crate | State | |--------|-------|-------| -| `unlucky-launcher-iced` | `crates/app-iced` (iced 0.14) | the GUI binary the workspace builds; the release pipeline stages the file as `unlucky-launcher___[.exe]`, and the binary inside each archive is named `unlucky-launcher`; the same binary answers every CLI subcommand | +| `unlucky-launcher-iced` | `crates/app-iced` (iced 0.14) | the GUI binary the workspace builds; the release pipeline stages the file as `unlucky-launcher___` — a bare `.exe` on the two Windows slots, a `.tar.gz` on the four Linux / macOS slots — and the binary inside each archive is named `unlucky-launcher`; the same binary answers every CLI subcommand | | `unlucky-launcher` | `crates/app` (Slint) | **historical**: that crate is excluded from the workspace, so this binary is no longer built or shipped; the v0.1.0 assets are the last Slint builds | | `ull` | `crates/cli` | the zero-UI build of the same command set, shipped as its own asset | -The GUI binary (`unlucky-launcher` once extracted or downloaded) and `ull` are not duplicates. The GUI -binary needs the graphics stack when it opens a window (it `dlopen`s X11 / Wayland / GL, and links -`libfontconfig` at load); `ull` needs nothing beyond glibc, so it runs on a server or a CI container -where no window can exist. That floor is glibc ≥ 2.35 (the Linux slots build on Ubuntu 22.04), so an -older distribution — and Android/Termux, which is not a released slot at all — needs a source build +The GUI binary and `ull` are not duplicates. An archive extracts the first as `unlucky-launcher`; on +Windows it is a bare `unlucky-launcher___.exe`. The GUI binary needs the +graphics stack when it opens a window (it `dlopen`s X11 / Wayland / GL, and links `libfontconfig` at +load); `ull` needs nothing beyond glibc, so it runs on a server or a CI container where no window can +exist. That floor is glibc ≥ 2.35 (the Linux slots build on Ubuntu 22.04), so an older distribution — +and Android/Termux, which is not a released slot at all — needs a source build (`packaging/README.md` §4, §9). Pick `ull` when there is no desktop, `unlucky-launcher ` when there is. Both print the same CLI text, and each names itself after the file you ran — `argv[0]` with its directory and a trailing `.exe` removed, and nothing else (`crates/cli/src/cli/program.rs`). So @@ -184,7 +185,8 @@ What the build produces: subcommand listed above. The `iced` in this name is cargo's, not the download's: renaming the bin is what the "flip" still owes. The release file name carries no implementation detail — the pipeline builds this bin and `packaging/make_artifacts.py` stages it as - `unlucky-launcher___[.exe]`, with the binary inside each archive named + `unlucky-launcher___` — a bare `.exe` on the two Windows slots, a + `.tar.gz` on the four Linux / macOS slots — with the binary inside each archive named `unlucky-launcher`, so download links never carry `iced`. - `unlucky-launcher` — **historical**: no workspace build produces this binary any more; it belonged to `crates/app`, which is excluded. The v0.1.0 assets are the last builds under this name. diff --git a/README.zh-CN.md b/README.zh-CN.md index 6f70e3e..3343e31 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -59,17 +59,19 @@ Unlucky Launcher(ULL)是一个用 Rust 写的免费开源 Minecraft: Java - **Slint 版已退出构建,只留源码作参考**:`crates/app` 不再是 workspace 成员(M118)——源码留作历史 参考,不编译、不测试、不发布,也不再有可用的构建方式。还欠「翻牌」的只有**仓库内的 bin 名**(现在叫 `unlucky-launcher-iced`);**产物名不欠**:`packaging/make_artifacts.py` 落盘时用的是 - `unlucky-launcher_<版本>_<平台>_<架构>[.exe]`,归档里的二进制名是 `unlucky-launcher`。 + `unlucky-launcher_<版本>_<平台>_<架构>`——两个 Windows 槽是裸 `.exe`,其余四个 Linux / macOS 槽 + 是 `.tar.gz`——归档里的二进制名是 `unlucky-launcher`。 可能会遇到的 bin,先认清楚: | 二进制 | crate | 状态 | |--------|-------|------| -| `unlucky-launcher-iced` | `crates/app-iced`(iced 0.14) | workspace 里**唯一**的 GUI bin;发布流水线把文件落成 `unlucky-launcher_<版本>_<平台>_<架构>[.exe]`,归档里的二进制名是 `unlucky-launcher`;子命令分发同款 | +| `unlucky-launcher-iced` | `crates/app-iced`(iced 0.14) | workspace 里**唯一**的 GUI bin;发布流水线把文件落成 `unlucky-launcher_<版本>_<平台>_<架构>`(两个 Windows 槽是裸 `.exe`,其余四个 Linux / macOS 槽是 `.tar.gz`),归档里的二进制名是 `unlucky-launcher`;子命令分发同款 | | `unlucky-launcher` | `crates/app`(Slint) | **历史**:该 crate 已被 workspace `exclude`,这个 bin 不再被构建或分发;`v0.1.0` 的资产是最后一批 Slint 版 | | `ull` | `crates/cli` | 同一套命令的零 UI 构建,作为独立资产随发布分发 | -`unlucky-launcher` 与 `ull` 不是重复品:开窗时 GUI 二进制要用图形栈(X11 / Wayland / GL 走 +GUI 二进制与 `ull` 不是重复品。归档解压出来那个二进制叫 `unlucky-launcher`;Windows 上是裸的 +`unlucky-launcher_<版本>_<平台>_<架构>.exe`。开窗时 GUI 二进制要用图形栈(X11 / Wayland / GL 走 `dlopen`,启动时直接链接 `libfontconfig`);`ull` 除了 glibc 什么都不需要,所以在没有窗口的服务器、 CI 容器上跑得起来。这个地板是 glibc ≥ 2.35(Linux 槽位在 Ubuntu 22.04 上构建),更老的发行版——以及 根本不在发布矩阵里的 Android/Termux——得源码自建(`packaging/README.md` §4、§9)。没有桌面就用 `ull`, @@ -159,7 +161,8 @@ cargo build --release # bin 落在 target/relea - `unlucky-launcher-iced`——GUI(iced)。它同时也是 CLI:同一个二进制认上面列的全部子命令。名字里的 `iced` 是 cargo 的,不是下载链接的:还欠「翻牌」的只有这个 bin 名;发布文件里不带实现细节——流水线编 这个 bin,`packaging/make_artifacts.py` 落盘时改成 - `unlucky-launcher_<版本>_<平台>_<架构>[.exe]`,归档里的二进制名是 `unlucky-launcher`。 + `unlucky-launcher_<版本>_<平台>_<架构>`——两个 Windows 槽是裸 `.exe`,其余四个 Linux / macOS 槽 + 是 `.tar.gz`——归档里的二进制名是 `unlucky-launcher`。 - `unlucky-launcher`——**历史**:workspace 构建已不产出它(它属于被排除的 `crates/app`)。 `v0.1.0` 的资产是最后一批用这个名字发出去的构建。 - `ull`——CLI 的独立无 UI 构建:同一套命令、不链接图形栈、体积更小,给完全没有显示设备的机器用。