Repository navigation
Selkies 2.0 base + official WeChat + Alpha 0.2.0 + proot-apps evaluation / 迁移到 Selkies 2.0,集成官方微信与 Alpha - #1
Merged
Merged
Conversation
added 7 commits
October 18, 2026 23:32
Alpha 0.2.0's key helper and key worker fail their runtime guard (status -103, KEY_RUNTIME_POLICY_REJECTED) under PRoot 5.1.0 and proot-next 0.3.2, so Alpha cannot run as a proot app. Add the reproducible evaluation under tests/proot.
The Selkies base hands PASSWORD to openssl passwd, which reads a leading '-' as an option and leaves the htpasswd file broken.
Legacy profile migration keeps reading the old paths; only wording changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要 / Summary
将 WeHarbor 迁移到原生 Selkies 2.0 基础镜像,并以 Alpha 0.2.0 作为数据应用;附带 proot-apps 评估结论(WeChat 与 Alpha 继续原生安装)。
Moves WeHarbor to the plain Selkies 2.0 base image and uses Alpha 0.2.0 as the data app (Alpha replaces the previous data app). Also records a proot-apps evaluation (WeChat and Alpha stay natively installed).
变更 / Changes
ghcr.io/linuxserver/baseimage-selkies:debiantrixie(Selkies 2.0.0, Debian trixie), pinned by digest; no longer based on wechat-selkies.versions.lock.json), installed natively.xunchahaha/alpha-releasesv0.2.0, unmodified, sha256-pinned (9d79a56b…80d6). Launched with--password-store=gnome-libsecret; an unencrypted gnome-keyring collection is seeded so no keyring password dialog blocks startup. The previous data app's polkit rules/service are removed.127.0.0.1:5031inside the container; nginx proxy on 5032 rewrites Host and rejects anyOriginheader (403); compose publishes${API_PORT:-5031}→ 5032 on loopback. Skill is nowskills/alpha-api(route parameters not yet verified against a live account).init-weharbor-profiles6 oneshot migrates old openbox autostart/menu (keeps.legacy-<ts>backups) and settings from the legacy data-app directory →.config/weharbor; dock/window helpers use Alpha window classalpha-desktop; healthcheck checks Alpha/health.docs/proot-apps-evaluation.md,tests/proot/run-proot-eval.sh): Alpha's key helper/worker runtime guard fails (status -103,KEY_RUNTIME_POLICY_REJECTED) under PRoot 5.1.0 and proot-next 0.3.2, so Alpha cannot be a proot app; the catalogwechatapp is an unpinned AppImage. Decision: keep both native.workflow_dispatchgains an optionalimage_taginput (rejectslatest/edge) for manual non-latest publishes.迁移 / Migration
.env: the old API port / autostart variables becomeAPI_PORT/AUTO_START_ALPHA; auto-login/nightly variables removed. See.env.example./configprofiles keep the WeChat login; legacy openbox files are migrated automatically with backups. Back up./databefore upgrading./config/.config/weharbor/alpha-api-tokenorALPHA_API_TOKENfor the notification bridge/skill.验证 / Verification
scripts/check.py(51 tests) andscripts/smoke-test.sh(fresh profile + restart) pass locally.Origin(403) and enforces the token.风险 / Risks
License: unknown. It reads WeChat's process memory (ptrace /process_vm_readv) to obtain the database key, contacts its license/update servers (raw.githubusercontent.com/xunchahaha/alpha-releases, a mirror at189.24.72.59), has a telemetry setting, and enables anti-recall DB writing by default. Review before trusting it with account data.2026-11-15T00:00:00Z= 2026-11-15 08:00 (UTC+8); after that key retrieval will stop until Alpha is updated and re-pinned.镜像 / Image
Manual CI publish (workflow_dispatch,
image_tag=selkies2-alpha):ghcr.io/fliaping/weharbor:selkies2-alpha=:sha-e1cbddc@sha256:b5ab9b156ea245b79f1e3777ba81d302b319401fb51504b558264729b31bd6b3.edge/latestunchanged. Later commits only touch the smoke test,scripts/init.shand.env.example(a password starting with-breaks the base image'sopenssl passwdhtpasswd step).