-
-
Notifications
You must be signed in to change notification settings - Fork 285
Add package manager selection options #2283
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
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
Reviewer's GuideThis PR introduces a comprehensive package manager selection subsystem by adding new CLI options, configuration scripts, initialization logic, menu UI, and helper utilities, while also standardizing theme handling via Sequence diagram for package manager initialization and selectionsequenceDiagram
actor User
participant Menu as "Options Menu"
participant UI as "menu_options_package_manager()"
participant Config as "config_package_manager()"
participant Init as "package_manager_init()"
participant PM as "PM logic"
User->>Menu: Open Options
Menu->>UI: Select "Package Manager"
UI->>Config: Set PackageManager in config
Config->>Init: Trigger package_manager_init
Init->>PM: Validate and detect package manager
PM->>Init: Return selected/detected PM
Init->>UI: Notify selection result
UI->>User: Show confirmation
Entity relationship diagram for package manager config in dockstarter.inierDiagram
DOCKSTARTER_INI {
string Borders
string LineCharacters
string PackageManager
string Scrollbar
string Shadow
string Theme
}
DOCKSTARTER_INI ||--o| PACKAGE_MANAGER : has
PACKAGE_MANAGER {
string name
string nicename
string description
}
Class diagram for package manager configuration and selection scriptsclassDiagram
class config_package_manager {
+config_package_manager(PackageManager)
}
class package_manager_init {
+package_manager_init()
}
class package_manager_list {
+package_manager_list()
}
class package_manager_existing_list {
+package_manager_existing_list()
}
class package_manager_table {
+package_manager_table()
}
class package_manager_existing_table {
+package_manager_existing_table()
}
class package_manager_is_valid {
+package_manager_is_valid(PackageManager)
}
class package_manager_exists {
+package_manager_exists(PackageManager)
}
class package_manager_nicename {
+package_manager_nicename(PackageManager)
}
class package_manager_description {
+package_manager_description(PackageManager)
}
config_package_manager <|-- package_manager_init
package_manager_list <|-- package_manager_table
package_manager_existing_list <|-- package_manager_existing_table
package_manager_is_valid <|-- package_manager_exists
package_manager_is_valid <|-- package_manager_nicename
package_manager_is_valid <|-- package_manager_description
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CLHatch
added a commit
that referenced
this pull request
Oct 25, 2025
commit 0baf2df Author: CLHatch <[email protected]> Date: Sat Oct 25 00:53:38 2025 -0500 Remove `-T` from the `--pm-config` and `--pm-config-auto` usages text (#2285) commit d60ce73 Author: CLHatch <[email protected]> Date: Sat Oct 25 00:40:28 2025 -0500 Add the missing `--config-pm` and `--config-pm-auto` usage text (#2284) commit 24ff1ad Author: CLHatch <[email protected]> Date: Fri Oct 24 23:34:52 2025 -0500 Add package manager selection options (#2283) commit 79f4ab5 Author: CLHatch <[email protected]> Date: Fri Oct 24 12:55:45 2025 -0500 Allow optional arguments during fresh install. (#2282) commit 89f07d4 Author: CLHatch <[email protected]> Date: Thu Oct 23 03:17:56 2025 -0500 Change `menu.ini` to `dockstarter.ini` (#2281) commit 9653caa Author: CLHatch <[email protected]> Date: Tue Oct 21 03:17:22 2025 -0500 Add `backrest` (#2280) commit b457e6d Author: CLHatch <[email protected]> Date: Mon Oct 20 23:57:12 2025 -0500 Remove extraneous newline in Calibre variable file (#2279) commit 2e9ba0c Author: CLHatch <[email protected]> Date: Mon Oct 20 23:53:38 2025 -0500 Adjust a comment heading slightly for Calibre (#2278) commit e69d985 Author: CLHatch <[email protected]> Date: Mon Oct 20 22:49:44 2025 -0500 Update Calibre ports and variables (#2277) Resolves #2271 commit bf35f6f Author: CLHatch <[email protected]> Date: Sun Oct 19 07:47:51 2025 -0500 Move the `.dialogrc` and `.dialogoptions` files to the temp folder (#2276) commit acaf094 Author: CLHatch <[email protected]> Date: Sun Oct 19 06:10:16 2025 -0500 Correct the branch from `macos` to `main` (#2275) commit 0d09be4 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: Sun Oct 19 02:33:31 2025 +0000 Update mstruebing/editorconfig-checker Docker tag to v3.4.1 commit 0ac574f Author: CLHatch <[email protected]> Date: Sat Oct 18 21:32:56 2025 -0500 Fix typo in error message (#2274) commit c296ce3 Author: CLHatch <[email protected]> Date: Sat Oct 18 21:28:49 2025 -0500 Remove extraneous character in bash version check (#2273) commit 96b87fc Author: CLHatch <[email protected]> Date: Sat Oct 18 19:27:44 2025 -0500 Support MacOS (#2272) commit afc32e0 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: Wed Oct 15 14:02:17 2025 +0000 Update dependency mkdocs-material to v9.6.22
CLHatch
added a commit
that referenced
this pull request
Oct 28, 2025
CLHatch
added a commit
that referenced
this pull request
Oct 28, 2025
* Update `synlink_ds` to check folders in the order they are listed in the PATH variable (#2270) * Update dependency mkdocs-material to v9.6.22 * Support MacOS (#2272) * Remove extraneous character in bash version check (#2273) * Fix typo in error message (#2274) * Update mstruebing/editorconfig-checker Docker tag to v3.4.1 * Correct the branch from `macos` to `main` (#2275) * Move the `.dialogrc` and `.dialogoptions` files to the temp folder (#2276) * Update Calibre ports and variables (#2277) Resolves #2271 * Adjust a comment heading slightly for Calibre (#2278) * Remove extraneous newline in Calibre variable file (#2279) * Add `backrest` (#2280) * Change `menu.ini` to `dockstarter.ini` (#2281) * Allow optional arguments during fresh install. (#2282) * Add package manager selection options (#2283) * Add the missing `--config-pm` and `--config-pm-auto` usage text (#2284) * Remove `-T` from the `--pm-config` and `--pm-config-auto` usages text (#2285) * Update group functions (#2286) * Update tandoor environment and ports to 80 from 8080 (#2269) * Update tandoor environment and ports to 80 from 8080 Tandoor introducted a breaking change in their latest release, changing the default port from 8080 to 80. * Add storage ON options to Tandoor environment Added storage configuration options for Tandoor instance. * Add storage configuration options to tandoor.migrate --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: smilerz <[email protected]>
CLHatch
added a commit
that referenced
this pull request
Oct 28, 2025
commit 1805f5e Author: CLHatch <[email protected]> Date: Tue Oct 28 09:54:20 2025 -0500 Re-apply Tandoor update (#2289) * Update `synlink_ds` to check folders in the order they are listed in the PATH variable (#2270) * Update dependency mkdocs-material to v9.6.22 * Support MacOS (#2272) * Remove extraneous character in bash version check (#2273) * Fix typo in error message (#2274) * Update mstruebing/editorconfig-checker Docker tag to v3.4.1 * Correct the branch from `macos` to `main` (#2275) * Move the `.dialogrc` and `.dialogoptions` files to the temp folder (#2276) * Update Calibre ports and variables (#2277) Resolves #2271 * Adjust a comment heading slightly for Calibre (#2278) * Remove extraneous newline in Calibre variable file (#2279) * Add `backrest` (#2280) * Change `menu.ini` to `dockstarter.ini` (#2281) * Allow optional arguments during fresh install. (#2282) * Add package manager selection options (#2283) * Add the missing `--config-pm` and `--config-pm-auto` usage text (#2284) * Remove `-T` from the `--pm-config` and `--pm-config-auto` usages text (#2285) * Update group functions (#2286) * Update tandoor environment and ports to 80 from 8080 (#2269) * Update tandoor environment and ports to 80 from 8080 Tandoor introducted a breaking change in their latest release, changing the default port from 8080 to 80. * Add storage ON options to Tandoor environment Added storage configuration options for Tandoor instance. * Add storage configuration options to tandoor.migrate --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: smilerz <[email protected]>
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.
Pull request
Purpose
Describe the problem or feature in addition to a link to the issues.
Approach
How does this change address the problem?
Open Questions and Pre-Merge TODOs
Check all boxes as they are completed
Learning
Describe the research stage
Links to blog posts, patterns, libraries or addons used to solve this problem
Requirements
Check all boxes as they are completed
Summary by Sourcery
Enable auto-detection and manual selection of the system package manager via new commands and interactive menus, centralize detection logic, and persist the user’s choice in configuration
New Features:
Enhancements:
Tests: