{"id":155,"date":"2025-02-02T04:47:29","date_gmt":"2025-02-02T09:47:29","guid":{"rendered":"https:\/\/dpm.darkhorselinux.org\/?page_id=155"},"modified":"2025-02-05T21:11:39","modified_gmt":"2025-02-06T02:11:39","slug":"dpm-paths","status":"publish","type":"page","link":"https:\/\/dpm.darkhorselinux.org\/?page_id=155","title":{"rendered":"DPM Paths"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Public Signing Key Storage<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/dpm\/keys\/<\/code><\/pre>\n\n\n\n<p>Storage point for public signing keys used for packages.  These keys are populated either from DON retrieving them from remote repositories or manually by the DPM utility. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Main Configuration File<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/dpm\/config<\/code><\/pre>\n\n\n\n<p>System-wide configuration file for DPM.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Staging Directory for Transactions<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lib\/dpm\/storage\/staging\/&lt;package_digest_hash&gt;\/<\/code><\/pre>\n\n\n\n<p>Current transactions are stored here until completed, and not moved to the DPM Backing Tree until successful, so that the backing tree is never exposed to incomplete transactions. <\/p>\n\n\n\n<p>Failed transactions are cleared from staging by default, but can be optionally moved to a supplied directory with a command-line switch for inspection during troubleshooting.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">DPM Backing Tree<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lib\/dpm\/storage\/packages\/&lt;package_digest_hash>\/<\/code><\/pre>\n\n\n\n<p>When DPM makes changes to the backing tree it regenerates the DPM caching database.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Package Metadata<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lib\/dpm\/storage\/packages\/&lt;package_digest_hash>\/metadata<\/code><\/pre>\n\n\n\n<p>The storage point for DPM package metadata for packages successfully installed. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Operational Triggers (HOOKS)<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lib\/dpm\/storage\/packages\/&lt;package_digest_hash&gt;\/hooks<\/code><\/pre>\n\n\n\n<p>The storage point for DPM package hooks written for that package for operations that a newer version&#8217;s hooks would not take precedent, such as removal of the package.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Signatures<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lib\/dpm\/storage\/packages\/&lt;package_digest_hash&gt;\/signatures<\/code><\/pre>\n\n\n\n<p>The storage point for DPM package signatures for package integrity validation and system modification auditing.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">DPM Caching Database<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lib\/dpm\/dpmdb<\/code><\/pre>\n\n\n\n<p>The caching database upon which queries are performed. This is generated as a caching point from the DPM Backing Tree to accelerate queries against the packages managed by DPM.  If the caching database does not exist or is deleted or otherwise corrupted, it can be regenerated by DPM.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Lock File<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lock\/dpm.lock<\/code><\/pre>\n\n\n\n<p>The lock file ensures that only one transaction is processed at a time.  While it would certainly be nice to be able to install many packages at the same time, the presence of the operational triggers (hooks) makes this nonviable.<\/p>\n\n\n\n<p>The lock file contains the PID of the active DPM process.<\/p>\n\n\n\n<p>If a lock file is present, DPM will refuse to run.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Logging<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/log\/dpm\/dpm.log\nSYSLOG<\/code><\/pre>\n\n\n\n<p>DPM optionally logs to either (or both) syslog and\/or a main log file.<\/p>\n<div class=\"pdfprnt-buttons pdfprnt-buttons-page pdfprnt-bottom-right\"><a href=\"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=%2Fwp%2Fv2%2Fpages%2F155&print=pdf\" class=\"pdfprnt-button pdfprnt-button-pdf\" target=\"_blank\" ><span class=\"pdfprnt-button-title pdfprnt-button-pdf-title\">[ EXPORT TO PDF ]<\/span><\/a><a href=\"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=%2Fwp%2Fv2%2Fpages%2F155&print=print\" class=\"pdfprnt-button pdfprnt-button-print\" target=\"_blank\" ><\/a><\/div>","protected":false},"excerpt":{"rendered":"<p>Public Signing Key Storage Storage point for public signing keys used for packages. These keys are populated either from DON retrieving them from remote repositories or manually by the DPM utility. Main Configuration File System-wide configuration file for DPM. Staging Directory for Transactions Current transactions are stored here until completed, and not moved to the &hellip; <a href=\"https:\/\/dpm.darkhorselinux.org\/?page_id=155\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">DPM Paths<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-155","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=\/wp\/v2\/pages\/155","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=155"}],"version-history":[{"count":18,"href":"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=\/wp\/v2\/pages\/155\/revisions"}],"predecessor-version":[{"id":332,"href":"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=\/wp\/v2\/pages\/155\/revisions\/332"}],"wp:attachment":[{"href":"https:\/\/dpm.darkhorselinux.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=155"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}