--- freem/scripts/fmd-pkg-dpkg 2025/04/06 05:01:21 1.2 +++ freem/scripts/fmd-pkg-dpkg 2025/04/07 00:45:52 1.3 @@ -1,7 +1,7 @@ #!/usr/bin/env bash # -# $Id: fmd-pkg-dpkg,v 1.2 2025/04/06 05:01:21 snw Exp $ +# $Id: fmd-pkg-dpkg,v 1.3 2025/04/07 00:45:52 snw Exp $ # Creates a Debian package for a specific FreeM version # # @@ -25,6 +25,9 @@ # along with FreeM. If not, see . # # $Log: fmd-pkg-dpkg,v $ +# Revision 1.3 2025/04/07 00:45:52 snw +# Enhance fmd-pkg-dpkg to auto-generate the debian/changelog file from the FreeM ChangeLog +# # Revision 1.2 2025/04/06 05:01:21 snw # Initial working implementation of fmd package for dpkg # @@ -39,22 +42,24 @@ PGM=$(basename $0) SCRIPT_DIR=$(dirname "$0") -if [[ $2 == "help" ]] -then - echo "foo" - exit 1 -fi +source "${SCRIPT_DIR}/_fmd_common.bash" -if [[ $# != 2 ]] +if [[ $# != 1 ]] then - echo "fmd-pkg-dpkg: must run from fmd package" + echo "${PGM}: must run from fmd package" exit 1 fi FMD=$1 FREEM_VERSION="${_fmd_freem_version}" FREEM_VERSION_MOD=$(echo "${FREEM_VERSION}" | sed 's/-/./g') -FDPKG_VERSION=$2 +export DEBEMAIL="${_fmd_email}" +export DEBFULLNAME="${_fmd_fullname}" + +echo -n "${PGM}: getting debian package release for ${_fmd_freem_version}... " +FDPKG_VERSION=$(_fmd_next_dpkg) +echo "[${FDPKG_VERSION}]" +echo "${PGM}: package version is ${FREEM_VERSION}-${FDPKG_VERSION}" TMPDIR="/tmp/fmd-pkg-dpkg" rm -rf "${TMPDIR}" @@ -92,6 +97,25 @@ then mv "${TMPDIR}/freem-${FREEM_VERSION}" "${TMPDIR}/freem-${FREEM_VERSION_MOD}" fi +echo "${PGM}: generating Debian changelog..." +TMP_CHLOG=$(mktemp) +${FMD} changelog --minimal > "${TMP_CHLOG}" + +pushd scripts &> /dev/null +rm debian/changelog +dch --create -v "${FREEM_VERSION_MOD}-${FDPKG_VERSION}" -u low --package freem --empty &>> "${LOGFILE}" + +while read LINE +do + dch --append "${LINE}" &>> "${LOGFILE}" +done < "${TMP_CHLOG}" + +rm -f "${TMP_CHLOG}" + +dch --release "Release the package" &>> "${LOGFILE}" + +popd &> /dev/null + echo -n "${PGM}: copying Debian packaging control info to ${TARDIR}... " cp -r scripts/debian "${TARDIR}/" if [[ $? == 0 ]] @@ -102,7 +126,6 @@ else exit 1 fi -sed -i "s/FREEM_VERSION/${FREEM_VERSION_MOD}-${FDPKG_VERSION}/g" "${TARDIR}/debian/changelog" sed -i "s/FREEM_VERSION/${FREEM_VERSION}-${FDPKG_VERSION}/g" "${TARDIR}/debian/control" echo -n "${PGM}: building the packages (this may take awhile)..." @@ -117,7 +140,7 @@ else exit 1 fi -cd - +cd - &> /dev/null mv ${TMPDIR}/*.deb . DPKG_BUILT=$(ls -1 *.deb) @@ -134,3 +157,4 @@ do done echo "${PGM}: built ${BLDLST}" +