From a1ca1a801ab3ed0f72c1345700001a4e005689ee Mon Sep 17 00:00:00 2001 From: Melorise <0d00@0721.hk> Date: Wed, 29 Jul 2026 16:52:02 +0800 Subject: [PATCH] release: prepare v2.0.0 --- README.md | 41 +++++++++++++++++++++++++++++++++-------- flake.lock | 8 ++++---- nix/package.nix | 2 +- 3 files changed, 38 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index ab3c6ba..3173aeb 100644 --- a/README.md +++ b/README.md @@ -3,18 +3,14 @@ ![nPanel](frontend/src/assets/images/1panel-logo.svg) nPanel 是面向 **NixOS 单机 Docker 服务器** 的 Web 运维面板。它由 1Panel -社区版分叉而来,作为独立的 GPL-3.0 项目维护。 +社区版分叉而来,并作为独立的 GPL-3.0 项目维护。 -它保留 Docker、Compose、应用商店、网站、数据库、备份、文件、终端、监控、进程和 -日志等运行时运维能力;NixOS 的持久化系统策略仍完全由用户自己的 Flake 管理。 +项目保留了1panel的基础docker管理功能,但移除了服务器宿主机配置管理等服务器基础运维功能。我们认为在nixos上,配置管理应当由nix配置负责,不应该由运维面板擅自管理。你仍然可以使用绝大多数1panel的基础docker功能和docker应用生态,搭建网站和部署应用,享受完整的1panel docker服务器体验,仅主机配置需要自行管理。 -> 项目仍处于预发布阶段。请先在可恢复的主机或测试环境中部署,并为 nPanel 的状态目录 -> 做独立备份。 ## 适用范围 -nPanel 适合需要在 NixOS 上保留 Docker 应用生态,同时希望通过图形界面完成日常运行时 -运维的单机服务器。 +nPanel 适合需要在 NixOS 上保留 Docker 应用生态,同时希望通过图形界面完成日常运行时运维的单机服务器,或者1panel的忠实用户,习惯于使用1panel搭建服务器,但又希望尝试使用nixos作为服务器的用户。 | nPanel 管理 | 用户的 NixOS 配置管理 | | --- | --- | @@ -23,13 +19,15 @@ nPanel 适合需要在 NixOS 上保留 Docker 应用生态,同时希望通过 | 文件、终端、系统资源、GPU、进程、日志和 systemd 运行时状态 | SSH、用户、密钥、磁盘、挂载、交换与引导配置 | | nPanel 自己的账户、密码、MFA、通行密钥和 API 设置 | Flake、模块层次、`hardware-configuration.nix` 及其他配置源文件 | -nPanel 不会扫描、生成、编辑或重组你的 Flake,也不会写入 `daemon.json`、 +nPanel 不会扫描、生成、编辑或重组你的nix配置,也不会写入 `daemon.json`、 `sshd_config`、`fstab`、防火墙规则、`/etc` 生成配置或 systemd 单元文件。 ## 快速开始 ### 1. 在 Flake 中引入 nPanel +我们推荐你使用nix flake管理你的配置文件。本项目后续所有文档说明都假设你已经在使用nix flake。如果你尚未使用flake,可自行查阅资料将你的配置调整为nix flake配置。 + 以下示例使用本地源码树;将 `path:` 地址替换为你实际使用的 Git 或本地输入地址即可。 ```nix @@ -165,6 +163,33 @@ sudo systemctl restart npanel-agent npanel-core 若主机安装并启用了 NVIDIA 驱动,`nvidia-smi` 位于当前 NixOS 世代的系统命令路径时, nPanel agent 会自动用于 GPU 监控;无需将独立 NVIDIA 包打进 nPanel 配置。 +## 版本与发布 + +nPanel 使用 `x.y.z` 产品版本号。`x` 仅与上游 1Panel 的主版本线同步;`y` 和 `z` 由 +nPanel 独立演进,不随上游的小版本号变动。首个发布版本为 `2.0.0`,应用商店协议兼容 +基线为上游 `v2.2.3`,两者是独立概念。 + +发布分支同时是建议的 Flake 输入来源;不要以 Git tag 作为输入。tag 仅用于标记对应的 +unstable 发布提交,不能表达你正在使用的 NixOS 输入渠道。 + +| 用途 | 输入来源 | 分支格式 | `2.0.0` 示例 | +| --- | --- | --- | --- | +| 持续开发 | `nixos-unstable` | `dev-v2` | `dev-v2` | +| unstable 发布 | `nixos-unstable` | `nixos-unstable/vX.Y.Z` | `nixos-unstable/v2.0.0` | +| 稳定版发布 | 相应 NixOS 稳定分支 | `nixos-XX.XX/vX.Y.Z` | `nixos-26.05/v2.0.0` | + +稳定版分支遵循对应 NixOS 官方支持周期:下一代 NixOS 稳定版发布后,上一个稳定版分支不再 +继续获得支持。不同发布分支的 nPanel 功能与产品版本相同,唯一差异是锁定的 `nixpkgs` +输入来源。 + +例如,`nixos-26.05/v2.0.0` 应作为 Flake 输入,而不是 `v2.0.0` 标签: + +```nix +{ + inputs.npanel.url = "github:Melorise/nPanel/nixos-26.05/v2.0.0"; +} +``` + ## 安全模型 nPanel 的 agent 以 root 运行,并访问 Docker socket。Docker socket 在实际效果上等同 diff --git a/flake.lock b/flake.lock index 913e068..0b9301e 100644 --- a/flake.lock +++ b/flake.lock @@ -2,16 +2,16 @@ "nodes": { "nixpkgs": { "locked": { - "lastModified": 1785133411, - "narHash": "sha256-Yjv0WEg39KRYS0rBdTbu6Fc/or/ihAKk13W9sQ6VWd0=", + "lastModified": 1784796856, + "narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2f5a153c270b70cb0f8c11f46d96d6d3bc39f4e3", + "rev": "e2587caef70cea85dd97d7daab492899902dbf5d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-26.05", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } diff --git a/nix/package.nix b/nix/package.nix index b22a91f..280fadd 100644 --- a/nix/package.nix +++ b/nix/package.nix @@ -5,7 +5,7 @@ }: let - version = "0.1.0-pre"; + version = "2.0.0"; frontend = buildNpmPackage { pname = "npanel-frontend";