Ark improvements in 16.08

Ark, the file archiver and compressor developed by KDE, has seen a lot of development for the upcoming 16.08 release. This blog post provides a summary of the most important changes.
 

Redesign of several dialogs

The dialog for creating new archives was completely redesigned. The old dialog contained a large file-picker widget which didn’t provide much room for other widgets to set additional options. The file-picker was scrapped and we now have a line edit for entering the archive name. Additional options are presented below in collapsible groups. For this purpose we employ the new KCollapsibleGroupBox widget developed by the awesome David Edmundson (blog post here).
blog1608-createdialog
Previously, two separate actions were available for adding entries to an archive: One for folders (only one folder could be added at the time using this dialog) and one for files. Now files and folders can be added simultaneously and the new dialog also allows setting compression level for the newly added files.
 

Setting compression options

Ark now allows setting more options when creating new archives. Currently, this includes password, compession level and multi-volume archives. Compression level can be set for most archive types, while only rar, 7z and zip support creating multi-volume archives.
blog1608-createdialog2

Support for new compression formats

Ark can now open and extract XAR archives and AppImages. Additionally, tar archives can be compressed with LZ4 compression (requires libarchive 3.2).
blog1608-newformats
 

Support for editing comments

Ark has been able to show archive comments since 15.12. We now implemented support for adding or editing comments in rar archives. The action can be found in the Archive menu. When editing the comment a KMessageWidget appears at the bottom which allows you to save the comment.
blog1608-editcomment

Testing archive integrity

Ark gained the ability to test archives for integrity. This functionality is currently available for zip, rar and 7z archives. The test action can be found in the Archive menu.
blog1608-testarchive
 

Dynamic context menus in file managers

Ark provides service menus for easily compressing or extracting files from file managers such as Dolphin. The service menus are now dynamic, so that only actions for which the required executables are installed are shown. E.g. if neither 7z and zip executables are found in path, the entry for compressing as zip will not be shown. This is achieved through usage of KFileItemAction plugins. Note that you also need Dolphin 16.08 for this to work properly.
 

Bugfixes and under-the-hood changes

A great amount of under-the-hood changes allowed us to fix many annoying crashes with the CLI-based backends. Also, several new classes were added to the infrastructure of Ark which greatly simplify adding further features in the future.

Testing and feedback

The  16.08 beta is now out, while the release candidate should be out on August 4th and the final release on August 18th. Please test the new features and provide feedback either as comments on this blog post or as bugs on KDE’s bugzilla.
 

What’s next?

For Ark 16.12 we hope to add a graphical interface for configuring the plugins Ark uses to handle different archive formats. Also, we want to add support for setting additional compression options such as encryption method (ZipCrypto, AES256, etc.).
We also hope to merge the excellent GSoC work by Vladyslav Batyrenko for advanced editing of archives.
If there are features you are missing in Ark, please let us know.

Acknowledgements

Thanks to Elvis Angelaccio and Vladyslav Batyrenko (mvlabat) for their development work on Ark.