You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rtpengine/pkg/deb/generator.sh

61 lines
1.8 KiB

#!/bin/bash
# produces non-NGCP pkg/deb/debian from debian
if [ ! -d ../../pkg/deb ] ; then
echo "script needs to be executed at pkg/deb dir" >&2
exit 1
fi
rm -rf debian
echo "- Copying origin debian dir"
cp -ra ../../debian .
echo "- Copying backports scripts"
cp -ra backports debian
# rules
echo "- Remove ngcp- prefix"
find debian -maxdepth 2 -type f -exec \
sed -i -e 's/ngcp-rtpengine/rtpengine/g' \
-e 's/ngcp\\-rtpengine/rtpengine/g' {} \;
## remove same file on links
while read -r file; do
file_new=$(echo "${file}" | sed -e 's/ngcp-//g')
while read -r line; do
sed -i -e "s#${line}\$#HH#g" "${file}"
done < <(awk '{print $1}' "${file}")
grep -v HH "${file}" > "${file_new}"
rm "${file}"
done < <(find debian -name '*links')
echo "- Remove NGCP packages from control"
sed -i -e '/ngcp-system-tools/d' debian/control
sed -i -e '/ngcp-libcodec-chain/d' debian/control
echo "- Set package-specific homepage"
sed -i -e 's,^Homepage:.*,Homepage: https://rtpengine.com/,' debian/control
echo "- Add Conflicts with NGCP packages"
# "Package: rtpengine-daemon" already has a Conflicts field. Handle it here
# separately, and exclude it from the batch rewrite below.
sed -i '/^Conflicts/ a \ ngcp-rtpengine-daemon,' debian/control
while read -r line ; do
sed -i "/${line}$/ a Conflicts: ngcp-${line#Package: }" debian/control
done < <(grep '^Package:' debian/control | grep -v ' rtpengine-daemon$')
echo "- Rename files"
while read -r file; do
file_new=$(echo "${file}" | sed -e 's/ngcp-//g')
mv "${file}" "${file_new}"
done < <(find debian -maxdepth 1 -type f -name 'ngcp-rtpengine*')
if ! command -v wrap-and-sort &>/dev/null ; then
echo "WARN: wrap-and-sort (Debian package devscripts) not available."
else
echo "- Remove empty Suggests"
wrap-and-sort
sed -i -e '/Suggests:$/d' debian/control
wrap-and-sort -sat
fi