diff --git a/main/samba/APKBUILD b/main/samba/APKBUILD
index bc3233ec4f02a98854eb78c4200d9e7aeebe9783..5692eb80f063c0e7fa05d5bf82c17dd6e5cf02c1 100644
--- a/main/samba/APKBUILD
+++ b/main/samba/APKBUILD
@@ -1,29 +1,29 @@
 # Maintainer: Natanael Copa <ncopa@alpinelinux.org>
 pkgname=samba
 pkgver=4.12.2
-pkgrel=0
+pkgrel=1
 pkgdesc="Tools to access a server's filespace and printers via SMB"
 url="https://www.samba.org/"
 arch="all"
 license="GPL-3.0-or-later LGPL-3.0-or-later"
 subpackages="
 	$pkgname-dev $pkgname-doc $pkgname-server-openrc
+	libwbclient
+	$pkgname-util-libs:_util_libs
+
 	$pkgname-common::noarch
 	$pkgname-common-tools:_common_tools
 	$pkgname-common-server-libs:_common_server_libs
-	$pkgname-common-libs:_common_libs
 	libsmbclient
 	$pkgname-client
 	$pkgname-client-libs:_client_libs
 
 	$pkgname-winbind
-	libwbclient
 	$pkgname-winbind-clients:_winbind_clients
 	$pkgname-winbind-krb5-locator:_winbind_krb5_locator
 	$pkgname-libnss-winbind:_libnss_winbind
 	pam-winbind:_pam_winbind
 
-	$pkgname-heimdal-libs:_heimdal_libs
 	$pkgname-dc
 	$pkgname-dc-libs:_dc_libs
 
@@ -223,6 +223,7 @@ _libs_py3() {
 	return 0
 }
 
+# may depend on samba-common-server-libs but not samba-server-libs
 _common_tools() {
 	pkgdesc="Tools for Samba servers and clients"
 	depends=
@@ -238,15 +239,13 @@ _common_tools() {
 		usr/lib/$pkgname/libnet-keytab-samba4.so
 }
 
+# should not depend on client libs
 _common_server_libs() {
-	pkgdesc="Samba libraries shared by common-tools and servers"
+	pkgdesc="Samba libraries shared by common-tools and servers" # not shared with clients
 	depends=""
 	cd "$pkgdir"
 	_mv_files \
 		usr/lib/libnetapi.so.* \
-		usr/lib/libsmbldap.so.* \
-		usr/lib/$pkgname/libads-samba4.so \
-		usr/lib/$pkgname/libauth-samba4.so \
 		usr/lib/$pkgname/libdfs-server-ad-samba4.so \
 		usr/lib/$pkgname/libnpa-tstream-samba4.so \
 		usr/lib/$pkgname/libprinting-migrate-samba4.so \
@@ -256,24 +255,6 @@ _common_server_libs() {
 		usr/lib/$pkgname/pdb
 }
 
-_common_libs() {
-	pkgdesc="Samba libraries shared by common-tools, server and clients"
-	depends=""
-	cd "$pkgdir"
-	_mv_files \
-		usr/lib/$pkgname/libcli-spoolss-samba4.so \
-		usr/lib/$pkgname/libtrusts-util-samba4.so \
-		usr/lib/libdcerpc-binding.so.* \
-		usr/lib/libsamba-passdb.so.* \
-		usr/lib/$pkgname/libdcerpc-samba-samba4.so \
-		usr/lib/$pkgname/liblibcli-lsa3-samba4.so \
-		usr/lib/$pkgname/liblibcli-netlogon3-samba4.so \
-		usr/lib/$pkgname/liblibsmb-samba4.so \
-		usr/lib/$pkgname/libmsrpc3-samba4.so \
-		usr/lib/$pkgname/libndr-samba4.so \
-		usr/lib/$pkgname/libMESSAGING-SEND-samba4.so
-}
-
 libsmbclient() {
 	pkgdesc="The SMB client library"
 	depends=
@@ -282,27 +263,25 @@ libsmbclient() {
 		usr/lib/libsmbclient.so.*
 }
 
+# should only depend on samba-util-libs, libwbclient and samba-libs
 _client_libs() {
 	pkgdesc="Samba libraries used by clients"
 	depends=
 	cd "$pkgdir"
 	_mv_files \
-		usr/lib/libdcerpc.so.* \
 		usr/lib/$pkgname/libcli-ldap-samba4.so \
-		usr/lib/$pkgname/libclidns-samba4.so \
 		usr/lib/$pkgname/libcmdline-contexts-samba4.so \
 		usr/lib/$pkgname/libcmdline-credentials-samba4.so \
 		usr/lib/$pkgname/libdsdb-garbage-collect-tombstones-samba4.so \
-		usr/lib/$pkgname/libevents-samba4.so \
+		usr/lib/$pkgname/libgpo-samba4.so \
 		usr/lib/$pkgname/libhttp-samba4.so \
 		usr/lib/$pkgname/libmscat-samba4.so \
 		usr/lib/$pkgname/libnetif-samba4.so \
 		usr/lib/$pkgname/libpopt-samba3-cmdline-samba4.so \
+		usr/lib/$pkgname/libprinter-driver-samba4.so \
 		usr/lib/$pkgname/libregistry-samba4.so \
 		usr/lib/$pkgname/libsmbclient-raw-samba4.so \
-		usr/lib/$pkgname/libcom_err-samba4.so.* \
-		usr/lib/$pkgname/libgpo-samba4.so \
-		usr/lib/$pkgname/libprinter-driver-samba4.so
+		usr/lib/libdcerpc.so.*
 }
 
 client() {
@@ -336,18 +315,18 @@ client() {
 		usr/lib/$pkgname/smbspool_krb5_wrapper
 }
 
+# should not pull in samba-client-libs
 _server_libs() {
 	pkgdesc="Samba libraries shared by server and windbind"
 	depends=
 	cd "$pkgdir"
 	_mv_files \
-		usr/lib/$pkgname/libMESSAGING-samba4.so \
 		usr/lib/$pkgname/libdcerpc-samba4.so \
 		usr/lib/$pkgname/libidmap-samba4.so \
 		usr/lib/$pkgname/libnss-info-samba4.so
 }
 
-
+# should not pull in samba-client-libs
 winbind() {
 	pkgdesc="Samba user and group resolver"
 	depends="$pkgname-common=$pkgver-r$pkgrel"
@@ -362,13 +341,30 @@ winbind() {
 		"$subpkgdir"/var/cache/$pkgname/winbindd_privileged
 }
 
+# should not depend on any other samba package
+_util_libs() {
+	pkgdesc="Samba utility libraries"
+	depends=
+	cd "$pkgdir"
+	_mv_files \
+		usr/lib/libsamba-util.so.* \
+		usr/lib/$pkgname/libgenrand-samba4.so \
+		usr/lib/$pkgname/libsocket-blocking-samba4.so \
+		usr/lib/$pkgname/libsamba-debug-samba4.so \
+		usr/lib/$pkgname/libtime-basic-samba4.so \
+		usr/lib/$pkgname/libsys-rw-samba4.so \
+		usr/lib/$pkgname/libiov-buf-samba4.so \
+		usr/lib/$pkgname/libreplace-samba4.so \
+		usr/lib/$pkgname/libcom_err-samba4.so.*
+}
+
+# should only depend on samba-util-libs
 libwbclient() {
 	pkgdesc="Samba winbind client libraries"
 	depends=
 	cd "$pkgdir"
 	_mv_files \
 		usr/lib/libwbclient.so.* \
-		usr/lib/$pkgname/libreplace-samba4.so \
 		usr/lib/$pkgname/libwinbind-client-samba4.so
 }
 
@@ -454,22 +450,6 @@ _dc_libs() {
 		usr/lib/$pkgname/service
 }
 
-_heimdal_libs() {
-	pkgdesc="Samba heimdal libraries"
-	depends=
-	cd "$pkgdir"
-	_mv_files \
-		usr/lib/$pkgname/libasn1-samba4.so.* \
-		usr/lib/$pkgname/libgssapi-samba4.so.* \
-		usr/lib/$pkgname/libhcrypto-samba4.so.* \
-		usr/lib/$pkgname/libheimbase-samba4.so.* \
-		usr/lib/$pkgname/libheimntlm-samba4.so.* \
-		usr/lib/$pkgname/libhx509-samba4.so.* \
-		usr/lib/$pkgname/libkrb5-samba4.so.* \
-		usr/lib/$pkgname/libroken-samba4.so.* \
-		usr/lib/$pkgname/libwind-samba4.so.*
-}
-
 server() {
 	pkgdesc="Samba server"
 	depends="$pkgname-common=$pkgver-r$pkgrel"
@@ -516,49 +496,61 @@ _test() {
 		usr/lib/$pkgname/libtorture-samba4.so
 }
 
+# should only depend on samba-util-libs and libwbclient
 libs() {
-	pkgdesc="Samba core libraries"
+	pkgdesc="Samba core libraries shared by common-tools, server and clients"
 	depends=
 	cd "$pkgdir"
+	# heimdal libs
+	_mv_files \
+		usr/lib/$pkgname/libasn1-samba4.so.* \
+		usr/lib/$pkgname/libgssapi-samba4.so.* \
+		usr/lib/$pkgname/libhcrypto-samba4.so.* \
+		usr/lib/$pkgname/libheimbase-samba4.so.* \
+		usr/lib/$pkgname/libheimntlm-samba4.so.* \
+		usr/lib/$pkgname/libhx509-samba4.so.* \
+		usr/lib/$pkgname/libkrb5-samba4.so.* \
+		usr/lib/$pkgname/libroken-samba4.so.* \
+		usr/lib/$pkgname/libwind-samba4.so.*
+
 	_mv_files \
-		usr/lib/libndr-krb5pac.so.* \
-		usr/lib/libndr-nbt.so.* \
-		usr/lib/libndr-standard.so.* \
-		usr/lib/libndr.so.* \
-		usr/lib/libsamba-credentials.so.* \
-		usr/lib/libsamba-errors.so.* \
-		usr/lib/libsamba-hostconfig.so.* \
-		usr/lib/libsamba-util.so.* \
-		usr/lib/libsamdb.so.* \
-		usr/lib/libsmbconf.so.* \
-		usr/lib/libtevent-util.so.* \
 		usr/lib/$pkgname/libCHARSET3-samba4.so \
+		usr/lib/$pkgname/libMESSAGING-SEND-samba4.so \
+		usr/lib/$pkgname/libMESSAGING-samba4.so \
 		usr/lib/$pkgname/libaddns-samba4.so \
+		usr/lib/$pkgname/libads-samba4.so \
 		usr/lib/$pkgname/libasn1util-samba4.so \
+		usr/lib/$pkgname/libauth-samba4.so \
 		usr/lib/$pkgname/libauthkrb5-samba4.so \
 		usr/lib/$pkgname/libcli-cldap-samba4.so \
 		usr/lib/$pkgname/libcli-ldap-common-samba4.so \
 		usr/lib/$pkgname/libcli-nbt-samba4.so \
 		usr/lib/$pkgname/libcli-smb-common-samba4.so \
+		usr/lib/$pkgname/libcli-spoolss-samba4.so \
 		usr/lib/$pkgname/libcliauth-samba4.so \
-		usr/lib/$pkgname/libcommon-auth-samba4.so \
+		usr/lib/$pkgname/libclidns-samba4.so \
 		usr/lib/$pkgname/libcmocka-samba4.so \
+		usr/lib/$pkgname/libcommon-auth-samba4.so \
 		usr/lib/$pkgname/libdbwrap-samba4.so \
+		usr/lib/$pkgname/libdcerpc-samba-samba4.so \
+		usr/lib/$pkgname/libevents-samba4.so \
 		usr/lib/$pkgname/libflag-mapping-samba4.so \
-		usr/lib/$pkgname/libgenrand-samba4.so \
 		usr/lib/$pkgname/libgensec-samba4.so \
 		usr/lib/$pkgname/libgse-samba4.so \
 		usr/lib/$pkgname/libinterfaces-samba4.so \
-		usr/lib/$pkgname/libiov-buf-samba4.so \
 		usr/lib/$pkgname/libkrb5samba-samba4.so \
 		usr/lib/$pkgname/libldbsamba-samba4.so \
+		usr/lib/$pkgname/liblibcli-lsa3-samba4.so \
+		usr/lib/$pkgname/liblibcli-netlogon3-samba4.so \
+		usr/lib/$pkgname/liblibsmb-samba4.so \
 		usr/lib/$pkgname/libmessages-dgm-samba4.so \
 		usr/lib/$pkgname/libmessages-util-samba4.so \
 		usr/lib/$pkgname/libmsghdr-samba4.so \
+		usr/lib/$pkgname/libmsrpc3-samba4.so \
 		usr/lib/$pkgname/libndr-samba-samba4.so \
+		usr/lib/$pkgname/libndr-samba4.so \
 		usr/lib/$pkgname/libpopt-samba3-samba4.so \
 		usr/lib/$pkgname/libsamba-cluster-support-samba4.so \
-		usr/lib/$pkgname/libsamba-debug-samba4.so \
 		usr/lib/$pkgname/libsamba-modules-samba4.so \
 		usr/lib/$pkgname/libsamba-security-samba4.so \
 		usr/lib/$pkgname/libsamba-sockets-samba4.so \
@@ -569,16 +561,28 @@ libs() {
 		usr/lib/$pkgname/libserver-role-samba4.so \
 		usr/lib/$pkgname/libsmb-transport-samba4.so \
 		usr/lib/$pkgname/libsmbd-shim-samba4.so \
-		usr/lib/$pkgname/libsocket-blocking-samba4.so \
-		usr/lib/$pkgname/libsys-rw-samba4.so \
-		usr/lib/$pkgname/libtalloc-report-samba4.so \
 		usr/lib/$pkgname/libtalloc-report-printf-samba4.so \
+		usr/lib/$pkgname/libtalloc-report-samba4.so \
 		usr/lib/$pkgname/libtdb-wrap-samba4.so \
-		usr/lib/$pkgname/libtime-basic-samba4.so \
+		usr/lib/$pkgname/libtrusts-util-samba4.so \
 		usr/lib/$pkgname/libutil-cmdline-samba4.so \
 		usr/lib/$pkgname/libutil-reg-samba4.so \
 		usr/lib/$pkgname/libutil-setid-samba4.so \
-		usr/lib/$pkgname/libutil-tdb-samba4.so
+		usr/lib/$pkgname/libutil-tdb-samba4.so \
+		usr/lib/libdcerpc-binding.so.* \
+		usr/lib/libndr-krb5pac.so.* \
+		usr/lib/libndr-nbt.so.* \
+		usr/lib/libndr-standard.so.* \
+		usr/lib/libndr.so.* \
+		usr/lib/libsamba-credentials.so.* \
+		usr/lib/libsamba-errors.so.* \
+		usr/lib/libsamba-hostconfig.so.* \
+		usr/lib/libsamba-passdb.so.* \
+		usr/lib/libsamdb.so.* \
+		usr/lib/libsmbconf.so.* \
+		usr/lib/libsmbldap.so.* \
+		usr/lib/libtevent-util.so.*
+
 	# exit with error if some stuff stayed at main pack
 	rmdir "$pkgdir"/usr/lib/$pkgname \
 		"$pkgdir"/usr/share \