snap: Transition to from core20 to core22

Closes #12219
This commit is contained in:
Joe Mooring 2024-03-09 08:47:53 -08:00 committed by GitHub
parent ca31b95f30
commit d24ffdde5b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,5 +1,5 @@
name: hugo name: hugo
base: core20 base: core22
confinement: strict confinement: strict
adopt-info: hugo adopt-info: hugo
title: Hugo title: Hugo
@ -75,19 +75,19 @@ environment:
npm_config_userconfig: $SNAP_USER_DATA/.npmrc npm_config_userconfig: $SNAP_USER_DATA/.npmrc
pandoc_datadir: $SNAP/usr/share/pandoc pandoc_datadir: $SNAP/usr/share/pandoc
PYTHONHOME: /usr:$SNAP/usr PYTHONHOME: /usr:$SNAP/usr
RUBYLIB: $SNAP/usr/lib/ruby/vendor_ruby/2.7.0:$SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/ruby/vendor_ruby/2.7.0:$SNAP/usr/lib/ruby/vendor_ruby:$SNAP/usr/lib/ruby/2.7.0:$SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/ruby/2.7.0 RUBYLIB: $SNAP/usr/lib/ruby/vendor_ruby/3.0.0:$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/ruby/vendor_ruby/3.0.0:$SNAP/usr/lib/ruby/vendor_ruby:$SNAP/usr/lib/ruby/3.0.0:$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/ruby/3.0.0
# HUGO_SECURITY_EXEC_OSENV # HUGO_SECURITY_EXEC_OSENV
# #
# Default value: # Default value:
# (?i)^((HTTPS?|NO)_PROXY|PATH(EXT)?|APPDATA|TE?MP|TERM|GO\w+|(XDG_CONFIG_)?HOME|USERPROFILE|SSH_AUTH_SOCK|DISPLAY|LANG)$ # (?i)^((HTTPS?|NO)_PROXY|PATH(EXT)?|APPDATA|TE?MP|TERM|GO\w+|(XDG_CONFIG_)?HOME|USERPROFILE|SSH_AUTH_SOCK|DISPLAY|LANG|SYSTEMDRIVE)$
# Bundled applications require additional access: # Bundled applications require additional access:
# git: GIT_EXEC_PATH and LD_LIBRARY_PATH # git: GIT_EXEC_PATH and LD_LIBRARY_PATH
# npx: npm_config_{cache,init_module,userconfig} # npx: npm_config_{cache,init_module,userconfig}
# pandoc: pandoc_datadir # pandoc: pandoc_datadir
# rst2html: PYTHONHOME and SNAP # rst2html: PYTHONHOME and SNAP
# asciidoctor: RUBYLIB # asciidoctor: RUBYLIB
HUGO_SECURITY_EXEC_OSENV: (?i)^((HTTPS?|NO)_PROXY|PATH(EXT)?|APPDATA|TE?MP|TERM|GO\w+|(XDG_CONFIG_)?HOME|USERPROFILE|SSH_AUTH_SOCK|DISPLAY|LANG|GIT_EXEC_PATH|LD_LIBRARY_PATH|npm_config_(cache|init_module|userconfig)|pandoc_datadir|PYTHONHOME|SNAP|RUBYLIB)$ HUGO_SECURITY_EXEC_OSENV: (?i)^((HTTPS?|NO)_PROXY|PATH(EXT)?|APPDATA|TE?MP|TERM|GO\w+|(XDG_CONFIG_)?HOME|USERPROFILE|SSH_AUTH_SOCK|DISPLAY|LANG|SYSTEMDRIVE|GIT_EXEC_PATH|LD_LIBRARY_PATH|npm_config_(cache|init_module|userconfig)|pandoc_datadir|PYTHONHOME|SNAP|RUBYLIB)$
apps: apps:
hugo: hugo:
command: bin/hugo command: bin/hugo
@ -116,7 +116,7 @@ parts:
go: go:
plugin: nil plugin: nil
stage-snaps: stage-snaps:
- go/1.21/stable - go/1.22/stable
prime: prime:
- bin/go - bin/go
- pkg/tool - pkg/tool
@ -129,12 +129,12 @@ parts:
- git - git
- go - go
override-pull: | override-pull: |
snapcraftctl pull craftctl default
snapcraftctl set-version "$(git describe --tags --always --match 'v[0-9]*' | sed 's/^v//; s/-/+git/; s/-g/./')" craftctl set version=$(git describe --tags --always --match 'v[0-9]*' | sed 's/^v//; s/-/+git/; s/-g/./')
if grep -q 'Suffix:\s*""' common/hugo/version_current.go; then if grep -q 'Suffix:\s*""' common/hugo/version_current.go; then
snapcraftctl set-grade "stable" craftctl set grade=stable
else else
snapcraftctl set-grade "devel" craftctl set grade=devel
fi fi
override-build: | override-build: |
echo "\nStarting override-build:" echo "\nStarting override-build:"
@ -152,15 +152,15 @@ parts:
echo " * Building shell completion..." echo " * Building shell completion..."
./hugo completion bash > hugo-completion ./hugo completion bash > hugo-completion
echo " * Installing to ${SNAPCRAFT_PART_INSTALL}..." echo " * Installing to ${CRAFT_PART_INSTALL}..."
install -d $SNAPCRAFT_PART_INSTALL/bin install -d $CRAFT_PART_INSTALL/bin
cp -av hugo $SNAPCRAFT_PART_INSTALL/bin/ cp -av hugo $CRAFT_PART_INSTALL/bin/
mv -v hugo-completion $SNAPCRAFT_PART_INSTALL/ mv -v hugo-completion $CRAFT_PART_INSTALL/
echo " * Stripping binary..." echo " * Stripping binary..."
ls -l $SNAPCRAFT_PART_INSTALL/bin/hugo ls -l $CRAFT_PART_INSTALL/bin/hugo
strip --remove-section=.comment --remove-section=.note $SNAPCRAFT_PART_INSTALL/bin/hugo strip --remove-section=.comment --remove-section=.note $CRAFT_PART_INSTALL/bin/hugo
ls -l $SNAPCRAFT_PART_INSTALL/bin/hugo ls -l $CRAFT_PART_INSTALL/bin/hugo
asciidoctor: asciidoctor:
plugin: nil plugin: nil
@ -168,8 +168,12 @@ parts:
- asciidoctor - asciidoctor
override-build: | override-build: |
set -ex set -ex
snapcraftctl build craftctl default
sed -i '1s|#!/usr/bin/ruby|#!/usr/bin/env ruby|' $SNAPCRAFT_PART_INSTALL/usr/bin/asciidoctor sed -i '1s|#!/usr/bin/ruby|#!/usr/bin/env ruby|' $CRAFT_PART_INSTALL/usr/bin/asciidoctor
# don't try and flock() gemspecs since this is blocked by AppArmor - see
# https://github.com/rubygems/rubygems/pull/5278 in particular
# https://github.com/rubygems/rubygems/pull/5278/commits/27b682c81226838b1254ac5843a3f5b1cb20f076
sed -i 's|!solaris_platform|win_platform|' $CRAFT_PART_INSTALL/usr/lib/ruby/vendor_ruby/rubygems.rb
dart-sass: dart-sass:
plugin: nil plugin: nil
@ -177,8 +181,8 @@ parts:
- curl - curl
override-build: | override-build: |
set -ex set -ex
snapcraftctl build craftctl default
case "$SNAPCRAFT_TARGET_ARCH" in case "$CRAFT_TARGET_ARCH" in
amd64) arch=x64 ;; amd64) arch=x64 ;;
arm64) arch=arm64 ;; arm64) arch=arm64 ;;
armhf) arch=arm ;; armhf) arch=arm ;;
@ -189,8 +193,8 @@ parts:
url=$(curl -s https://api.github.com/repos/sass/dart-sass/releases/latest | awk -F\" "/browser_download_url.*-linux-${arch}.tar.gz/{print \$(NF-1)}") url=$(curl -s https://api.github.com/repos/sass/dart-sass/releases/latest | awk -F\" "/browser_download_url.*-linux-${arch}.tar.gz/{print \$(NF-1)}")
curl -LO --retry-connrefused --retry 10 "${url}" curl -LO --retry-connrefused --retry 10 "${url}"
tar xf dart-sass-*-linux-${arch}.tar.gz tar xf dart-sass-*-linux-${arch}.tar.gz
install -d $SNAPCRAFT_PART_INSTALL/bin install -d $CRAFT_PART_INSTALL/bin
cp -av dart-sass/* $SNAPCRAFT_PART_INSTALL/bin/ cp -av dart-sass/* $CRAFT_PART_INSTALL/bin/
fi fi
node: node:
@ -209,7 +213,7 @@ parts:
- python3-docutils - python3-docutils
override-build: | override-build: |
set -ex set -ex
snapcraftctl build craftctl default
sed -i "s|'/usr/share/docutils/'|os.path.expandvars('\$SNAP/usr/share/docutils/')|" $SNAPCRAFT_PART_INSTALL/usr/lib/python3/dist-packages/docutils/__init__.py sed -i "s|'/usr/share/docutils/'|os.path.expandvars('\$SNAP/usr/share/docutils/')|" $CRAFT_PART_INSTALL/usr/lib/python3/dist-packages/docutils/__init__.py
organize: organize:
usr/share/docutils/scripts/python3: usr/bin usr/share/docutils/scripts/python3: usr/bin