Minimum password length is 6 #63

Merged
Breadway merged 4 commits from fix/bos-46-password-minimum into main 2026-09-30 04:24:20 +08:00
Owner

Require at least 8 characters consistently in Calamares and libpwquality. The Calamares 3.4.2 package carries a focused users-module patch that shows a non-blocking warning when disk encryption is selected and the user password is under 12 characters. The existing password minimum remains 8.

The package workflow now builds on feature pushes and pull requests, but publishes the Arch package only from main. Verified patch application, PKGBUILD metadata and checksums, YAML parsing, publication conditions, and git diff --check. The Calamares CMake test build could not configure here because Qt6LinguistTools is unavailable.

Closes #46

Require at least 8 characters consistently in Calamares and libpwquality. The Calamares 3.4.2 package carries a focused users-module patch that shows a non-blocking warning when disk encryption is selected and the user password is under 12 characters. The existing password minimum remains 8. The package workflow now builds on feature pushes and pull requests, but publishes the Arch package only from main. Verified patch application, PKGBUILD metadata and checksums, YAML parsing, publication conditions, and `git diff --check`. The Calamares CMake test build could not configure here because Qt6LinguistTools is unavailable. Closes #46
Keep Calamares and libpwquality minimums aligned. Document the recommended length for encrypted installs and the missing conditional advisory in the stock Calamares UI.
Author
Owner

This is the partial PR card for BOS-46 / PR #63. It raises the minimum to 8, but the acceptance criterion for a non-blocking warning under 12 when disk encryption is enabled remains outstanding because stock Calamares has no conditional UI hook. Parent BOS-46 is in TODO; do not mark this complete.

This is the partial PR card for BOS-46 / PR #63. It raises the minimum to 8, but the acceptance criterion for a non-blocking warning under 12 when disk encryption is enabled remains outstanding because stock Calamares has no conditional UI hook. Parent BOS-46 is in TODO; do not mark this complete.
# Conflicts:
#	CHANGELOG.md
feat: warn about short encrypted install passwords
All checks were successful
Build and publish calamares / calamares (push) Successful in 5m30s
Build and publish calamares / calamares (pull_request) Successful in 4m56s
857964448b
Author
Owner

Review at head 857964448b7b1d637f61abc4ef39632320c644b2:

Acceptance mapping:

  1. Require at least 8 characters in both Calamares and libpwquality: iso/airootfs/etc/calamares/modules/users.conf sets both minimums to 8.
  2. For encrypted installs, advise under-12 passwords without blocking: packaging/calamares/bos-conditional-password-warning.patch checks for the LUKS passphrase, changes only valid short passwords to Weak, and appends the advisory; Config::isReady() treats only Invalid as not ready. The added testEncryptedPasswordAdvisory covers encrypted short and long passwords, and ready state.
  3. Record the user-visible behavior: CHANGELOG.md describes the threshold and advisory.

The PKGBUILD pins the patch checksum and applies it to Calamares 3.4.2. The workflow guard publishes only for non-PR events on refs/heads/main; feature branches and PRs only build. The diff is scoped and the PR is currently mergeable.

Validation is still pending. Combined status on this head is pending: push build run #159 and pull request build run #160, both reported as started at 2026-09-30 04:13/04:14 +08:00. The implementer's local Calamares CMake test build could not configure because Qt6LinguistTools was unavailable, and there is no VM/UI acceptance evidence yet. I am leaving this in REVIEW while the new package builds run; no merge recommendation until their result and warning behavior are confirmed.

Review at head `857964448b7b1d637f61abc4ef39632320c644b2`: Acceptance mapping: 1. Require at least 8 characters in both Calamares and libpwquality: `iso/airootfs/etc/calamares/modules/users.conf` sets both minimums to 8. 2. For encrypted installs, advise under-12 passwords without blocking: `packaging/calamares/bos-conditional-password-warning.patch` checks for the LUKS passphrase, changes only valid short passwords to `Weak`, and appends the advisory; `Config::isReady()` treats only `Invalid` as not ready. The added `testEncryptedPasswordAdvisory` covers encrypted short and long passwords, and ready state. 3. Record the user-visible behavior: `CHANGELOG.md` describes the threshold and advisory. The `PKGBUILD` pins the patch checksum and applies it to Calamares 3.4.2. The workflow guard publishes only for non-PR events on `refs/heads/main`; feature branches and PRs only build. The diff is scoped and the PR is currently mergeable. Validation is still pending. Combined status on this head is `pending`: push build run #159 and pull request build run #160, both reported as started at 2026-09-30 04:13/04:14 +08:00. The implementer's local Calamares CMake test build could not configure because Qt6LinguistTools was unavailable, and there is no VM/UI acceptance evidence yet. I am leaving this in REVIEW while the new package builds run; no merge recommendation until their result and warning behavior are confirmed.
Author
Owner

Independent review PASS for PR #63 at 857964448b7b1d637f61abc4ef39632320c644b2. Package build runs #159 (push) and #160 (pull_request) are green; PR is mergeable. The issue's explicit acceptance is met. A live VM/UI run is extra confidence, not an explicit criterion. BOS is release-sensitive, so merge is left to the project owner.

Independent review PASS for PR #63 at `857964448b7b1d637f61abc4ef39632320c644b2`. Package build runs #159 (push) and #160 (pull_request) are green; PR is mergeable. The issue's explicit acceptance is met. A live VM/UI run is extra confidence, not an explicit criterion. BOS is release-sensitive, so merge is left to the project owner.
Author
Owner

Final review at 857964448b7b1d637f61abc4ef39632320c644b2: PASS. Both package workflow runs are green: push run #159 and pull_request run #160. The PR is mergeable. The issue's explicit acceptance is met by the configured 8-character minimum, the encrypted-install under-12 advisory, and the nonblocking readiness behavior, with a Calamares users-module test added for the warning state. The package successfully builds with the pinned 3.4.2 patch. A live VM/UI run is not stated as an acceptance criterion; I recommend that as extra confidence only. BOS is release-sensitive, so I am leaving the merge to the project owner.

Final review at `857964448b7b1d637f61abc4ef39632320c644b2`: PASS. Both package workflow runs are green: push run #159 and pull_request run #160. The PR is mergeable. The issue's explicit acceptance is met by the configured 8-character minimum, the encrypted-install under-12 advisory, and the nonblocking readiness behavior, with a Calamares users-module test added for the warning state. The package successfully builds with the pinned 3.4.2 patch. A live VM/UI run is not stated as an acceptance criterion; I recommend that as extra confidence only. BOS is release-sensitive, so I am leaving the merge to the project owner.
Breadway deleted branch fix/bos-46-password-minimum 2026-09-30 04:24:21 +08:00
Breadway referenced this pull request from a commit 2026-09-30 04:24:22 +08:00
Sign in to join this conversation.
No description provided.