[pve-devel] [PATCH proxmox-offline-mirror 5/8] wizard: simplify Proxmox repository url generation

Fabian Grünbichler f.gruenbichler at proxmox.com
Mon Sep 8 15:16:46 CEST 2025


except for test since Trixie, all repositories follow the same scheme..

Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
---
 src/bin/proxmox-offline-mirror.rs | 51 +++++++++----------------------
 1 file changed, 15 insertions(+), 36 deletions(-)

diff --git a/src/bin/proxmox-offline-mirror.rs b/src/bin/proxmox-offline-mirror.rs
index 8198cff..c444e6d 100644
--- a/src/bin/proxmox-offline-mirror.rs
+++ b/src/bin/proxmox-offline-mirror.rs
@@ -356,44 +356,23 @@ fn action_add_mirror(config: &SectionConfigData) -> Result<Vec<MirrorConfig>, Er
                     read_selection_from_tty("Select repository variant", variants, Some(0))?;
 
                 // TODO enterprise query for key!
-                let url = match (release, variant) {
-                    (Release::Trixie, ProxmoxVariant::Enterprise) => format!(
-                        "https://enterprise.proxmox.com/debian/{product} trixie {product}-enterprise"
+                let url = match variant {
+                    ProxmoxVariant::Enterprise => format!(
+                        "https://enterprise.proxmox.com/debian/{product} {release} {product}-enterprise"
                     ),
-                    (Release::Trixie, ProxmoxVariant::NoSubscription) => format!(
-                        "http://download.proxmox.com/debian/{product} trixie {product}-no-subscription"
+                    ProxmoxVariant::NoSubscription => format!(
+                        "http://download.proxmox.com/debian/{product} {release} {product}-no-subscription"
                     ),
-                    (Release::Trixie, ProxmoxVariant::Test) => {
-                        format!(
-                            "http://download.proxmox.com/debian/{product} trixie {product}-test"
-                        )
-                    }
-                    (Release::Bookworm, ProxmoxVariant::Enterprise) => format!(
-                        "https://enterprise.proxmox.com/debian/{product} bookworm {product}-enterprise"
-                    ),
-                    (Release::Bookworm, ProxmoxVariant::NoSubscription) => format!(
-                        "http://download.proxmox.com/debian/{product} bookworm {product}-no-subscription"
-                    ),
-                    (Release::Bookworm, ProxmoxVariant::Test) => format!(
-                        "http://download.proxmox.com/debian/{product} bookworm {product}test"
-                    ),
-                    (Release::Bullseye, ProxmoxVariant::Enterprise) => format!(
-                        "https://enterprise.proxmox.com/debian/{product} bullseye {product}-enterprise"
-                    ),
-                    (Release::Bullseye, ProxmoxVariant::NoSubscription) => format!(
-                        "http://download.proxmox.com/debian/{product} bullseye {product}-no-subscription"
-                    ),
-                    (Release::Bullseye, ProxmoxVariant::Test) => format!(
-                        "http://download.proxmox.com/debian/{product} bullseye {product}test"
-                    ),
-                    (Release::Buster, ProxmoxVariant::Enterprise) => format!(
-                        "https://enterprise.proxmox.com/debian/{product} buster {product}-enterprise"
-                    ),
-                    (Release::Buster, ProxmoxVariant::NoSubscription) => format!(
-                        "http://download.proxmox.com/debian/{product} buster {product}-no-subscription"
-                    ),
-                    (Release::Buster, ProxmoxVariant::Test) => {
-                        format!("http://download.proxmox.com/debian/{product} buster {product}test")
+                    ProxmoxVariant::Test => {
+                        if release >= &Release::Trixie {
+                            format!(
+                                "http://download.proxmox.com/debian/{product} {release} {product}-test"
+                            )
+                        } else {
+                            format!(
+                                "http://download.proxmox.com/debian/{product} {release} {product}test"
+                            )
+                        }
                     }
                 };
 
-- 
2.47.3





More information about the pve-devel mailing list