Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VERT - 飞牛 fnOS FPK 应用包

VERT 开源文件转换器封装为飞牛 fnOS 原生应用。 VERT 是一款基于 WebAssembly 的本地文件转换器,所有转换均在浏览器端完成,文件不会上传到任何服务器。

特性

  • 纯静态 Web 应用 + 轻量 Python 静态服务(仅依赖系统自带 python3,无 Docker 依赖)
  • 支持 250+ 种文件格式转换(图片、音频、文档)
  • 默认完全本地模式:禁用 Plausible 统计、视频转换、捐赠等所有外部请求,隐私友好
  • 桌面图标一键访问 Web 界面,应用中心可管理启停状态
  • 安装向导与应用设置中均可自定义 Web 访问端口(默认 8090,需 fnOS 1.1.8+)
  • 运行数据存放在 fnOS 数据目录(var/),并声明 vert-data 共享目录

目录结构

vert-fpk/
├── manifest              # 应用标识 (appname/version/port/desktop 入口等)
├── cmd/                  # fnOS 生命周期脚本 (main/install/upgrade/uninstall/config)
├── config/
│   ├── privilege         # 权限声明 (run-as: package, 专用用户 vert)
│   └── resource          # 资源声明 (data-share: vert-data)
├── wizard/               # 安装/卸载/升级向导
├── app/                  # 打包后映射到 target (TRIM_APPDEST)
│   ├── server.py         # 静态文件服务 (Python 标准库实现)
│   ├── ui/               # 桌面图标配置 (desktop_uidir=ui)
│   │   ├── config
│   │   └── images/       # icon-64.png / icon-256.png
│   └── web/              # VERT 构建产物 (由构建脚本生成)
├── ICON.PNG / ICON_256.PNG
├── build.ps1             # Windows 构建脚本
├── build.sh              # Linux/macOS 构建脚本
└── LICENSE

构建

Windows

powershell -ExecutionPolicy Bypass -File .\build.ps1

Linux / macOS

bash ./build.sh

构建脚本会自动:

  1. 下载 fnpack 打包工具(若缺失)
  2. 拉取 VERT 源码(.build/vert
  3. 生成 .env 构建配置并构建静态站点(优先使用 bun,其次 node+npm)
  4. 将构建产物拷贝到 app/web
  5. 生成 64/64 与 256/256 应用图标
  6. 调用 fnpack build 生成 .fpkdist/

产物:dist/sh.vert.app_1.0.0.fpk

安装

在飞牛 fnOS 中:应用中心 → 手动安装 → 选择 .fpk 文件。 安装向导中可设置 Web 访问端口(默认 8090),安装后桌面生成 VERT 图标,点击即在浏览器中打开 http://<NAS IP>:<端口>

配置

项目
服务端口 8090(可在安装向导/应用设置中修改)
运行用户 专用用户 vertrun-as: package
数据目录 var/(日志、PID,卸载时保留)
共享目录 shares/vert-data(用户可自行存放文件)

修改端口:应用中心 → 应用 → VERT → 设置,修改端口保存后自动重启生效,桌面图标同步更新。 端口持久化在 $TRIM_PKGVAR/port.confPORT=),读取优先级:系统注入 wizard_port > TRIM_SERVICE_PORT > port.conf > 默认 8090

卸载

卸载时可在向导中选择保留数据(仅卸载程序,数据保留在 var/etc/home/,重新安装可恢复)或删除所有数据(不可恢复)。

隐私模式

默认构建配置为完全本地模式:

PUB_DISABLE_ALL_EXTERNAL_REQUESTS=true
PUB_DISABLE_FAILURE_BLOCKS=true
PUB_VERTD_URL=          (视频转换禁用)
PUB_PLAUSIBLE_URL=      (统计禁用)
PUB_DONATION_URL=       (捐赠禁用)
PUB_STRIPE_KEY=         (捐赠禁用)

如需启用视频转换,将 build.ps1 / build.sh 中的 PUB_VERTD_URL 改为 https://vertd.vert.sh 并将 PUB_DISABLE_ALL_EXTERNAL_REQUESTS 设为 false 后重新打包。

注意:PUB_* 为 VERT 编译期环境变量,必须在构建时写入 .env,运行期无法修改。

环境变量参考

变量 说明
TRIM_APPDEST 应用目录 (target)
TRIM_PKGVAR 运行时数据目录 (var)
TRIM_SERVICE_PORT 服务端口 (8090)
TRIM_USERNAME / TRIM_GROUPNAME 应用用户/组 (vert)
TRIM_TEMP_LOGFILE 系统错误日志(脚本失败信息写入此文件)

常见问题

  • 点击桌面图标打不开:确认服务已启动(应用中心状态为"运行中"),并检查对应端口未被占用。
  • 安装时提示端口被占用:在安装向导中把 Web 访问端口改为空闲端口即可。
  • 启动失败:查看系统日志;确认 python3 可用(python3 --version)。
  • 视频转换不可用:默认隐私模式已禁用外部视频转换服务,按上方说明重新构建。
  • 构建时网络慢:GitHub/bun 下载较慢时请重试或配置代理。

About

将 VERT 开源文件转换器封装为飞牛 fnOS 原生应用。 VERT 是一款基于 WebAssembly 的本地文件转换器,所有转换均在浏览器端完成,文件不会上传到任何服务器。

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages