From 9c547a5e5b50813f9441a96f3f8a7bd62d90f0e9 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 17 Jul 2014 15:11:20 +0200 Subject: [pam] reworked how we determine path to PAM-modules detect the path in remote/helper/paths.inc and use that global path in the build scripts --- remote/modules/pam/module.build | 7 ++++--- remote/modules/pam/module.conf.ubuntu | 4 +--- remote/modules/pam/module.conf.ubuntu.14 | 5 ++--- 3 files changed, 7 insertions(+), 9 deletions(-) (limited to 'remote/modules/pam') diff --git a/remote/modules/pam/module.build b/remote/modules/pam/module.build index 3f0d8861..067cd431 100644 --- a/remote/modules/pam/module.build +++ b/remote/modules/pam/module.build @@ -28,12 +28,13 @@ build() { tarcopy "$(cat "$COPYLIST")" "${MODULE_BUILD_DIR}" # build pam-script separatly since we use a source tarball + # HACK: find pam_unix.so in MODULE_BUILD_DIR to see where to put pam_script at - cd "$MODULE_BUILD_DIR" - local PAM_UNIX_LOCATION=$(find . -name pam_unix.so) cd "${MODULE_DIR}/src/pam-script-${REQUIRED_PAM_SCRIPT_VERSION}" || perror "Could not cd to ${MODULE_DIR}/src/pam-script-${REQUIRED_PAM_SCRIPT_VERSION}." - ./configure --prefix=/ --sysconfdir=/etc/pam-script --libdir="$(dirname ${PAM_UNIX_LOCATION:1})" || perror "pam-script: ./configure failed." + ./configure --prefix=/ --sysconfdir=/etc/pam-script --libdir="$SYS_PAM_MODULES_PATH" || perror "pam-script: ./configure failed." make DESTDIR="${MODULE_BUILD_DIR}" install || perror "pam-script: make install to ${MODULE_BUILD_DIR} failed." + + # openSuse 13.1 has no package nss-pam-ldapd. So, we compile it. if [ -n "$REQUIRED_NSS_LDAPD_URL" ]; then cd "${MODULE_DIR}/src/$REQUIRED_NSS_LDAPD_VERSION" diff --git a/remote/modules/pam/module.conf.ubuntu b/remote/modules/pam/module.conf.ubuntu index 31023197..4a3635fc 100644 --- a/remote/modules/pam/module.conf.ubuntu +++ b/remote/modules/pam/module.conf.ubuntu @@ -39,13 +39,11 @@ REQUIRED_BINARIES+=" mount.cifs " REQUIRED_DIRECTORIES+=" + $SYS_PAM_MODULES_PATH /lib /usr/lib " REQUIRED_SYSTEM_FILES+=" /etc/pam.conf /etc/default/locale - /lib/security - /lib/${ARCH_TRIPLET}/security - /sbin/mkhomedir_helper " diff --git a/remote/modules/pam/module.conf.ubuntu.14 b/remote/modules/pam/module.conf.ubuntu.14 index 2f46770c..26307d84 100644 --- a/remote/modules/pam/module.conf.ubuntu.14 +++ b/remote/modules/pam/module.conf.ubuntu.14 @@ -39,20 +39,19 @@ REQUIRED_BINARIES+=" mount.cifs " REQUIRED_DIRECTORIES+=" + $SYS_PAM_MODULES_PATH /lib /usr/lib " REQUIRED_SYSTEM_FILES+=" /etc/pam.conf /etc/default/locale - /lib/${ARCH_TRIPLET}/security - /sbin/mkhomedir_helper " # For Ubuntu 14.04: Both packages were dropped from official repos. Do not change the # order, as these packages will be installed via dpkg and depend on each other. REQUIRED_DOWNLOAD_URLS=" - de.archive.ubuntu.com/ubuntu/pool/universe/n/ncpfs/libncp_2.2.6-9ubuntu1_amd64.deb + de.archive.ubuntu.com/ubuntu/pool/universe/n/ncpfs/libncp_2.2.6-9ubuntu1_amd64.deb de.archive.ubuntu.com/ubuntu/pool/universe/n/ncpfs/libpam-ncp_2.2.6-9ubuntu1_amd64.deb de.archive.ubuntu.com/ubuntu/pool/universe/n/ncpfs/ncpfs_2.2.6-9ubuntu1_amd64.deb " -- cgit v1.2.3-55-g7522 From 0e24e729986217356267c30edb2b12f45869d80f Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Thu, 17 Jul 2014 15:20:52 +0200 Subject: [pam] only check for nslcd if its in REQUIRED_BINARIES quick fix for centos. TODO: split PAM modules in sub-modules --- remote/modules/pam/module.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'remote/modules/pam') diff --git a/remote/modules/pam/module.build b/remote/modules/pam/module.build index 067cd431..b678fdd6 100644 --- a/remote/modules/pam/module.build +++ b/remote/modules/pam/module.build @@ -47,7 +47,7 @@ build() { cd "$MODULE_BUILD_DIR" local NSLCD_PATH=$(which nslcd) fi - [ -z "$NSLCD_PATH" ] && perror "Could not 'which nslcd'" + [[ $REQUIRED_BINARIES = *nslcd* ]] && [ -z "$NSLCD_PATH" ] && perror "Could not 'which nslcd'" # Build nslcd service file mkdir -p "etc/systemd/system" sed "s,%PATH%,$NSLCD_PATH,g" "$MODULE_DIR/templates/nslcd-systemd.service" > "etc/systemd/system/nslcd.service" || perror "Could not fill nslcd.service template" -- cgit v1.2.3-55-g7522 From e57c4f6109c698431a6bd1fa39e3e293570f6cd4 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Thu, 17 Jul 2014 15:27:13 +0200 Subject: new 'stage32-headless' target. Started centos support. WIP Use stage32-headless to build on CentOS. Stage32-bwlp won't work yet. --- remote/includes/distribution.inc | 2 +- remote/includes/system.inc | 6 +-- remote/modules/dbus/module.conf.centos | 4 ++ remote/modules/idleaction/module.conf.centos | 6 +++ remote/modules/kernel/module.conf.centos | 3 ++ remote/modules/nscd/module.conf.centos | 6 +++ remote/modules/pam/module.conf.centos | 36 +++++++++++++ remote/modules/rsyslogd/module.conf.centos | 3 ++ remote/modules/smartctl/module.conf.centos | 6 +++ remote/modules/systemd/module.conf.centos | 11 ++++ remote/modules/xorg/module.conf.centos | 67 +++++++++++++++++++++++++ remote/rootfs/rootfs-stage32/module.conf.centos | 17 +++++++ remote/targets/stage32-headless/cron | 1 + remote/targets/stage32-headless/dbus | 1 + remote/targets/stage32-headless/dhcpc-busybox | 1 + remote/targets/stage32-headless/dnbd3 | 1 + remote/targets/stage32-headless/german | 1 + remote/targets/stage32-headless/idleaction | 1 + remote/targets/stage32-headless/kernel | 1 + remote/targets/stage32-headless/nscd | 1 + remote/targets/stage32-headless/pam | 1 + remote/targets/stage32-headless/rootfs-stage32 | 1 + remote/targets/stage32-headless/rsyslogd | 1 + remote/targets/stage32-headless/smartctl | 1 + remote/targets/stage32-headless/sshd | 1 + remote/targets/stage32-headless/systemd | 1 + remote/targets/stage32-headless/xorg | 1 + 27 files changed, 178 insertions(+), 4 deletions(-) create mode 100644 remote/modules/dbus/module.conf.centos create mode 100644 remote/modules/idleaction/module.conf.centos create mode 100644 remote/modules/kernel/module.conf.centos create mode 100644 remote/modules/nscd/module.conf.centos create mode 100644 remote/modules/pam/module.conf.centos create mode 100644 remote/modules/rsyslogd/module.conf.centos create mode 100644 remote/modules/smartctl/module.conf.centos create mode 100644 remote/modules/systemd/module.conf.centos create mode 100644 remote/modules/xorg/module.conf.centos create mode 100644 remote/rootfs/rootfs-stage32/module.conf.centos create mode 120000 remote/targets/stage32-headless/cron create mode 120000 remote/targets/stage32-headless/dbus create mode 120000 remote/targets/stage32-headless/dhcpc-busybox create mode 120000 remote/targets/stage32-headless/dnbd3 create mode 120000 remote/targets/stage32-headless/german create mode 120000 remote/targets/stage32-headless/idleaction create mode 120000 remote/targets/stage32-headless/kernel create mode 120000 remote/targets/stage32-headless/nscd create mode 120000 remote/targets/stage32-headless/pam create mode 120000 remote/targets/stage32-headless/rootfs-stage32 create mode 120000 remote/targets/stage32-headless/rsyslogd create mode 120000 remote/targets/stage32-headless/smartctl create mode 120000 remote/targets/stage32-headless/sshd create mode 120000 remote/targets/stage32-headless/systemd create mode 120000 remote/targets/stage32-headless/xorg (limited to 'remote/modules/pam') diff --git a/remote/includes/distribution.inc b/remote/includes/distribution.inc index 137da7ef..485d1224 100644 --- a/remote/includes/distribution.inc +++ b/remote/includes/distribution.inc @@ -18,7 +18,7 @@ detect_distribution () { PACKET_MANAGER="zypper" PACKET_HANDLER="rpm" ;; - scientific|fedora) + centos|scientific|fedora) PACKET_MANAGER="yum" PACKET_HANDLER="rpm" ;; diff --git a/remote/includes/system.inc b/remote/includes/system.inc index 17a80761..03c455e4 100644 --- a/remote/includes/system.inc +++ b/remote/includes/system.inc @@ -19,9 +19,8 @@ export MAKEFLAGS="-j$CPU_CORES" if [ "$(uname -m)x" = "x86_64x" ]; then # Setting LIB64, as openSuse differentiates but Ubuntu does not: case $SYS_DISTRIBUTION in - ubuntu | debian) LIB64="lib" ;; - opensuse) LIB64="lib64" ;; - fedora) LIB64="lib64" ;; + ubuntu | debian) LIB64="lib" ;; + opensuse | fedora | centos) LIB64="lib64" ;; *) perror "Cannot set LIB64, SYS_DISTRIBUTION: $SYS_DISTRIBUTION unknown!" ;; esac AMD64_I386=amd64 @@ -36,3 +35,4 @@ else ARCHREGEX="(i[3456]86|x86[_-]32)" fi +pinfo "LIB64 is: $LIB64" diff --git a/remote/modules/dbus/module.conf.centos b/remote/modules/dbus/module.conf.centos new file mode 100644 index 00000000..f38f590f --- /dev/null +++ b/remote/modules/dbus/module.conf.centos @@ -0,0 +1,4 @@ +REQUIRED_CONTENT_PACKAGES=" + dbus +" + diff --git a/remote/modules/idleaction/module.conf.centos b/remote/modules/idleaction/module.conf.centos new file mode 100644 index 00000000..d368cbd8 --- /dev/null +++ b/remote/modules/idleaction/module.conf.centos @@ -0,0 +1,6 @@ +REQUIRED_INSTALLED_PACKAGES=" + libX11-devel + libXScrnSaver-devel + xorg-x11-proto-devel +" + diff --git a/remote/modules/kernel/module.conf.centos b/remote/modules/kernel/module.conf.centos new file mode 100644 index 00000000..2e958ce4 --- /dev/null +++ b/remote/modules/kernel/module.conf.centos @@ -0,0 +1,3 @@ +REQUIRED_GIT_BRANCH="v${SYSTEM_KERNEL_SHORT%.0}" +REQUIRED_GIT="git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git" + diff --git a/remote/modules/nscd/module.conf.centos b/remote/modules/nscd/module.conf.centos new file mode 100644 index 00000000..4a61cc19 --- /dev/null +++ b/remote/modules/nscd/module.conf.centos @@ -0,0 +1,6 @@ +REQUIRED_INSTALLED_PACKAGES=" + nscd +" +REQUIRED_CONTENT_PACKAGES=" + nscd +" diff --git a/remote/modules/pam/module.conf.centos b/remote/modules/pam/module.conf.centos new file mode 100644 index 00000000..5dadea53 --- /dev/null +++ b/remote/modules/pam/module.conf.centos @@ -0,0 +1,36 @@ +# erase generic conf settings +REQUIRED_BINARIES="" +REQUIRED_FILES="" +REQUIRED_INSTALLED_PACKAGES=" + pam + pam-devel + pam_krb5 + libnfsidmap + nss-mdns + openssl-devel + nfs-utils + glibc +" +REQUIRED_CONTENT_PACKAGES=" + pam + pam-devel + pam_krb5 + libnfsidmap + nss-mdns + nfs-utils + glibc +" +REQUIRED_LIBRARIES+=" + libnss_compat + libnss_db + libnss_dns + libnss_files + libnss_nis +" +REQUIRED_DIRECTORIES+=" + /$LIB64 +" +REQUIRED_SYSTEM_FILES+=" + $SYS_PAM_MODULES_PATH +" + diff --git a/remote/modules/rsyslogd/module.conf.centos b/remote/modules/rsyslogd/module.conf.centos new file mode 100644 index 00000000..6f3cb891 --- /dev/null +++ b/remote/modules/rsyslogd/module.conf.centos @@ -0,0 +1,3 @@ +REQUIRED_CONTENT_PACKAGES=" + rsyslog +" diff --git a/remote/modules/smartctl/module.conf.centos b/remote/modules/smartctl/module.conf.centos new file mode 100644 index 00000000..d699f2f0 --- /dev/null +++ b/remote/modules/smartctl/module.conf.centos @@ -0,0 +1,6 @@ +REQUIRED_CONTENT_PACKAGES=" + smartmontools +" +REQUIRED_INSTALLED_PACKAGES=" + smartmontools +" diff --git a/remote/modules/systemd/module.conf.centos b/remote/modules/systemd/module.conf.centos new file mode 100644 index 00000000..9232ea5f --- /dev/null +++ b/remote/modules/systemd/module.conf.centos @@ -0,0 +1,11 @@ +REQUIRED_INSTALLED_PACKAGES=" + intltool + gperf + libcap-devel + libudev-devel + dbus-devel + libxslt + libblkid-devel + libacl-devel + glib2-devel +" diff --git a/remote/modules/xorg/module.conf.centos b/remote/modules/xorg/module.conf.centos new file mode 100644 index 00000000..ff5846e3 --- /dev/null +++ b/remote/modules/xorg/module.conf.centos @@ -0,0 +1,67 @@ +# xkbutils, xkbprint, setxkbmap, xkbevd for 64-bit openSuse +REQUIRED_INSTALLED_PACKAGES=" + xorg-x11-server-Xorg + xorg-x11-drv-vmware + xorg-x11-drv-ati + xorg-x11-drv-nouveau + xorg-x11-drv-intel + xorg-x11-drv-vesa + xorg-x11-drv-fbdev + xorg-x11-drv-modesetting + xorg-x11-drv-vmmouse + xorg-x11-drv-wacom + xorg-x11-drv-evdev + xorg-x11-drv-keyboard + xorg-x11-drv-mouse + xorg-x11-drv-synaptics + xorg-x11-drv-void + xkeyboard-config + dejavu-sans-fonts + libxcb + mesa-dri-drivers + mesa-libGL + xorg-x11-xkb-utils + xorg-x11-xkb-extras + pixman + xorg-x11-server-utils +" +REQUIRED_CONTENT_PACKAGES=" + xorg-x11-server-Xorg + xorg-x11-drv-vmware + xorg-x11-drv-ati + xorg-x11-drv-nouveau + xorg-x11-drv-intel + xorg-x11-drv-vesa + xorg-x11-drv-fbdev + xorg-x11-drv-modesetting + xorg-x11-drv-vmmouse + xorg-x11-drv-wacom + xorg-x11-drv-evdev + xorg-x11-drv-keyboard + xorg-x11-drv-mouse + xorg-x11-drv-synaptics + xorg-x11-drv-void + xkeyboard-config + dejavu-sans-fonts + libxcb + mesa-dri-drivers + mesa-libGL + xorg-x11-xkb-utils + xorg-x11-xkb-extras + pixman + xorg-x11-server-utils +" +REQUIRED_LIBRARIES=" + libxcb-glx + libIntelXvMC + i965_dri + vmwgfx_dri + i915_dri + libpixman-1 +" +REQUIRED_DIRECTORIES+=" + /usr/bin + /usr/lib/udev + /usr/$LIB64/xorg + /usr/share/fonts +" diff --git a/remote/rootfs/rootfs-stage32/module.conf.centos b/remote/rootfs/rootfs-stage32/module.conf.centos new file mode 100644 index 00000000..da290670 --- /dev/null +++ b/remote/rootfs/rootfs-stage32/module.conf.centos @@ -0,0 +1,17 @@ +REQUIRED_INSTALLED_PACKAGES=" + ntpdate + nfs-utils + xfsprogs + squashfs-tools + curl + xvidtune + xterm +" +REQUIRED_CONTENT_PACKAGES=" +" +REQUIRED_DIRECTORIES=" + /usr/$LIB64/xtables +" +REQUIRED_FILES+=" + /usr/share/X11/app-defaults/Xvidtune +" diff --git a/remote/targets/stage32-headless/cron b/remote/targets/stage32-headless/cron new file mode 120000 index 00000000..39164da5 --- /dev/null +++ b/remote/targets/stage32-headless/cron @@ -0,0 +1 @@ +../../modules/cron \ No newline at end of file diff --git a/remote/targets/stage32-headless/dbus b/remote/targets/stage32-headless/dbus new file mode 120000 index 00000000..dd148715 --- /dev/null +++ b/remote/targets/stage32-headless/dbus @@ -0,0 +1 @@ +../../modules/dbus \ No newline at end of file diff --git a/remote/targets/stage32-headless/dhcpc-busybox b/remote/targets/stage32-headless/dhcpc-busybox new file mode 120000 index 00000000..ea3634e6 --- /dev/null +++ b/remote/targets/stage32-headless/dhcpc-busybox @@ -0,0 +1 @@ +../../modules/dhcpc-busybox \ No newline at end of file diff --git a/remote/targets/stage32-headless/dnbd3 b/remote/targets/stage32-headless/dnbd3 new file mode 120000 index 00000000..fa80b45c --- /dev/null +++ b/remote/targets/stage32-headless/dnbd3 @@ -0,0 +1 @@ +../../modules/dnbd3 \ No newline at end of file diff --git a/remote/targets/stage32-headless/german b/remote/targets/stage32-headless/german new file mode 120000 index 00000000..4469f96e --- /dev/null +++ b/remote/targets/stage32-headless/german @@ -0,0 +1 @@ +../../modules/german \ No newline at end of file diff --git a/remote/targets/stage32-headless/idleaction b/remote/targets/stage32-headless/idleaction new file mode 120000 index 00000000..09fd9493 --- /dev/null +++ b/remote/targets/stage32-headless/idleaction @@ -0,0 +1 @@ +../../modules/idleaction \ No newline at end of file diff --git a/remote/targets/stage32-headless/kernel b/remote/targets/stage32-headless/kernel new file mode 120000 index 00000000..044f086d --- /dev/null +++ b/remote/targets/stage32-headless/kernel @@ -0,0 +1 @@ +../../modules/kernel \ No newline at end of file diff --git a/remote/targets/stage32-headless/nscd b/remote/targets/stage32-headless/nscd new file mode 120000 index 00000000..d7e411d2 --- /dev/null +++ b/remote/targets/stage32-headless/nscd @@ -0,0 +1 @@ +../../modules/nscd \ No newline at end of file diff --git a/remote/targets/stage32-headless/pam b/remote/targets/stage32-headless/pam new file mode 120000 index 00000000..588acdbf --- /dev/null +++ b/remote/targets/stage32-headless/pam @@ -0,0 +1 @@ +../../modules/pam \ No newline at end of file diff --git a/remote/targets/stage32-headless/rootfs-stage32 b/remote/targets/stage32-headless/rootfs-stage32 new file mode 120000 index 00000000..96dcbb86 --- /dev/null +++ b/remote/targets/stage32-headless/rootfs-stage32 @@ -0,0 +1 @@ +../../rootfs/rootfs-stage32 \ No newline at end of file diff --git a/remote/targets/stage32-headless/rsyslogd b/remote/targets/stage32-headless/rsyslogd new file mode 120000 index 00000000..339d02f8 --- /dev/null +++ b/remote/targets/stage32-headless/rsyslogd @@ -0,0 +1 @@ +../../modules/rsyslogd \ No newline at end of file diff --git a/remote/targets/stage32-headless/smartctl b/remote/targets/stage32-headless/smartctl new file mode 120000 index 00000000..3a48434f --- /dev/null +++ b/remote/targets/stage32-headless/smartctl @@ -0,0 +1 @@ +../../modules/smartctl \ No newline at end of file diff --git a/remote/targets/stage32-headless/sshd b/remote/targets/stage32-headless/sshd new file mode 120000 index 00000000..56b4e4b5 --- /dev/null +++ b/remote/targets/stage32-headless/sshd @@ -0,0 +1 @@ +../../modules/sshd \ No newline at end of file diff --git a/remote/targets/stage32-headless/systemd b/remote/targets/stage32-headless/systemd new file mode 120000 index 00000000..2dc58bd3 --- /dev/null +++ b/remote/targets/stage32-headless/systemd @@ -0,0 +1 @@ +../../modules/systemd \ No newline at end of file diff --git a/remote/targets/stage32-headless/xorg b/remote/targets/stage32-headless/xorg new file mode 120000 index 00000000..a9494860 --- /dev/null +++ b/remote/targets/stage32-headless/xorg @@ -0,0 +1 @@ +../../modules/xorg \ No newline at end of file -- cgit v1.2.3-55-g7522