The snapd roadmap

snapd 2.67

:white_check_mark: AppArmor prompting (experimental): allow overlapping rules
:white_check_mark: Registry view (experimental): Changes to registry data (from both users and snaps) can be validated and saved by custodian snaps
:white_check_mark: Registry view (experimental): Support ‘snapctl get --pristine’ to read the registry data excluding staged transaction changes
:white_check_mark: Registry view (experimental): Put registry commands behind experimental feature flag
:white_check_mark: Components: Make modules shipped/created by kernel-modules components available right after reboot
:white_check_mark: Components: Add tab completion for local component files
:white_check_mark: Components: Allow installing snaps and components from local files jointly on the CLI
:white_check_mark: Components: Allow ‘snapctl model’ command for gadget and kernel snaps
:white_check_mark: Components: Add ‘snap components’ command
:white_check_mark: Components: Bug fixes
:white_check_mark: eMMC gadget updates (WIP): add syntax support in gadget.yaml for eMMC schema
:white_check_mark: Support for ephemeral recovery mode on hybrid systems
:white_check_mark: Support for dm-verity options in snap-bootstrap
:white_check_mark: Support for overlayfs options and allow empty what argument for tmpfs
:white_check_mark: Enable ubuntu-image to determine the size of the disk image to create
:white_check_mark: Expose ‘snap debug’ commands ‘validate-seed’ and ‘seeding’
:white_check_mark: Add debug API option to use dedicated snap socket /run/snapd-snap.socket
:white_check_mark: Hide experimental features that are no longer required (accepted/rejected)
:white_check_mark: Mount ubuntu-save partition with no{exec,dev,suid} at install, run and factory-reset
:white_check_mark: Improve memory controller support with cgroup v2
:white_check_mark: Support ssh socket activation configurations (used by ubuntu 22.10+)
:white_check_mark: Fix generation of AppArmor profile with incorrect revision during multi snap refresh
:white_check_mark: Fix refresh app awareness related deadlock edge case
:white_check_mark: Fix not caching delta updated snap download
:white_check_mark: Fix passing non root uid, guid to initial tmpfs mount
:white_check_mark: Fix ignoring snaps in try mode when amending
:white_check_mark: Fix reloading of service activation units to avoid systemd errors
:white_check_mark: Fix snapd snap FIPS build on Launchpad to use Advantage Pro FIPS updates PPA
:white_check_mark: Make killing of snap apps best effort to avoid possibility of malicious failure loop
:white_check_mark: Alleviate impact of auto-refresh failure loop with progressive delay
:white_check_mark: Dropped timedatex in selinux-policy to avoid runtime issue
:white_check_mark: Fix missing syscalls in seccomp profile
:white_check_mark: Modify AppArmor template to allow using SNAP_REEXEC on arch systems
:white_check_mark: Modify AppArmor template to allow using vim.tiny (available in base snaps)
:white_check_mark: Modify AppArmor template to add read-access to debian_version
:white_check_mark: Modify AppArmor template to allow owner to read @{PROC}/@{pid}/sessionid
:white_check_mark: {common,personal,system}-files interface: prohibit trailing @ in filepaths
:white_check_mark: {desktop,shutdown,system-observe,upower-observe} interface: improve for Ubuntu Core Desktop
:white_check_mark: custom-device interface: allow @ in custom-device filepaths
:white_check_mark: desktop interface: improve launch entry and systray integration with session
:white_check_mark: desktop-legacy interface: allow DBus access to com.canonical.dbusmenu
:white_check_mark: fwupd interface: allow access to nvmem for thunderbolt plugin
:white_check_mark: mpris interface: add plasmashell as label
:white_check_mark: mount-control interface: add support for nfs mounts
:white_check_mark: network-{control,manager} interface: add missing dbus link rules
:white_check_mark: network-manager-observe interface: add getDevices methods
:white_check_mark: opengl interface: add Kernel Fusion Driver access to opengl
:white_check_mark: screen-inhibit-control interface: improve screen inhibit control for use on core
:white_check_mark: udisks2 interface: allow ping of the UDisks2 service
:white_check_mark: u2f-devices interface: add Nitrokey Passkey

:white_medium_square: beta 4 December 2024
:white_medium_square: candidate ~18 December 2024
:white_medium_square: stable ~10 January 2025

snapd 2.66.1

:white_check_mark: AppArmor prompting (experimental): expand kernel support checks
:white_check_mark: AppArmor prompting (experimental): consolidate error messages and add error kinds
:white_check_mark: AppArmor prompting (experimental): grant /v2/snaps/{name} via snap-interfaces-requests-control
:white_check_mark: AppArmor prompting (experimental): add checks for duplicate pattern variants
:white_check_mark: Registry views (experimental): add handlers that commit (and cleanup) registry transactions
:white_check_mark: Registry views (experimental): add a snapctl fail command for rejecting registry transactions
:white_check_mark: Registry views (experimental): allow custodian snaps to implement registry hooks that modify and save registry data
:white_check_mark: Registry views (experimental): run view-changed hooks only for snaps plugging views affected by modified paths
:white_check_mark: Registry views (experimental): make registry transactions serialisable
:white_check_mark: Snap components: handle refreshing components to revisions that have been on the system before
:white_check_mark: Snap components: enable creating Ubuntu Core images that contain components
:white_check_mark: Snap components: handle refreshing components independently of snaps
:white_check_mark: Snap components: handle removing components when refreshing a snap that no longer defines them
:white_check_mark: Snap components: extend snapd Ubuntu Core installation API to allow for picking optional snaps and components to install
:white_check_mark: Snap components: extend kernel.yaml with “dynamic-modules”, allowing kernel to define a location for kmods from component hooks
:white_check_mark: Snap components: renamed component type “test” to “standard”
:white_check_mark: Desktop IDs: support installing desktop files with custom names based on desktop-file-ids desktop interface plug attr
:white_check_mark: Auto-install snapd on classic systems as prerequisite for any non-essential snap install
:white_check_mark: Support loading AppArmor profiles on WSL2 with non-default kernel and securityfs mounted
:white_check_mark: Debian/Fedora packaging updates
:white_check_mark: Add snap debug command for investigating execution aspects of the snap toolchain
:white_check_mark: Improve snap pack error for easier parsing
:white_check_mark: Add support for user services when refreshing snaps
:white_check_mark: Add snap remove --terminate flag for terminating running snap processes
:white_check_mark: Support building FIPS complaint snapd deb and snap
:white_check_mark: Fix to not use nss when looking up for users/groups from snapd snap
:white_check_mark: Fix ordering in which layout changes are saved
:white_check_mark: Patch snapd snap dynamic linker to ignore LD_LIBRARY_PATH and related variables
:white_check_mark: Fix libexec dir for openSUSE Slowroll
:white_check_mark: Fix handling of the shared snap directory for parallel installs
:white_check_mark: Allow writing to /run/systemd/journal/dev-log by default
:white_check_mark: Avoid state lock during snap removal to avoid delaying other snapd operations
:white_check_mark: Add nomad-support interface to enable running Hashicorp Nomad
:white_check_mark: Add intel-qat interface
:white_check_mark: u2f-devices interface: add u2f trustkey t120 product id and fx series fido u2f devices
:white_check_mark: desktop interface: improve integration with xdg-desktop-portal
:white_check_mark: desktop interface: add desktop-file-ids plug attr to desktop interface
:white_check_mark: unity7 interface: support desktop-file-ids in desktop files rule generation
:white_check_mark: desktop-legacy interface: support desktop-file-ids in desktop files rule generation
:white_check_mark: desktop-legacy interface: grant access to gcin socket location
:white_check_mark: login-session-observe interface: allow introspection
:white_check_mark: custom-device interface: allow to explicitly identify matching device in udev tagging block
:white_check_mark: system-packages-doc interface: allow reading /usr/share/javascript
:white_check_mark: modem-manager interface: add new format of WWAN ports
:white_check_mark: pcscd interface: allow pcscd to read opensc.conf
:white_check_mark: cpu-control interface: add IRQ affinity control to cpu_control
:white_check_mark: opengl interface: add support for cuda workloads on Tegra iGPU in opengl interface

:white_check_mark: beta 22 October 2024
:white_check_mark: candidate 07 November 2024
:white_check_mark: stable 26 November 2024

snapd 2.65.3

:white_check_mark: Fix missing aux info from store on snap setup
:white_check_mark: Bump squashfuse from version 0.5.0 to 0.5.2 (used in snapd deb only)

:white_check_mark: beta 13 September 2024
:white_check_mark: candidate 18 September 2024
:white_medium_square: stable 8 October 2024 - HIGH IMPACT BUG - REVERTED TO SNAPD 2.63

snapd 2.65.1

:white_check_mark: Support building snapd using base Core22 (Snapcraft 8.x)
:white_check_mark: FIPS: support building FIPS complaint snapd variant that switches to FIPS mode when the system boots with FIPS enabled
:white_check_mark: AppArmor: update to latest 4.0.2 release
:white_check_mark: AppArmor: enable using ABI 4.0 from host parser
:white_check_mark: AppArmor: fix parser lookup
:white_check_mark: AppArmor: support AppArmor snippet priorities
:white_check_mark: AppArmor: allow reading cgroup memory.max file
:white_check_mark: AppArmor: allow using snap-exec coming from the snapd snap when starting a confined process with jailmode
:white_check_mark: AppArmor prompting (experimental): add checks for prompting support, include prompting status in system key, and restart snapd if prompting flag changes
:white_check_mark: AppArmor prompting (experimental): include prompt prefix in AppArmor rules if prompting is supported and enabled
:white_check_mark: AppArmor prompting (experimental): add common types, constraints, and mappings from AppArmor permissions to abstract permissions
:white_check_mark: AppArmor prompting (experimental): add path pattern parsing and matching
:white_check_mark: AppArmor prompting (experimental): add path pattern precedence based on specificity
:white_check_mark: AppArmor prompting (experimental): add packages to manage outstanding request prompts and rules
:white_check_mark: AppArmor prompting (experimental): add prompting API and notice types, which require snap-interfaces-requests-control interface
:white_check_mark: AppArmor prompting (experimental): feature flag can only be enabled if prompting is supported, handler service connected, and the service can be started
:white_check_mark: Registry views (experimental): rename from aspects to registries
:white_check_mark: Registry views (experimental): support reading registry views and setting/unsetting registry data using snapctl
:white_check_mark: Registry views (experimental): fetch and refresh registry assertions as needed
:white_check_mark: Registry views (experimental): restrict view paths from using a number as first character and view names to storage path style patterns
:white_check_mark: Snap components: support installing snaps and components from files at the same time (no REST API/CLI)
:white_check_mark: Snap components: support downloading components related assertions from the store
:white_check_mark: Snap components: support installing components from the store
:white_check_mark: Snap components: support removing components individually and during snap removal
:white_check_mark: Snap components: support kernel modules as components
:white_check_mark: Snap components: support for component install, pre-refresh and post-refresh hooks
:white_check_mark: Snap components: initial support for building systems that contain components
:white_check_mark: Refresh app awareness (experimental): add data field for /v2/changes REST API to allow associating each task with affected snaps
:white_check_mark: Refresh app awareness (experimental): use the app name from .desktop file in notifications
:white_check_mark: Refresh app awareness (experimental): give snap-refresh-observe interface access to /v2/snaps/{name} endpoint
:white_check_mark: Improve snap-confine compatibility with nvidia drivers
:white_check_mark: Allow re-exec when SNAP_REEXEC is set for unlisted distros to simplify testing
:white_check_mark: Allow mixing revision and channel on snap install
:white_check_mark: Generate GNU build ID for Go binaries
:white_check_mark: Add missing etelpmoc.sh for shell completion
:white_check_mark: Do not attempt to run snapd on classic when re-exec is disabled
:white_check_mark: Packaging/build maintenance for Debian sid, Fedora, Arch, openSuse
:white_check_mark: Add snap debug API command to enable running raw queries
:white_check_mark: Enable snap-confine snap mount directory detection
:white_check_mark: Replace global seccomp filter with deny rules in standard seccomp template
:white_check_mark: Remove support for Ubuntu Core Launcher (superseded by snap-confine)
:white_check_mark: Support creating pending serial bound users after serial assertion becomes available
:white_check_mark: Support disabling cloud-init using kernel command-line
:white_check_mark: In hybrid systems, apps can refresh without waiting for restarts required by essential snaps
:white_check_mark: Ship snap-debug-info.sh script used for system diagnostics
:white_check_mark: Improve error messages when attempting to run non-existent snap
:white_check_mark: Switch to -u UID:GID for strace-static
:white_check_mark: Support enabling snapd logging with snap set system debug.snapd.{log,log-level}
:white_check_mark: Add options system.coredump.enable and system.coredump.maxuse to support using systemd-coredump on Ubuntu Core
:white_check_mark: Provide documentation URL for ‘snap interface ’
:white_check_mark: Fix snapd riscv64 build
:white_check_mark: Fix restarting activated services instead of their activator units (i.e. sockets, timers)
:white_check_mark: Fix potential unexpected auto-refresh of snap on managed schedule
:white_check_mark: Fix potential segfault by guarding against kernel command-line changes on classic system
:white_check_mark: Fix proxy entries in /etc/environment with missing newline that caused later manual entries to not be usable
:white_check_mark: Fix offline remodelling by ignoring prerequisites that will otherwise be downloaded from store
:white_check_mark: Fix devmode seccomp deny regression that caused spamming the log instead of actual denies
:white_check_mark: Fix snap lock leak during refresh
:white_check_mark: Fix not re-pinning validation sets that were already pinned when enforcing new validation sets
:white_check_mark: Fix handling of unexpected snapd runtime failure
:white_check_mark: Fix /v2/notices REST API skipping notices with duplicate timestamps
:white_check_mark: Fix comparing systemd versions that may contain pre-release suffixes
:white_check_mark: Fix udev potentially starting before snap-device-helper is made available
:white_check_mark: Fix race in snap seed metadata loading
:white_check_mark: Fix treating cloud-init exit status 2 as error
:white_check_mark: Fix to prevent sending refresh complete notification if snap snap-refresh-observe interface is connected
:white_check_mark: Fix to queue snapctl service commands if run from the default-configure hook to ensure they get up-to-date config values
:white_check_mark: Fix stop service failure when the service is not actually running anymore
:white_check_mark: Fix parsing /proc/PID/mounts with spaces
:white_check_mark: Add registry interface that provides snaps access to a particular registry view
:white_check_mark: Add snap-interfaces-requests-control interface to enable prompting client snaps
:white_check_mark: steam-support interface: remove all AppArmor and seccomp restrictions to improve user experience
:white_check_mark: opengl interface: improve compatibility with nvidia drivers
:white_check_mark: home interface: autoconnect home on Ubuntu Core Desktop
:white_check_mark: serial-port interface: support RPMsg tty
:white_check_mark: display-control interface: allow changing LVDS backlight power and brightness
:white_check_mark: power-control interface: support for battery charging thesholds, type/status and AC type/status
:white_check_mark: cpu-control interface: allow CPU C-state control
:white_check_mark: raw-usb interface: support RPi5 and Thinkpad x13s
:white_check_mark: custom-device interface: allow device file locking
:white_check_mark: lxd-support interface: allow LXD to self-manage its own cgroup
:white_check_mark: network-manager interface: support MPTCP sockets
:white_check_mark: network-control interface: allow plug/slot access to gnutls config and systemd resolved cache flushing via D-Bus
:white_check_mark: network-control interface: allow wpa_supplicant dbus api
:white_check_mark: gpio-control interface: support gpiochip* devices
:white_check_mark: polkit interface: fix “rw” mount option check
:white_check_mark: u2f-devices interface: enable additional security keys
:white_check_mark: desktop interface: enable kde theming support

Schedule

:white_check_mark: beta 24 August 2024 - QA FAIL
:white_check_mark: candidate N/A
:white_medium_square: stable N/A

snapd 2.65

:white_check_mark: Support building snapd using base Core22 (Snapcraft 8.x)
:white_check_mark: FIPS: support building FIPS complaint snapd variant that switches to FIPS mode when the system boots with FIPS enabled
:white_check_mark: AppArmor: update to latest 4.0.2 release
:white_check_mark: AppArmor: enable using ABI 4.0 from host parser
:white_check_mark: AppArmor: fix parser lookup
:white_check_mark: AppArmor: support AppArmor snippet priorities
:white_check_mark: AppArmor: allow reading cgroup memory.max file
:white_check_mark: AppArmor: allow using snap-exec coming from the snapd snap when starting a confined process with jailmode
:white_check_mark: AppArmor prompting (experimental): add checks for prompting support, include prompting status in system key, and restart snapd if prompting flag changes
:white_check_mark: AppArmor prompting (experimental): include prompt prefix in AppArmor rules if prompting is supported and enabled
:white_check_mark: AppArmor prompting (experimental): add common types, constraints, and mappings from AppArmor permissions to abstract permissions
:white_check_mark: AppArmor prompting (experimental): add path pattern parsing and matching
:white_check_mark: AppArmor prompting (experimental): add path pattern precedence based on specificity
:white_check_mark: AppArmor prompting (experimental): add packages to manage outstanding request prompts and rules
:white_check_mark: AppArmor prompting (experimental): add prompting API and notice types, which require snap-interfaces-requests-control interface
:white_check_mark: AppArmor prompting (experimental): feature flag can only be enabled if prompting is supported, handler service connected, and the service can be started
:white_check_mark: Registry views (experimental): rename from aspects to registries
:white_check_mark: Registry views (experimental): support reading registry views and setting/unsetting registry data using snapctl
:white_check_mark: Registry views (experimental): fetch and refresh registry assertions as needed
:white_check_mark: Registry views (experimental): restrict view paths from using a number as first character and view names to storage path style patterns
:white_check_mark: Snap components: support installing snaps and components from files at the same time (no REST API/CLI)
:white_check_mark: Snap components: support downloading components related assertions from the store
:white_check_mark: Snap components: support installing components from the store
:white_check_mark: Snap components: support removing components individually and during snap removal
:white_check_mark: Snap components: support kernel modules as components
:white_check_mark: Snap components: support for component install, pre-refresh and post-refresh hooks
:white_check_mark: Snap components: initial support for building systems that contain components
:white_check_mark: Refresh app awareness (experimental): add data field for /v2/changes REST API to allow associating each task with affected snaps
:white_check_mark: Refresh app awareness (experimental): use the app name from .desktop file in notifications
:white_check_mark: Refresh app awareness (experimental): give snap-refresh-observe interface access to /v2/snaps/{name} endpoint
:white_check_mark: Improve snap-confine compatibility with nvidia drivers
:white_check_mark: Allow re-exec when SNAP_REEXEC is set for unlisted distros to simplify testing
:white_check_mark: Allow mixing revision and channel on snap install
:white_check_mark: Generate GNU build ID for Go binaries
:white_check_mark: Add missing etelpmoc.sh for shell completion
:white_check_mark: Do not attempt to run snapd on classic when re-exec is disabled
:white_check_mark: Packaging/build maintenance for Debian sid, Fedora, Arch, openSuse
:white_check_mark: Add snap debug API command to enable running raw queries
:white_check_mark: Enable snap-confine snap mount directory detection
:white_check_mark: Replace global seccomp filter with deny rules in standard seccomp template
:white_check_mark: Remove support for Ubuntu Core Launcher (superseded by snap-confine)
:white_check_mark: Support creating pending serial bound users after serial assertion becomes available
:white_check_mark: Support disabling cloud-init using kernel command-line
:white_check_mark: In hybrid systems, apps can refresh without waiting for restarts required by essential snaps
:white_check_mark: Ship snap-debug-info.sh script used for system diagnostics
:white_check_mark: Improve error messages when attempting to run non-existent snap
:white_check_mark: Switch to -u UID:GID for strace-static
:white_check_mark: Support enabling snapd logging with snap set system debug.snapd.{log,log-level}
:white_check_mark: Add options system.coredump.enable and system.coredump.maxuse to support using systemd-coredump on Ubuntu Core
:white_check_mark: Provide documentation URL for ‘snap interface ’
:white_check_mark: Fix restarting activated services instead of their activator units (i.e. sockets, timers)
:white_check_mark: Fix potential unexpected auto-refresh of snap on managed schedule
:white_check_mark: Fix potential segfault by guarding against kernel command-line changes on classic system
:white_check_mark: Fix proxy entries in /etc/environment with missing newline that caused later manual entries to not be usable
:white_check_mark: Fix offline remodelling by ignoring prerequisites that will otherwise be downloaded from store
:white_check_mark: Fix devmode seccomp deny regression that caused spamming the log instead of actual denies
:white_check_mark: Fix snap lock leak during refresh
:white_check_mark: Fix not re-pinning validation sets that were already pinned when enforcing new validation sets
:white_check_mark: Fix handling of unexpected snapd runtime failure
:white_check_mark: Fix /v2/notices REST API skipping notices with duplicate timestamps
:white_check_mark: Fix comparing systemd versions that may contain pre-release suffixes
:white_check_mark: Fix udev potentially starting before snap-device-helper is made available
:white_check_mark: Fix race in snap seed metadata loading
:white_check_mark: Fix treating cloud-init exit status 2 as error
:white_check_mark: Fix to prevent sending refresh complete notification if snap snap-refresh-observe interface is connected
:white_check_mark: Fix to queue snapctl service commands if run from the default-configure hook to ensure they get up-to-date config values
:white_check_mark: Fix stop service failure when the service is not actually running anymore
:white_check_mark: Fix parsing /proc/PID/mounts with spaces
:white_check_mark: Add registry interface that provides snaps access to a particular registry view
:white_check_mark: Add snap-interfaces-requests-control interface to enable prompting client snaps
:white_check_mark: steam-support interface: remove all AppArmor and seccomp restrictions to improve user experience
:white_check_mark: opengl interface: improve compatibility with nvidia drivers
:white_check_mark: home interface: autoconnect home on Ubuntu Core Desktop
:white_check_mark: serial-port interface: support RPMsg tty
:white_check_mark: display-control interface: allow changing LVDS backlight power and brightness
:white_check_mark: power-control interface: support for battery charging thesholds, type/status and AC type/status
:white_check_mark: cpu-control interface: allow CPU C-state control
:white_check_mark: raw-usb interface: support RPi5 and Thinkpad x13s
:white_check_mark: custom-device interface: allow device file locking
:white_check_mark: lxd-support interface: allow LXD to self-manage its own cgroup
:white_check_mark: network-manager interface: support MPTCP sockets
:white_check_mark: network-control interface: allow plug/slot access to gnutls config and systemd resolved cache flushing via D-Bus
:white_check_mark: network-control interface: allow wpa_supplicant dbus api
:white_check_mark: gpio-control interface: support gpiochip* devices
:white_check_mark: polkit interface: fix “rw” mount option check
:white_check_mark: u2f-devices interface: enable additional security keys
:white_check_mark: desktop interface: enable kde theming support

Schedule

:white_check_mark: beta 23 August 2024 - QA FAIL
:white_medium_square: candidate N/A
:white_medium_square: stable N/A

snapd 2.64

:white_check_mark: Support building snapd using base Core22 (Snapcraft 8.x)
:white_check_mark: FIPS: support building FIPS complaint snapd variant that switches to FIPS mode when the system boots with FIPS enabled
:white_check_mark: AppArmor: update to AppArmor 4.0.1
:white_check_mark: AppArmor: support AppArmor snippet priorities
:white_check_mark: AppArmor prompting: add checks for prompting support, include prompting status in system key, and restart snapd if prompting flag changes
:white_check_mark: AppArmor prompting: include prompt prefix in AppArmor rules if prompting is supported and enabled
:white_check_mark: AppArmor prompting: add common types, constraints, and mappings from AppArmor permissions to abstract permissions
:white_check_mark: AppArmor prompting: add path pattern parsing and matching
:white_check_mark: Registry views (experimental): rename from aspects to registries
:white_check_mark: Registry views (experimental): support reading registry views using snapctl
:white_check_mark: Registry views (experimental): restrict view paths from using a number as first character and view names to storage path style patterns
:white_check_mark: Snap components: support installing snaps and components from files at the same time (no REST API/CLI)
:white_check_mark: Snap components: support downloading components related assertions from the store
:white_check_mark: Snap components: support installing components from the store (no REST API/CLI)
:white_check_mark: Snap components: support removing components (REST API, no CLI)
:white_check_mark: Snap components: started support for component hooks
:white_check_mark: Snap components: support kernel modules as components
:white_check_mark: Refresh app awareness (experimental): add data field for /v2/changes REST API to allow associating each task with affected snaps
:white_check_mark: Refresh app awareness (experimental): use the app name from .desktop file in notifications
:white_check_mark: Refresh app awareness (experimental): give snap-refresh-observe interface access to /v2/snaps/{name} endpoint
:white_check_mark: Allow re-exec when SNAP_REEXEC is set for unlisted distros to simplify testing
:white_check_mark: Generate GNU build ID for Go binaries
:white_check_mark: Add missing etelpmoc.sh for shell completion
:white_check_mark: Do not attempt to run snapd on classic when re-exec is disabled
:white_check_mark: Packaging/build maintenance for Debian sid, Fedora, Arch, openSuse
:white_check_mark: Add snap debug api command to enable running raw queries
:white_check_mark: Enable snap-confine snap mount directory detection
:white_check_mark: Replace global seccomp filter with deny rules in standard seccomp template
:white_check_mark: Remove support for Ubuntu Core Launcher (superseded by snap-confine)
:white_check_mark: Support creating pending serial bound users after serial assertion becomes available
:white_check_mark: Support disabling cloud-init using kernel command-line
:white_check_mark: In hybrid systems, apps can refresh without waiting for restarts required by essential snaps
:white_check_mark: Ship snap-debug-info.sh script used for system diagnostics
:white_check_mark: Improve error messages when attempting to run non-existent snap
:white_check_mark: Switch to -u UID:GID for strace-static
:white_check_mark: Support enabling snapd logging with snap set system debug.snapd.{log,log-level}
:white_check_mark: Fix restarting activated services instead of their activator units (i.e. sockets, timers)
:white_check_mark: Fix potential unexpected auto-refresh of snap on managed schedule
:white_check_mark: Fix potential segfault by guarding against kernel command-line changes on classic system
:white_check_mark: Fix proxy entries in /etc/environment with missing newline that caused later manual entries to not be usable
:white_check_mark: Fix offline remodelling by ignoring prerequisites that will otherwise be downloaded from store
:white_check_mark: Fix devmode seccomp deny regression that caused spamming the log instead of actual denies
:white_check_mark: Fix snap lock leak during refresh
:white_check_mark: Fix not re-pinning validation sets that were already pinned when enforcing new validation sets
:white_check_mark: Fix handling of unexpected snapd runtime failure
:white_check_mark: Fix /v2/notices REST API skipping notices with duplicate timestamps
:white_check_mark: Fix comparing systemd versions that may contain pre-release suffixes
:white_check_mark: Fix udev potentially starting before snap-device-helper is made available
:white_check_mark: Fix race in snap seed metadata loading
:white_check_mark: Fix treating cloud-init exit status 2 as error
:white_check_mark: Fix to prevent sending refresh complete notification if snap snap-refresh-observe interface is connected
:white_check_mark: Fix to queue snapctl service commands if run from the default-configure hook to ensure they get up-to-date config values
:white_check_mark: Fix stop service failure when the service is not actually running anymore
:white_check_mark: Add registry interface that provides snaps access to a particular registry view
:white_check_mark: steam-support interface: relaxed AppArmor and seccomp restrictions to improve user experience
:white_check_mark: home interface: autoconnect home on Ubuntu Core Desktop
:white_check_mark: serial-port interface: support RPMsg tty
:white_check_mark: display-control interface: allow changing LVDS backlight power and brightness
:white_check_mark: power-control interface: support for battery charging thesholds, type/status and AC type/status
:white_check_mark: cpu-control interface: allow CPU C-state control
:white_check_mark: raw-usb interface: support RPi5 and Thinkpad x13s
:white_check_mark: custom-device interface: allow device file locking
:white_check_mark: lxd-support interface: allow LXD to self-manage its own cgroup
:white_check_mark: network-manager interface: support MPTCP sockets
:white_check_mark: network-control interface: allow plug/slot access to gnutls config and systemd resolved cache flushing via D-Bus

Schedule

:white_check_mark: beta 25 July 2024 - QA FAIL
:white_medium_square: candidate N/A
:white_medium_square: stable N/A

snapd 2.63

:white_check_mark: Support for snap services to show the current status of user services (experimental)
:white_check_mark: Refresh app awareness: record snap-run-inhibit notice when starting app from snap that is busy with refresh (experimental)
:white_check_mark: Refresh app awareness: use warnings as fallback for desktop notifications (experimental)
:white_check_mark: Aspect based configuration: make request fields in the aspect-bundle’s rules optional (experimental)
:white_check_mark: Aspect based configuration: make map keys conform to the same format as path sub-keys (experimental)
:white_check_mark: Aspect based configuration: make unset and set behaviour similar to configuration options (experimental)
:white_check_mark: Aspect based configuration: limit nesting level for setting value (experimental)
:white_check_mark: Components: use symlinks to point active snap component revisions
:white_check_mark: Components: add model assertion support for components
:white_check_mark: Components: fix to ensure local component installation always gets a new revision number
:white_check_mark: Add basic support for a CIFS remote filesystem-based home directory
:white_check_mark: Add support for AppArmor profile kill mode to avoid snap-confine error
:white_check_mark: Allow more than one interface to grant access to the same API endpoint or notice type
:white_check_mark: Allow all snapd service’s control group processes to send systemd notifications to prevent warnings flooding the log
:white_check_mark: Enable not preseeded single boot install
:white_check_mark: Update secboot to handle new sbatlevel
:white_check_mark: Fix to not use cgroup for non-strict confined snaps (devmode, classic)
:white_check_mark: Fix two race conditions relating to freedesktop notifications
:white_check_mark: Fix missing tunables in snap-update-ns AppArmor template
:white_check_mark: Fix rejection of snapd snap udev command line by older host snap-device-helper
:white_check_mark: Rework seccomp allow/deny list
:white_check_mark: Clean up files removed by gadgets
:white_check_mark: Remove non-viable boot chains to avoid secboot failure
:white_check_mark: posix_mq interface: add support for missing time64 mqueue syscalls mq_timedreceive_time64 and mq_timedsend_time64
:white_check_mark: password-manager-service interface: allow kwalletd version 6
:white_check_mark: kubernetes-support interface: allow SOCK_SEQPACKET sockets
:white_check_mark: system-observe interface: allow listing systemd units and their properties
:white_check_mark: opengl interface: enable use of nvidia container toolkit CDI config generation

Schedule

:white_check_mark: beta 24 Apr 2024
:white_check_mark: candidate 16 May 2024
:white_check_mark: stable 23 May 2024

snapd 2.62

:white_check_mark: Aspects based configuration schema support (experimental)
:white_check_mark: Refresh app awareness support for UI (experimental)
:white_check_mark: Support for user daemons by introducing new control switches --user/–system/–users for service start/stop/restart (experimental)
:white_check_mark: Add AppArmor prompting experimental flag (feature currently unsupported)
:white_check_mark: Installation of local snap components of type test
:white_check_mark: Packaging of components with snap pack
:white_check_mark: Expose experimental features supported/enabled in snapd REST API endpoint /v2/system-info
:white_check_mark: Support creating and removing recovery systems for use by factory reset
:white_check_mark: Enable API route for creating and removing recovery systems using /v2/systems with action create and /v2/systems/{label} with action remove
:white_check_mark: Lift requirements for fde-setup hook for single boot install
:white_check_mark: Enable single reboot gadget update for UC20+
:white_check_mark: Allow core to be removed on classic systems
:white_check_mark: Support for remodeling on hybrid systems
:white_check_mark: Install desktop files on Ubuntu Core and update after snapd upgrade
:white_check_mark: Upgrade sandbox features to account for cgroup v2 device filtering
:white_check_mark: Support snaps to manage their own cgroups
:white_check_mark: Add support for AppArmor 4.0 unconfined profile mode
:white_check_mark: Add AppArmor based read access to /etc/default/keyboard
:white_check_mark: Upgrade to squashfuse 0.5.0
:white_check_mark: Support useradd utility to enable removing Perl dependency for UC24+
:white_check_mark: Support for recovery-chooser to use console-conf snap
:white_check_mark: Add support for --uid/–gid using strace-static
:white_check_mark: Add support for notices (from pebble) and expose via the snapd REST API endpoints /v2/notices and /v2/notice
:white_check_mark: Add polkit authentication for snapd REST API endpoints /v2/snaps/{snap}/conf and /v2/apps
:white_check_mark: Add refresh-inhibit field to snapd REST API endpoint /v2/snaps
:white_check_mark: Add refresh-inhibited select query to REST API endpoint /v2/snaps
:white_check_mark: Take into account validation sets during remodeling
:white_check_mark: Improve offline remodeling to use installed revisions of snaps to fulfill the remodel revision requirement
:white_check_mark: Add rpi configuration option sdtv_mode
:white_check_mark: When snapd snap is not installed, pin policy ABI to 4.0 or 3.0 if present on host
:white_check_mark: Fix gadget zero-sized disk mapping caused by not ignoring zero sized storage traits
:white_check_mark: Fix gadget install case where size of existing partition was not correctly taken into account
:white_check_mark: Fix trying to unmount early kernel mount if it does not exist
:white_check_mark: Fix restarting mount units on snapd start
:white_check_mark: Fix call to udev in preseed mode
:white_check_mark: Fix to ensure always setting up the device cgroup for base bare and core24+
:white_check_mark: Fix not copying data from newly set homedirs on revision change
:white_check_mark: Fix leaving behind empty snap home directories after snap is removed (resulting in broken symlink)
:white_check_mark: Fix to avoid using libzstd from host by adding to snapd snap
:white_check_mark: Fix autorefresh to correctly handle forever refresh hold
:white_check_mark: Fix username regex allowed for system-user assertion to not allow ‘+’
:white_check_mark: Fix incorrect application icon for notification after autorefresh completion
:white_check_mark: Fix to restart mount units when changed
:white_check_mark: Fix to support AppArmor running under incus
:white_check_mark: Fix case of snap-update-ns dropping synthetic mounts due to failure to match desired mount dependencies
:white_check_mark: Fix parsing of base snap version to enable pre-seeding of Ubuntu Core Desktop
:white_check_mark: Fix packaging and tests for various distributions
:white_check_mark: Add remoteproc interface to allow developers to interact with Remote Processor Framework which enables snaps to load firmware to ARM Cortex microcontrollers
:white_check_mark: Add kernel-control interface to enable controlling the kernel firmware search path
:white_check_mark: Add nfs-mount interface to allow mounting of NFS shares
:white_check_mark: Add ros-opt-data interface to allow snaps to access the host /opt/ros/ paths
:white_check_mark: Add snap-refresh-observe interface that provides refresh-app-awareness clients access to relevant snapd API endpoints
:white_check_mark: steam-support interface: generalize Pressure Vessel root paths and allow access to driver information, features and container versions
:white_check_mark: steam-support interface: make implicit on Ubuntu Core Desktop
:white_check_mark: desktop interface: improved support for Ubuntu Core Desktop and limit autoconnection to implicit slots
:white_check_mark: cups-control interface: make autoconnect depend on presence of cupsd on host to ensure it works on classic systems
:white_check_mark: opengl interface: allow read access to /usr/share/nvidia
:white_check_mark: personal-files interface: extend to support automatic creation of missing parent directories in write paths
:white_check_mark: network-control interface: allow creating /run/resolveconf
:white_check_mark: network-setup-control and network-setup-observe interfaces: allow busctl bind as required for systemd 254+
:white_check_mark: libvirt interface: allow r/w access to /run/libvirt/libvirt-sock-ro and read access to /var/lib/libvirt/dnsmasq/**
:white_check_mark: fwupd interface: allow access to IMPI devices (including locking of device nodes), sysfs attributes needed by amdgpu and the COD capsule update directory
:white_check_mark: uio interface: allow configuring UIO drivers from userspace libraries
:white_check_mark: serial-port interface: add support for NXP Layerscape SoC
:white_check_mark: lxd-support interface: add attribute enable-unconfined-mode to require LXD to opt-in to run unconfined
:white_check_mark: block-devices interface: add support for ZFS volumes
:white_check_mark: system-packages-doc interface: add support for reading jquery and sphinx documentation
:white_check_mark: system-packages-doc interface: workaround to prevent autoconnect failure for snaps using base bare
:white_check_mark: microceph-support interface: allow more types of block devices to be added as an OSD
:white_check_mark: mount-observe interface: allow read access to /proc/{pid}/task/{tid}/mounts and proc/{pid}/task/{tid}/mountinfo
:white_check_mark: polkit interface: changed to not be implicit on core because installing policy files is not possible
:white_check_mark: upower-observe interface: allow stats refresh
:white_check_mark: gpg-public-keys interface: allow creating lock file for certain gpg operations
:white_check_mark: shutdown interface: allow access to SetRebootParameter method
:white_check_mark: media-control interface: allow device file locking
:white_check_mark: u2f-devices interface: support for Trustkey G310H, JaCarta U2F, Kensington VeriMark Guard, RSA DS100, Google Titan v2

Schedule

:white_check_mark: beta 21 Mar 2024
:white_check_mark: candidate 8 Apr 2024
:white_check_mark: stable 15 Apr 2024

snapd 2.61.2

:white_check_mark: Fix to enable plug/slot sanitization for prepare-image
:white_check_mark: Fix panic when device-service.access=offline
:white_check_mark: Support offline remodeling
:white_check_mark: Allow offline update only remodels without serial
:white_check_mark: Fail early when remodeling to old model revision
:white_check_mark: Fix to enable plug/slot sanitization for validate-seed
:white_check_mark: Allow removal of core snap on classic systems
:white_check_mark: Fix network-control interface denial for file lock on /run/netns
:white_check_mark: Add well-known core24 snap-id
:white_check_mark: Fix remodel snap installation order
:white_check_mark: Prevent remodeling from UC18+ to UC16
:white_check_mark: Fix cups auto-connect on classic with cups snap installed
:white_check_mark: u2f-devices interface support for GoTrust Idem Key with USB-C
:white_check_mark: Fix to restore services after unlink failure
:white_check_mark: Add libcudnn.so to Nvidia libraries
:white_check_mark: Fix skipping base snap download due to false snapd downgrade conflict

Schedule

:white_check_mark: beta 18 Feb 2024
:white_check_mark: candidate 29 Feb 2024
:white_check_mark: stable 4 Mar 2024

snapd 2.61.1

:white_check_mark: Stop requiring default provider snaps on image building and first boot if alternative providers are included and available
:white_check_mark: Fix auth.json access for login as non-root group ID
:white_check_mark: Fix incorrect remodelling conflict when changing track to older snapd version
:white_check_mark: Improved check-rerefresh message
:white_check_mark: Fix UC16/18 kernel/gadget update failure due volume mismatch with installed disk
:white_check_mark: Stop auto-import of assertions during install modes
:white_check_mark: Desktop interface exposes GetIdletime
:white_check_mark: Polkit interface support for new polkit versions
:white_check_mark: Fix not applying snapd snap changes in tracked channel when remodelling
:white_check_mark: Fix control of activated services in ‘snap start’ and ‘snap stop’
:white_check_mark: Correctly reflect activated services in ‘snap services’
:white_check_mark: Disabled services are no longer enabled again when snap is refreshed
:white_check_mark: Interfaces/builtin: added support for Token2 U2F keys
:white_check_mark: Interfaces/u2f-devices: add Swissbit iShield Key
:white_check_mark: Interfaces/builtin: update gpio apparmor to match pattern that contains multiple subdirectories under /sys/devices/platform
:white_check_mark: Interfaces: add a polkit-agent interface
:white_check_mark: Interfaces: add pcscd interface
:white_check_mark: Kernel command-line can now be edited in the gadget.yaml
:white_check_mark: Only track validation-sets in run-mode, fixes validation-set issues on first boot
:white_check_mark: Added support for using store.access to disable access to snap store
:white_check_mark: Support for fat16 partition in gadget
:white_check_mark: Pre-seed authority delegation is now possible
:white_check_mark: Support new system-user name daemon
:white_check_mark: Several bug fixes and improvements around remodelling
:white_check_mark: Offline remodelling support

Schedule

:white_check_mark: beta 29 Nov 2023
:white_check_mark: candidate 14 Dec 2023
:white_check_mark: stable 03 Jan 2024

snapd 2.60.3

:white_check_mark: Bugfixes
:white_check_mark: Use “aes-cbc-essiv:sha256” in cryptsetup on arm 32bit devices to increase speed on devices with CAAM support
:white_check_mark: Stop using -O no-expr-simplify in apparmor_parser to avoid potential exponential memory use. This can lead to slower policy complication in some cases but it is much safer on low memory devices.
:white_check_mark: Support for dynamic snapshot data exclusions
:white_check_mark: Apparmor userspace is vendored inside the snapd snap
:white_check_mark: Added a default-configure hook that exposes gadget default configuration options to snaps during first install before services are started
:white_check_mark: Allow install from initrd to speed up the initial installation for systems that do not have a install-device hook
:white_check_mark: New snap sign --chain flag that appends the account and account-key assertions
:white_check_mark: Support validation-sets in the model assertion :white_check_mark: Support new “min-size” field in gadget.yaml :white_check_mark: New interface: “userns”

Schedule

:white_check_mark: beta Jul 04
:white_check_mark: candidate Aug 31
:white_check_mark: stable Sep 02

snapd 2.59

:white_check_mark: Support setting extra kernel command line parameters via snap configuration and under a gadget allow-list
:white_check_mark: Support for Full-Disk-Encryption using ICE
:white_check_mark: Support for arbitrary home dir locations via snap configuration
:white_check_mark: New nvidia-drivers-support interface
:white_check_mark: Support for udisks2 snap
:white_check_mark: Pre-download of snaps ready for refresh and automatic refresh of the snap when all apps are closed
:white_check_mark: New microovn interface
:white_check_mark: Support uboot with CONFIG_SYS_REDUNDAND_ENV=n
:white_check_mark: Make “snap-preseed --reset” re-exec when needed
:white_check_mark: Update the fwupd interface to support fully confined fwupd
:white_check_mark: The memory,cpu,thread quota options are no longer experimental
:white_check_mark: Support debugging snap client requests via the SNAPD_CLIENT_DEBUG_HTTP environment variable
:white_check_mark: Support ssh listen-address via snap configuration
:white_check_mark: Support for quotas on single services
:white_check_mark: prepare-image now takes into account snapd versions going into the image, including in the kernel initrd, to fetch supported assertion formats

Schedule

:white_check_mark: beta Mar 10
:white_check_mark: candidate Mar 20
:white_check_mark: stable Mar 27

snapd 2.58

:white_check_mark: snap refresh --hold support (Refresh control)
:white_check_mark: new users.lockout configuration option
:white_check_mark: support auto import assertions on first boot (https://github.com/snapcore/snapd/pull/11797)

Schedule

:white_check_mark: beta Dec 01
:white_check_mark: candidate Dec 12
:white_check_mark: stable Jan 09

snapd 2.56

:white_check_mark: support “starred” developers
:white_check_mark: factory reset support for unencrypted devices

Schedule

:white_check_mark: beta May 17
:white_check_mark: candidate May 31
:white_check_mark: stable Jun 06

previous

Expand

snapd 2.55.3

:white_check_mark: Fix refresh layout construction (fixes Firefox crash)
:white_check_mark: Support for the “piboot” bootloader
:white_check_mark: Interface operations are faster by using more batched operations
:white_check_mark: New mount-control interface (topic)
:white_check_mark: New polkit interface (topic)

Schedule

:white_check_mark: beta Mar 21
:white_check_mark: candidate Apr 08
:white_check_mark: stable Apr 20

snapd 2.54.2

:white_check_mark: New shared-memory interface (topic)
:white_check_mark: Allow sideload of multiple snaps via the API
:white_check_mark: riscv64 support for snap-seccomp
:white_check_mark: fixes/improvements for various interfaces

Schedule

:white_check_mark: beta Jan 07
:white_check_mark: candidate Jan 13
:white_check_mark: stable Jan 24

snapd 2.51

:white_check_mark: New swap.size system config setting for Ubuntu Core devices
:white_check_mark: Full kernel command line customization for UC20 pc/grub gadgets
:white_check_mark: REST API support for creating recovery systems on UC20
:white_check_mark: New raw-input interface
:white_check_mark: New dsp interface
:white_check_mark: New sd-control interface (2.51.3)
:white_check_mark: New netlink-driver interface (2.51.1)
:white_check_mark: New install-device gadget hook to be executed during install mode on UC20
:white_check_mark: New snapctl reboot --poweroff|--halt command to be used in install-device hook to shut device off after install mode (but before first boot seeding in run mode)
:white_check_mark: New snapctl reboot system-mode command to be report what mode a UC20 system is in.
:white_check_mark: New kernel FDE hook V2 for UC20 devices
:white_check_mark: Experimental quota resource groups support

Schedule

:white_check_mark: beta May 27
:white_check_mark: candidate June 3
:white_check_mark: stable June 7

snapd 2.50

:white_check_mark: Make /etc/ssl available for snaps on Ubuntu classic (PR)
:white_check_mark: Support for DTBs from the kernel snap
:white_check_mark: Snap service units are now re-written when snapd is refreshed as necessary
:white_check_mark: New dsp interface

Schedule

:white_check_mark: beta May 19
:white_check_mark: candidate May 21
:white_check_mark: stable June 2

snapd 2.49

:white_check_mark: Express encryption preferences for UC20
:white_check_mark: Devmode snaps in dangerous model UC20 seeds
:white_check_mark: Support for LK bootloader for UC20
:white_check_mark: Detection/abort of very slow downloads
:white_check_mark: Fix snap try inside lxd containers
:white_check_mark: Add “Tegra” and RPi “MMAL” support
:white_check_mark: Add new “install-mode: disable” option

Schedule

:white_check_mark: beta Jan 26
:white_check_mark: candidate Feb 25
:white_check_mark: stable Mar 04

snapd 2.48

:white_check_mark: Support for the “ubuntu-save” partition
:white_check_mark: More versatile UC20 recovery booting in “degraded” situations
:white_check_mark: Bulk assertion refresh for snap-declarations
:white_check_mark: New snap recovery --show-keys command
:white_check_mark:Improve notification UI for app-refresh-awareness
:white_check_mark:New PTP hardware clock interface
:white_check_mark:New snap import-snapshot command

Schedule

:white_check_mark: beta Sep 17
:white_check_mark: candidate Nov 19
:white_check_mark: stable Nov 30

snapd 2.47

:white_check_mark: better portal support with GLib (PR) :white_check_mark: add cups interface and update cups-control for cups as a strict snap (PR) :white_check_mark: disable console-conf from gadget with core setting (PR) :white_check_mark: Improve disk-space awareness of snapd (topic) :white_check_mark: New “snap reboot” command

Schedule

:white_check_mark: beta Sep 17
:white_check_mark: candidate Sep 29
:white_check_mark: stable Oct 21

snapd 2.46

:white_check_mark: uinput interface (PR) :white_check_mark: system-source-code interface (PR) :white_check_mark: system-packages-doc interface (PR) :white_check_mark: snaps can now set default-url-scheme-handler :white_check_mark: system-user assertions can be limited to specific serial assertions :white_check_mark: experimental user session daemons with daemon-scope (PR) :white_check_mark: experimental gdbserver support with snaps (topic)

Schedule

:white_check_mark: beta Aug 12
:white_check_mark: candidate Aug 25
:white_check_mark: stable Sep 14

snapd 2.45

:white_check_mark: Ubuntu Core 20 beta :white_check_mark: Generic serials for third parties :white_check_mark: Use xdg desktop portal from snapctl user-open :white_check_mark: Custom SSL cert support for store interactions (topic).

Schedule

:white_check_mark: beta May 13
:white_check_mark: candidate May 12
:white_check_mark: stable Jul 15

snapd 2.44

:white_check_mark: Switch within tracks with risk-only channel specification (old topic, new topic) :white_check_mark: Support for default tracks (topic) :white_check_mark: Plug/slot rules: plug-names/slot-names constraints (topic) :white_check_mark: snap remove-user support

Schedule

:white_check_mark: beta Feb 21
:white_check_mark: candidate Mar 16
:white_check_mark: stable March 31

snapd 2.43

:white_check_mark: snapctl is-connected plug|slot (topic) :white_check_mark: Remodel: gadget support :white_check_mark: Plug/slot declaration rules: greedy plugs (topic) :white_check_mark: system-backup interface (PR) :white_check_mark: Speedup seccomp backend setup (PR)

Schedule

:white_check_mark: beta Nov 12th
:white_check_mark: candidate Feb 13th
:white_check_mark: stable Feb 19th

snapd 2.42

:white_check_mark: Little-Kernel bootloader support :white_check_mark: Improve performance in lxd when snapfuse is used (topic) :white_check_mark: Work with cgroup v2 only systems :white_check_mark: Improved icon-theme support (topic)

Schedule

:white_check_mark: beta Sep 18th
:white_check_mark: candidate Oct 2st
:white_check_mark: stable Oct 10th

snapd 2.41

:white_check_mark: Daemon user support (topic, older topic) :white_check_mark: Gadget asset updates (topic) :white_check_mark: Remodel: transition to a new store (topic) :white_check_mark: Remodel: re-registration (topic) :white_check_mark: Health checks phase 1 (topic)

Schedule

:white_check_mark: beta Aug 22th
:white_check_mark: candidate Sep 3th
:white_check_mark: stable Sep 9th

snapd 2.40

:white_check_mark: Cohort support (topic) :white_check_mark: Much improved performance measure (topic) :white_check_mark: Refresh awareness - Part 1 (topic) :white_check_mark: Support for “base: none”

Schedule

:white_check_mark: beta July 2nd
:white_check_mark: candidate July 17th
:white_check_mark: stable Aug 12th

snapd 2.39

:white_check_mark: Automatic snapshots on removal (topic) :white_check_mark: Auto install snpad for non-core base snaps :white_check_mark: Remodel API/cli with support for switching kernel tracks/required-snaps within the same model :white_check_mark: Use the “core” snap as a fallback for “core16” :white_check_mark: Retain only 2 snap revision on classic systems :white_check_mark: Optimize seccomp bpf compilation

Schedule

:white_check_mark: beta Apr 18th
:white_check_mark: candidate May 03th
:white_check_mark: stable May 14th

snapd 2.38

:white_check_mark: snap connections command (topic) :white_check_mark: Epochs (stepped upgrades) (topic) :white_check_mark: Improved prepare-image channel selection support (topic) :white_check_mark: Support for apparmor 2.13 :white_check_mark: Minimal go version switch to 1.9 :white_check_mark: New intel-mei,multipass-support,network-manager-observe, u2f-devices,block-devices interfaces :white_check_mark: Initial performance measures available (topic)

Schedule

:white_check_mark: beta Mar 05th
:white_check_mark: candidate Mar 20th
:white_check_mark: stable Mar 28th

snapd 2.37

:white_check_mark: Snapshots (topic) :white_check_mark: Interface hooks (topic) :white_check_mark: Parallel snap installs for confined snaps (topic) :white_check_mark: Show the date the snap was released to a channel in snap info (topic) :white_check_mark: The personal-files and system-files interfaces (topic) and (topic) :white_check_mark: Add new snap run --trace-exec <snap>.<app> support (topic)

Schedule

:white_check_mark: beta Jan 10
:white_check_mark: candidate Jan 16th
:white_check_mark: stable Jan 30h

snapd 2.36

:white_check_mark: Warnings pipeline infrastructure (topic) :white_check_mark: Go into socket activtion mode no snaps are installed :white_check_mark: Much improved snap help output :white_check_mark: Support core config proxy on classic :white_check_mark: Support rate-limit of background refreshes via core.refresh.rate-limit core config option :white_check_mark: Honor core config proxy.http{,s} settings on classic as well :white_check_mark: Warn when prerequisites to run snapd (like minimal kernel version) are not met

Schedule

:white_check_mark: beta Oct 02h
:white_check_mark: candidate Nov 12th
:white_check_mark: stable Nov 20th

snapd 2.35

:white_check_mark: Support to build/seed core18 based images :white_check_mark: Interface improvements: i2c (sysfs-name support) :white_check_mark: apt install hook integration, apt may suggest snaps :white_check_mark: Allow building amazon linux rpm packages :white_check_mark: Show verified publishers with a green check mark

Schedule

:white_check_mark: beta Aug 08h
:white_check_mark: candidate Aug 21th
:white_check_mark: stable Aug 29th

snapd 2.34

:white_check_mark: Interface connection via gadget (topic) :white_check_mark: Hardware watchdog on Ubuntu Core :white_check_mark: New dvb interface (topic) :white_check_mark: New {contacts,calendar}-service interfaces :white_check_mark: Snapd selftest check on startup (topic) :white_check_mark: New can-bus interface :white_check_mark: Support to disable ipv6 via snap set system network.disable-ipv6

Schedule

:white_check_mark: beta Jun 29th
:white_check_mark: candidate Jul 30th
:white_check_mark: stable Aug 6th

snapd 2.33

:white_check_mark: Reboot experience on core or kernel refresh :white_check_mark: Service watchdog support (topic) :white_check_mark: Support for appstream ID :white_check_mark: Selftest support to ensure squashfs can be mounted :white_check_mark: New juju-client-observer interface :white_check_mark: Snap refresh over metered connections :white_check_mark: Snapd support for xdg-desktop-portal

Schedule

:white_check_mark: beta May 24th
:white_check_mark: candidate Jun 08th
:white_check_mark: stable Jun 18th

snapd 2.32

:white_check_mark: Auto install of content snap dependencies :white_check_mark: Versionized profiles :white_check_mark: Layouts (custom mount points) (topic) :white_check_mark: Support to pass options to strace (topic) :white_check_mark: Support for service timers (topic) :white_check_mark: Support for CDNs that are cloud aware (topic) :white_check_mark: Support for snap run --gdb :white_check_mark: Service survival across refreshes (topic) :white_check_mark: Timer services (topic) :white_check_mark: Refresh hold option (topic) :white_check_mark: Autostart desktop applications (topic) :white_check_mark: Support for stop-mode (topc)

Schedule

:white_check_mark: beta Feb 23th
:white_check_mark: candidate Mar 22th
:white_check_mark: stable Apr 10th

snapd 2.31

:white_check_mark: Snap service start ordering (topic) :white_check_mark: Refresh snaps with needed credentials (topic) :white_check_mark: Use snapcraft export-login data in snap {download,prepare-image} :white_check_mark: Additional coherence check on installs (topic) :white_check_mark: Monthly refresh scheduling (topic) :white_check_mark: Command-not-found support on core (topic) :white_check_mark: Support xdg-settings set default-web-browser from within snaps (topic) :white_check_mark: Support snap run --strace (topic) :white_check_mark: Support for snap refresh --amend local-snap :white_check_mark: Content interface improvements (topic)

Schedule

:white_check_mark: beta Jan 22th
:white_check_mark: candidate Feb 05th
:white_check_mark: stable Feb 19th

snapd 2.30

:white_check_mark: Service control on snapctl (start/stop/etc) (topic) :white_check_mark: Tab-completion for aliases too (topic) :white_check_mark: Add support for socket activation (topic) :white_check_mark: Pre-refresh hook support (topic) :white_check_mark: Allow to configure core before it is installed :white_check_mark: Run configuration of core internally
:white_check_mark: Support for Nvidia Vulkan/32-it NVIDIA drivers

Schedule

:white_check_mark: beta Nov 30th
:white_check_mark: candidate Dec 11th
:white_check_mark: stable Jan 02th

snapd 2.29

:white_check_mark: Improved configuration get output (topic) :white_check_mark: Automatic download of base snaps (topic) :white_check_mark: Support $ variables in command: (topic) :white_check_mark: Fix classic flag on reverts (topic) :white_check_mark: Cache downloaded snaps (topic) :white_check_mark: Repair capability phase 1 (topic) :white_check_mark: Make –ignore-validation sticky and send the flag over (topic) :white_check_mark: Improved progress information on long operations

Schedule

:white_check_mark: beta Oct 23th
:white_check_mark: candidate Oct 30th
:white_check_mark: stable Dec 04th

snapd 2.28

:white_check_mark: Internal xdg-open implementation (topic) :white_check_mark: Post-refresh hook support (topic) :white_check_mark: Lazy registrations on classic (topic) :white_check_mark: Service control on snap command (start/stop/etc) (topic) :white_check_mark: Tab-completion for snaps (topic) :white_check_mark: Polkit-based authorizations (topic) :white_check_mark: Initial support for base snaps (topic) :white_check_mark: Snap switch command (topic) :white_check_mark: Proxy configuration for core devices (topic) :white_check_mark: Support for /snap as symlink (topic)

Schedule

:white_check_mark: beta Sep 4th
:white_check_mark: candidate Sep 25th
:white_check_mark: stable Oct 9th

snapd 2.27

See release notes topic for details.

:white_check_mark: Dynamic filesystem updates (snap-update-ns) :white_check_mark: Android boot support :white_check_mark: General snapctl support :white_check_mark: New title field :white_check_mark: Install --unaliased parameter :white_check_mark: Seccomp argument filtering :white_check_mark: Configuration defaults on first boot :white_check_mark: New or updated interfaces, 17 in total

Schedule

:white_check_mark: stable Sep 5th

upcoming

:white_medium_square: Improvements in snap download (topic)
:white_medium_square: Refresh App Awareness (topic)
:white_medium_square: Health checks (topic)
(other upcoming topics)

backlog

:white_medium_square: Support for wayland sockets (topic)
:white_medium_square: Report disk usage for snaps (topic)
:white_medium_square: Cache snap summary/etc from store (topic)
:white_medium_square: Repairs Phase 2 (emergency fixes) (topic)
:white_medium_square: Allow snaps to refresh themselves (topic)
:white_medium_square: Configuration schemas
:white_medium_square: Entitlements
:white_medium_square: Alias in service units (topic)
:white_medium_square: Replace a snap by another

(other backlog topics)


Last updated 10 days ago.