#!/bin/bash #tool/distro specific functions for fetching, building and installing dependencies fetch_source () { pinfo "Extracting from running system..." } build () { local COPYLIST="$MODULE_WORK_DIR/list_dpkg_output" list_packet_files > "$COPYLIST" [ -n "$REQUIRED_DIR_STRUCT" ] && find $REQUIRED_DIR_STRUCT -type d >> "$COPYLIST" tarcopy "$(cat "${COPYLIST}" | sort -u)" "${MODULE_BUILD_DIR}" local POLPATH=$(find "$MODULE_BUILD_DIR" -name polkitd -executable | head -n 1) POLPATH="/${POLPATH#$MODULE_BUILD_DIR}" mkdir -p "$MODULE_BUILD_DIR/etc/systemd/system" "$MODULE_BUILD_DIR/usr/share/dbus-1/system-services" "$MODULE_BUILD_DIR/var/lib/polkit" sed "s,%POLKITD%,${POLPATH},g" "${MODULE_DIR}/templates/systemd.service" > "$MODULE_BUILD_DIR/etc/systemd/system/polkit.service" || perror "Could not generate polkit.service for systemd" sed "s,%POLKITD%,${POLPATH},g" "${MODULE_DIR}/templates/dbus.service" > "$MODULE_BUILD_DIR/usr/share/dbus-1/system-services/org.freedesktop.PolicyKit1.service" || perror "Could not generate polkit.service for dbus" } post_copy() { #Add Polkit User/Group/Shadow to Stage3.2, required on opensuse pinfo "Adding polkitd user to target system..." add_user "polkitd" }