deb 双包: 源码版 all (手机) + 编译版 amd64 (Nuitka 二进制); p7zip-full 依赖; README Releases

This commit is contained in:
lou
2026-08-10 16:03:10 +08:00
parent 8e83581fe5
commit 512fdffb97
13 changed files with 98 additions and 23 deletions
+13 -5
View File
@@ -170,13 +170,17 @@ TUI 自动优先调用编译产物(`bin/sz-transfer`),无则回退源码
```bash
# 构建 (需 debhelper): dpkg-buildpackage -us -uc -b
# 生成 ../7z-encrypt-client_1.0.0_all.deb
# 生成 ../7z-encrypt-client_1.0.0_all.deb (源码版, 手机用)
# ../7z-encrypt-client-bin_1.0.0_amd64.deb (x86_64 编译版)
# 手机上 (ZeroTermux PRoot Ubuntu) 安装:
apt install -y python3 python3-venv
# 手机上 (ZeroTermux PRoot Ubuntu) 安装源码版:
apt install -y python3 python3-venv p7zip-full
dpkg -i 7z-encrypt-client_1.0.0_all.deb # postinst 自动建 venv + 装 cryptography/tqdm
# 使用:
# x86_64 本机安装编译版 (Nuitka 原生, 免 Python):
sudo dpkg -i 7z-encrypt-client-bin_1.0.0_amd64.deb # 依赖 p7zip-full
# 使用 (两版相同):
sz-config --init # 首次: 生成 ~/.config/7z-encrypt/config.json
sz-config --set-server http://服务器:8000
sz-config --set-token 你的token
@@ -186,7 +190,11 @@ sz-tui # TUI (登录门禁, 中文菜单)
# 换机密钥: 旧机导出 keyring -> 手机 ~/.local/share/7z-encrypt/keyring.json (权限 600)
```
依赖: `python3 >= 3.10` + `cryptography >= 50.0.0`cobblestone 流式加密,postinst 自动装最新版)。
依赖: 源码版 `python3 >= 3.10` + `cryptography >= 50.0.0`cobblestone 流式加密,postinst 自动装最新版);编译版无 Python 依赖。两版都需要 `p7zip-full`7z 压缩)
## Releases 下载
Gitee / Gitea 仓库 Releases 页下载 deb 包(tag v1.0.0):
## 测试
@@ -0,0 +1,7 @@
7z-encrypt-client (1.0.0) unstable; urgency=medium
* 首个 Termux/PRoot 适配版: 配置 XDG 化 + venv 依赖自建
* sz-transfer / sz-tui / sz-config 三个命令
* 零知识 + 零合并 + 文件名加密 + 账号体系 + 登录门禁
-- edgevoid <edgevoid@users.noreply.gitee.com> Mon, 10 Aug 2026 16:00:00 +0800
+3
View File
@@ -0,0 +1,3 @@
shlibs:Depends=libc6 (>= 2.34)
misc:Depends=
misc:Pre-Depends=
+15
View File
@@ -0,0 +1,15 @@
Package: 7z-encrypt-client-bin
Source: 7z-encrypt-client
Version: 1.0.0
Architecture: amd64
Maintainer: edgevoid <edgevoid@users.noreply.gitee.com>
Installed-Size: 36459
Depends: p7zip-full
Conflicts: 7z-encrypt-client
Replaces: 7z-encrypt-client
Section: utils
Priority: optional
Description: 端到端加密文件传输客户端 (x86_64 原生编译版)
Nuitka 编译的原生二进制 (Python->C->gcc, onefile 自包含, 免 Python 依赖)。
功能与源码版一致: sz-transfer / sz-tui / sz-config。
配置 ~/.config/7z-encrypt/, 密钥 ~/.local/share/7z-encrypt/。
+5
View File
@@ -0,0 +1,5 @@
61901c8e9af062eef5c386c715f5f3bb usr/bin/sz-config
02b57eea9c5ca54c63fd82da1d6d960b usr/bin/sz-transfer
8f9902ebfd228e08f7691abe6d471d86 usr/bin/sz-tui
198943ad7a94f6ba0995cf2d326f66d4 usr/share/doc/7z-encrypt-client-bin/changelog.gz
fadf3972cc61c7c76d0ccc20b29a804c usr/share/doc/7z-encrypt-client-bin/copyright
@@ -0,0 +1,27 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: 7z-encrypt
Upstream-Contact: edgevoid <edgevoid@users.noreply.gitee.com>
Source: https://gitee.com/edgevoid/7z-encrypt
Files: *
Copyright: 2026 edgevoid
License: MIT
License: MIT
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
.
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+4 -8
View File
@@ -3,17 +3,13 @@ Version: 1.0.0
Architecture: all
Maintainer: edgevoid <edgevoid@users.noreply.gitee.com>
Installed-Size: 101
Depends: python3 (>= 3.10), python3-venv
Depends: python3 (>= 3.10), python3-venv, p7zip-full
Section: utils
Priority: optional
Description: 端到端加密文件传输客户端 (Termux/PRoot 适配版)
Description: 端到端加密文件传输客户端 (源码版, 手机/Termux 用)
零知识 + 零合并的文件安全传输客户端:
7z 压缩 -> cobblestone 加密 -> 分卷上传; 下载逐卷拉取本地解密。
服务端无密钥不解密, 文件名也加密 (enc: URL-safe base64)。
.
包含:
* sz-transfer CLI (上传/下载/列表/删除/配额/账号)
* sz-tui 终端界面 (登录门禁, 12 项菜单)
* sz-config 配置 (服务器/token/密钥)
.
配置存 ~/.config/7z-encrypt/, 密钥存 ~/.local/share/7z-encrypt/。
包含: sz-transfer CLI / sz-tui 终端界面 / sz-config 配置
配置 ~/.config/7z-encrypt/, 密钥 ~/.local/share/7z-encrypt/。
+14 -8
View File
@@ -7,15 +7,21 @@ Standards-Version: 4.6.2
Package: 7z-encrypt-client
Architecture: all
Depends: python3 (>= 3.10), python3-venv
Description: 端到端加密文件传输客户端 (Termux/PRoot 适配版)
Depends: python3 (>= 3.10), python3-venv, p7zip-full
Description: 端到端加密文件传输客户端 (源码版, 手机/Termux 用)
零知识 + 零合并的文件安全传输客户端:
7z 压缩 -> cobblestone 加密 -> 分卷上传; 下载逐卷拉取本地解密。
服务端无密钥不解密, 文件名也加密 (enc: URL-safe base64)。
.
包含:
* sz-transfer CLI (上传/下载/列表/删除/配额/账号)
* sz-tui 终端界面 (登录门禁, 12 项菜单)
* sz-config 配置 (服务器/token/密钥)
.
配置存 ~/.config/7z-encrypt/, 密钥存 ~/.local/share/7z-encrypt/。
包含: sz-transfer CLI / sz-tui 终端界面 / sz-config 配置
配置 ~/.config/7z-encrypt/, 密钥 ~/.local/share/7z-encrypt/。
Package: 7z-encrypt-client-bin
Architecture: amd64
Depends: p7zip-full
Conflicts: 7z-encrypt-client
Replaces: 7z-encrypt-client
Description: 端到端加密文件传输客户端 (x86_64 原生编译版)
Nuitka 编译的原生二进制 (Python->C->gcc, onefile 自包含, 免 Python 依赖)。
功能与源码版一致: sz-transfer / sz-tui / sz-config。
配置 ~/.config/7z-encrypt/, 密钥 ~/.local/share/7z-encrypt/。
+1
View File
@@ -1 +1,2 @@
7z-encrypt-client
7z-encrypt-client-bin
+1
View File
@@ -1,2 +1,3 @@
7z-encrypt-client-bin_1.0.0_amd64.deb utils optional architecture=amd64
7z-encrypt-client_1.0.0_all.deb utils optional architecture=all
7z-encrypt-client_1.0.0_amd64.buildinfo utils optional
+8 -2
View File
@@ -7,12 +7,11 @@ override_dh_auto_build:
override_dh_auto_test:
override_dh_auto_install:
# 客户端源码
# --- 源码版 (all): 客户端源码 + wrapper ---
mkdir -p debian/7z-encrypt-client/usr/share/7z-encrypt
cp transfer.py metadata.py crypto.py splitter.py config.py state.py \
debian/7z-encrypt-client/usr/share/7z-encrypt/
cp ../tui/scripts/tui.py debian/7z-encrypt-client/usr/share/7z-encrypt/
# CLI wrapper
mkdir -p debian/7z-encrypt-client/usr/bin
printf '#!/bin/sh\nexec /usr/share/7z-encrypt/.venv/bin/python /usr/share/7z-encrypt/transfer.py "$$@"\n' \
> debian/7z-encrypt-client/usr/bin/sz-transfer
@@ -23,3 +22,10 @@ override_dh_auto_install:
chmod 755 debian/7z-encrypt-client/usr/bin/sz-transfer \
debian/7z-encrypt-client/usr/bin/sz-tui \
debian/7z-encrypt-client/usr/bin/sz-config
# --- 编译版 (amd64): Nuitka 二进制 ---
mkdir -p debian/7z-encrypt-client-bin/usr/bin
cp bin/sz-transfer bin/sz-config debian/7z-encrypt-client-bin/usr/bin/
cp ../tui/bin/sz-tui debian/7z-encrypt-client-bin/usr/bin/
chmod 755 debian/7z-encrypt-client-bin/usr/bin/sz-transfer \
debian/7z-encrypt-client-bin/usr/bin/sz-tui \
debian/7z-encrypt-client-bin/usr/bin/sz-config