From 48ca75555522716f0f686dcae3dd6cf3d8ad714d Mon Sep 17 00:00:00 2001
From: davidovski <david@davidovski.xyz>
Date: Tue, 31 May 2022 11:05:19 +0100
Subject: removed idea of repos

---
 repo/elogind/elogind.initd         | 23 ++++++++++
 repo/elogind/elogind.xibuild       | 92 ++++++++++++++++++++++++++++++++++++++
 repo/elogind/id-nobody.patch       | 13 ++++++
 repo/elogind/mips.patch            | 11 +++++
 repo/elogind/ppc64-bad-tuple.patch | 25 +++++++++++
 repo/elogind/ppcle.patch           | 25 +++++++++++
 6 files changed, 189 insertions(+)
 create mode 100644 repo/elogind/elogind.initd
 create mode 100644 repo/elogind/elogind.xibuild
 create mode 100644 repo/elogind/id-nobody.patch
 create mode 100644 repo/elogind/mips.patch
 create mode 100644 repo/elogind/ppc64-bad-tuple.patch
 create mode 100644 repo/elogind/ppcle.patch

(limited to 'repo/elogind')

diff --git a/repo/elogind/elogind.initd b/repo/elogind/elogind.initd
new file mode 100644
index 0000000..0c22ca9
--- /dev/null
+++ b/repo/elogind/elogind.initd
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+name="System login manager"
+description="System service that manages user logins"
+description_reload="Reload configuration without exiting"
+
+command=/usr/libexec/elogind/elogind
+
+depend() {
+	need dbus
+
+	# Make sure we start before any other display manager
+	before display-manager
+}
+
+extra_started_commands="reload"
+
+reload() {
+	ebegin "Reloading configuration"
+	$supervisor $RC_SVCNAME --signal HUP
+	eend $?
+}
diff --git a/repo/elogind/elogind.xibuild b/repo/elogind/elogind.xibuild
new file mode 100644
index 0000000..d974c90
--- /dev/null
+++ b/repo/elogind/elogind.xibuild
@@ -0,0 +1,92 @@
+#!/bin/sh
+
+MAKEDEPS="make docbook4-xml docbook-xsl docbook-dtd libxslt util-linux glib acl m4"
+DEPS="pam gperf eudev"
+
+PKG_VER=246.10
+SOURCE=https://github.com/elogind/elogind/archive/v$PKG_VER/elogind-$PKG_VER.tar.gz
+ADDITIONAL="
+id-nobody.patch
+mips.patch
+ppc64-bad-tuple.patch
+ppcle.patch
+elogind.initd
+"
+DESC="The standalone logind daemon"
+
+prepare () {
+    sed -i '/Disable polkit/,+8 d' meson.build
+    
+    for p in *.patch; do
+        patch -Np1 -i $p
+    done
+
+    # skip the check that the source tree is "too far"
+    # (the assert_cc line)
+    sed -i '83d' src/basic/log.h
+
+    # remove -v options
+    sed -i 's/-v/-/g' tools/meson-symlink_headers.sh
+}
+
+build () {
+    # TODO re-enable BUILD_MANS
+    meson \
+		-Dcgroup-controller=elogind \
+		-Dhalt-path=/sbin/halt \
+		-Drootlibexecdir=/usr/libexec/elogind \
+		-Dreboot-path=/sbin/reboot \
+		-Ddefault-hierarchy=hybrid \
+		-Ddefault-kill-user-processes=false \
+		-Dpolkit=false \
+		-Dman=false \
+		build
+
+    ninja -C build
+
+}
+
+package () {
+    DESTDIR="$PKG_DEST" meson install --no-rebuild -C build
+
+    ln -sf  libelogind.pc $PKG_DEST/usr/lib/pkgconfig/libsystemd.pc &&
+    ln -sf  elogind $PKG_DEST/usr/include/systemd
+
+    install -Dm755 elogind.initd $PKG_DEST/etc/init.d/elogind
+
+
+    sed -e '/\[Login\]/a KillUserProcesses=no' \
+    -i $PKG_DEST/etc/elogind/logind.conf
+
+    cat >> $PKG_DEST/etc/pam.d/system-session << "EOF" &&
+# Begin elogind addition
+
+session  required    pam_loginuid.so
+session  optional    pam_elogind.so
+
+# End elogind addition
+EOF
+    cat > $PKG_DEST/etc/pam.d/elogind-user << "EOF"
+# Begin /etc/pam.d/elogind-user
+
+account  required    pam_access.so
+account  include     system-account
+
+session  required    pam_env.so
+session  required    pam_limits.so
+session  required    pam_unix.so
+session  required    pam_loginuid.so
+session  optional    pam_keyinit.so force revoke
+session  optional    pam_elogind.so
+
+auth     required    pam_deny.so
+password required    pam_deny.so
+
+# End /etc/pam.d/elogind-user
+EOF
+
+}
+
+postinstall () {
+    rc-update add elogind
+}
diff --git a/repo/elogind/id-nobody.patch b/repo/elogind/id-nobody.patch
new file mode 100644
index 0000000..5e9e5cd
--- /dev/null
+++ b/repo/elogind/id-nobody.patch
@@ -0,0 +1,13 @@
+--- a/src/basic/user-util.h
++++ b/src/basic/user-util.h
+@@ -70,8 +70,8 @@ int take_etc_passwd_lock(const char *root);
+ #define UID_INVALID ((uid_t) -1)
+ #define GID_INVALID ((gid_t) -1)
+ 
+-#define UID_NOBODY ((uid_t) 65534U)
+-#define GID_NOBODY ((gid_t) 65534U)
++#define UID_NOBODY ((uid_t) 99U)
++#define GID_NOBODY ((gid_t) 99U)
+ 
+ #define ETC_PASSWD_LOCK_PATH "/etc/.pwd.lock"
+ 
diff --git a/repo/elogind/mips.patch b/repo/elogind/mips.patch
new file mode 100644
index 0000000..ca1c097
--- /dev/null
+++ b/repo/elogind/mips.patch
@@ -0,0 +1,11 @@
+--- a/src/basic/missing_syscall.h	2021-01-15 08:12:02.000000000 +0100
++++ b/src/basic/missing_syscall.h	2021-02-24 07:20:32.026355819 +0100
+@@ -11,7 +11,7 @@
+ #include <sys/wait.h>
+ #include <unistd.h>
+ 
+-#ifdef ARCH_MIPS
++#if defined(_MIPSEL) || defined(_MIPSEB)
+ #include <asm/sgidefs.h>
+ #endif
+ 
diff --git a/repo/elogind/ppc64-bad-tuple.patch b/repo/elogind/ppc64-bad-tuple.patch
new file mode 100644
index 0000000..f6237ff
--- /dev/null
+++ b/repo/elogind/ppc64-bad-tuple.patch
@@ -0,0 +1,25 @@
+From 0ce8ef86e8bfc872b40bc090fea9873fa1f51836 Mon Sep 17 00:00:00 2001
+From: q66 <daniel@octaforge.org>
+Date: Thu, 21 Jan 2021 22:22:28 +0100
+Subject: [PATCH] fix ppc64 arch tuple
+
+---
+ src/basic/architecture.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git src/basic/architecture.h src/basic/architecture.h
+index 620b522..3ea6e52 100644
+--- a/src/basic/architecture.h
++++ b/src/basic/architecture.h
+@@ -77,7 +77,7 @@ int uname_architecture(void);
+ #elif defined(__powerpc64__)
+ #  if __BYTE_ORDER == __BIG_ENDIAN
+ #    define native_architecture() ARCHITECTURE_PPC64
+-#    define LIB_ARCH_TUPLE "ppc64-linux-gnu"
++#    define LIB_ARCH_TUPLE "powerpc64-linux-gnu"
+ #    define SECONDARY_ARCHITECTURE ARCHITECTURE_PPC
+ #  else
+ #    define native_architecture() ARCHITECTURE_PPC64_LE
+-- 
+2.30.0
+
diff --git a/repo/elogind/ppcle.patch b/repo/elogind/ppcle.patch
new file mode 100644
index 0000000..b986b0f
--- /dev/null
+++ b/repo/elogind/ppcle.patch
@@ -0,0 +1,25 @@
+From 836f3efb84a703b3594906572a54616d25cecf5e Mon Sep 17 00:00:00 2001
+From: q66 <daniel@octaforge.org>
+Date: Thu, 21 Jan 2021 21:59:12 +0100
+Subject: [PATCH] add ppcle arch tuple
+
+---
+ src/basic/architecture.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git src/basic/architecture.h src/basic/architecture.h
+index 620b522..afdff7a 100644
+--- a/src/basic/architecture.h
++++ b/src/basic/architecture.h
+@@ -94,7 +94,7 @@ int uname_architecture(void);
+ #    endif
+ #  else
+ #    define native_architecture() ARCHITECTURE_PPC_LE
+-#    error "Missing LIB_ARCH_TUPLE for PPCLE"
++#    define LIB_ARCH_TUPLE "powerpcle-linux-gnu"
+ #  endif
+ #elif defined(__ia64__)
+ #  define native_architecture() ARCHITECTURE_IA64
+-- 
+2.30.0
+
-- 
cgit v1.2.1