summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--x11-misc/slim/Manifest2
-rw-r--r--x11-misc/slim/files/slim-1.3.9-config.diff49
-rw-r--r--x11-misc/slim/files/slim-1.3.9-greeter-session.diff12
-rw-r--r--x11-misc/slim/files/slim-1.4.0-config.diff48
-rw-r--r--x11-misc/slim/metadata.xml11
-rw-r--r--x11-misc/slim/slim-1.3.9.ebuild98
-rw-r--r--x11-misc/slim/slim-1.4.0.ebuild104
-rw-r--r--x11-misc/slim/slim-9999.ebuild104
8 files changed, 426 insertions, 2 deletions
diff --git a/x11-misc/slim/Manifest b/x11-misc/slim/Manifest
index d0638d550cf4..6290a51df48d 100644
--- a/x11-misc/slim/Manifest
+++ b/x11-misc/slim/Manifest
@@ -1 +1,3 @@
DIST slim-1.3.6.tar.gz 232547 BLAKE2B 3df58fa128cdf2b2ab005e8f41fccc076cfcf8adf7767075539f2b8edf51a92660b031837b3cdaccb261f1c1eb24104100317fd4e68ad0298242502d4e6bb506 SHA512 345b1dee5d6f0c3716dfa7c5c16274adbf18586bdaaa6af4f310e24c5a61f79a297ffac921a5ba545523317e9fe120916df226c36b9c9b49c2ac9c1ca21dee0c
+DIST slim-1.3.9.tar.gz 239609 BLAKE2B 41eec388b0d63bc720cb51f93707f69c4765800f4e69654fe5ebdcb280eb25775c7ed951163943b6f58884b0a9fb628e049d68a2faa7516b1f884adb080953c6 SHA512 607366a402479381858f8193db9b4da0a40eda15f4868cad9e7313b4a084390cf3cee80958f58a56d3e4383cf2fa9069960d1b20861068f921bd9ba89da7aec1
+DIST slim-1.4.0.tar.gz 530318 BLAKE2B 507f22d09a3449b870bb5fd5a5f0ab1002ceee5372c82f702582809a5fc442088c17d79fedff6712e198cee672696388479604a194e5729c7bc12139770c833d SHA512 2ef38d39e2d5186f9342161d99740b0c8cd87f234deaf550ca1528c9a61c052d26123c7da26f4a0a5e658d01cb200b115cf7879d349ed51a6e8c729ee3fdf77f
diff --git a/x11-misc/slim/files/slim-1.3.9-config.diff b/x11-misc/slim/files/slim-1.3.9-config.diff
new file mode 100644
index 000000000000..da7e69f2eccd
--- /dev/null
+++ b/x11-misc/slim/files/slim-1.3.9-config.diff
@@ -0,0 +1,49 @@
+Customize the configuration file to suit Gentoo practice
+===================================================================
+--- a/slim.conf
++++ b/slim.conf
+@@ -21,7 +21,7 @@
+
+ # Activate numlock when slim starts. Valid values: on|off
+ # Default is to not change it
+-# numlock on
++numlock on
+
+ # Hide the mouse cursor (note: does not work with some WMs).
+ # Valid values: true|false
+@@ -36,7 +36,8 @@
+ # to adjust the command according to your preferred shell,
+ # i.e. for freebsd use:
+ # login_cmd exec /bin/sh - ~/.xinitrc %session
+-login_cmd exec /bin/bash -login ~/.xinitrc %session
++# login_cmd exec /bin/bash -login ~/.xinitrc %session
++login_cmd exec /bin/bash -login /usr/share/slim/Xsession %session
+
+ # Commands executed when starting and exiting a session.
+ # They can be used for registering a X11 session with
+@@ -66,12 +67,12 @@
+ # %session is the Exec= value -- note that this may provide a full
+ # path to the session executable!
+-#sessiondir /usr/share/xsessions
++sessiondir /usr/share/xsessions
+
+
+-# Executed when pressing F11 (requires imagemagick)
++# Executed when pressing F11 (requires media-gfx/imagemagick for import)
+ screenshot_cmd import -window root /slim.png
+-# Alternative using scrot.
++# Alternative is media-gfx/scrot. See Gentoo bug 252241 for more info.
+ #screenshot_cmd scrot /root/slim.png
+
+ # welcome message. Available variables: %host, %domain
+ welcome_msg Welcome to %host
+@@ -111,8 +111,8 @@
+ # randomly choose from
+ current_theme default
+
+-# Lock file
++# Lock file, /etc/init.d/xdm expects slim.pid
+ lockfile /run/slim.pid
+
+ # Log file
+ logfile /var/log/slim.log
diff --git a/x11-misc/slim/files/slim-1.3.9-greeter-session.diff b/x11-misc/slim/files/slim-1.3.9-greeter-session.diff
new file mode 100644
index 000000000000..c9e5e256850a
--- /dev/null
+++ b/x11-misc/slim/files/slim-1.3.9-greeter-session.diff
@@ -0,0 +1,12 @@
+Fix bug #727544 by telling elogind that we're a greeter
+===================================================================
+--- a/app.cpp
++++ b/app.cpp
+@@ -290,6 +290,7 @@
+ pam.start("slim");
+ pam.set_item(PAM::Authenticator::TTY, DisplayName);
+ pam.set_item(PAM::Authenticator::Requestor, "root");
++ pam.setenv("XDG_SESSION_CLASS", "greeter");
+ }
+ catch(PAM::Exception& e){
+ logStream << APPNAME << ": " << e << endl;
diff --git a/x11-misc/slim/files/slim-1.4.0-config.diff b/x11-misc/slim/files/slim-1.4.0-config.diff
new file mode 100644
index 000000000000..1a92a66a6f43
--- /dev/null
+++ b/x11-misc/slim/files/slim-1.4.0-config.diff
@@ -0,0 +1,48 @@
+Index: slim-fork-code/slim.conf
+Customize the configuration file to suit Gentoo practice
+===================================================================
+--- a/slim.conf (revision 54)
++++ b/slim.conf (working copy)
+@@ -21,7 +21,7 @@
+
+ # Activate numlock when slim starts. Valid values: on|off
+ # Default is to not change it
+-#numlock on
++numlock on
+
+ # Hide the mouse cursor (note: does not work with some WMs).
+ # Valid values: true|false
+@@ -35,7 +35,8 @@
+ # NOTE: if your system does not have bash you need to adjust the command
+ # according to your preferred shell, e.g. for freebsd use:
+ # login_cmd exec /bin/sh - ~/.xinitrc %session
+-login_cmd exec /bin/bash -login ~/.xinitrc %session
++#login_cmd exec /bin/bash -login ~/.xinitrc %session
++login_cmd exec /bin/bash -login /usr/share/slim/Xsession %session
+
+ # Commands executed when starting and exiting a session.
+ # They can be used for registering a X11 session with
+@@ -65,11 +66,12 @@
+ # %session is the Exec= value -- note that this may provide a full
+ # path to the session executable!
+ #sessiondir /usr/share/xsessions
++sessiondir /etc/X11/Sessions
+
+
+-# Executed when pressing F11 (requires imagemagick)
++# Executed when pressing F11 (requires media-gfx/imagemagick for import)
+ screenshot_cmd import -window root /slim.png
+-# Alternative using scrot.
++# Alternative is media-gfx/scrot. See Gentoo bug 252241 for more info.
+ #screenshot_cmd scrot /root/slim.png
+
+ # Delay after failed authentication before allowing another attempt
+@@ -102,7 +104,7 @@
+ # randomly choose from
+ current_theme default
+
+-# Lock file
++# Lock file, /etc/init.d/xdm expects slim.pid
+ lockfile /run/slim.pid
+
+ # Log file - full path for a file, or just stderr (or /dev/stderr) to send
diff --git a/x11-misc/slim/metadata.xml b/x11-misc/slim/metadata.xml
index d371e5ad92eb..1505068a165e 100644
--- a/x11-misc/slim/metadata.xml
+++ b/x11-misc/slim/metadata.xml
@@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person" proxied="yes">
+ <email>bugs.gentoo@flitspace.org.uk</email>
+ <name>Robert Pearce</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<upstream>
- <remote-id type="sourceforge">slim.berlios</remote-id>
+ <remote-id type="sourceforge">slim-fork</remote-id>
</upstream>
</pkgmetadata>
diff --git a/x11-misc/slim/slim-1.3.9.ebuild b/x11-misc/slim/slim-1.3.9.ebuild
new file mode 100644
index 000000000000..e4a798f76287
--- /dev/null
+++ b/x11-misc/slim/slim-1.3.9.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake pam readme.gentoo-r1 systemd
+
+DESCRIPTION="Simple Login Manager resurrected"
+HOMEPAGE="https://slim-fork.sourceforge.io/"
+SRC_URI="mirror://sourceforge/project/${PN}-fork/${P}.tar.gz"
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="branding pam"
+
+RDEPEND="media-libs/libjpeg-turbo:=
+ media-libs/libpng:0=
+ x11-apps/sessreg
+ x11-libs/libX11
+ x11-libs/libXft
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ pam? (
+ sys-libs/pam
+ x11-libs/libXext
+ )"
+DEPEND="${RDEPEND}
+ x11-base/xorg-proto"
+BDEPEND="virtual/pkgconfig"
+PDEPEND="branding? ( >=x11-themes/slim-themes-1.2.3a-r3 )"
+
+PATCHES=(
+ # Our Gentoo-specific config changes
+ "${FILESDIR}"/${P}-config.diff
+ "${FILESDIR}"/${P}-greeter-session.diff
+)
+
+DISABLE_AUTOFORMATTING=1
+DOC_CONTENTS="
+The configuration file is located at /etc/slim.conf.
+
+If you wish ${PN} to start automatically, set DISPLAYMANAGER=\"${PN}\"
+in /etc/conf.d/display-manager and run
+
+ # rc-update add display-manager default.
+
+See also https://wiki.gentoo.org/wiki/SLiM
+"
+
+src_prepare() {
+ cmake_src_prepare
+
+ if use branding; then
+ sed -i -e '/current_theme/s/default/slim-gentoo-simple/' slim.conf || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DUSE_PAM=$(usex pam)
+ -DUSE_CONSOLEKIT=OFF
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ if use pam ; then
+ pamd_mimic system-local-login slim auth account session
+ pamd_mimic system-local-login slimlock auth
+ fi
+
+ systemd_dounit slim.service
+
+ insinto /usr/share/slim
+ newins "${FILESDIR}/Xsession-r3" Xsession
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/slim.logrotate" slim
+
+ dodoc xinitrc.sample ChangeLog README TODO THEMES
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ if ! use pam; then
+ elog "You have merged ${PN} without USE=\"pam\", this will cause ${PN} to fall back to"
+ elog "the console when restarting your window manager. If this is not desired, then"
+ elog "please remerge ${PN} with USE=\"pam\""
+ elog
+ fi
+}
diff --git a/x11-misc/slim/slim-1.4.0.ebuild b/x11-misc/slim/slim-1.4.0.ebuild
new file mode 100644
index 000000000000..a48f2bde4254
--- /dev/null
+++ b/x11-misc/slim/slim-1.4.0.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake pam readme.gentoo-r1 systemd
+
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="https://svn.code.sf.net/p/slim-fork/code/trunk"
+ inherit subversion
+else
+ SRC_URI="mirror://sourceforge/project/${PN}-fork/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+DESCRIPTION="Simple Login Manager resurrected"
+HOMEPAGE="https://slim-fork.sourceforge.io/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="branding pam"
+
+RDEPEND="media-libs/libjpeg-turbo:=
+ media-libs/libpng:0=
+ x11-apps/sessreg
+ x11-libs/libX11
+ x11-libs/libXft
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ pam? (
+ sys-libs/pam
+ x11-libs/libXext
+ )"
+DEPEND="${RDEPEND}
+ x11-base/xorg-proto"
+BDEPEND="virtual/pkgconfig"
+PDEPEND="branding? ( >=x11-themes/slim-themes-1.2.3a-r3 )"
+
+PATCHES=(
+ # Our Gentoo-specific config changes
+ "${FILESDIR}"/${PN}-1.4.0-config.diff
+)
+
+DISABLE_AUTOFORMATTING=1
+DOC_CONTENTS="
+The configuration file is located at /etc/slim.conf.
+
+If you wish ${PN} to start automatically, set DISPLAYMANAGER=\"${PN}\"
+in /etc/conf.d/display-manager and run
+
+ # rc-update add display-manager default.
+
+See also https://wiki.gentoo.org/wiki/SLiM
+"
+
+src_prepare() {
+ cmake_src_prepare
+
+ if use branding; then
+ sed -i -e '/current_theme/s/default/slim-gentoo-simple/' slim.conf || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DUSE_PAM=$(usex pam)
+ -DUSE_CONSOLEKIT=OFF
+ -DBUILD_SLIMLOCK=$(usex pam)
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ if use pam ; then
+ pamd_mimic system-local-login slim auth account session
+ pamd_mimic system-local-login slimlock auth
+ fi
+
+ systemd_dounit slim.service
+
+ insinto /usr/share/slim
+ newins "${FILESDIR}/Xsession-r3" Xsession
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/slim.logrotate" slim
+
+ dodoc xinitrc.sample ChangeLog README TODO THEMES
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ if ! use pam; then
+ elog "You have merged ${PN} without USE=\"pam\", this will cause ${PN} to fall back to"
+ elog "the console when restarting your window manager. If this is not desired, then"
+ elog "please remerge ${PN} with USE=\"pam\""
+ elog
+ fi
+}
diff --git a/x11-misc/slim/slim-9999.ebuild b/x11-misc/slim/slim-9999.ebuild
new file mode 100644
index 000000000000..a48f2bde4254
--- /dev/null
+++ b/x11-misc/slim/slim-9999.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake pam readme.gentoo-r1 systemd
+
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="https://svn.code.sf.net/p/slim-fork/code/trunk"
+ inherit subversion
+else
+ SRC_URI="mirror://sourceforge/project/${PN}-fork/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+DESCRIPTION="Simple Login Manager resurrected"
+HOMEPAGE="https://slim-fork.sourceforge.io/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="branding pam"
+
+RDEPEND="media-libs/libjpeg-turbo:=
+ media-libs/libpng:0=
+ x11-apps/sessreg
+ x11-libs/libX11
+ x11-libs/libXft
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ pam? (
+ sys-libs/pam
+ x11-libs/libXext
+ )"
+DEPEND="${RDEPEND}
+ x11-base/xorg-proto"
+BDEPEND="virtual/pkgconfig"
+PDEPEND="branding? ( >=x11-themes/slim-themes-1.2.3a-r3 )"
+
+PATCHES=(
+ # Our Gentoo-specific config changes
+ "${FILESDIR}"/${PN}-1.4.0-config.diff
+)
+
+DISABLE_AUTOFORMATTING=1
+DOC_CONTENTS="
+The configuration file is located at /etc/slim.conf.
+
+If you wish ${PN} to start automatically, set DISPLAYMANAGER=\"${PN}\"
+in /etc/conf.d/display-manager and run
+
+ # rc-update add display-manager default.
+
+See also https://wiki.gentoo.org/wiki/SLiM
+"
+
+src_prepare() {
+ cmake_src_prepare
+
+ if use branding; then
+ sed -i -e '/current_theme/s/default/slim-gentoo-simple/' slim.conf || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DUSE_PAM=$(usex pam)
+ -DUSE_CONSOLEKIT=OFF
+ -DBUILD_SLIMLOCK=$(usex pam)
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ if use pam ; then
+ pamd_mimic system-local-login slim auth account session
+ pamd_mimic system-local-login slimlock auth
+ fi
+
+ systemd_dounit slim.service
+
+ insinto /usr/share/slim
+ newins "${FILESDIR}/Xsession-r3" Xsession
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/slim.logrotate" slim
+
+ dodoc xinitrc.sample ChangeLog README TODO THEMES
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ if ! use pam; then
+ elog "You have merged ${PN} without USE=\"pam\", this will cause ${PN} to fall back to"
+ elog "the console when restarting your window manager. If this is not desired, then"
+ elog "please remerge ${PN} with USE=\"pam\""
+ elog
+ fi
+}