diff options
author | Michele Calgaro <michele.calgaro@yahoo.it> | 2018-07-11 23:38:32 +0900 |
---|---|---|
committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2018-07-11 23:38:32 +0900 |
commit | eeaccbeddbaa2974406eb20cbb7beca3fb4a59f0 (patch) | |
tree | 510e0eea682ebf69263b187287873956394b5e7b /debian/_buildscripts/local/create_repo.sh | |
parent | 02dbbffa606c3c52833bbaf3dc5c5a050f295dbf (diff) | |
download | tde-packaging-eeaccbeddbaa2974406eb20cbb7beca3fb4a59f0.tar.gz tde-packaging-eeaccbeddbaa2974406eb20cbb7beca3fb4a59f0.zip |
DEB build scripts: several enhancements as follow:
- major rework of update_repositories.sh script, which now supports
multiple branches and provide better feedback to user.
- added support for pre-built extra dependency packages. A user can now
use Slavek Banko's binary packages instead of building the extra
dependency locally. This removes a quite tedious process during the
setup of the building environment.
- bug fixes and more user friendly folder names.
- improved README to cover the complete process until TDE installation.
Special thanks to Gregory Guy <zadig83@laposte.net> for testing and
feedback done so far.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'debian/_buildscripts/local/create_repo.sh')
-rwxr-xr-x | debian/_buildscripts/local/create_repo.sh | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/debian/_buildscripts/local/create_repo.sh b/debian/_buildscripts/local/create_repo.sh new file mode 100755 index 000000000..f03f92e84 --- /dev/null +++ b/debian/_buildscripts/local/create_repo.sh @@ -0,0 +1,54 @@ +#!/bin/bash +# +# Create/update TDE local debian repository +# + +# Load common code and initialization +. ./internals/_build_common.sh +init_common + +#---------------------------- +# Check command line arguments +parm_MAKE_BACKUP="n" +for arg in $@; do + if [ "$arg" = "-b" ]; then # backup old repository + parm_MAKE_BACKUP="y" + fi +done + + +#---------------------------- +# Create/update TDE local debian repository +echo -e "${CLightCyan}#### TDE local repository creation begin ####${CNone}" +ARCH_PATH="dists/$DISTRO_NAME/main/binary-$ARCHITECTURE" +REPO_DIR="$TDE_DIR/$CFG_REPO_DIR" +REPO_DIR_BACKUP="$REPO_DIR.backup" +REPO_PKG_DIR="$REPO_DIR/$ARCH_PATH" + +# Backup +if [ "$parm_MAKE_BACKUP" = "y" ] && [ -d "$REPO_DIR" ]; then + echo -e "${CYellow}> Backing up old repository${CNone}" + rm -R "$REPO_DIR_BACKUP" &>/dev/null + mv "$REPO_DIR" "$REPO_DIR_BACKUP" &>/dev/null + echo "Copy of the old repository available at \"$REPO_DIR_BACKUP\"" +fi + +# Create repository +echo -e "${CYellow}> Creating new repository${CNone}" +if [ -d "$REPO_DIR" ]; then + rm -R "$REPO_DIR" &>/dev/null +fi +mkdir -p "$REPO_PKG_DIR" +rsync -aHS --exclude="*/src/*.xz" --exclude="*/src/*.dsc" --exclude="*/src/*.changes" --exclude="*/src/*.buildinfo" --exclude="Packages*" "$TDE_DEBS_DIR/" "$REPO_PKG_DIR/" + +# Create package index file +echo -e "${CYellow}> Creating package index file${CNone}" +cd "$REPO_DIR" +dpkg-scanpackages "./$ARCH_PATH" | gzip -9c > "./$ARCH_PATH/Packages.gz" + + +#---------------------------- +# Repository created +echo -e "${CLightGreen}#### TDE local repository created ####${CNone}" +cd "$SCRIPT_DIR" +exit 0 |