From ec04753a0be024db402cd0712ce8d2da64275965 Mon Sep 17 00:00:00 2001 From: Ivan Mahonin Date: Oct 05 2016 16:01:59 +0000 Subject: Fix bug --- diff --git a/chrooter/chrooter.sh b/chrooter/chrooter.sh index 65a653a..964fb28 100755 --- a/chrooter/chrooter.sh +++ b/chrooter/chrooter.sh @@ -16,7 +16,9 @@ image_mount_add() { echo "Mount: $1 -> $2" sudo mkdir -p "$IMAGE_MOUNT_DIR$2" sudo mount --bind "$1" "$IMAGE_MOUNT_DIR$2" - echo "umount -f \"$IMAGE_MOUNT_DIR$2\"" >> "/tmp/$INSTANCE_NAME.umount.sh" + echo "umount -f \"$IMAGE_MOUNT_DIR$2\" \\" >> "/tmp/$INSTANCE_NAME.umount.sh" + echo "|| (echo \"next try after 10 seconds\" && sleep 10 && umount -f \"$IMAGE_MOUNT_DIR$2\") \\" >> "/tmp/$INSTANCE_NAME.umount.sh" + echo "|| (echo \"final try after 10 seconds\" && sleep 10 && umount -f \"$IMAGE_MOUNT_DIR$2\")" >> "/tmp/$INSTANCE_NAME.umount.sh" } image_mount() { @@ -72,9 +74,7 @@ image_unmount() { fi echo "Unmount subs" - sudo "/tmp/$INSTANCE_NAME.umount.sh" \ - || (echo "next try after 10 seconds" && sleep 10 && sudo "/tmp/$INSTANCE_NAME.umount.sh") \ - || (echo "final try after 10 seconds" && sleep 10 && sudo "/tmp/$INSTANCE_NAME.umount.sh") + sudo "/tmp/$INSTANCE_NAME.umount.sh" sudo rm -f "/tmp/$INSTANCE_NAME.umount.sh" echo "Remove -.chroot.sh file" @@ -305,4 +305,9 @@ elif [ "$1" = "run" ]; then run $@ else echo "Unknown command: $1" + COMMAND_ERROR=1 +fi + +if [ ! -z "$COMMAND_ERROR" ]; then + false fi diff --git a/docker-builder-data/build/script/common/manager.sh b/docker-builder-data/build/script/common/manager.sh index 1ec9eb9..834ad78 100755 --- a/docker-builder-data/build/script/common/manager.sh +++ b/docker-builder-data/build/script/common/manager.sh @@ -200,11 +200,15 @@ prepare_build() { } prepare_install() { - cp --remove-destination $BUILD_PACKET_DIR/version-* "$INSTALL_PACKET_DIR/" || true + if ls $BUILD_PACKET_DIR/version-* 1> /dev/null 2>&1; then + cp --remove-destination $BUILD_PACKET_DIR/version-* "$INSTALL_PACKET_DIR/" || true + fi } prepare_install_release() { - cp --remove-destination $INSTALL_PACKET_DIR/version-* "$INSTALL_RELEASE_PACKET_DIR/" || true + if ls $INSTALL_PACKET_DIR/version-* 1> /dev/null 2>&1; then + cp --remove-destination $INSTALL_PACKET_DIR/version-* "$INSTALL_RELEASE_PACKET_DIR/" || true + fi } set_environment_vars() { diff --git a/docker-builder-data/build/script/include/inc-pkunpack-default.sh b/docker-builder-data/build/script/include/inc-pkunpack-default.sh index 2b2dab3..778d8da 100644 --- a/docker-builder-data/build/script/include/inc-pkunpack-default.sh +++ b/docker-builder-data/build/script/include/inc-pkunpack-default.sh @@ -18,7 +18,7 @@ pkunpack() { fi if [ -z "$PK_VERSION" ]; then - PK_VERSION="$(echo "$ARG" | cut -d'-' -f 2-)" + PK_VERSION="$(echo "$NAME" | cut -d'-' -f 2-)" fi echo "$PK_VERSION" > "$UNPACK_PACKET_DIR/version-$NAME" [ ! $? -eq 0 ] && return 1 diff --git a/docker-builder-data/build/script/packet/appimagekit-master.sh b/docker-builder-data/build/script/packet/appimagekit-master.sh index 77e3649..386e5ea 100644 --- a/docker-builder-data/build/script/packet/appimagekit-master.sh +++ b/docker-builder-data/build/script/packet/appimagekit-master.sh @@ -24,7 +24,8 @@ pkinstall() { mkdir -p "$INSTALL_PACKET_DIR/bin" if ! (cp --remove-destination "$BUILD_PACKET_DIR/$PK_DIRNAME/AppImageAssistant" "$INSTALL_PACKET_DIR/bin/" \ && cp --remove-destination "$BUILD_PACKET_DIR/$PK_DIRNAME/AppRun" "$INSTALL_PACKET_DIR/bin/" \ - && cp --remove-destination "$BUILD_PACKET_DIR/$PK_DIRNAME/desktopintegration" "$INSTALL_PACKET_DIR/bin/"); then + && cp --remove-destination "$BUILD_PACKET_DIR/$PK_DIRNAME/desktopintegration" "$INSTALL_PACKET_DIR/bin/" \ + && chmod a+x "$INSTALL_PACKET_DIR/bin/desktopintegration"); then return 1 fi } diff --git a/docker-builder-data/build/script/packet/opentoonz-appimage.files/opentoonz.desktop b/docker-builder-data/build/script/packet/opentoonz-appimage.files/opentoonz.desktop index 7842522..2599544 100644 --- a/docker-builder-data/build/script/packet/opentoonz-appimage.files/opentoonz.desktop +++ b/docker-builder-data/build/script/packet/opentoonz-appimage.files/opentoonz.desktop @@ -1,4 +1,6 @@ [Desktop Entry] +Type=Application Name=OpenToonz Exec=launch-opentoonz.sh.wrapper Icon=opentoonz +Categories=Graphics diff --git a/docker-builder-data/build/script/packet/opentoonz-appimage.sh b/docker-builder-data/build/script/packet/opentoonz-appimage.sh index 538514d..a68189d 100644 --- a/docker-builder-data/build/script/packet/opentoonz-appimage.sh +++ b/docker-builder-data/build/script/packet/opentoonz-appimage.sh @@ -7,11 +7,13 @@ pkinstall() { # copy files from envdeps (install requires envdeps explicit) local APPDIR="$INSTALL_PACKET_DIR/$PK_APPDIR_NAME.AppDir" + mkdir -p "$APPDIR/usr" + mkdir -p "$APPDIR/usr/bin" mkdir -p "$APPDIR/usr/lib" if ! cp --remove-destination "$ENVDEPS_PACKET_DIR/bin/AppRun" "$APPDIR/"; then return 1 fi - if ! cp --remove-destination "$ENVDEPS_PACKET_DIR/bin/desktopintegration" "$APPDIR/bin/launch-opentoonz.sh.wrapper"; then + if ! cp --remove-destination "$ENVDEPS_PACKET_DIR/bin/desktopintegration" "$APPDIR/usr/bin/launch-opentoonz.sh.wrapper"; then return 1 fi if ! (cp --remove-destination "$FILES_PACKET_DIR/opentoonz.desktop" "$APPDIR/" \ @@ -26,7 +28,6 @@ pkinstall() { || cp --remove-destination /usr/lib/i386-linux-gnu/libgfortran.so* "$APPDIR/usr/lib/"); then return 1 fi - } pkinstall_release() { @@ -34,12 +35,15 @@ pkinstall_release() { return 1 fi - # copy files from envdeps_release (install_releas requires envdeps_release explicit) + # copy files from envdeps_release (install_release requires envdeps_release explicit) local APPDIR="$INSTALL_RELEASE_PACKET_DIR/$PK_APPDIR_NAME.AppDir" if ! copy "$ENVDEPS_RELEASE_PACKET_DIR" "$APPDIR/usr"; then return 1 fi + if ! (cd "$INSTALL_RELEASE_PACKET_DIR" && tar -czf "$PK_APPDIR_NAME.tar.gz" "$PK_APPDIR_NAME.AppDir"); then + return 1 + fi if ! AppImageAssistant "$APPDIR" "$INSTALL_RELEASE_PACKET_DIR/$PK_APPDIR_NAME.appimage"; then return 1 fi diff --git a/publish/.gitignore b/publish/.gitignore new file mode 100644 index 0000000..ad9c141 --- /dev/null +++ b/publish/.gitignore @@ -0,0 +1 @@ +/*.appimage \ No newline at end of file diff --git a/publish/update-opentoonz.sh b/publish/update-opentoonz.sh index 993783a..45875a4 100755 --- a/publish/update-opentoonz.sh +++ b/publish/update-opentoonz.sh @@ -34,9 +34,16 @@ run() { local COMMIT=`cat "$VERSION_FILE" | cut -d'-' -f 2-` COMMIT="${COMMIT:0:5}" local DATE=`date -u +%Y.%m.%d` + if [ -z "$COMMIT" ]; then + echo "Cannot find version, pheraps appimage not ready. Cancel." + return 1 + fi if ! ls $PUBLISH_DIR/opentoonz-$VERSION-$COMMIT-*-$PLATFORM_SUFFIX.appimage 1> /dev/null 2>&1; then + echo "Publish new version $VERSION-$COMMIT-$PLATFORM_SUFFIX" rm -f $PUBLISH_DIR/opentoonz-*-$PLATFORM_SUFFIX.appimage cp $DIR/opentoonz.appimage $PUBLISH_DIR/opentoonz-$VERSION-$COMMIT-$DATE-$PLATFORM_SUFFIX.appimage + else + echo "Version $VERSION-$COMMIT-$PLATFORM_SUFFIX already published" fi }