:py:mod:`dissect.target.plugins.os.unix.applications` ===================================================== .. py:module:: dissect.target.plugins.os.unix.applications Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: dissect.target.plugins.os.unix.applications.UnixApplicationsPlugin Attributes ~~~~~~~~~~ .. autoapisummary:: dissect.target.plugins.os.unix.applications.UnixApplicationRecord .. py:data:: UnixApplicationRecord .. py:class:: UnixApplicationsPlugin(target: dissect.target.target.Target) Bases: :py:obj:`dissect.target.plugin.Plugin` Unix Applications plugin. .. py:attribute:: SYSTEM_PATHS :value: ('/usr/share/applications/', '/usr/local/share/applications/',... .. py:attribute:: USER_PATHS :value: ('.local/share/applications/',) .. py:attribute:: SYSTEM_APPS :value: ('org.gnome.',) .. py:attribute:: desktop_files .. 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:: applications() -> collections.abc.Iterator[UnixApplicationRecord] Yield installed Unix GUI applications from GNOME and XFCE. .. rubric:: References - https://wiki.archlinux.org/title/Desktop_entries - https://specifications.freedesktop.org/desktop-entry-spec/latest/ - https://unix.stackexchange.com/questions/582928/where-gnome-apps-are-installed Yields ``UnixApplicationRecord`` records with the following fields: .. code-block:: text ts_modified (datetime): timestamp when the installation was modified ts_installed (datetime): timestamp when the application was installed on the system name (string): name of the application version (string): version of the application author (string): author of the application type (string): type of the application, either user or system path (string): path to the desktop file entry of the application