From af57a772d12b94f12becb0882643a88feb23f036 Mon Sep 17 00:00:00 2001 From: Stephen Klein Date: Sat, 19 Jul 2025 22:07:43 -0400 Subject: [PATCH] Fix Docker repository configuration for Linux Mint compatibility MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add Ubuntu codename mapping for Linux Mint versions - Map Mint 22.x to Ubuntu 24.04 (noble) - Map Mint 21.x to Ubuntu 22.04 (jammy) - Map Mint 20.x to Ubuntu 20.04 (focal) - Resolves Docker installation failures caused by unsupported Mint codenames 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- lib/privileges.sh | 25 +++++++++++++++++++++++-- privileged-setup | 25 +++++++++++++++++++++++-- 2 files changed, 46 insertions(+), 4 deletions(-) diff --git a/lib/privileges.sh b/lib/privileges.sh index 816ca65..398a6a8 100755 --- a/lib/privileges.sh +++ b/lib/privileges.sh @@ -196,8 +196,29 @@ install_docker() { # Add Docker GPG key curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg - # Add Docker repository - echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null + # Add Docker repository with proper Ubuntu codename mapping for Linux Mint + local ubuntu_codename + if [[ "$(lsb_release -is)" == "LinuxMint" ]]; then + # Map Linux Mint versions to Ubuntu base versions + case "$(lsb_release -rs)" in + "22"|"22.1"|"22.2"|"22.3") + ubuntu_codename="noble" # Ubuntu 24.04 + ;; + "21"|"21.1"|"21.2"|"21.3") + ubuntu_codename="jammy" # Ubuntu 22.04 + ;; + "20"|"20.1"|"20.2"|"20.3") + ubuntu_codename="focal" # Ubuntu 20.04 + ;; + *) + ubuntu_codename="noble" # Default to latest LTS + ;; + esac + else + ubuntu_codename=$(lsb_release -cs) + fi + + echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $ubuntu_codename stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null # Update package index with Docker packages apt-get update diff --git a/privileged-setup b/privileged-setup index f96f3ff..0e9bce6 100755 --- a/privileged-setup +++ b/privileged-setup @@ -40,8 +40,29 @@ install_docker() { # Add Docker GPG key curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg - # Add Docker repository - echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null + # Add Docker repository with proper Ubuntu codename mapping for Linux Mint + local ubuntu_codename + if [[ "$(lsb_release -is)" == "LinuxMint" ]]; then + # Map Linux Mint versions to Ubuntu base versions + case "$(lsb_release -rs)" in + "22"|"22.1"|"22.2"|"22.3") + ubuntu_codename="noble" # Ubuntu 24.04 + ;; + "21"|"21.1"|"21.2"|"21.3") + ubuntu_codename="jammy" # Ubuntu 22.04 + ;; + "20"|"20.1"|"20.2"|"20.3") + ubuntu_codename="focal" # Ubuntu 20.04 + ;; + *) + ubuntu_codename="noble" # Default to latest LTS + ;; + esac + else + ubuntu_codename=$(lsb_release -cs) + fi + + echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $ubuntu_codename stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null # Update package index with Docker packages apt-get update