diff --git a/scripts/docker/install/rootless/rootless_docker.sh b/scripts/docker/install/rootless/rootless_docker.sh index 96416d8..bc244bc 100755 --- a/scripts/docker/install/rootless/rootless_docker.sh +++ b/scripts/docker/install/rootless/rootless_docker.sh @@ -35,9 +35,12 @@ installDockerRootless() checkSuccess "Installing slirp4netns" else isNotice "slirp4netns is already installed" - installed_version=$(slirp4netns --version | awk '{print $2}') + # `slirp4netns --version` prints several lines (version, commit, libslirp, + # SLIRP_CONFIG_VERSION_MAX); read only the first line and take the version field. + installed_version=$(slirp4netns --version | head -n1 | awk '{print $3}') latest_version=$(curl -s https://api.github.com/repos/rootless-containers/slirp4netns/releases/latest | grep tag_name | cut -d '"' -f 4) - if [[ "$installed_version" != "$latest_version" ]]; then + latest_version=${latest_version#v} # GitHub tags are vX.Y.Z; strip the v to compare + if [[ -n "$latest_version" && "$installed_version" != "$latest_version" ]]; then isNotice "slirp4netns version $installed_version is outdated." isNotice "Installing version $latest_version..." local result; result=$(runSystem apt-get update)