:py:mod:`dissect.target.plugins.os.unix.linux.debian.snap` ========================================================== .. py:module:: dissect.target.plugins.os.unix.linux.debian.snap Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: dissect.target.plugins.os.unix.linux.debian.snap.SnapPlugin .. py:class:: SnapPlugin(target: dissect.target.target.Target) Bases: :py:obj:`dissect.target.plugin.Plugin` Canonical Linux Snapcraft plugin. .. py:attribute:: PATHS :value: ('/var/lib/snapd/snaps',) .. py:attribute:: installs .. py:method:: check_compatible() -> None Perform a compatibility check with the target. This function should return ``None`` if the plugin is compatible with the current target (``self.target``). For example, check if a certain file exists. Otherwise it should raise an :class:`UnsupportedPluginError`. :raises UnsupportedPluginError: If the plugin could not be loaded. .. py:method:: snap() -> collections.abc.Iterator[dissect.target.plugins.os.unix.applications.UnixApplicationRecord] Yields installed Canonical Linux Snapcraft (snaps) applications on the target system. Reads information from installed SquashFS ``*.snap`` files found in ``/var/lib/snapd/snaps``. Logs of the ``snapd`` daemon can be parsed using the ``journal`` or ``syslog`` plugins. .. rubric:: References - https://github.com/canonical/snapcraft - https://en.wikipedia.org/wiki/Snap_(software) Yields ``UnixApplicationRecord`` records with the following fields: .. code-block:: text ts_modified (datetime): timestamp when the installation was modified name (string): name of the application version (string): version of the application path (string): path to the application snap file