Initial commit

This commit is contained in:
Your Name
2026-04-23 17:07:55 +08:00
commit b7e39e063b
16725 changed files with 1625565 additions and 0 deletions
@@ -0,0 +1,26 @@
From 8f3ace87df3aaad85946c22cae240532ea3e73b8 Mon Sep 17 00:00:00 2001
From: Saul Wold <sgw@linux.intel.com>
Date: Fri, 29 Apr 2022 13:32:27 +0000
Subject: [PATCH] Add a shutdown group
We need to have a shutdown group to allow the shutdown icon to work
correctly. Any users that want to use shutdown like the xuser should
be added to this group.
Upstream-Status: Inappropriate [Embedded]
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
group.master | 1 +
1 file changed, 1 insertion(+)
diff --git a/group.master b/group.master
index ad1dd2d..1b5e2fb 100644
--- a/group.master
+++ b/group.master
@@ -35,5 +35,6 @@ sasl:*:45:
plugdev:*:46:
staff:*:50:
games:*:60:
+shutdown:*:70:
users:*:100:
nogroup:*:65534:
@@ -0,0 +1,23 @@
From 4411fc0df77566d52bee11ec0bad4be30a96e99e Mon Sep 17 00:00:00 2001
From: Scott Garman <scott.a.garman@intel.com>
Date: Fri, 29 Apr 2022 13:32:27 +0000
Subject: [PATCH] Use /bin/sh instead of /bin/bash for the root user
/bin/bash may not be included in some images such as minimal.
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
---
passwd.master | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/passwd.master b/passwd.master
index 7cd4e24..041685a 100644
--- a/passwd.master
+++ b/passwd.master
@@ -1,4 +1,4 @@
-root:*:0:0:root:/root:/bin/bash
+root:*:0:0:root:/root:/bin/sh
daemon:*:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:*:2:2:bin:/bin:/usr/sbin/nologin
sys:*:3:3:sys:/dev:/usr/sbin/nologin
@@ -0,0 +1,21 @@
From 13a1a284a134d18a454625a5b4485c0d99079ae9 Mon Sep 17 00:00:00 2001
From: Scott Garman <scott.a.garman@intel.com>
Date: Fri, 29 Apr 2022 13:32:28 +0000
Subject: [PATCH] Remove "*" for root since we do not have an /etc/shadow
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
---
passwd.master | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/passwd.master b/passwd.master
index 041685a..31a84d4 100644
--- a/passwd.master
+++ b/passwd.master
@@ -1,4 +1,4 @@
-root:*:0:0:root:/root:/bin/sh
+root::0:0:root:/root:/bin/sh
daemon:*:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:*:2:2:bin:/bin:/usr/sbin/nologin
sys:*:3:3:sys:/dev:/usr/sbin/nologin
@@ -0,0 +1,23 @@
From c5f012750f8102ff54af73ccc2d2b7bfa1f26db4 Mon Sep 17 00:00:00 2001
From: Darren Hart <dvhart@linux.intel.com>
Date: Fri, 29 Apr 2022 13:32:28 +0000
Subject: [PATCH] Add an input group for the /dev/input/* devices
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
group.master | 1 +
1 file changed, 1 insertion(+)
diff --git a/group.master b/group.master
index 1b5e2fb..cea9d60 100644
--- a/group.master
+++ b/group.master
@@ -12,6 +12,7 @@ uucp:*:10:
man:*:12:
proxy:*:13:
kmem:*:15:
+input:*:19:
dialout:*:20:
fax:*:21:
voice:*:22:
@@ -0,0 +1,23 @@
From 6cf19461fb31d7a7a3010629aae9aab49c26a01b Mon Sep 17 00:00:00 2001
From: Jacob Kroon <jacob.kroon@gmail.com>
Date: Wed, 30 Jan 2019 04:53:48 +0000
Subject: [PATCH] Add kvm group
Upstream-Status: Pending
Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
---
group.master | 1 +
1 file changed, 1 insertion(+)
diff --git a/group.master b/group.master
index cea9d60..5b62284 100644
--- a/group.master
+++ b/group.master
@@ -34,6 +34,7 @@ utmp:*:43:
video:*:44:
sasl:*:45:
plugdev:*:46:
+kvm:*:47:
staff:*:50:
games:*:60:
shutdown:*:70:
@@ -0,0 +1,35 @@
From 25e3bf09bbbb04aa930ea0fd9f28809a24fb7194 Mon Sep 17 00:00:00 2001
From: Peter Kjellerstedt <pkj@axis.com>
Date: Sun, 2 Oct 2022 17:47:29 +0200
Subject: [PATCH] Make it possible to configure whether to use SELinux or not
Upstream-Status: Backport [https://salsa.debian.org/debian/base-passwd/-/commit/396c41bb35e03c5dcc727aa9f74218a45874ac1f]
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
---
configure.ac | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 589df88..e46403b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -13,7 +13,18 @@ AC_SYS_LARGEFILE
dnl Scan for things we need
AC_CHECK_FUNCS([putgrent])
-AC_CHECK_LIB([selinux], [is_selinux_enabled])
+
+dnl Check for SELinux
+AC_MSG_CHECKING([whether to enable SELinux support])
+AC_ARG_ENABLE([selinux],
+ [AS_HELP_STRING([--disable-selinux], [disable support for SELinux])],
+ [],
+ [enable_selinux=yes])
+AC_MSG_RESULT($enable_selinux)
+AS_IF([test "x$enable_selinux" != xno],
+ [AC_CHECK_LIB([selinux], [is_selinux_enabled], [],
+ [AC_MSG_ERROR(
+ [SELinux support not available (use --disable-selinux to disable)])])])
dnl Check for debconf
AC_MSG_CHECKING([whether to enable debconf support])
@@ -0,0 +1,20 @@
We need to have a wheel group which has some system privileges to consult the
systemd journal or manage printers with cups.
Upstream says the group does not exist by default.
Upstream-Status: Inappropriate [enable feature]
Signed-off-by: Louis Rannou <lrannou@baylibre.com>
Index: base-passwd-3.5.26/group.master
===================================================================
--- base-passwd-3.5.29.orig/group.master
+++ base-passwd-3.5.29/group.master
@@ -38,5 +38,6 @@
staff:*:50:
games:*:60:
shutdown:*:70:
+wheel:*:80:
users:*:100:
nogroup:*:65534:
@@ -0,0 +1,125 @@
SUMMARY = "Base system master password/group files"
DESCRIPTION = "The master copies of the user database files (/etc/passwd and /etc/group). The update-passwd tool is also provided to keep the system databases synchronized with these master files."
HOMEPAGE = "https://launchpad.net/base-passwd"
SECTION = "base"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a"
SRC_URI = "https://launchpad.net/debian/+archive/primary/+files/${BPN}_${PV}.tar.xz \
file://0001-Add-a-shutdown-group.patch \
file://0002-Use-bin-sh-instead-of-bin-bash-for-the-root-user.patch \
file://0003-Remove-for-root-since-we-do-not-have-an-etc-shadow.patch \
file://0004-Add-an-input-group-for-the-dev-input-devices.patch \
file://0005-Add-kvm-group.patch \
file://0006-Make-it-possible-to-configure-whether-to-use-SELinux.patch \
file://0007-Add-wheel-group.patch \
"
SRC_URI[sha256sum] = "6ff369be59d586ba63c0c5fcb00f75f9953fe49db88bc6c6428f2c92866f79af"
# the package is taken from launchpad; that source is static and goes stale
# so we check the latest upstream from a directory that does get updated
UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/b/base-passwd/"
S = "${WORKDIR}/work"
PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)}"
PACKAGECONFIG[selinux] = "--enable-selinux, --disable-selinux, libselinux"
inherit autotools
EXTRA_OECONF += "--disable-debconf --disable-docs"
NOLOGIN ?= "${base_sbindir}/nologin"
do_install () {
install -d -m 755 ${D}${sbindir}
install -o root -g root -p -m 755 ${B}/update-passwd ${D}${sbindir}/
install -d -m 755 ${D}${mandir}/man8 ${D}${mandir}/pl/man8
install -p -m 644 ${S}/man/update-passwd.8 ${D}${mandir}/man8/
install -p -m 644 ${S}/man/update-passwd.pl.8 \
${D}${mandir}/pl/man8/update-passwd.8
gzip -9 ${D}${mandir}/man8/* ${D}${mandir}/pl/man8/*
install -d -m 755 ${D}${datadir}/base-passwd
install -o root -g root -p -m 644 ${S}/passwd.master ${D}${datadir}/base-passwd/
sed -i 's#:/root:#:${ROOT_HOME}:#' ${D}${datadir}/base-passwd/passwd.master
sed -i 's#/usr/sbin/nologin#${NOLOGIN}#' ${D}${datadir}/base-passwd/passwd.master
install -o root -g root -p -m 644 ${S}/group.master ${D}${datadir}/base-passwd/
install -d -m 755 ${D}${docdir}/${BPN}
install -p -m 644 ${S}/debian/changelog ${D}${docdir}/${BPN}/
gzip -9 ${D}${docdir}/${BPN}/*
install -p -m 644 ${S}/README ${D}${docdir}/${BPN}/
install -p -m 644 ${S}/debian/copyright ${D}${docdir}/${BPN}/
}
basepasswd_sysroot_postinst() {
#!/bin/sh
# Install passwd.master and group.master to sysconfdir
install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir}
for i in passwd group; do
install -p -m 644 ${STAGING_DIR_TARGET}${datadir}/base-passwd/\$i.master \
${STAGING_DIR_TARGET}${sysconfdir}/\$i
done
# Run any useradd postinsts
for script in ${STAGING_DIR_TARGET}${bindir}/postinst-useradd-*; do
if [ -f \$script ]; then
\$script
fi
done
}
SYSROOT_DIRS += "${sysconfdir}"
SYSROOT_PREPROCESS_FUNCS += "base_passwd_tweaksysroot"
base_passwd_tweaksysroot () {
mkdir -p ${SYSROOT_DESTDIR}${bindir}
dest=${SYSROOT_DESTDIR}${bindir}/postinst-${PN}
echo "${basepasswd_sysroot_postinst}" > $dest
chmod 0755 $dest
}
python populate_packages:prepend() {
# Add in the preinst function for ${PN}
# We have to do this here as prior to this, passwd/group.master
# would be unavailable. We need to create these files at preinst
# time before the files from the package may be available, hence
# storing the data from the files in the preinst directly.
f = open(d.expand("${STAGING_DATADIR}/base-passwd/passwd.master"), 'r')
passwd = "".join(f.readlines())
f.close()
f = open(d.expand("${STAGING_DATADIR}/base-passwd/group.master"), 'r')
group = "".join(f.readlines())
f.close()
preinst = """#!/bin/sh
mkdir -p $D${sysconfdir}
if [ ! -e $D${sysconfdir}/passwd ]; then
\tcat << 'EOF' > $D${sysconfdir}/passwd
""" + passwd + """EOF
fi
if [ ! -e $D${sysconfdir}/group ]; then
\tcat << 'EOF' > $D${sysconfdir}/group
""" + group + """EOF
fi
"""
d.setVar(d.expand('pkg_preinst:${PN}'), preinst)
}
addtask do_package after do_populate_sysroot
ALLOW_EMPTY:${PN} = "1"
PACKAGES =+ "${PN}-update"
FILES:${PN}-update = "${sbindir}/* ${datadir}/${PN}"
pkg_postinst:${PN}-update () {
#!/bin/sh
if [ -n "$D" ]; then
exit 0
fi
${sbindir}/update-passwd
}