diff options
Diffstat (limited to 'trinity-base/tdm')
-rw-r--r-- | trinity-base/tdm/Manifest | 1 | ||||
-rw-r--r-- | trinity-base/tdm/tdm-14.1.2.ebuild | 110 |
2 files changed, 111 insertions, 0 deletions
diff --git a/trinity-base/tdm/Manifest b/trinity-base/tdm/Manifest index 623b3cf4..d937bfda 100644 --- a/trinity-base/tdm/Manifest +++ b/trinity-base/tdm/Manifest @@ -1 +1,2 @@ DIST tdebase-trinity-14.1.1.tar.xz 30746484 BLAKE2B 4d2fdd9e3f5007c7482e938badad381a3e314b458b262dd346c05c91a9a4b974d8f1244152b833a34f7edad246bd4a8af0e054279a1556cebac6319a1a011a09 SHA512 d733f20719a0c9a949540e95f4d60fe03e096efbd7ac54187c5ee9b9f9b644318ee2dd9c8fd0d2e6eee660f7a7ad827e66bc06fb9a36c9e56e3ae16bdd47910c +DIST tdebase-trinity-14.1.2.tar.xz 30747536 BLAKE2B c3e23974735410e3f1276d4d7314bdc0801df5e02758d1a032499b0b1a965dfd8a5f6c5dc58f543a1f1fba9d0cf77b89483eb62df8a3a95ca954ed6e48b3ea9d SHA512 bf04541c15b345a615bf4c8f463c7af559ab17fea7b5ae399164d77c365d869fd211060448fb39c47df09beafb3edfbbe7b15ae140c239a8321f35d7dc16af95 diff --git a/trinity-base/tdm/tdm-14.1.2.ebuild b/trinity-base/tdm/tdm-14.1.2.ebuild new file mode 100644 index 00000000..8e37f63f --- /dev/null +++ b/trinity-base/tdm/tdm-14.1.2.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2024 Gentoo Authors +# Copyright 2020-2024 The Trinity Desktop Project +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +TRINITY_MODULE_NAME="tdebase" +TRINITY_MODULE_TYPE="core" +inherit linux-info trinity-meta-2 + +DESCRIPTION="Trinity login manager, similar to XDM and GDM" +if [[ ${PV} != *9999* ]] ; then + KEYWORDS="~amd64 ~arm64 ~x86" +fi +IUSE="+hwlib pam sak +svg xcomposite xdmcp +xrandr" + +DEPEND=" + sys-apps/dbus + ~trinity-base/kcontrol-${PV} + ~trinity-base/tdelibs-${PV}[xrandr?] + x11-libs/libXtst + pam? ( trinity-base/tdebase-pam ) + svg? ( media-libs/libart_lgpl ) + xcomposite? ( x11-libs/libXcomposite ) + xdmcp? ( x11-libs/libXdmcp ) +" +RDEPEND="${DEPEND} + ~trinity-base/tdepasswd-${PV} + x11-apps/xinit + x11-apps/xmessage" + +pkg_setup() { + trinity-meta-2_pkg_setup + use sak && TRINITY_SUBMODULE+=" tsak" +} + +src_configure() { + local mycmakeargs=( + -DWITH_XTEST=ON + -DWITH_SHADOW=ON + -DWITH_LIBART="$(usex svg)" + -DWITH_XCOMPOSITE="$(usex xcomposite)" + -DWITH_XDMCP="$(usex xdmcp)" + -DWITH_XRANDR="$(usex xrandr)" + -DWITH_TDEHWLIB="$(usex hwlib)" + -DWITH_PAM="$(usex pam)" + -DTDM_PAM_SERVICE=tde + ) + + trinity-meta-2_src_configure +} + +src_install() { + trinity-meta-2_src_install + + # Customize the tdmrc configuration + sed -i -e "s:#SessionsDirs=:SessionsDirs=/usr/share/xsessions\n#SessionsDirs=:" \ + "${D}/${TDEDIR}/share/config/tdm/tdmrc" || die "sed tdmrc failed" + + # Install XSession upstream script seems to be debian-cpecific + cp "${FILESDIR}/${PN}-14.0.8-xsession.script" "${D}/${TDEDIR}/share/config/tdm/Xsession" || die + sed -i -e "s!@TRINITY_INSTALL_PATH@!${TDEDIR}!" "${D}/${TDEDIR}/share/config/tdm/Xsession" \ + || die "sed tdmrc failed" +} + +pkg_postinst() { + # Set the default TDM face icon if it's not already set by the system admin + # because this is user-overrideable in that way, it's not in src_install + if [[ ! -e "${ROOT}${TDEDIR}/share/apps/tdm/faces/.default.face.icon" ]]; then + mkdir -p "${ROOT}${TDEDIR}/share/apps/tdm/faces" || die + cp "${ROOT}${TDEDIR}/share/apps/tdm/pics/users/default1.png" \ + "${ROOT}${TDEDIR}/share/apps/tdm/faces/.default.face.icon" || die + fi + if [[ ! -e "${ROOT}${TDEDIR}/share/apps/tdm/faces/root.face.icon" ]]; then + mkdir -p "${ROOT}${TDEDIR}/share/apps/tdm/faces" || die + cp "${ROOT}${TDEDIR}/share/apps/tdm/pics/users/root1.png" \ + "${ROOT}${TDEDIR}/share/apps/tdm/faces/root.face.icon" || die + fi + + if use sak; then + sak_ok=yes + if ! linux_config_exists; then + ewarn "Can't check the linux kernel configuration." + ewarn "You might have some incompatible options enabled." + sak_ok=no + else + if ! linux_chkconfig_present INPUT_UINPUT; then + eerror "You have built tdm with the Secure Attention Key (SAK) feature enabled." + eerror "It requires INPUT_UINPUT support to be enabled in the kernel." + eerror "Please enable it:" + eerror " CONFIG_INPUT_UINPUT=y" + eerror "in /usr/src/linux/.config or" + eerror " Device Drivers --->" + eerror " Input device support --->" + eerror " [*] Miscellaneous devices --->" + eerror " <*> User level driver support" + sak_ok=no + fi + fi + if [[ "$sak_ok" != yes ]]; then + sed -i -e 's:#\?\s*UseSAK=\(true\|false\)\?:UseSAK=false:' \ + "${ROOT}${TDEDIR}/share/config/tdm/tdmrc" || die "sed tdmrc failed" + ewarn "SAK feature is disabled. You can enable it yourself by setting UseSAK=true" + ewarn "in ${TDEDIR}/share/config/tdm/tdmrc " + else + ewarn "SAK feature is enabled. You can disable it yourself by setting UseSAK=false" + ewarn "in ${TDEDIR}/share/config/tdm/tdmrc " + fi + fi +} |