From acd4dfe3b7c6c892a909c61ce14d034303cc32af Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Wed, 23 Aug 2023 12:56:59 -0400 Subject: [PATCH] [Snap] Update base to core22 --- .ci/snap/install_vulkan_sdk.sh | 6 +- .ci/snap/snapcraft-stable-overrides.yaml | 8 +-- .ci/snap/snapcraft_build_get_target_arch.sh | 10 ++-- .snapcraft.yaml | 62 ++++++++++----------- 4 files changed, 40 insertions(+), 46 deletions(-) diff --git a/.ci/snap/install_vulkan_sdk.sh b/.ci/snap/install_vulkan_sdk.sh index 1a69f1c9a82..27984cbbf00 100755 --- a/.ci/snap/install_vulkan_sdk.sh +++ b/.ci/snap/install_vulkan_sdk.sh @@ -1,6 +1,6 @@ #!/bin/bash -TARGET_BUILD_ARCH="$("${SNAPCRAFT_PART_SRC}/.ci/snap/snapcraft_build_get_target_arch.sh")" +TARGET_BUILD_ARCH="$("${CRAFT_PART_SRC}/.ci/snap/snapcraft_build_get_target_arch.sh")" echo "[install_vulkan_sdk.sh]" echo "Target Arch: $TARGET_BUILD_ARCH" @@ -10,8 +10,8 @@ if [ "$TARGET_BUILD_ARCH" = "amd64" ]; then echo "Installing Vulkan SDK" # Add Vulkan SDK repo - wget -qO - https://packages.lunarg.com/lunarg-signing-key-pub.asc | apt-key add - - wget -qO /etc/apt/sources.list.d/lunarg-vulkan-1.3.231-focal.list https://packages.lunarg.com/vulkan/1.3.231/lunarg-vulkan-1.3.231-focal.list + wget -qO - https://packages.lunarg.com/lunarg-signing-key-pub.asc | tee /etc/apt/trusted.gpg.d/lunarg.asc + wget -qO /etc/apt/sources.list.d/lunarg-vulkan-1.3.231-jammy.list https://packages.lunarg.com/vulkan/1.3.231/lunarg-vulkan-1.3.231-jammy.list apt update apt install --yes vulkan-sdk diff --git a/.ci/snap/snapcraft-stable-overrides.yaml b/.ci/snap/snapcraft-stable-overrides.yaml index c1a5f70ea88..cd60e03ce8a 100644 --- a/.ci/snap/snapcraft-stable-overrides.yaml +++ b/.ci/snap/snapcraft-stable-overrides.yaml @@ -6,12 +6,12 @@ parts: source-type: git override-pull: | # Obtain the desired tag from the .stable_tag file - echo "SNAPCRAFT_PROJECT_DIR=$SNAPCRAFT_PROJECT_DIR" - STABLE_TAG_CONFIG="$SNAPCRAFT_PROJECT_DIR/.stable_tag" + echo "CRAFT_PROJECT_DIR=$CRAFT_PROJECT_DIR" + STABLE_TAG_CONFIG="$CRAFT_PROJECT_DIR/.stable_tag" TAG_REF=$(cat "${STABLE_TAG_CONFIG}") echo "TAG_REF=$TAG_REF" - snapcraftctl pull + craftctl default echo "git submodule deinit --all" git submodule deinit --all @@ -23,7 +23,7 @@ parts: git checkout "${TAG_REF}" echo "git submodule update" git submodule update --init - snapcraftctl set-version "$TAG_REF" + craftctl set version="$TAG_REF" # Write out important release config environment variables cat > .snapenv <&2; } BUILDTIME_TARGET_ARCH="" -if [ -n "${SNAPCRAFT_TARGET_ARCH}" ]; then - # SNAPCRAFT_TARGET_ARCH is available - use it! - BUILDTIME_TARGET_ARCH="${SNAPCRAFT_TARGET_ARCH}" +if [ -n "${CRAFT_TARGET_ARCH}" ]; then + # CRAFT_TARGET_ARCH is available - use it! + BUILDTIME_TARGET_ARCH="${CRAFT_TARGET_ARCH}" else - # If SNAPCRAFT_TARGET_ARCH is not available, parse the SNAPCRAFT_ARCH_TRIPLET and convert it - case ${SNAPCRAFT_ARCH_TRIPLET%%-*} in + # If CRAFT_TARGET_ARCH is not available, parse the CRAFT_ARCH_TRIPLET and convert it + case ${CRAFT_ARCH_TRIPLET%%-*} in x86_64) BUILDTIME_TARGET_ARCH="amd64" ;; diff --git a/.snapcraft.yaml b/.snapcraft.yaml index 1976c962019..76f528f4485 100644 --- a/.snapcraft.yaml +++ b/.snapcraft.yaml @@ -3,7 +3,7 @@ name: warzone2100 # no spaces, all lower-case adopt-info: warzone2100 # specify the *part* name confinement: strict grade: stable -base: core20 +base: core22 # Enable LZO compression for the snap compression: lzo @@ -18,17 +18,16 @@ architectures: layout: /usr/share/vulkan: symlink: $SNAP/usr/share/vulkan - /usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_intel.so: - symlink: $SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_intel.so - /usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_radeon.so: - symlink: $SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_radeon.so -# # Try the following once base is updated to core22 -# /usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_broadcom.so: -# symlink: $SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_broadcom.so -# /usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_freedreno.so: -# symlink: $SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_freedreno.so -# /usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_lvp.so: -# symlink: $SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libvulkan_lvp.so + /usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_intel.so: + symlink: $SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_intel.so + /usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_radeon.so: + symlink: $SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_radeon.so + /usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_broadcom.so: + symlink: $SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_broadcom.so + /usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_freedreno.so: + symlink: $SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_freedreno.so + /usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_lvp.so: + symlink: $SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/libvulkan_lvp.so plugs: wz2100-sequences: @@ -39,7 +38,7 @@ plugs: apps: warzone2100: - extensions: [gnome-3-38] + extensions: [gnome] command: usr/bin/warzone2100-launcher.sh warzone2100 common-id: net.wz2100.warzone2100 # should match the appdata/metainfo file's field desktop: usr/share/applications/net.wz2100.warzone2100.desktop @@ -71,8 +70,8 @@ parts: - --disable-nas - --disable-oss override-build: | - snapcraftctl build - sed -i 's|"/usr"|"'"$SNAPCRAFT_STAGE/usr"'"|g' "$SNAPCRAFT_PART_INSTALL/usr/lib/cmake/SDL2/sdl2-config.cmake" + craftctl default + sed -i 's|"/usr"|"'"$CRAFT_STAGE/usr"'"|g' "$CRAFT_PART_INSTALL/usr/lib/cmake/SDL2/sdl2-config.cmake" build-packages: - git - libdbus-1-dev @@ -136,8 +135,8 @@ parts: plugin: nil source: . override-build: | - mkdir -p "${SNAPCRAFT_PART_INSTALL}/usr/bin" - cp -av "${SNAPCRAFT_PART_SRC}/pkg/snap/warzone2100-launcher.sh" "${SNAPCRAFT_PART_INSTALL}/usr/bin/" + mkdir -p "${CRAFT_PART_INSTALL}/usr/bin" + cp -av "${CRAFT_PART_SRC}/pkg/snap/warzone2100-launcher.sh" "${CRAFT_PART_INSTALL}/usr/bin/" warzone2100: after: [sdl, launcher] @@ -148,27 +147,27 @@ parts: # and icon. Use the installed path relative to the Snap's root - usr/share/metainfo/net.wz2100.warzone2100.appdata.xml override-pull: | - snapcraftctl pull + craftctl default SNAP_VERSION_DESC=$(git describe --always | sed 's/[^a-zA-Z0-9\.\:\+\~\-]/~/g') - snapcraftctl set-version "${SNAP_VERSION_DESC}" + craftctl set version="${SNAP_VERSION_DESC}" git submodule update --init override-build: | - echo "SNAPCRAFT_TARGET_ARCH=${SNAPCRAFT_TARGET_ARCH}" - echo "SNAPCRAFT_ARCH_TRIPLET=${SNAPCRAFT_ARCH_TRIPLET}" + echo "CRAFT_TARGET_ARCH=${CRAFT_TARGET_ARCH}" + echo "CRAFT_ARCH_TRIPLET=${CRAFT_ARCH_TRIPLET}" # Install Vulkan SDK - . "${SNAPCRAFT_PART_SRC}/.ci/snap/install_vulkan_sdk.sh" + . "${CRAFT_PART_SRC}/.ci/snap/install_vulkan_sdk.sh" if [ -f ".snapenv" ]; then set -a; source .snapenv; set +a; fi set +u if [ -z "$WZ_DISTRIBUTOR" ]; then export WZ_DISTRIBUTOR="UNKNOWN"; fi - cmake -S "$SNAPCRAFT_PART_SRC" -B. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DWZ_ENABLE_WARNINGS:BOOL=ON -DWZ_DISTRIBUTOR:STRING="${WZ_DISTRIBUTOR}" -DWZ_OUTPUT_NAME_SUFFIX="${WZ_OUTPUT_NAME_SUFFIX}" -DWZ_NAME_SUFFIX="${WZ_NAME_SUFFIX}" -G"Ninja" + cmake -S "$CRAFT_PART_SRC" -B. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DWZ_ENABLE_WARNINGS:BOOL=ON -DWZ_DISTRIBUTOR:STRING="${WZ_DISTRIBUTOR}" -DWZ_OUTPUT_NAME_SUFFIX="${WZ_OUTPUT_NAME_SUFFIX}" -DWZ_NAME_SUFFIX="${WZ_NAME_SUFFIX}" -G"Ninja" cmake --build . -- -j$SNAPCRAFT_PARALLEL_BUILD_COUNT - DESTDIR=$SNAPCRAFT_PART_INSTALL cmake --build . -- install + DESTDIR=$CRAFT_PART_INSTALL cmake --build . -- install # Include the icon's path in the desktop file, not just the name. # This needs to happen post-build or the build versioning will show as "modified locally" - sed -i -E 's|Icon=(.*)|Icon=/usr/share/icons/\1.png|' $SNAPCRAFT_PART_INSTALL/usr/share/applications/net.wz2100.warzone2100.desktop + sed -i -E 's|Icon=(.*)|Icon=/usr/share/icons/\1.png|' $CRAFT_PART_INSTALL/usr/share/applications/net.wz2100.warzone2100.desktop build-packages: - asciidoctor - g++ @@ -228,16 +227,11 @@ parts: - warzone2100 plugin: nil build-snaps: # List all content-snaps and base snaps you're using here - - core20 + - core22 - gtk-common-themes - - gnome-3-38-2004 + - gnome-42-2204 override-prime: | set -eux - for snap in "core20" "gtk-common-themes" "gnome-3-38-2004"; do # List all content-snaps and base snaps you're using here - cd "/snap/$snap/current" && find . -type f,l -exec rm -f "$SNAPCRAFT_PRIME/{}" \; + for snap in "core22" "gtk-common-themes" "gnome-42-2204"; do # List all content-snaps and base snaps you're using here + cd "/snap/$snap/current" && find . -type f,l -exec rm -f "$CRAFT_PRIME/{}" \; done - # The following is required while using core18 + gnome-3-34 - # See: https://forum.snapcraft.io/t/undefined-symbol-hb-buffer-set-invisible-glyph-with-gnome-3-34/24287 - rm -f $SNAPCRAFT_PRIME/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libharfbuzz.so.0* - rm -f $SNAPCRAFT_PRIME/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libgio-2.0.so.0* - rm -f $SNAPCRAFT_PRIME/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/libglib-2.0.so.0*