summaryrefslogtreecommitdiffstats
path: root/trinity-base/tdm
diff options
context:
space:
mode:
Diffstat (limited to 'trinity-base/tdm')
-rw-r--r--trinity-base/tdm/Manifest1
-rw-r--r--trinity-base/tdm/tdm-14.1.2.ebuild110
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
+}