microsoft / linux-package-repositories

Microsoft Packaged Linux Software (DEBs, RPMs, etc) are hosted on packages.microsoft.com (PMC) made available as native Linux repositories for use with package managers like APT, YUM, etc.
https://packages.microsoft.com
MIT License
71 stars 17 forks source link

aadsshlogin for SLES and openSUSE VM images requiring wrong libsemanage.so.1 #180

Open 515k4 opened 1 month ago

515k4 commented 1 month ago

When I try install https://packages.microsoft.com/opensuse/15/prod/Packages/a/aadsshlogin-1.0.027980001-1.x86_64.rpm on openSUSE Leap 15.6 I got error: nothing provides 'libsemanage.so.1()(64bit)' needed by the to be installed aadsshlogin-1.0.027980001-1.x86_64. The same is probably true for all other openSUSE Leap versions and even for SLES images as I look into those RPM and they requires old libsemanage.so.1.

All modern Linux distros are using libsemanage.so.2, and e.g. package for Ubuntu or RHEL does indeed require libsemanage.so.2.

Can you rebuild and repack packages for SLES and openSUSE with correct libsemanage.so.2. It seems you are using outdated build image with non-standard and old SELinux.

By the way the library is not really needed for non-SELinux environment. When I rename libsemanage.so.2 to libsemanage.so.1 the package's binaries aaduseradd and aaduserdel are working normally.

As a workaround I have created fake RPM with copy of libsemanage.so.2 renamed to libsemanage.so.1 providing fake symbols libsemanage.so.1()(64bit) and libsemanage.so.1(LIBSEMANAGE_1.0)(64bit). When I installed this fake RPM to VM with openSUSE Leap 15.6 image, the aadsshlogin can be installed and works completely fine. I can even install the package via Azure Portal by adding an extension AAD SSH Login for Linux and the deployment ends with no error and login with az login and az ssh vm ... works as expected.

sdherr commented 1 month ago

Thanks for the bug report, I have alerted the appropriate team.