From ad7c0333422be99dd51e3a4c3cdce44d60f022c9 Mon Sep 17 00:00:00 2001 From: mrlee <470349233@qq.com> Date: Sat, 24 Oct 2026 16:57:35 +0800 Subject: [PATCH] chore: sync fnOS package with Havline 2.0.0 --- README.md | 4 ++-- build.ps1 | 13 ++++++++++++- havline/manifest | 6 +++--- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index b99d45f..fa83643 100644 --- a/README.md +++ b/README.md @@ -46,9 +46,9 @@ image: havline:${TRIM_APPVER} pull_policy: never ``` -因此安装时不需要访问 `jayhub.top`,也不需要配置 Registry 登录。 +因此安装时不需要访问外部镜像仓库(GitHub Container Registry),也不需要配置 Registry 登录。 -当前 1.9.0 双架构 `.fpk` 约 `150.6 MB`。 +当前 2.0.0 双架构 `.fpk` 约 `150 MB`(以实际构建产物为准)。 ## 打包 diff --git a/build.ps1 b/build.ps1 index 6fa15f1..82e2105 100644 --- a/build.ps1 +++ b/build.ps1 @@ -1,4 +1,4 @@ -param( +param( [string]$FnpackPath = "", [switch]$SkipImageExport ) @@ -85,6 +85,17 @@ if (-not (Test-Path -LiteralPath $project)) { throw "找不到飞牛应用工程:$project" } +# 版本一致性校验:Docker 版离线镜像标签为 havline:<主仓 VERSION>, +# 而容器运行时按 ${TRIM_APPVER}=manifest.version 加载镜像,两者必须严格一致。 +$manifestVersion = ([regex]::Match((Get-Content -Raw (Join-Path $project "manifest")), '(?m)^version\s*=\s*(\S+)')).Groups[1].Value +if (-not $manifestVersion) { + throw "Docker manifest 缺少 version 字段:$(Join-Path $project 'manifest')" +} +Write-Output "App version: $version; Manifest version: $manifestVersion" +if ($manifestVersion -ne $version) { + throw "版本不一致:主仓 VERSION=$version,Docker manifest=$manifestVersion。镜像标签与运行时加载版本不匹配,请先将 fnos\havline\manifest 的 version 同步为主仓 VERSION。" +} + if (-not $FnpackPath) { $localTool = Join-Path $PSScriptRoot "fnpack.exe" $FnpackPath = if (Test-Path -LiteralPath $localTool) { $localTool } else { "fnpack" } diff --git a/havline/manifest b/havline/manifest index 5f2f588..41e57f0 100644 --- a/havline/manifest +++ b/havline/manifest @@ -1,14 +1,14 @@ appname = havline -version = 1.9.0 +version = 2.0.0 display_name = Havline desc = NAS 公网访问管理:反向代理、DDNS、HTTPS 证书、FRP、Cloudflare Tunnel 与一键升级 platform = all source = thirdparty maintainer = Havline -maintainer_url = https://jayhub.top/mrlee/Havline +maintainer_url = https://github.com/mrlee233/havline distributor = Havline desktop_uidir = ui desktop_applaunchname = havline.main checkport = false ctl_stop = true -changelog = 离线镜像安装:不依赖外部仓库,同时支持 amd64 与 arm64 +changelog = 2.0.0:同步主仓 2.0.0;新增内置 SSH 终端(二次认证、会话审计、录像与常用命令)、DDNS 服务商名称与自定义 IP、公网反代默认转发 WebSocket 升级头;离线镜像安装,不依赖外部仓库,同时支持 amd64 与 arm64