snapd

module
v0.0.0-...-55a61f8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 17, 2021 License: GPL-3.0

README

Snapcraft

Welcome to snapd

This is the code repository for snapd, the background service that manages and maintains installed snaps.

Snaps are app packages for desktop, cloud and IoT that update automatically, are easy to install, secure, cross-platform and dependency-free. They're being used on millions of Linux systems every day.

Alongside its various service and management functions, snapd:

  • provides the snap command that's used to install and remove snaps and interact with the wider snap ecosystem
  • implements the confinement policies that isolate snaps from the base system and from each other
  • governs the interfaces that allow snaps to access specific system resources outside of their confinement

For general details, including installation and Getting started guides, head over to our Snap documentation. If you're looking for something to install, such as Spotify or Visual Studio Code, take a look at the Snap Store. And if you want to build your own snaps, start with our Creating a snap documentation.

Get involved

This is an open source project and we warmly welcome community contributions, suggestions, and constructive feedback. If you're interested in contributing, please take a look at our Code of Conduct first.

Get in touch

We're friendly! We have a community forum at https://forum.snapcraft.io where we discuss feature plans, development news, issues, updates and troubleshooting. You can chat in realtime with the snapd team and our wider community on the #snappy IRC channel on libera chat.

For news and updates, follow us on Twitter and on Facebook.

Project status

Service Status
Travis Build Status
GoReport Go Report Card
Codecov codecov

Directories

Path Synopsis
Package asserts implements snappy assertions and a database abstraction for managing and holding them.
Package asserts implements snappy assertions and a database abstraction for managing and holding them.
assertstest
Package assertstest provides helpers for testing code that involves assertions.
Package assertstest provides helpers for testing code that involves assertions.
signtool
Package signtool offers tooling to sign assertions.
Package signtool offers tooling to sign assertions.
snapasserts
Package snapasserts offers helpers to handle snap related assertions and their checking for installation.
Package snapasserts offers helpers to handle snap related assertions and their checking for installation.
sysdb
Package sysdb supports the system-wide assertion database with ways to open it and to manage the trusted set of assertions founding it.
Package sysdb supports the system-wide assertion database with ways to open it and to manage the trusted set of assertions founding it.
systestkeys
Package systestkeys defines trusted assertions and keys to use in tests.
Package systestkeys defines trusted assertions and keys to use in tests.
efi
Package efi supports reading EFI variables.
Package efi supports reading EFI variables.
clientutil
Package clientutil offers utilities to turn snap.Info and related structs into client structs and to work with the latter.
Package clientutil offers utilities to turn snap.Info and related structs into client structs and to work with the latter.
cmd
snap-recovery-chooser
The `snap-recovery-chooser` acts as a proxy between the chooser UI process and the actual snapd daemon.
The `snap-recovery-chooser` acts as a proxy between the chooser UI process and the actual snapd daemon.
snaplock
Package snaplock offers per-snap locking also used by snap-confine.
Package snaplock offers per-snap locking also used by snap-confine.
snaplock/runinhibit
Package runinhibit contains operations for establishing, removing and querying snap run inhibition lock.
Package runinhibit contains operations for establishing, removing and querying snap run inhibition lock.
desktop
notification
Package notification implements bindings to D-Bus notification specification, version 1.2, as documented at https://developer.gnome.org/notification-spec/
Package notification implements bindings to D-Bus notification specification, version 1.2, as documented at https://developer.gnome.org/notification-spec/
apparmor
Package apparmor contains primitives for working with apparmor.
Package apparmor contains primitives for working with apparmor.
dbus
Package dbus implements interaction between snappy and dbus.
Package dbus implements interaction between snappy and dbus.
kmod
Package kmod implements a backend which loads kernel modules on behalf of interfaces.
Package kmod implements a backend which loads kernel modules on behalf of interfaces.
mount
Package mount implements mounts that get mapped into the snap Snappy creates fstab like configuration files that describe what directories from the system or from other snaps should get mapped into the snap.
Package mount implements mounts that get mapped into the snap Snappy creates fstab like configuration files that describe what directories from the system or from other snaps should get mapped into the snap.
policy
Package policy implements the declaration based policy checks for connecting or permitting installation of snaps based on their slots and plugs.
Package policy implements the declaration based policy checks for connecting or permitting installation of snaps based on their slots and plugs.
seccomp
Package seccomp implements integration between snapd and snap-confine around seccomp.
Package seccomp implements integration between snapd and snap-confine around seccomp.
systemd
Package systemd implements integration between snappy interfaces and arbitrary systemd units that may be required for "oneshot" style tasks.
Package systemd implements integration between snappy interfaces and arbitrary systemd units that may be required for "oneshot" style tasks.
udev
Package udev implements integration between snapd, udev and snap-confine around tagging character and block devices so that they can be accessed by applications.
Package udev implements integration between snapd, udev and snap-confine around tagging character and block devices so that they can be accessed by applications.
fde
package fde implements helper used by low level parts like secboot in snap-bootstrap and high level parts like DeviceManager in snapd.
package fde implements helper used by low level parts like secboot in snap-bootstrap and high level parts like DeviceManager in snapd.
Package metautil takes care of basic details of working with snap metadata formats.
Package metautil takes care of basic details of working with snap metadata formats.
Package osutil offers utilities related to the operating system or i/o, mainly for files, filesystems and mounts, and also users and processes.
Package osutil offers utilities related to the operating system or i/o, mainly for files, filesystems and mounts, and also users and processes.
sys
Package overlord implements the overall control of a snappy system.
Package overlord implements the overall control of a snappy system.
assertstate
Package assertstate implements the manager and state aspects responsible for the enforcement of assertions in the system and manages the system-wide assertion database.
Package assertstate implements the manager and state aspects responsible for the enforcement of assertions in the system and manages the system-wide assertion database.
cmdstate
Package cmdstate implements a overlord.StateManager that excutes arbitrary commands as tasks.
Package cmdstate implements a overlord.StateManager that excutes arbitrary commands as tasks.
configstate
Package configstate implements the manager and state aspects responsible for the configuration of snaps.
Package configstate implements the manager and state aspects responsible for the configuration of snaps.
devicestate
Package devicestate implements the manager and state aspects responsible for the device identity and policies.
Package devicestate implements the manager and state aspects responsible for the device identity and policies.
devicestate/internal
Package internal (of devicestate) provides functions to access and set the device state for use only by devicestate, for convenience they are also exposed via devicestatetest for use in tests.
Package internal (of devicestate) provides functions to access and set the device state for use only by devicestate, for convenience they are also exposed via devicestatetest for use in tests.
hookstate
Package hookstate implements the manager and state aspects responsible for the running of hooks.
Package hookstate implements the manager and state aspects responsible for the running of hooks.
hookstate/ctlcmd
Package ctlcmd contains the various snapctl subcommands.
Package ctlcmd contains the various snapctl subcommands.
ifacestate
Package ifacestate implements the manager and state aspects responsible for the maintenance of interfaces the system.
Package ifacestate implements the manager and state aspects responsible for the maintenance of interfaces the system.
snapstate
Package snapstate implements the manager and state aspects responsible for the installation and removal of snaps.
Package snapstate implements the manager and state aspects responsible for the installation and removal of snaps.
snapstate/backend
Package backend implements the low-level primitives to manage the snaps and their installation on disk.
Package backend implements the low-level primitives to manage the snaps and their installation on disk.
snapstate/policy
Package policy implements fine grained decision-making for snapstate
Package policy implements fine grained decision-making for snapstate
state
Package state implements the representation of system state.
Package state implements the representation of system state.
storecontext
Package storecontext supplies a pluggable implementation of store.DeviceAndAuthContext.
Package storecontext supplies a pluggable implementation of store.DeviceAndAuthContext.
Package randutil initialises properly random value generation and exposes a streamlined set of functions for it, including for crypto random tokens.
Package randutil initialises properly random value generation and exposes a streamlined set of functions for it, including for crypto random tokens.
Package sandbox offers streamlined interfaces for the sandboxing primitives from the system for snapd use.
Package sandbox offers streamlined interfaces for the sandboxing primitives from the system for snapd use.
Package seed implements loading and validating of seed data.
Package seed implements loading and validating of seed data.
internal
Package internal (of seed) provides types and helpers used internally by both seed and seed/seedwriter.
Package internal (of seed) provides types and helpers used internally by both seed and seed/seedwriter.
seedwriter
Package seedwrite implements writing image seeds.
Package seedwrite implements writing image seeds.
naming
Package naming implements naming constraints and concepts for snaps and their elements.
Package naming implements naming constraints and concepts for snaps and their elements.
quota
Package quota defines state structures for resource quota groups for snaps.
Package quota defines state structures for resource quota groups for snaps.
snaptest
Package snaptest contains helper functions for mocking snaps.
Package snaptest contains helper functions for mocking snaps.
Package snapdenv presents common environment (and related) options for snapd components.
Package snapdenv presents common environment (and related) options for snapd components.
Package snapdtool exposes version and related information, supports re-execution and inter-tool lookup/execution across all snapd tools.
Package snapdtool exposes version and related information, supports re-execution and inter-tool lookup/execution across all snapd tools.
Package store has support to use the Ubuntu Store for querying and downloading of snaps, and the related services.
Package store has support to use the Ubuntu Store for querying and downloading of snaps, and the related services.
auto-generated, DO NOT EDIT!
auto-generated, DO NOT EDIT!
shlex
Package shlex implements a simple lexer which splits input in to tokens using shell-style rules for quoting and commenting.
Package shlex implements a simple lexer which splits input in to tokens using shell-style rules for quoting and commenting.
usersession
xdgopenproxy
Package xdgopenproxy provides a client for snap userd's xdg-open D-Bus proxy
Package xdgopenproxy provides a client for snap userd's xdg-open D-Bus proxy
Package wrappers is used to generate wrappers and service units and also desktop files for snap applications.
Package wrappers is used to generate wrappers and service units and also desktop files for snap applications.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL