Your IP : 216.73.216.179


Current Path : /snap/core26/462/snap/
Upload File :
Current File : //snap/core26/462/snap/manifest.yaml

snapcraft-version: 9.0.0
snapcraft-started-at: '2026-06-29T04:35:57.867643Z'
snapcraft-os-release-id: ubuntu
snapcraft-os-release-version-id: '26.04'
name: core26
version: '20260629'
summary: Runtime environment based on Ubuntu 26.04
description: |
  The base snap based on the Ubuntu 26.04 release.
base: null
grade: stable
confinement: strict
apps: null
parts:
  chisel-libs:
    plugin: nil
    build-packages:
    - golang
    - file
    source: https://github.com/canonical/chisel-ubuntu-core.git
    source-type: git
    source-branch: '26.04'
    override-build: "# We use a file with env vars in /build/core26 to decide whether\
      \ to\n# include cloud-init or not. This file can be manually created for local\n\
      # builds, or created here if we are running from a launchpad recipe with\n#\
      \ suffix -cloud-init. This is detected by looking at the\n# SNAPCRAFT_IMAGE_INFO\
      \ env var injected in LP, which tells us the build\n# url and has a form like:\n\
      #\n# {\n#   \"build-request-id\": \"lp-<id>\",\n#   \"build-request-timestamp\"\
      : \"<time>\",\n#   \"build_url\": \"https://launchpad.net/~ubuntu-core-service/+snap/core26-cloud-init/+build/<build_id>\"\
      \n# }\n#\n# (although in one line).\n(\n    cd \"/build/core26\"\n    touch\
      \ build-env\n    if printf \"$SNAPCRAFT_IMAGE_INFO\" | grep -q -- \"-cloud-init/+build\"\
      \n    then echo \"SNAP_BUILD_VARIANT=cloud-init\" > build-env\n    fi\n)\ngo\
      \ install github.com/canonical/chisel/cmd/chisel@latest\n\n# Define the system\
      \ utilities that we want to include in the base\n# These are the ones where\
      \ we can probably slim down the number of binaries\n# later on, but for now\
      \ we include them all to ensure maximum compatibility.\nUTILS=(\n  apparmor_bins\n\
      \  bash_bins\n  bzip2_scripts\n  coreutils-from-uutils_bins\n  diffutils_bins\n\
      \  dosfstools_bins\n  debianutils_which\n  debianutils_ischroot\n  debianutils_run-parts\n\
      \  file_bins\n  gdbserver_bins\n  gnu-coreutils_bins\n  gnutls-bin_bins\n  gpgv_bins\n\
      \  grep_bins\n  gzip_scripts\n  hostname_bins\n  iptables_bins\n  iputils-ping_bins\n\
      \  less_bins\n  login_bins\n  mawk_bins\n  ncurses-bin_bins\n  polkitd_bins\n\
      \  rfkill_bins\n  sed_bins\n  sudo-rs_bins\n  squashfs-tools_bins\n  tar_bins\n\
      \  util-linux_bins\n  util-linux-extra_hardware\n  util-linux-extra_process\n\
      \  util-linux-extra_login\n  vim-tiny_bins\n)\n\n# Define the system libraries\
      \ and services that we want to include in the base\n# \nSLICES=(\n  apparmor_extras\n\
      \  base-files_motd\n  base-files_release-info\n  base-files_root-defaults\n\
      \  bash-completion_config\n  bash-completion_completions\n  ca-certificates_data-with-certs\n\
      \  cracklib-runtime_bins\n  cryptsetup_bins\n  cryptsetup-bin_bins\n  dbus_services\n\
      \  dbus-user-session_services\n  dhcpcd-base_standard\n  distro-info-data_data\n\
      \  dmsetup_rules\n  e2fsprogs_services\n  e2fsprogs_standard\n  fdisk_bins\n\
      \  fonts-ubuntu_all\n  fonts-ubuntu_config\n  finalrd_services\n  iproute2_bins\n\
      \  kmod_bins\n  kmod_config\n\n  libc6_config\n  libc6_gconv\n  libc-bin_iconv\n\
      \  libc-bin_nsswitch\n  libc-bin_ldconfig\n  libc-bin_locale\n  libc-bin_getconf\n\
      \  libc-bin_getent\n\n  libpam-modules_config\n  libpam-modules_pam-config\n\
      \  libpam-pwquality_pam-config\n  libpam-modules-bin_standard\n  libpam-modules-bin_extrausers\n\
      \  libpam-modules-bin_namespace\n  libpam-modules-bin_timestamp\n  libpam-systemd_libs\n\
      \  libengine-pkcs11-openssl_libs\n  libgnutls30t64_config\n  libopts25_libs\n\
      \  libp11-3t64_libs\n  libnss-mdns_mdns4-minimal\n  libnss-extrausers_libs\n\
      \  libpam-pwquality_libs\n  libpciaccess0_libs\n  libwrap0_host-files\n  libx11-data_xerrordb\n\
      \  locales_standard\n\n  netcat-openbsd_bins\n  netplan.io_bins\n  ncurses-base_terminfo\n\
      \n  openssh-client_config\n  openssh-client_services\n  openssh-server_bins\n\
      \  openssh-server_config\n  openssh-server_services\n  openssl_bins\n  opensc_bins\n\
      \  p11-kit_bins\n  passwd_pam-config\n  polkitd_services\n  procps_bins\n  plymouth_bins\n\
      \  plymouth-label-ft_libs\n  procps_config\n\n  udev_services\n  util-linux_services\n\
      \  systemd_bash-completions\n  systemd_extras\n  systemd_run0\n  systemd_kernel-parameters\n\
      \  systemd_udev-rules\n  systemd_tpm2\n  systemd_standard\n  systemd_user-services\n\
      \  systemd-bootchart_services\n  systemd-coredump_bins\n  systemd-cryptsetup_bins\n\
      \  systemd-cryptsetup_services\n  systemd-resolved_bins\n  systemd-sysv_bins\n\
      \  systemd-timesyncd_services\n  systemd-zram-generator_services\n  \n  tzdata_zoneinfo\n\
      \  wpasupplicant_services\n)\n\n. \"/build/core26\"/build-env\nSNAP_BUILD_VARIANT=${SNAP_BUILD_VARIANT:-}\n\
      if [ \"$SNAP_BUILD_VARIANT\" = cloud-init ]; then\n    SLICES+=(cloud-init_bins)\n\
      fi\n\n# TODO: not sure about FIPS yet, this will have to come later, chisel\
      \ has builtin\n# support for ESM, meaning it's something we can request chisel\
      \ to do for us.\n# if [[ ${SNAP_FIPS_BUILD+x} ]]; then\n#   # Ensure vital crypt\
      \ packages are refreshed / downgraded and downloaded\n#   # from the FIPS ppa.\
      \ This should also contain openssh-server, but we already\n#   # have that one\
      \ listed above.\n#   SLICES+=(libgcrypt20 libgnutls30t64 openssl-fips-module-3\
      \ ssh)\n# fi\n\n# add architecture specific slices\ncase \"$(dpkg --print-architecture)\"\
      \ in\n    amd64|arm64)\n        SLICES+=(secureboot-db_services nvidia-kernel-common-595_bins\
      \ nvidia-kernel-common-595_modprobe-d-kms)\n        ;;\n    i386)\n        SLICES+=(secureboot-db_services)\n\
      \        ;;\n    riscv64)\n        SLICES+=(gdbserver_bins systemd-bootchart_services)\n\
      \        ;;\nesac\n\n# create the rootfs directory we install slices into\n\
      mkdir -p \"/build/core26/stage\"/base\n\n# Cut the initial slices into the rootfs\n\
      chisel cut \\\n  --release=\"${CRAFT_PART_SRC}\" \\\n  --root \"/build/core26/stage\"\
      /base \\\n  \"${SLICES[@]}\" \"${UTILS[@]}\" \\\n  base-files_chisel\n\n# Cut\
      \ foreign libraries we also need\ncase \"$(dpkg --print-architecture)\" in\n\
      \    amd64)\n        chisel cut \\\n          --arch=i386 \\\n          --release=\"\
      ${CRAFT_PART_SRC}\" \\\n          --root \"/build/core26/stage\"/base \\\n \
      \         libnss-mdns_mdns4-minimal libc6_libs libc6_gconv libc6_config libgcc-s1_libs\n\
      \        ;;\nesac\n\n# https://documentation.ubuntu.com/chisel/en/latest/reference/manifest/\n\
      # chisel automatically generates a manifest for the cut slices here:\n# $rootfs/var/lib/chisel/manifest.wall\n\
      # this is zstd compressed, and must therefor be uncompressed\n# unzstd ./manifest.wall\
      \ -o manifest.json\n"
    stage-packages: []
    stage: []
    prime: []
  snapd-files:
    plugin: nil
    source: .
    build-packages:
    - snapd
    after:
    - chisel-libs
    override-build: |
      mkdir -p "/build/core26/stage"/base/usr/lib/systemd/system-generators
      cp /usr/lib/systemd/system-generators/snapd-generator "/build/core26/stage"/base/usr/lib/systemd/system-generators/snapd-generator
      cp /usr/lib/tmpfiles.d/snapd.conf "/build/core26/stage"/base/usr/lib/tmpfiles.d/snapd.conf
    stage-packages: []
    stage: []
    prime: []
  generators:
    plugin: nil
    source: generators/
    build-packages:
    - cargo
    - rustc
    override-build: |
      cd "${CRAFT_PART_SRC}"
      cargo build --release
      strip target/release/ubuntu-core-generator
      mkdir -p "${CRAFT_PART_INSTALL}/usr/lib/core"
      install -m 755 target/release/ubuntu-core-generator \
        "${CRAFT_PART_INSTALL}/usr/lib/core/ubuntu-core-generator"
    stage-packages: []
    stage: []
    prime: []
  splash-theme:
    plugin: dump
    source: https://github.com/snapcore/plymouth-theme-ubuntu-core.git
    source-type: git
    organize:
      ubuntu-core: usr/share/plymouth/themes/ubuntu-core
      copyright: usr/share/doc/plymouth-theme-ubuntu-core/copyright
    stage:
    - -README.md
    stage-packages: []
    prime: []
    build-packages: []
  bootstrap:
    after:
    - chisel-libs
    - snapd-files
    plugin: make
    source: .
    build-packages:
    - shellcheck
    - distro-info
    - python3-debian
    - python3-requests
    - python3-yaml
    build-snaps:
    - core26=latest/beta
    override-pull: |
      craftctl default

      date_tag=$(./get-version.sh)

      # detect whether we are doing a fips build on LP
      if git remote get-url origin | grep "fips"; then
        craftctl set version="$date_tag"+fips
        echo "SNAP_BUILD_VARIANT=fips" > build-env
        echo "SNAP_BUILD_NAME=core26-fips" >> build-env
      else
        craftctl set version=$date_tag
        rm -f build-env
      fi
    override-prime: |
      craftctl default

      # run all the hooks
      cd ${CRAFT_PART_SRC} && make hooks DESTDIR=/build/core26/prime

      # ensure build-in tests are run
      cd ${CRAFT_PART_SRC} && make test TESTDIR=/build/core26/prime
    stage-packages: []
    stage: []
    prime: []
architectures:
- amd64
image-info:
  build-request-id: lp-114978268
  build-request-timestamp: '2026-06-29T04:30:45Z'
  build_url: https://launchpad.net/~ubuntu-core-service/+snap/core26/+build/3200515
build-packages: []
build-snaps: []
primed-stage-packages: []