Commit Graph
100 Commits
Author SHA1 Message Date
kevinveenbirkenbach 27c0c7c01f **fix(mirror): derive remote repository owner and name from URL**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Parse host, owner, and repository name directly from Git remote URLs
* Prevent provisioning under incorrect repository names
* Make Git URL the single source of truth for remote provisioning
* Improve diagnostics when URL parsing fails
2025-12-14 14:54:19 +01:00
kevinveenbirkenbach 0d652d995e **feat(mirror,credentials): improve remote provisioning UX and token handling**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Split mirror logic into atomic modules (remote check, provisioning, URL utils)
* Normalize Git remote URLs and provider host detection
* Add provider-specific token help URLs (GitHub, Gitea/Forgejo, GitLab)
* Improve keyring handling with clear warnings and install hints
* Gracefully fall back to prompt when keyring is unavailable
* Fix provider hint override logic during remote provisioning
2025-12-14 14:48:05 +01:00
kevinveenbirkenbach 0e03fbbee2 Changed Mirror Name
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-14 14:01:19 +01:00
kevinveenbirkenbach 7cfd7e8d5c Release version 1.6.3
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-14 13:39:52 +01:00
kevinveenbirkenbach 84b6c71748 test(integration): add unittest-based repository layout contract test
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
- Add integration test using unittest to verify canonical repository paths
- Assert pkgmgr repository satisfies template layout (packaging, changelog, metadata)
- Use real filesystem without mocks or pytest dependencies

https://chatgpt.com/share/693eaa75-98f0-800f-adca-439555f84154
2025-12-14 13:26:18 +01:00
kevinveenbirkenbach db9aaf920e refactor(release,version): centralize repository path resolution and validate template layout
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
- Introduce RepoPaths resolver as single source of truth for repository file locations
- Update release workflow to use resolved packaging and changelog paths
- Update version readers to rely on the shared path resolver
- Add integration test asserting pkgmgr repository satisfies canonical template layout

https://chatgpt.com/share/693eaa75-98f0-800f-adca-439555f84154
2025-12-14 13:15:41 +01:00
kevinveenbirkenbach 69d28a461d Release version 1.6.2
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-14 12:58:35 +01:00
kevinveenbirkenbach 03e414cc9f fix(version): add tomli fallback for Python < 3.11
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
- Add conditional runtime dependency on tomli for Python < 3.11
- Fix crash on CentOS / Python 3.9 when reading pyproject.toml
- Ensure version command works consistently across distros

https://chatgpt.com/share/693ea1cb-41a0-800f-b4dc-4ff507eb60c6
2025-12-14 12:38:43 +01:00
kevinveenbirkenbach 7674762c9a feat(version): show installed pkgmgr version when no repo is selected
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
- Add installed version detection for Python environments and Nix profiles
- Display pkgmgr’s own installed version when run outside a repository
- Improve version command output to include installed vs source versions
- Prefer editable venv setup as default in Makefile setup target

https://chatgpt.com/share/693e9f02-9b34-800f-8eeb-c7c776b3faa7
2025-12-14 12:26:50 +01:00
kevinveenbirkenbach a47de15e42 Release version 1.6.1
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-14 12:01:52 +01:00
kevinveenbirkenbach 37f3057d31 fix(nix): resolve Ruff F821 via TYPE_CHECKING and stabilize NixFlakeInstaller tests
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
- Add TYPE_CHECKING imports for RepoContext and CommandRunner to avoid runtime deps
- Fix Ruff F821 undefined-name errors in nix installer modules
- Refactor legacy NixFlakeInstaller unit tests to mock subprocess.run directly
- Remove obsolete run_cmd_mock usage and assert install calls via subprocess calls
- Ensure tests run without realtime waits or external nix dependencies

https://chatgpt.com/share/693e925d-a79c-800f-b0b6-92b8ba260b11
2025-12-14 11:43:33 +01:00
kevinveenbirkenbach d55c8d3726 refactor(nix): split NixFlakeInstaller into atomic modules and add GitHub 403 retry handling
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
- Move Nix flake installer into installers/nix/ with atomic components
  (installer, runner, profile, retry, types)
- Preserve legacy behavior and semantics of NixFlakeInstaller
- Add GitHub API 403 rate-limit retry with Fibonacci backoff + jitter
- Update all imports to new nix module path
- Rename legacy unit tests and adapt patches to new structure
- Add unit test for simulated GitHub 403 retry without realtime sleeping

https://chatgpt.com/share/693e925d-a79c-800f-b0b6-92b8ba260b11
2025-12-14 11:32:48 +01:00
kevinveenbirkenbach 3990560cd7 Release version 1.6.0
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-14 10:51:40 +01:00
kevinveenbirkenbach d1e5a71f77 Merge branch 'feature/mirror-provision'
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-14 10:45:51 +01:00
kevinveenbirkenbach d59dc8ad53 fix(cli): route update exclusively through UpdateManager
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
* Remove `update` from repos command dispatch
* Prevent update from being handled by `handle_repos_command`
* Ensure top-level `update` always uses UpdateManager
* Fix "Unknown repos command: update" error after refactor

https://chatgpt.com/share/693e7ee9-2658-800f-985f-293ed0c8efbc
2025-12-14 10:09:46 +01:00
kevinveenbirkenbach 55f4a1e941 refactor(update): move update logic to unified UpdateManager and extend system support
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
- Move update orchestration from repository scope to actions/update
- Introduce UpdateManager and SystemUpdater with distro detection
- Add Arch, Debian/Ubuntu, and Fedora/RHEL system update handling
- Rename CLI flag from --system-update to --system
- Route update as a top-level command in CLI dispatch
- Remove legacy update_repos implementation
- Add E2E tests for:
  - update all without system updates
  - update single repo (pkgmgr) with system updates

https://chatgpt.com/share/693e76ec-5ee4-800f-9623-3983f56d5430
2025-12-14 09:35:52 +01:00
kevinveenbirkenbach 2a4ec18532 Changed argument order
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
2025-12-14 08:51:37 +01:00
kevinveenbirkenbach 2debdbee09 * **Split mirror responsibilities into clear subcommands**
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
Setup configures local Git state, check validates remote reachability in a read-only way, and provision explicitly creates missing remote repositories. Destructive behavior is never implicit.

* **Introduce a remote provisioning layer**
  pkgmgr can now ensure that repositories exist on remote providers. If a repository is missing, it can be created automatically on supported platforms when explicitly requested.

* **Add a provider registry for extensibility**
  Providers are resolved based on the remote host, with optional hints to force a specific backend. This makes it straightforward to add further providers later without changing the core logic.

* **Use a lightweight, dependency-free HTTP client**
  All API communication is handled via a small stdlib-based client. HTTP errors are mapped to meaningful domain errors, improving diagnostics and error handling consistency.

* **Centralize credential resolution**
  API tokens are resolved in a strict order: environment variables first, then the system keyring, and finally an interactive prompt if allowed. This works well for both CI and interactive use.

* **Keep keyring integration optional**
  Secure token storage via the OS keyring is provided as an optional dependency. If unavailable, pkgmgr still works using environment variables or one-off interactive tokens.

* **Improve CLI parser safety and clarity**
  Shared argument helpers now guard against duplicate definitions, making composed subcommands more robust and easier to maintain.

* **Expand end-to-end test coverage**
  All mirror-related workflows are exercised through real CLI invocations in preview mode, ensuring full wiring correctness while remaining safe for automated test environments.

https://chatgpt.com/share/693df441-a780-800f-bcf7-96e06cc9e421
2025-12-14 00:16:54 +01:00
kevinveenbirkenbach 4cb62e90f8 refactor: move nix experimental feature setup to nix.conf and rename pkgmgr wrapper
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
https://chatgpt.com/share/693dcbad-3d30-800f-acfe-22f7263f3e80
2025-12-13 21:25:02 +01:00
kevinveenbirkenbach 923519497a Updated Homepage
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 20:41:06 +01:00
kevinveenbirkenbach 5fa18cb449 Merge branch 'fix/self-install'
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 20:09:17 +01:00
kevinveenbirkenbach f513196911 Used correct tabulation
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
2025-12-13 20:08:30 +01:00
kevinveenbirkenbach 7f06447bbd feat(cli): add --system-update flag to update command
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
- Register --system-update for `pkgmgr update`
- Expose args.system_update for update workflow
- Align CLI with update_repos and E2E tests

https://chatgpt.com/share/693db645-c420-800f-b921-9d5c0356d0ac
2025-12-13 20:02:48 +01:00
kevinveenbirkenbach 1e5d6d3eee test(unit): update NixFlakeInstaller tests for new run_command-based logic
- Adapt DummyCtx to include quiet and force_update flags
- Replace os.system mocking with run_command/subprocess mocks
- Align assertions with new Nix install/upgrade output
- Keep coverage for mandatory vs optional output handling

https://chatgpt.com/share/693db645-c420-800f-b921-9d5c0356d0ac
2025-12-13 19:53:34 +01:00
kevinveenbirkenbach f2970adbb2 test(e2e): enforce --system-update and isolate update-all integration tests
- Require --system-update for update-all integration tests
- Run tests with isolated HOME and temporary gitconfig
- Allow /src as git safe.directory for nix run
- Capture and print combined stdout/stderr on failure
- Ensure consistent environment for pkgmgr and nix-run executions
2025-12-13 19:49:40 +01:00
kevinveenbirkenbach 7f262c6557 feat(install): add --update to re-run active-layer installers and improve Nix refresh logic
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
* Add `force_update` to `RepoContext` and propagate it through install/update flows
* Add `pkgmgr install --update` to force re-running installers even if the same CLI layer is already loaded
* Enhance `NixFlakeInstaller` to ensure correct outputs (pkgmgr + optional default for package-manager) and support refresh/upgrade with index-based fallback remove+reinstall
* Make Python/Makefile installers emit an “upgraded” marker when `force_update` is used
* Add E2E tests for “three times install” scenarios (makefile, nix, venv) with shared run helper
* Fix git safe.directory wildcard quoting in E2E shell runner and minor cleanup/reordering of imports/comments

https://chatgpt.com/share/693db0b4-6ea4-800f-b44a-f03939c7fb9e
2025-12-13 19:30:06 +01:00
kevinveenbirkenbach 0bc7a3ecc0 ci(nix): retry flake evaluation on GitHub API rate limits
CI / test-integration (push) Has been cancelled
CI / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
CI / test-env-virtual (push) Has been cancelled
CI / test-virgin-root (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
CI / test-unit (push) Has been cancelled
CI / test-virgin-user (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
CI / test-env-nix (push) Has been cancelled
CI / test-e2e (push) Has been cancelled
CI / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Add a reusable retry helper that detects GitHub API 403 rate-limit errors
during Nix flake evaluation and retries with exponential backoff.

Apply the retry logic to flake-only CI tests so transient GitHub rate
limits no longer cause random CI failures while preserving fast failure
for real errors.

https://chatgpt.com/share/693d7ec5-ac70-800f-a627-ef705c653ba1
2025-12-13 15:57:05 +01:00
kevinveenbirkenbach 55a0ae4337 Release version 1.5.0
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-13 15:43:19 +01:00
kevinveenbirkenbach bcf284c5d6 Solved variable naming bug
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 15:33:38 +01:00
kevinveenbirkenbach db23b1a445 Solved ruff hints
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 15:30:10 +01:00
kevinveenbirkenbach 506f69d8a7 Solved variable bug
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-13 15:27:06 +01:00
kevinveenbirkenbach 097e64408f Fix repository deinstall logic and add unit tests for repository helpers
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
- Fix undefined repo_dir usage in repository deinstall action
- Centralize and harden get_repo_dir with strict validation and clear errors
- Expand user paths for repository base and binary directories
- Add unit tests for get_repo_dir and deinstall_repos
- Add comprehensive tests for resolve_repos identifier matching
- Remove obsolete command resolution tests no longer applicable

https://chatgpt.com/share/693d7442-c2d0-800f-9ff3-fb84d60eaeb4
2025-12-13 15:12:12 +01:00
kevinveenbirkenbach a3913d9489 Solved variable bug
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 15:05:34 +01:00
kevinveenbirkenbach c92fd44dd3 fix(uninstall): robustly remove pkgmgr venv auto-activation and leftover shell RC entries
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 14:48:59 +01:00
kevinveenbirkenbach 2c3efa7a27 Solved shellcheck quoting issue
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-13 14:38:37 +01:00
kevinveenbirkenbach f388bc51bc Ruff autofix
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 14:36:55 +01:00
kevinveenbirkenbach 4e28eba883 refactor(ci,build,test): rename distro to PKGMGR_DISTRO for consistent environment handling
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
https://chatgpt.com/share/693d6b63-12cc-800f-b55f-abc52ee7fb52
2025-12-13 14:34:15 +01:00
kevinveenbirkenbach b8acd634f8 Improve run_command error diagnostics with live output capture
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Switch run_command to a single-run execution model that streams stdout/stderr
live while capturing both streams in memory using selectors. This guarantees
that command errors (e.g. make install, pip, nix) always show full diagnostics
without re-running commands or risking deadlocks.

Add unit tests for preview mode, success execution, failure handling, and
allow_failure behavior.

Context:
https://chatgpt.com/share/replace-with-this-conversation-link
2025-12-13 14:29:53 +01:00
kevinveenbirkenbach fb68b325d6 Fix ShellCheck warnings and harden shell scripts
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
- Quote Docker volume names to avoid word splitting
- Add missing shebangs for proper shell detection
- Annotate sourced scripts for ShellCheck resolution
- Remove unused variables
- Explicitly disable SC2016 where literal RC strings are intended
- Improve robustness of cleanup logic

https://chatgpt.com/share/693d6557-a080-800f-8915-c57476569232
2025-12-13 14:08:35 +01:00
kevinveenbirkenbach 650a22d425 Changed other formatation codesniffer solution
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 14:00:06 +01:00
kevinveenbirkenbach 6a590d8780 Solved save user config bug 2025-12-13 13:55:49 +01:00
kevinveenbirkenbach 5601ea442a **Refactor CI: make Ruff and ShellCheck reusable via workflow_call**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Convert Ruff and ShellCheck workflows to `workflow_call`
* Remove direct `push` / `pull_request` triggers
* Run sniffers only through centralized CI and release pipelines
* Prevent duplicate and uncontrolled sniffer executions

https://chatgpt.com/share/693d5f9a-5e70-800f-95da-837be2aedb4f
2025-12-13 13:44:04 +01:00
kevinveenbirkenbach 5ff15013d7 Fix: remove unnecessary f-strings without interpolation
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
ShellCheck / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Ruff (Python code sniffer) / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Remove extraneous f-string prefixes from string literals that do not contain
placeholders. This resolves Ruff F541 warnings without changing runtime
behavior or output.

https://chatgpt.com/share/693d5f15-f9e8-800f-bf69-b0dee0e4449c
2025-12-13 13:41:26 +01:00
kevinveenbirkenbach 6ccc1c1490 Removed further Optional double imports
ShellCheck / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Ruff (Python code sniffer) / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
2025-12-13 13:36:11 +01:00
kevinveenbirkenbach 8ead3472dd Removed double import 2025-12-13 13:33:34 +01:00
kevinveenbirkenbach 422ac8b837 **Enable Nix experimental features system-wide and refactor Nix bootstrap config**
ShellCheck / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Ruff (Python code sniffer) / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Rename `config.sh` to `bootstrap_config.sh` to clearly separate installer bootstrap config from Nix system config
* Add `nix_conf_file.sh` to manage `/etc/nix/nix.conf` safely and idempotently
* Ensure `nix-command` and `flakes` are enabled without overwriting existing experimental features
* Invoke Nix config enforcement from `nix/init.sh` during root installation
* Update documentation and ShellCheck annotations accordingly
* Extend CLI git proxy to include `git status`

https://chatgpt.com/share/693d5c4a-bad0-800f-adaf-4719dd4ca377
2025-12-13 13:29:48 +01:00
kevinveenbirkenbach ea84c1b14e Add ShellCheck and Ruff code sniffers to CI and release workflows
ShellCheck / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Ruff (Python code sniffer) / codesniffer-ruff (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / codesniffer-shellcheck (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / codesniffer-ruff (push) Has been cancelled
- Introduce dedicated ShellCheck workflow for Bash scripts
- Add Ruff as Python code sniffer for src/ and tests/
- Integrate both sniffers into main CI pipeline
- Require successful sniffer runs before marking a release as stable
- Ensure consistent code quality checks across CI and release workflows

https://chatgpt.com/share/693d5b26-293c-800f-999d-48b2950b9417
2025-12-13 13:24:58 +01:00
kevinveenbirkenbach 71a4e7e725 Added git status proxy
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-13 13:13:03 +01:00
kevinveenbirkenbach fb737ef290 Optimized Changelog
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-13 08:40:37 +01:00
kevinveenbirkenbach 2963a43754 **Refactor README: streamline rationale, features, install and run sections**
* Simplify *Why PKGMGR* into concise prose and add Docker images as reproducible system baselines linked to Infinito.Nexus
* Condense Features into a single, readable overview without command lists
* Clean up Architecture section and keep diagram metadata consistent
* Reorganize Installation with clear download, dependencies, install and setup modes
* Introduce a unified *Run PKGMGR* section differentiating Nix, Docker and venv usage with consistent examples
2025-12-13 08:34:39 +01:00
kevinveenbirkenbach 103f49c8f6 Release version 1.4.1
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 23:06:15 +01:00
kevinveenbirkenbach f5d428950e **Replace main.py with module-based entry point and unify CLI execution**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Remove legacy *main.py* and introduce *pkgmgr* module entry via *python -m pkgmgr*
* Add ***main**.py* as the canonical entry point delegating to the CLI
* Export *PYTHONPATH=src* in Makefile to ensure reliable imports in dev and CI
* Update setup scripts (venv & nix) to use module execution
* Refactor all E2E tests to execute the real module entry instead of file paths

This aligns pkgmgr with standard Python packaging practices and simplifies testing, setup, and execution across environments.

https://chatgpt.com/share/693c9056-716c-800f-b583-fc9245eab2b4
2025-12-12 22:59:46 +01:00
kevinveenbirkenbach b40787ffc5 ci: publish GHCR images after successful mark-stable workflow
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Trigger container publishing via workflow_run on "Mark stable commit", gate on success,
checkout the workflow_run head SHA, force-refresh tags, and derive version from the v* tag
pointing at the tested commit to correctly detect and publish stable images.

https://chatgpt.com/share/693c836b-0b00-800f-9536-9e273abd0fb5
2025-12-12 22:50:33 +01:00
kevinveenbirkenbach 0482a7f88d Release version 1.4.0
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Publish container images (GHCR) / publish (push) Has been cancelled
2025-12-12 22:20:07 +01:00
kevinveenbirkenbach 8c127cc45a ci: fix container publish workflow to run on version tag pushes
Switch publish-containers workflow from workflow_run to direct v* tag triggers,
remove obsolete workflow_run logic, simplify version detection via GITHUB_REF_NAME,
and keep stable-tag detection aligned with the stable ref.

https://chatgpt.com/share/693c836b-0b00-800f-9536-9e273abd0fb5
2025-12-12 22:17:32 +01:00
kevinveenbirkenbach 2761e829cb ci: add GHCR container publish pipeline with semantic tags
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Introduce a dedicated publish-containers workflow triggered after stable releases.
Unify container build and publish logic via scripts, add buildx-based multi-tag publishing,
default base image resolution, and Arch alias tags for latest/version/stable.

https://chatgpt.com/share/693c836b-0b00-800f-9536-9e273abd0fb5
2025-12-12 22:04:39 +01:00
kevinveenbirkenbach d0c01b6955 Updated dependencies instructions
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 21:37:50 +01:00
kevinveenbirkenbach b2421c9b84 **Refactor OS detection and normalize Manjaro to Arch**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Centralize OS detection and normalization in a dedicated resolver module
* Treat Manjaro consistently as Arch across dependencies and package install
* Remove duplicated OS logic and legacy lib.sh
* Rename installation entrypoint to init.sh and update Makefile accordingly

https://chatgpt.com/share/693c7b50-3be0-800f-8aeb-daf3ee929ea3
2025-12-12 21:30:03 +01:00
kevinveenbirkenbach f950bb493c Release version 1.3.1
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 21:16:27 +01:00
kevinveenbirkenbach fb0b81954d **Fix Nix bootstrap installation by shipping init script and libraries together**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Install the complete Nix bootstrap (*init.sh* and *lib/*) into */usr/lib/package-manager/nix/* for Arch, Debian, and Fedora
* Align packaging paths with the expectations of the modularized *nix/init.sh*
* Prevent runtime failures caused by missing sourced library scripts

https://chatgpt.com/share/693c7159-b340-800f-929e-2515eeb0dd03
2025-12-12 21:02:26 +01:00
kevinveenbirkenbach b9b4c3fa59 **Refactor Nix init into modular scripts and update packaging paths**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Move the Nix bootstrap from *scripts/init-nix.sh* to *scripts/nix/init.sh* with split-out helpers in *scripts/nix/lib/*
* Update Arch/Debian/Fedora packaging hooks to call */usr/lib/package-manager/nix/init.sh*
* Keep bootstrap behavior the same while improving maintainability and reuse

https://chatgpt.com/share/693c7159-b340-800f-929e-2515eeb0dd03
2025-12-12 20:47:31 +01:00
kevinveenbirkenbach 3642f92776 Release version 1.3.0
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 20:35:02 +01:00
kevinveenbirkenbach 8f38edde67 **Fix Nix global symlinks for sudo secure_path without overriding distro paths**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Ensure nix is reachable for sudo on CentOS by providing /usr/bin and /usr/sbin fallbacks when absent
* Keep /usr/local/bin as primary CI path without breaking non-login shells
* Never overwrite distro-managed nix binaries (Arch-safe)
* Stabilize e2e and virgin-user tests across all distros

https://chatgpt.com/share/693c6013-af2c-800f-a1bc-baed0d29fab7
2025-12-12 20:23:29 +01:00
kevinveenbirkenbach 5875441b23 **Fix Nix resolution and symlink handling on Arch without overriding system paths**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Resolve the real *nix* executable to avoid self-referential symlink loops
* Prefer distro-managed paths (*/usr/sbin*, */usr/bin*) over */usr/local*
* Restrict global symlink creation to */usr/local/bin/nix* only
* Never overwrite Arch-managed */usr/bin/nix* or */bin/nix*
* Make CI and non-login shells reliable while preserving native Arch behavior

https://chatgpt.com/share/693c6013-af2c-800f-a1bc-baed0d29fab7
2025-12-12 20:05:17 +01:00
kevinveenbirkenbach 9190f0d901 Fix init-nix so it works for non-root CI shells across distros
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
https://chatgpt.com/share/693c6013-af2c-800f-a1bc-baed0d29fab7
2025-12-12 19:50:25 +01:00
kevinveenbirkenbach f227734185 **Fix init-nix for CI and Arch shells**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Simplify *init-nix.sh* while keeping container/host install paths
* Prefer canonical *nix* locations and avoid brittle PATH assumptions
* Ensure global *nix* symlinks for non-login shells (CI reliability)
* Keep retry download + nixbld bootstrap logic intact

https://chatgpt.com/share/693c6013-af2c-800f-a1bc-baed0d29fab7
2025-12-12 19:40:21 +01:00
kevinveenbirkenbach c7ef77559c Ensure nix is reachable in CI shells via robust lookup and global symlinks
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Add resolve_nix_bin to reliably locate the nix binary in non-login shells.
Create and enforce global nix symlinks for CI environments (/usr/local/bin, best-effort /usr/bin and /bin).
Apply symlink enforcement on fast path, after PATH adjustments, and post-install when running as root.
Improve warnings when nix is installed but not on PATH.

https://chatgpt.com/share/693c6013-af2c-800f-a1bc-baed0d29fab7
2025-12-12 19:33:52 +01:00
kevinveenbirkenbach 2385601ed5 Persist CA bundle configuration on CentOS for Nix and HTTPS tools
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Move CA bundle detection from the Docker entrypoint to CentOS dependencies and persist it system-wide.
This ensures Nix, Git, curl, and Python HTTPS access works in virgin environments by configuring `/etc/profile.d` and `/etc/nix/nix.conf`.
Removes runtime-only CA exports from the container entrypoint and makes the setup reproducible and distro-correct.

https://chatgpt.com/share/693c5ddf-3260-800f-ac94-38c635dba307
2025-12-12 19:24:12 +01:00
kevinveenbirkenbach ac5ae95369 fix(py39): replace PEP 604 union types with Optional for Python 3.9 compatibility
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
- Replaced all `X | None` type hints with `Optional[X]`
- Adjusted typing imports across modules
- Fixed import order and removed invalid future-import placements
- Ensured code runs correctly on Python 3.9

https://chatgpt.com/share/693c58e1-ce70-800f-9088-5864571e024a
2025-12-12 19:02:54 +01:00
kevinveenbirkenbach 31f7f47fe2 Downgraded python to 3.9 for CentOS
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 18:38:37 +01:00
kevinveenbirkenbach c8bf1c91ad **test(e2e): split update-all HTTPS integration test into pkgmgr and nix runs**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Refactored the E2E update-all test to execute real CLI commands instead of invoking *main.py*.
The test is now split into two independent cases: one running *pkgmgr update* directly and one running the same command via *nix run .#pkgmgr*.
This improves realism, diagnostics, and parity with actual user workflows inside the container.

https://chatgpt.com/share/693c52cb-cc10-800f-994b-5b2940dcf948
2025-12-12 18:37:07 +01:00
kevinveenbirkenbach f2caa68e3d fix(nix): ensure non-root access to Nix installation with strict error handling
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Ensure /home/nix and .nix-profile are accessible for non-root users,
create /usr/local/bin/nix symlink with fail-fast behavior, and replace
silent permission fixes with explicit checks, clear error messages,
and deterministic exit codes.

https://chatgpt.com/share/693c29d9-9b28-800f-a549-5661c783d968
2025-12-12 18:19:51 +01:00
kevinveenbirkenbach 03c232c308 Performance optimation for workflows
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 18:07:25 +01:00
kevinveenbirkenbach e882e17737 Changed CentOS to python 3.11
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 17:26:39 +01:00
kevinveenbirkenbach b9edcf7101 Patched python version for centos
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 17:12:30 +01:00
kevinveenbirkenbach 8b8ebf329f Added venv to debian and ubuntu virgin
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 17:04:34 +01:00
kevinveenbirkenbach 9598c17ea0 Added python dependency to virgin container
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 16:58:12 +01:00
kevinveenbirkenbach 67bd358e12 fix(docker): enforce bash shell to support pipefail across distros
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Use bash as the default shell in Docker build stages to ensure
`set -euo pipefail` works reliably on all base images, including
Ubuntu where /bin/sh does not support pipefail.

https://chatgpt.com/share/693c29d9-9b28-800f-a549-5661c783d968
2025-12-12 16:50:32 +01:00
kevinveenbirkenbach 340c1700dc Added missing 'make' to ubuntu
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 16:42:45 +01:00
kevinveenbirkenbach 0dfbaa0f6b ci/docker: unify image build logic and run virgin tests across all distros
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Refactor Dockerfile into multi-stage virgin/full targets and introduce a single
flag-based image build script. Standardize image naming, remove redundant build
scripts, and update Makefile targets accordingly. CI workflows now build missing
virgin images and run root and user tests consistently across all supported
distributions.

https://chatgpt.com/share/693c29d9-9b28-800f-a549-5661c783d968
2025-12-12 16:40:21 +01:00
kevinveenbirkenbach 08ab9fb142 feat(ci): stabilize virgin Arch tests with Makefile install/setup and Nix Git safety
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
* Switch virgin root/user workflows to use *make install* + *make setup/setup-venv*
* Add Git *safe.directory /src* to avoid flake evaluation failures on mounted repos
* Enable Nix flake run in workflows and prepare */nix* for non-root execution
* Refactor Arch packaging to build in an isolated */tmp* directory via *aur_builder*
* Rename installer scripts (*run-** → *dependencies.sh* / *package.sh*) and adjust Docker entry + env var to *REINSTALL_PKGMGR*

https://chatgpt.com/share/693c29d9-9b28-800f-a549-5661c783d968
2025-12-12 15:42:25 +01:00
kevinveenbirkenbach 804245325d Release version 1.2.1
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
2025-12-12 12:32:33 +01:00
kevinveenbirkenbach c05e77658a ci(docker): remove build-time nix check and rely on runtime env test
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Why:
The Dockerfile previously validated `nix --version` during image build,
which is environment-sensitive and behaves differently in GitHub Actions
vs local/act builds due to PATH and non-login shell differences.

The actual contract is runtime availability of Nix, not build-step PATH
resolution. This is now reliably enforced by the dedicated `test-env-nix`
container test, which validates nix presence and flake execution in the
real execution environment.

This removes flaky CI behavior while keeping stronger, more accurate
coverage of the intended guarantee.

https://chatgpt.com/share/693bfbc7-63d8-800f-9ceb-728c7a58e963
2025-12-12 12:25:36 +01:00
kevinveenbirkenbach 324f6db1f3 ci: split container tests into virtualenv and Nix flake environments
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-env-virtual (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-env-nix (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Refactor CI to clearly separate virtualenv-based container tests from pure Nix flake tests across all distros (arch, debian, ubuntu, fedora, centos).
Introduce dedicated test-env-nix workflow and Makefile targets, rename former container tests to test-env-virtual, and update stable pipeline dependencies.
Improve Nix reliability in containers by fixing installer permissions and explicitly validating nix availability and version during image build and tests.
2025-12-12 12:15:40 +01:00
kevinveenbirkenbach 2a69a83d71 Release version 1.2.0
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
2025-12-12 10:27:56 +01:00
kevinveenbirkenbach 0ec4ccbe40 **fix(release): force-fetch remote tags and align tests**
* Treat remote tags as the source of truth by force-fetching tags from *origin*
* Update preview output to reflect the real fetch behavior
* Align unit tests with the new forced tag fetch command

https://chatgpt.com/share/693bdfc3-b8b4-800f-8adc-b1dc63c56a89
2025-12-12 10:26:22 +01:00
kevinveenbirkenbach 0d864867cd **feat(release): adjust highest-tag detection tests and improve logging**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
* Add debug output for latest vs current version tag in release git ops
* Treat “no version tags yet” as highest by definition
* Align unit tests with current *string-based* `tag >= latest` behavior
* Make tag listing mocks less brittle by matching command patterns
* Rename release init test to `test_init.py` for consistent discovery
2025-12-12 10:17:18 +01:00
kevinveenbirkenbach 3ff0afe828 feat(release): refactor release workflow, tagging logic, and CLI integration
Refactor the release implementation into a dedicated workflow module with clear separation of concerns. Enforce a safe, deterministic Git flow by always syncing with the remote before modifications, pushing only the current branch and the newly created version tag, and updating the floating *latest* tag only when the released version is the highest. Add explicit user prompts for confirmation and optional branch deletion, with a forced mode to skip interaction. Update CLI wiring to pass all relevant flags, add comprehensive unit tests for the new helpers and workflow entry points, and introduce detailed documentation describing the release process, safety rules, and execution flow.
2025-12-12 10:04:24 +01:00
kevinveenbirkenbach bd74ad41f9 Release version 1.1.0
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
2025-12-12 09:08:22 +01:00
kevinveenbirkenbach fa2a92481d Merge branch 'main' of github.com:kevinveenbirkenbach/package-manager 2025-12-12 09:08:19 +01:00
kevinveenbirkenbach 6a1e001fc2 test(branch): remove obsolete test_branch.py after branch module refactor
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
The old test tests/unit/pkgmgr/actions/test_branch.py has been removed because:

- it targeted the previous monolithic pkgmgr.actions.branch module structure
- its patch targets no longer match the refactored code
- its responsibilities are now fully covered by the new, dedicated unit,
  integration, and E2E tests for branch actions and CLI wiring

This avoids redundant coverage and prevents misleading or broken tests
after the branch refactor.

https://chatgpt.com/share/693bcc8d-b84c-800f-8510-8d6c66faf627
2025-12-12 09:04:11 +01:00
kevinveenbirkenbach 60afa92e09 Removed flake.lock 2025-12-12 00:30:17 +01:00
kevinveenbirkenbach 212f3ce5eb Removed _requirements.txt 2025-12-12 00:27:46 +01:00
kevinveenbirkenbach 0d79537033 Added Banner
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
2025-12-11 21:01:27 +01:00
kevinveenbirkenbach 72fc69c2f8 Release version 1.0.0
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
2025-12-11 20:41:35 +01:00
kevinveenbirkenbach 6d8c6deae8 **refactor(readme): rewrite README for multi-distro focus and Nix-based workflows**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
Expanded and modernized the README to reflect PKGMGR's purpose as a
multi-distro development and packaging orchestrator. Added explanations for
Nix-based cross-distro workflows, clarified installation steps, documented the
full CLI capabilities, and embedded the architecture diagram.

Also replaced the verbose CLI DESCRIPTION_TEXT with a concise summary suitable
for `--help` output.

Included updated `assets/map.png`.

https://chatgpt.com/share/693b1d71-ca08-800f-a000-f3be49f7efb5
2025-12-11 20:37:05 +01:00
kevinveenbirkenbach 6c116a029e Release version 0.10.2
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
2025-12-11 20:16:59 +01:00
kevinveenbirkenbach 3eb7c81fa1 **Mark stable only on highest version tag**
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
Updated the `mark-stable` workflow so that the `stable` tag is only moved when:

* the current push is a version tag (`v*`)
* all tests have passed
* the pushed version tag is the highest semantic version among all existing tags

This ensures that `stable` always reflects the latest valid release and prevents older version tags from overwriting it.

https://chatgpt.com/share/693b163b-0c34-800f-adcb-12cf4744dbe2
2025-12-11 20:06:22 +01:00
kevinveenbirkenbach 0334f477fd Release version 0.10.2
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
2025-12-11 20:01:29 +01:00
kevinveenbirkenbach 8bb99c99b7 refactor(init-nix): unify installer logic and add robust retry handling
Mark stable commit / test-unit (push) Has been cancelled
Mark stable commit / test-e2e (push) Has been cancelled
Mark stable commit / mark-stable (push) Has been cancelled
Mark stable commit / test-integration (push) Has been cancelled
Mark stable commit / test-virgin-root (push) Has been cancelled
Mark stable commit / test-virgin-user (push) Has been cancelled
Mark stable commit / test-container (push) Has been cancelled
Refactored the Nix initialization script to reduce duplicated code and
centralize the installation workflow. The core functionality remains
unchanged, but all installer calls now use a unified function with retry
support to ensure resilient downloads in CI and container environments.

Key improvements:
- Added download retry logic (5 minutes total, 20-second intervals)
- Consolidated installer invocation into `install_nix_with_retry`
- Reduced code duplication across container/host install paths
- Preserved existing installation behavior for all environments
- Maintained `nixbld` group and build-user handling
- Improved consistency and readability without altering semantics

This prevents intermittent failures such as:
“curl: (6) Could not resolve host: nixos.org”
and ensures stable, deterministic Nix setup in CI pipelines.

https://chatgpt.com/share/693b13ce-fdcc-800f-a7bc-81c67478edff
2025-12-11 19:56:10 +01:00