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.0.ebuild | 111 |
2 files changed, 112 insertions, 0 deletions
diff --git a/trinity-base/tdm/Manifest b/trinity-base/tdm/Manifest index 18b996f6..0a2863b1 100644 --- a/trinity-base/tdm/Manifest +++ b/trinity-base/tdm/Manifest @@ -1 +1,2 @@ DIST tdebase-trinity-14.0.13.tar.xz 30564196 BLAKE2B 0055a5bc7c3e5abc7df6afaf05da2d3b96cb217d191355b76e9ca19fe32c550a0d25dd281ad0d19fc0e8c074793dcfb4b15a59a53f1ff0c11d3351eb93208dcf SHA512 78328f17acb8372ce6b29d18604329191863003bf8d8b89c0bad55744c78dc3ba3f4ec7593933f5ccef4460c2267de82dff06f42fdcc1a4d8d9276c45dac7502 +DIST tdebase-trinity-14.1.0.tar.xz 30722632 BLAKE2B 1f4b87be37730aaa93fc579c130d7af7c408d20512ff8642d8313abaa7ccf6a012c8b52c595641e8ff820f709d68471224f2ceb1f898769b36e386345924b948 SHA512 8fcbb5d4bbaefc9acafa5d1926d6f22b1c087a7af63f0d9e2438c95730e82e6d6e9555afdf336bd01c296adedef5665c571d00c6738d071ed069243d47f30674 diff --git a/trinity-base/tdm/tdm-14.1.0.ebuild b/trinity-base/tdm/tdm-14.1.0.ebuild new file mode 100644 index 00000000..1787b8af --- /dev/null +++ b/trinity-base/tdm/tdm-14.1.0.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2023 Gentoo Authors +# Copyright 2020-2023 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" +TSM_EXTRACT_ALSO="translations/" +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 +} |