diff --git a/system/base/pam/actions.py b/system/base/pam/actions.py index 87501c79..c22fd71e 100644 --- a/system/base/pam/actions.py +++ b/system/base/pam/actions.py @@ -10,41 +10,35 @@ from pisi.actionsapi import shelltools from pisi.actionsapi import get def setup(): - shelltools.touch("ChangeLog") pisitools.flags.add("-fPIC -D_GNU_SOURCE") - - shelltools.system("./conf.sh") - - autotools.autoreconf("-fi") - autotools.configure("--libdir=/usr/lib \ - --enable-nls \ + shelltools.system("sed -e /service_DATA/d \ + -i modules/pam_namespace/Makefile.am && NOCONFIGURE=1 ./autogen.sh") + + shelltools.system("./pisi-pambase.sh") + + autotools.configure("--prefix=/usr \ + --sysconfdir=/etc \ + --libdir=/usr/lib \ + --disable-regenerate-docu \ --disable-doc \ - --disable-audit \ - --enable-usergroups \ --enable-securedir=/lib/security \ - --enable-isadir=/lib/security") - - pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ") + --docdir=/usr/share/doc/Linux-PAM-" + get.srcVERSION()) def build(): - # Update .po files - autotools.make("-C po update-gmo") - autotools.make() def check(): autotools.make("check") - # dlopen check - shelltools.system("./dlopen-test.sh") - pass - def install(): autotools.rawInstall("DESTDIR=%s" % get.installDIR()) - + #pisitools.removeDir("/usr/share/doc/Linux-PAM/") - for f in ["system-password", "system-session", "system-account"]: + for f in ["system-password", "system-session", "system-account", "system-auth", "other"]: + shelltools.system("chmod 755 " + f) pisitools.insinto("/etc/pam.d/", "%s" % f) - + + shelltools.system("chmod -v 4755 " + get.installDIR() + "/sbin/unix_chkpwd") + #pisitools.doman("doc/man/*.[0-9]") pisitools.dodoc("CHANGELOG", "Copyright", "README") diff --git a/system/base/pam/files/conf.sh b/system/base/pam/files/pisi-pambase.sh similarity index 93% rename from system/base/pam/files/conf.sh rename to system/base/pam/files/pisi-pambase.sh index 493dbac5..e3bb3189 100644 --- a/system/base/pam/files/conf.sh +++ b/system/base/pam/files/pisi-pambase.sh @@ -20,9 +20,12 @@ cat > system-session << "EOF" # Begin /etc/pam.d/system-session session required pam_unix.so +session required pam_loginuid.so +session optional pam_elogind.so # End /etc/pam.d/system-session EOF + cat > system-password << "EOF" # Begin /etc/pam.d/system-password diff --git a/system/base/pam/pspec.xml b/system/base/pam/pspec.xml index 99cca004..c3e20882 100644 --- a/system/base/pam/pspec.xml +++ b/system/base/pam/pspec.xml @@ -14,27 +14,29 @@ PAM (Pluggable Authentication Modules) is a system security tool that allows system administrators to set authentication policy without having to recompile programs that handle authentication. https://github.com/linux-pam/linux-pam/archive/v1.5.1.tar.gz - conf.sh - dlopen.sh - dlopen-test.sh + pisi-pambase.sh + - perl - gettext-devel - cracklib-devel - libxslt-devel - docbook-xsl + libnsl-devel + libtirpc-devel + audit-devel - - - - + pam + libpwquality cracklib + audit + libnsl + libtirpc /etc @@ -70,6 +72,13 @@ + + 2021-06-03 + 1.5.1 + PAM rebuild. + Berk Çakar + berk2238@hotmail.com + 2021-04-29 1.5.1 diff --git a/system/base/polkit/actions.py b/system/base/polkit/actions.py index 8a600c1e..16485072 100644 --- a/system/base/polkit/actions.py +++ b/system/base/polkit/actions.py @@ -13,21 +13,21 @@ def setup(): #pisitools.dosed("configure.ac", "pardus-release", "pisilinux-release") #pisitools.dosed("configure", "pardus-release", "pisilinux-release") autotools.autoreconf("-fiv") - autotools.configure("--with-pam-module-dir=/lib/security/ \ - --with-os-type=pisilinux \ + autotools.configure("--prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --with-pam-module-dir=/lib/security/ \ --with-duktape \ --with-dbus \ --enable-examples \ --enable-introspection \ - --disable-systemd \ - --enable-libsystemd-login=no \ - --enable-libelogind=no \ + --disable-libsystemd-login \ --with-systemdsystemunitdir=no \ --disable-man-pages \ --disable-gtk-doc \ --disable-static") - - pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ") + + pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ") def build(): shelltools.export('HOME', get.workDIR()) @@ -40,6 +40,6 @@ def install(): shelltools.chmod("%s/var/lib/polkit-1" % get.installDIR(), mode=00700) shelltools.chmod("%s/etc/polkit-1/rules.d" % get.installDIR(), mode=00700) shelltools.chown("%s/etc/polkit-1/rules.d" % get.installDIR(),"polkitd","root") #yada? "polkitd","root" - shelltools.chown("%s/var/lib/polkit-1" % get.installDIR(),"polkitd","polkitd") + shelltools.chown("%s/var/lib/polkit-1" % get.installDIR(),"polkitd","polkitd") shelltools.chown("%s/usr/share/polkit-1" % get.installDIR(),"polkitd","root") #yada? "polkitd","root" pisitools.dodoc("AUTHORS", "NEWS", "README", "HACKING", "COPYING") diff --git a/system/base/polkit/files/00001-Updated-build-args-for-Pisi-Linux.patch b/system/base/polkit/files/00001-Updated-build-args-for-Pisi-Linux.patch deleted file mode 100644 index 510e0559..00000000 --- a/system/base/polkit/files/00001-Updated-build-args-for-Pisi-Linux.patch +++ /dev/null @@ -1,99 +0,0 @@ -From dc3f89a7840c0ffab00d335f127b7d6ab67398d9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Berk=20=C3=87akar?= -Date: Wed, 12 May 2021 23:02:55 +0300 -Subject: [PATCH] Updated build args for Pisi Linux - ---- - configure.ac | 12 ++++++------ - meson.build | 4 ++-- - meson_options.txt | 2 +- - 3 files changed, 9 insertions(+), 9 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 4ac2219..722824d 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -396,14 +396,14 @@ fi - - AC_SUBST(PAM_MODULE_DIR) - --AC_ARG_WITH(os-type, [ --with-os-type= distribution or OS (redhat/suse/gentoo/pardus/solaris/netbsd)]) -+AC_ARG_WITH(os-type, [ --with-os-type= distribution or OS (redhat/suse/gentoo/pisilinux/solaris/netbsd)]) - - #### Check our operating system (distro-tweaks required) - if test "z$with_os_type" = "z"; then - AC_CHECK_FILE(/etc/redhat-release,distro_type="redhat") - AC_CHECK_FILE(/etc/SuSE-release,distro_type="suse") - AC_CHECK_FILE(/etc/gentoo-release,distro_type="gentoo") -- AC_CHECK_FILE(/etc/pardus-release,distro_type="pardus") -+ AC_CHECK_FILE(/etc/pisilinux-release,distro_type="pisilinux") - if test "z$distro_type" = "z"; then - echo "Linux distribution autodetection failed, specify the distribution to target using --with-os-type=" - else -@@ -419,8 +419,8 @@ if test x$with_os_type = x; then - with_os_type=suse - elif test x$operating_system = xgentoo ; then - with_os_type=gentoo -- elif test x$operating_system = xpardus ; then -- with_os_type=pardus -+ elif test x$operating_system = xpisilinux ; then -+ with_os_type=pisilinux - elif test x$operating_system = xsolaris ; then - with_os_type=solaris - elif test x$operating_system = xfreebsd ; then -@@ -444,7 +444,7 @@ AM_CONDITIONAL(OS_TYPE_UNKNOWN, test x$with_os_type = xunknown, [Running on unkn - AM_CONDITIONAL(OS_TYPE_RED_HAT, test x$with_os_type = xredhat, [Running on Red Hat OS'es]) - AM_CONDITIONAL(OS_TYPE_SUSE, test x$with_os_type = xsuse, [Running on SUSE OS'es]) - AM_CONDITIONAL(OS_TYPE_GENTOO, test x$with_os_type = xgentoo, [Running on Gentoo OS'es]) --AM_CONDITIONAL(OS_TYPE_PARDUS, test x$with_os_type = xpardus, [Running on Pardus OS'es]) -+AM_CONDITIONAL(OS_TYPE_PISI_LINUX, test x$with_os_type = xpisilinux, [Running on Pisi GNU/Linux OS'es]) - AM_CONDITIONAL(OS_TYPE_SOLARIS, test x$with_os_type = xsolaris, [Running os Solaris OS'es]) - AM_CONDITIONAL(OS_TYPE_FREEBSD, test x$with_os_type = xfreebsd, [Running on FreeBSD OS'es]) - -@@ -456,7 +456,7 @@ if ! test -z "$with_pam_include"; then - PAM_FILE_INCLUDE_ACCOUNT=$with_pam_include - PAM_FILE_INCLUDE_PASSWORD=$with_pam_include - PAM_FILE_INCLUDE_SESSION=$with_pam_include --elif test x$with_os_type = xredhat -o x$with_os_type = xgentoo -o x$with_os_type = xpardus ; then -+elif test x$with_os_type = xredhat -o x$with_os_type = xgentoo -o x$with_os_type = xpisilinux ; then - PAM_FILE_INCLUDE_AUTH=system-auth - PAM_FILE_INCLUDE_ACCOUNT=system-auth - PAM_FILE_INCLUDE_PASSWORD=system-auth -diff --git a/meson.build b/meson.build -index ed75c61..104a80f 100644 ---- a/meson.build -+++ b/meson.build -@@ -248,7 +248,7 @@ if os_type == '' - ['suse', '/etc/SuSE-release'], - ['debian', '/etc/debian_version'], - ['gentoo', '/etc/gentoo-release'], -- ['pardus', '/etc/pardus-release'], -+ ['pisilinux', '/etc/pisilinux-release'], - ] - - foreach os_path: os_paths -@@ -279,7 +279,7 @@ if pam_include == '' - 'PAM_FILE_INCLUDE_PASSWORD': 'system', - 'PAM_FILE_INCLUDE_SESSION': 'system', - } -- #if ['redhat', 'gentoo', 'pardus'].contains(os_type) -+ #if ['redhat', 'gentoo', 'pisilinux'].contains(os_type) - else - pam_conf = { - 'PAM_FILE_INCLUDE_AUTH': 'system-auth', -diff --git a/meson_options.txt b/meson_options.txt -index 25e3e77..35cb829 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -4,7 +4,7 @@ option('systemdsystemunitdir', type: 'string', value: '', description: 'custom d - option('polkitd_user', type: 'string', value: 'polkitd', description: 'User for running polkitd (polkitd)') - - option('authfw', type: 'combo', choices: ['pam', 'shadow', 'bsdauth'], value: 'pam', description: 'Authentication framework (pam/shadow)') --option('os_type', type: 'combo', choices: ['redhat', 'suse', 'gentoo', 'pardus', 'solaris', 'netbsd', ''], value: '', description: 'distribution or OS') -+option('os_type', type: 'combo', choices: ['redhat', 'suse', 'gentoo', 'pisilinux', 'solaris', 'netbsd', ''], value: '', description: 'distribution or OS') - - option('pam_include', type: 'string', value: '', description: 'pam file to include') - option('pam_module_dir', type: 'string', value: '', description: 'directory to install PAM security module') --- -2.24.3 (Apple Git-128) - diff --git a/system/base/polkit/files/0001-Updated-build-args-for-Pisi-Linux.patch b/system/base/polkit/files/0001-Updated-build-args-for-Pisi-Linux.patch index 7d258589..18b3e9a4 100644 --- a/system/base/polkit/files/0001-Updated-build-args-for-Pisi-Linux.patch +++ b/system/base/polkit/files/0001-Updated-build-args-for-Pisi-Linux.patch @@ -1,5 +1,5 @@ From dc3f89a7840c0ffab00d335f127b7d6ab67398d9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Berk=20=C3=87akar?= +From: Berk Cakar Date: Wed, 12 May 2021 23:02:55 +0300 Subject: [PATCH] Updated build args for Pisi Linux @@ -14,12 +14,12 @@ index 4ac2219..722824d 100644 --- a/configure.ac +++ b/configure.ac @@ -396,14 +396,14 @@ fi - + AC_SUBST(PAM_MODULE_DIR) - + -AC_ARG_WITH(os-type, [ --with-os-type= distribution or OS (redhat/suse/gentoo/pardus/solaris/netbsd)]) +AC_ARG_WITH(os-type, [ --with-os-type= distribution or OS (redhat/suse/gentoo/pisilinux/solaris/netbsd)]) - + #### Check our operating system (distro-tweaks required) if test "z$with_os_type" = "z"; then AC_CHECK_FILE(/etc/redhat-release,distro_type="redhat") @@ -49,7 +49,7 @@ index 4ac2219..722824d 100644 +AM_CONDITIONAL(OS_TYPE_PISI_LINUX, test x$with_os_type = xpisilinux, [Running on Pisi GNU/Linux OS'es]) AM_CONDITIONAL(OS_TYPE_SOLARIS, test x$with_os_type = xsolaris, [Running os Solaris OS'es]) AM_CONDITIONAL(OS_TYPE_FREEBSD, test x$with_os_type = xfreebsd, [Running on FreeBSD OS'es]) - + @@ -456,7 +456,7 @@ if ! test -z "$with_pam_include"; then PAM_FILE_INCLUDE_ACCOUNT=$with_pam_include PAM_FILE_INCLUDE_PASSWORD=$with_pam_include diff --git a/system/base/polkit/files/polkit-1 b/system/base/polkit/files/polkit-1 new file mode 100644 index 00000000..d5352692 --- /dev/null +++ b/system/base/polkit/files/polkit-1 @@ -0,0 +1,8 @@ +# Begin /etc/pam.d/polkit-1 + +auth include system-auth +account include system-account +password include system-password +session include system-session + +# End /etc/pam.d/polkit-1 \ No newline at end of file diff --git a/system/base/polkit/pspec.xml b/system/base/polkit/pspec.xml index ee369b10..e924f821 100644 --- a/system/base/polkit/pspec.xml +++ b/system/base/polkit/pspec.xml @@ -16,15 +16,15 @@ polkit is a toolkit for defining and handling authorizations. It is used for allowing unprivileged processes to speak to privileged processes. http://www.freedesktop.org/software/polkit/releases/polkit-0.118.tar.gz - python3 + python3 dbus-devel pam-devel glib2-devel expat-devel duktape-devel gettext-devel - - + elogind-devel + gobject-introspection-devel intltool @@ -83,7 +83,7 @@ man/pkaction.1 man/pkcheck.1 man/pkexec.1 - + polkit-1 70-desktop-policy.conf - + - + fedora/shadow-4.8.1-audit-update.patch + fedora/shadow-4.8.1-check-local-groups.patch fedora/shadow-4.8.1-commonio-force-lock-file-sync.patch fedora/shadow-4.8.1-manfix.patch fedora/shadow-4.8.1-useradd-man-clarification.patch - - shadow-strncpy-usage.patch - xstrdup.patch - + shadow-strncpy-usage.patch + xstrdup.patch + @@ -42,6 +44,7 @@ acl attr pam + audit /bin @@ -55,7 +58,7 @@ /usr/share/info /usr/share/locale - + + + 2021-06-03 + 4.8.1 + Shadow rebuild. + Berk Çakar + berk2238@hotmail.com + 2021-02-18 4.8.1