@@ -41,19 +41,23 @@ Git Credential Manager is licensed under the MIT License: https://aka.ms/gcm/lic
41
41
done
42
42
fi
43
43
44
- install_shared_packages () {
44
+ install_packages () {
45
45
pkg_manager=$1
46
46
install_verb=$2
47
+ packages=$3
47
48
48
- local shared_packages=" git curl"
49
- for package in $shared_packages ; do
49
+ for package in $packages ; do
50
50
# Ensure we don't stomp on existing installations.
51
51
if [ ! -z $( which $package ) ]; then
52
52
continue
53
53
fi
54
54
55
55
if [ $pkg_manager = apk ]; then
56
56
$sudo_cmd $pkg_manager $install_verb $package
57
+ elif [ $pkg_manager = zypper ]; then
58
+ $sudo_cmd $pkg_manager -n $install_verb $package
59
+ elif [ $pkg_manager = pacman ]; then
60
+ $sudo_cmd $pkg_manager --noconfirm $install_verb $package
57
61
else
58
62
$sudo_cmd $pkg_manager $install_verb $package -y
59
63
fi
@@ -125,7 +129,7 @@ eval "$(sed -n 's/^VERSION_ID=/version=/p' /etc/os-release | tr -d '"')"
125
129
case " $distribution " in
126
130
debian | ubuntu)
127
131
$sudo_cmd apt update
128
- install_shared_packages apt install
132
+ install_packages apt install " curl git "
129
133
130
134
# Install dotnet packages and dependencies if needed.
131
135
if [ -z " $( verify_existing_dotnet_installation) " ]; then
@@ -150,29 +154,36 @@ case "$distribution" in
150
154
fi
151
155
fi
152
156
;;
153
- linuxmint)
154
- $sudo_cmd apt update
155
- install_shared_packages apt install
156
-
157
- # Install dotnet packages and dependencies.
158
- $sudo_cmd apt install libc6 libgcc1 libgssapi-krb5-2 libssl1.1 libstdc++6 zlib1g libicu66 -y
159
- ensure_dotnet_installed
160
- ;;
161
157
fedora | centos | rhel)
162
158
$sudo_cmd dnf update -y
163
- install_shared_packages dnf install
164
159
165
160
# Install dotnet/GCM dependencies.
166
- $sudo_cmd dnf install krb5-libs libicu openssl-libs zlib findutils which bash -y
161
+ install_packages dnf install " curl git krb5-libs libicu openssl-libs zlib findutils which bash"
167
162
168
163
ensure_dotnet_installed
169
164
;;
170
165
alpine)
171
166
$sudo_cmd apk update
172
- install_shared_packages apk add
173
167
174
168
# Install dotnet/GCM dependencies.
175
- $sudo_cmd apk add icu-libs krb5-libs libgcc libintl libssl1.1 libstdc++ zlib which bash coreutils gcompat
169
+ install_packages apk add " curl git icu-libs krb5-libs libgcc libintl libssl1.1 libstdc++ zlib which bash coreutils gcompat"
170
+
171
+ ensure_dotnet_installed
172
+ ;;
173
+ sles | opensuse* )
174
+ $sudo_cmd zypper -n update
175
+
176
+ # Install dotnet/GCM dependencies.
177
+ install_packages zypper install " curl git find krb5 libicu libopenssl1_1"
178
+
179
+ ensure_dotnet_installed
180
+ ;;
181
+ arch)
182
+ # --noconfirm required when running from container
183
+ $sudo_cmd pacman -Syu --noconfirm
184
+
185
+ # Install dotnet/GCM dependencies.
186
+ install_packages pacman -Sy " curl git glibc gcc krb5 icu openssl libc++ zlib"
176
187
177
188
ensure_dotnet_installed
178
189
;;
0 commit comments