diff options
Diffstat (limited to 'net-fs/ksmbd-tools/ksmbd-tools-3.5.2.ebuild')
-rw-r--r-- | net-fs/ksmbd-tools/ksmbd-tools-3.5.2.ebuild | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/net-fs/ksmbd-tools/ksmbd-tools-3.5.2.ebuild b/net-fs/ksmbd-tools/ksmbd-tools-3.5.2.ebuild new file mode 100644 index 000000000000..c8ff8da17db4 --- /dev/null +++ b/net-fs/ksmbd-tools/ksmbd-tools-3.5.2.ebuild @@ -0,0 +1,70 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-info meson systemd + +DESCRIPTION="cifsd/ksmbd kernel server userspace utilities" +HOMEPAGE="https://github.com/cifsd-team/ksmbd-tools" +SRC_URI="https://github.com/cifsd-team/ksmbd-tools/releases/download/${PV}/${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64" + +DEPEND=" + dev-libs/glib:2 + dev-libs/libnl:3 +" + +RDEPEND="${DEPEND}" +BDEPEND="virtual/pkgconfig" + +pkg_setup() { + # we don't want to die() here to be able to build binpkgs + kernel_is -lt 5 15 && eerror "kernel >= 5.15 required for ${PN}" + CONFIG_CHECK="~SMB_SERVER" + ERROR_SMB_SERVER="CONFIG_SMB_SERVER is not set: ksmbd is not enabled in kernel, ${PN} will not work" + # use krb5 && CONFIG_CHECK+=" ~SMB_SERVER_KERBEROS5" + linux-info_pkg_setup +} + +src_configure() { + local emesonargs=( + -Drundir="${EPREFIX}"/run + -Dsystemdsystemunitdir="$(systemd_get_systemunitdir)" + # TODO: add kerberos support, explicitly disable for now + -Dkrb5=disabled + ) + + meson_src_configure +} + +src_install() { + meson_src_install + + local DOCS=( README.md ksmbd.conf.example ) + einstalldocs + + insinto /etc/ksmbd + doins ksmbd.conf.example + + newinitd "${FILESDIR}/ksmbd.initd-r1" ksmbd + newconfd "${FILESDIR}/ksmbd.confd" ksmbd + + dosym ksmbd.addshare /usr/sbin/smbshareadd + dosym ksmbd.adduser /usr/sbin/smbuseradd +} + +pkg_postinst() { + local ver + for ver in ${REPLACING_VERSIONS}; do + if ver_test ${ver} -lt 3.4.6; then + ewarn "Upgrade from version <${CATEGORY}/${PN}-3.4.6 detected" + ewarn "${PN} config file moved to ${EPREFIX}/etc/ksmbd/ksmbd.conf" + ewarn "Please migrate from old ${EPREFIX}/etc/ksmbd/smb.conf" + fi + done + unset ver +} |