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.
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.
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 oldlibsemanage.so.1
.All modern Linux distros are using
libsemanage.so.2
, and e.g. package for Ubuntu or RHEL does indeed requirelibsemanage.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
tolibsemanage.so.1
the package's binariesaaduseradd
andaaduserdel
are working normally.As a workaround I have created fake RPM with copy of
libsemanage.so.2
renamed tolibsemanage.so.1
providing fake symbolslibsemanage.so.1()(64bit)
andlibsemanage.so.1(LIBSEMANAGE_1.0)(64bit)
. When I installed this fake RPM to VM with openSUSE Leap 15.6 image, theaadsshlogin
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 withaz login
andaz ssh vm ...
works as expected.