<table><tr><td style="">rthomsen created this revision.<br />rthomsen added a reviewer: elvisangelaccio.<br />rthomsen added a project: Ark.<br />Herald added subscribers: Ark, kde-utils-devel.<br />rthomsen requested review of this revision.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D15369">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>Libarchive 3.3.3 was released on Sept. 4. and added support for the Zstandard compression filter. This compression method was designed to give similar compression ratio as gzip but with much greater (de)compression speeds. Libarchive uses the <tt style="background: #ebebeb; font-size: 13px;">libzstd.so</tt> library, but seems to use the <tt style="background: #ebebeb; font-size: 13px;">zstd</tt> binary as fallback if it wasn't built with <tt style="background: #ebebeb; font-size: 13px;">libzstd</tt>.</p>

<p>This diff enables the filter in the libarchive plugin. There is still no mimetype in <tt style="background: #ebebeb; font-size: 13px;">shared-mime-info</tt>, so a custom mimetype for zstd-compressed tar archives is added. This necessitated re-adding functionality in Ark for custom mime-types (was removed in commit <a href="https://phabricator.kde.org/R36:73cd5e8d2e7b347d84438b23afdc892eddb78ed2" style="background-color: #e7e7e7;
          border-color: #e7e7e7;
          border-radius: 3px;
          padding: 0 4px;
          font-weight: bold;
          color: black;text-decoration: none;">73cd5e8d2e7b347d84438b23afdc892eddb78ed2</a>).</p>

<p>This is my first commit in a long while, so please check I didn't forget something ;)</p></div></div><br /><div><strong>TEST PLAN</strong><div><ul class="remarkup-list">
<li class="remarkup-list-item">Create a new archive using the new compression filter.</li>
</ul></div></div><br /><div><strong>REPOSITORY</strong><div><div>R36 Ark</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D15369">https://phabricator.kde.org/D15369</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>CMakeLists.txt<br />
kerfuffle/CMakeLists.txt<br />
kerfuffle/mime/kerfuffle.xml<br />
plugins/libarchive/CMakeLists.txt<br />
plugins/libarchive/kerfuffle_libarchive.json.cmake<br />
plugins/libarchive/libarchiveplugin.cpp<br />
plugins/libarchive/readwritelibarchiveplugin.cpp</div></div></div><br /><div><strong>To: </strong>rthomsen, elvisangelaccio<br /><strong>Cc: </strong>kde-utils-devel, Ark, tctara<br /></div>