KDE/ark

File archiver by KDE

C++

145

2,624 commits

updated Sep 23, 2026

See the code

README

CI JobStatus
Gitlab BuildsGitlab Builds Status
Flatpak BuildFlatPak Build Status

What is it

Ark is a graphical file compression/decompression utility with support for multiple formats. Ark can be used to browse, extract, create, and modify archives.

Supported read-write formats

FormatSupported MimetypeNotes
7-Zipapplication/x-7z-compressed
Zipapplication/zip
JARapplication/x-java-archive
ARJapplication/x-arj, application/arjrequires the arj binary
RARapplication/vnd.rarcan only create RAR archives with the proprietary rar binary
TARapplication/x-tar
GZip-compressed TARapplication/x-compressed-tar
BZip2-compressed TARapplication/x-bzip2-compressed-tar(application/x-bzip-compressed-tar with shared-mime-info < 2.3)
UNIX-compressed TARapplication/x-tarz
XZ-compressed TARapplication/x-xz-compressed-tar
LZMA-compressed TARapplication/x-lzma-compressed-tar
LZIP-compressed TARapplication/x-lzip-compressed-tar
LRZIP-compressed TARapplication/x-lrzip-compressed-tarrequires the lrzip binary
LZO-compressed TARapplication/x-tzorequires the lzop binary if libarchive >= 3.3 has been compiled without liblzo2 support
LZ4-compressed TARapplication/x-lz4-compressed-tar
ZSTD-compressed TARapplication/x-zstd-compressed-tarrequires the zstd binary if libarchive >= 3.3 has been compiled without libzstd support

Supported read-only formats

FormatSupported Mimetype
RARapplication/vnd.rar
XARapplication/x-xar
LHAapplication/x-lha
AppImageapplication/x-iso9660-appimage
DEB packageapplication/vnd.debian.binary-package, application/x-deb
Raw CD imageapplication/vnd.efi.img, application/x-cd-image
CPIO variantsapplication/x-cpio, application/x-bcpio, application/x-cpio-compressed, application/x-sv4cpio, application/x-sv4crc
RPM (source) packageapplication/x-rpm, application/x-source-rpm
UNIX-compressed TARapplication/x-compress
GZip-compressed fileapplication/gzip
BZip2-compressed fileapplication/x-bzip2 (application/x-bzip with shared-mime-info < 2.3)
LZMA-compressed fileapplication/x-lzma
XZ-compressed fileapplication/x-xz
Zlib-compressed fileapplication/zlib
Zstd-compressed fileapplication/zstd
LZ4-compressed fileapplication/x-lz4
LZIP-compressed fileapplication/x-lzip
LRZIP-compressed fileapplication/x-lrzip
LZOP-compressed fileapplication/x-lzop
Windows theme packapplication/vnd.ms-cab-compressed
ARapplication/x-archive
Stuffitapplication/x-stuffit
Self-extracting EXEapplication/x-msdownload

The notes about lrzip, lzop and zstd binaries apply also here.

Plugins

The support for all the above formats in Ark is implemented in a number of plugins that can be enabled/disabled by the user. More than one plugin can support the same format. An archive whose format is supported by more than one plugin, will be open using the enabled plugin with higher priority.

The plugins currently available in ark are the following:

  • Libzip plugin: supports the Zip format by using the libzip library.
  • 7-Zip plugin: supports the 7-Zip format by using the 7z binary.
    • Supports both the upstream 7-Zip binary and the binary from a p7zip fork shipped by Archlinux et al.
  • Unarchiver plugin: supports the RAR, LHA and Stuffit formats in read-only mode. Requires the lsar and unar binaries from the unarchiver project.
  • RAR plugin: supports the RAR format by using the unrar binary. Requires the proprietary rar binary to enable read-write mode support to create RAR archives.
  • Info-zip plugin (legacy): supports the Zip format by using the zip binary.
  • ARJ plugin: supports the ARJ format by using the arj binary.
  • Libarchive plugin: supports everything else by using the libarchive library and optionally the lrzip, lzop and zstd binaries.
    • Supports also the 7-Zip format, but only without encryption.

Contributing to ARK

Please refer to the contributing document for everything you need to know to get started contributing to ARK.

Contributors

(top 30 of 161)

elvisangelaccio

714 commits

rthomsen

288 commits

Montel

264 commits

tsdgeos

148 commits

KDE/ark

File archiver by KDE

C++

145

2,624 commits

updated Sep 23, 2026

See the code

README

CI JobStatus
Gitlab BuildsGitlab Builds Status
Flatpak BuildFlatPak Build Status

What is it

Ark is a graphical file compression/decompression utility with support for multiple formats. Ark can be used to browse, extract, create, and modify archives.

Supported read-write formats

FormatSupported MimetypeNotes
7-Zipapplication/x-7z-compressed
Zipapplication/zip
JARapplication/x-java-archive
ARJapplication/x-arj, application/arjrequires the arj binary
RARapplication/vnd.rarcan only create RAR archives with the proprietary rar binary
TARapplication/x-tar
GZip-compressed TARapplication/x-compressed-tar
BZip2-compressed TARapplication/x-bzip2-compressed-tar(application/x-bzip-compressed-tar with shared-mime-info < 2.3)
UNIX-compressed TARapplication/x-tarz
XZ-compressed TARapplication/x-xz-compressed-tar
LZMA-compressed TARapplication/x-lzma-compressed-tar
LZIP-compressed TARapplication/x-lzip-compressed-tar
LRZIP-compressed TARapplication/x-lrzip-compressed-tarrequires the lrzip binary
LZO-compressed TARapplication/x-tzorequires the lzop binary if libarchive >= 3.3 has been compiled without liblzo2 support
LZ4-compressed TARapplication/x-lz4-compressed-tar
ZSTD-compressed TARapplication/x-zstd-compressed-tarrequires the zstd binary if libarchive >= 3.3 has been compiled without libzstd support

Supported read-only formats

FormatSupported Mimetype
RARapplication/vnd.rar
XARapplication/x-xar
LHAapplication/x-lha
AppImageapplication/x-iso9660-appimage
DEB packageapplication/vnd.debian.binary-package, application/x-deb
Raw CD imageapplication/vnd.efi.img, application/x-cd-image
CPIO variantsapplication/x-cpio, application/x-bcpio, application/x-cpio-compressed, application/x-sv4cpio, application/x-sv4crc
RPM (source) packageapplication/x-rpm, application/x-source-rpm
UNIX-compressed TARapplication/x-compress
GZip-compressed fileapplication/gzip
BZip2-compressed fileapplication/x-bzip2 (application/x-bzip with shared-mime-info < 2.3)
LZMA-compressed fileapplication/x-lzma
XZ-compressed fileapplication/x-xz
Zlib-compressed fileapplication/zlib
Zstd-compressed fileapplication/zstd
LZ4-compressed fileapplication/x-lz4
LZIP-compressed fileapplication/x-lzip
LRZIP-compressed fileapplication/x-lrzip
LZOP-compressed fileapplication/x-lzop
Windows theme packapplication/vnd.ms-cab-compressed
ARapplication/x-archive
Stuffitapplication/x-stuffit
Self-extracting EXEapplication/x-msdownload

The notes about lrzip, lzop and zstd binaries apply also here.

Plugins

The support for all the above formats in Ark is implemented in a number of plugins that can be enabled/disabled by the user. More than one plugin can support the same format. An archive whose format is supported by more than one plugin, will be open using the enabled plugin with higher priority.

The plugins currently available in ark are the following:

  • Libzip plugin: supports the Zip format by using the libzip library.
  • 7-Zip plugin: supports the 7-Zip format by using the 7z binary.
    • Supports both the upstream 7-Zip binary and the binary from a p7zip fork shipped by Archlinux et al.
  • Unarchiver plugin: supports the RAR, LHA and Stuffit formats in read-only mode. Requires the lsar and unar binaries from the unarchiver project.
  • RAR plugin: supports the RAR format by using the unrar binary. Requires the proprietary rar binary to enable read-write mode support to create RAR archives.
  • Info-zip plugin (legacy): supports the Zip format by using the zip binary.
  • ARJ plugin: supports the ARJ format by using the arj binary.
  • Libarchive plugin: supports everything else by using the libarchive library and optionally the lrzip, lzop and zstd binaries.
    • Supports also the 7-Zip format, but only without encryption.

Contributing to ARK

Please refer to the contributing document for everything you need to know to get started contributing to ARK.

Contributors

(top 30 of 161)

elvisangelaccio

714 commits

rthomsen

288 commits

Montel

264 commits

tsdgeos

148 commits

Languages

C++

86.5%

CMake

12.3%