DC - Pre-installed plugins

# 2.18. Pre-installed plugins

## Content

1. Packer plugins (WCX)
  1.1. Base64
  1.2. CPIO
  1.3. DEB
  1.4. RPM
  1.5. SevenZip
  1.6. UnRAR
  1.7. Zip
2. Content plugins (WDX)
  2.1. Built-in Exif plugin
  2.2. AudioInfo
  2.3. DEB
  2.4. RPM
  2.5. Lua scripts
3. File system plugins (WFX)
  3.1. FTP
  3.2. Samba
4. Lister plugins (WLX)
  4.1. MacPreview
  4.2. Explorer Preview
  4.3. Rich Text Format
  4.4. WlxMplayer
  4.5. Windows Media Player
5. Search plugin (DSX)
  5.1. DSXLocate

## 1. Packer plugins (WCX)

Base64

The Base64 plugin provides the ability to encode and decode files according to the Base64 scheme, this is one of the standards for encoding binary data using printable ASCII characters.

CPIO

Packer plugin for unpacking CPIO archives.

DEB

Packer plugin for unpacking the package files of the dpkg package management system (Debian and distributions based on it).

Linux and other Unix-like OS (in Windows, Double Commander uses the SevenZip plugin for this format).

RPM

Packer plugin for unpacking the package files of the Red Hat package management system (Red Hat Linux, SUSE Linux and others).

SevenZip

Packer plugin for working with .7z, .arj, .cab, .cpio, .cramfs, .deb, .dmg, .fat, .hfs, .iso, .lha, .lzh, .ntfs, .squashfs, .taz, .vhd, .wim, .xar and .z files. We can also add other file types that are supported by 7-Zip.

Note: Some formats are read-only, meaning only content viewing, unpacking, and testing are available.

Windows only.

UnRAR

Packer plugin for unpacking RAR archives.

For using this plugin we need the UnRAR library, the plugin will use `unrar.dll` (Windows), `libunrar.dylib` (macOS), `libunrar.so` or `libunrar.so.5` (Linux and other Unix-like OS).

The distributions of Double Commander for Windows and the portable versions for Linux contain the necessary library, in other cases, we can use the usual ways to get libraries in the operating system (for example, package `libunrar5` in Debian/Ubuntu or `libunrar` in Arch Linux). Otherwise, we can try to find a suitable variant on this page (the file must be copied to the system directory or the directory where the Double Commander executable file is located).

The plugin also supports the ability to pack files into a RAR archive, to do this, we need to specify the path to `WinRAR.exe` (Windows only) or the `rar` command line utility in the plugin settings.

Zip

Packer plugin for working with .bz2, .gz, .jar, .lzma, .tar, .tbz, .tgz, .tlz, .txz, .tzst, .xz, .zip, .zipx and .zst archives. Also this plugin can open files based on ZIP (EPUB, Office Open XML, OpenDocument format, CRX, XPI and others).

Requires additional compressor libraries:

- bzip2: `bz2.dll` (Windows), `libbz2.dylib` (macOS), `libbz2.so.1` (Linux and other Unix-like OS).

- XZ: `liblzma.dll` (Windows), `liblzma.dylib` (macOS), `liblzma.so.5` (Linux and other Unix-like OS).

- Zstandard: `libzstd.dll` (Windows), `libzstd.dylib` (macOS), `libzstd.so.1` (Linux and other Unix-like OS).

The distributions of Double Commander for Windows contain all necessary libraries and these libraries are usually installed by default in Linux for desktop/workstations.

(back to top)

## 2. Content plugins (WDX)

Built-in Exif plugin

The program has a built-in Exif content plugin to get some data that can be stored in the metadata of JPEG files: date, pixel dimensions, image orientation and camera information.

JPEG images only.

AudioInfo

This content plugin shows information about audio files, technical (duration, bitrate, number of channels and so on) and metadata (title, artist and other).

The following types of metadata are supported: ID3v1 (1.0, 1.1), ID3v2 (2.2, 2.3, 2.4), APE (1.0, 2.0), Vorbis comment.

DEB

This content plugin shows information about the package files of the dpkg package management system (Debian and distributions based on it): package name, version, description, dependencies and other.

RPM

This content plugin shows information about the package files of the Red Hat package management system (Red Hat Linux, SUSE Linux and others): package name, version, description and other.

Lua scripts

The `plugins/wdx/scripts` directory contains several examples of content plugins written in Lua (see the Lua scripting help page for details).

These plugins are not added in the program settings.

- `descriptionwdx.lua` – reads file descriptions from `descript.ion`.

- `fulltextodtwdx.lua` – finds text in OpenDocument Text files (ODT). Requires `odt2txt`.

- `simplewdx.lua` – simple example with several fields.

- `textlinewdx.lua` – returns the first lines of plain text files (.txt, .ini) one by one, from the first to the fifth.

(back to top)

## 3. File system plugins (WFX)

FTP

This is a file system plugin for working with the following network protocols: FTP, FTPS, FTPES, SFTP and SSH+SCP. The plugin also supports working with proxy servers (HTTP, SOCKS 4 or SOCKS 5).

Requires additional libraries:

1) SSL and TLS protocols

- The OpenSSL cryptographic library (3.1, 3.0, 1.1.1, 1.1.0, 1.0.2, 1.0.1): the FTP plugin will use `ssleay32.dll` and `libeay32.dll` (Windows), `libssl.dylib` and `libcrypto.dylib` (macOS) or `libssl.so` and `libcrypto.so` (Linux and other Unix-like OS), where "N" is a version number. Library names often include a version number, the plugin contains a list of common names, and the required file will be found in the system automatically.
  Compiled OpenSSL binaries for Windows can be found here, in other cases, we can use the operating system's package manager (for example, package `libssl3` or `libssl1.1` in Debian/Ubuntu, `openssl` in Arch Linux, `openssl` in macOS (Homebrew)).

- Alternatively, in Linux, the plugin can use the GnuTLS library (`libgnutls.so.N`, where "N" is a version number).

2) SSH protocol

The libssh library: the FTP plugin will use `libssh2.dll` (Windows), `libssh2.dylib` (macOS) or `libssh2.so.1` (Linux and other Unix-like OS).

The distributions of Double Commander for Windows contain this library, in other cases, we can use the usual ways to get libraries in the operating system (for example, package `libssh2-1` in Debian/Ubuntu, `libssh2` in Arch Linux, `libssh2` in macOS (Homebrew)).

Plugin allows to use an SSH authentication agent (for example, ssh-agent from the OpenSSH utility suite, Pageant from PuTTY).

Samba

This is a file system plugin for working with network directories (SMB/CIFS).

Linux only.

(back to top)

## 4. Lister plugins (WLX)

MacPreview

Universal (office document formats, images, video and audio files, and more) plugin using Quick Look, as in Finder.

macOS only.

Explorer Preview

Plugin for the display of rich preview. The IPreviewHandler interface supports many formats (depends on the version of the operating system and installed applications), by default, only HTML files are added to the detect string.

Note: Preview handlers may not display all the information contained in the file.

Windows only.

Rich Text Format

Plugin for viewing RTF files.

Windows only.

WlxMplayer

Plugin for viewing video files. Requires `mplayer`.

Linux only.

Windows Media Player

Plugin for playing audio and video files. This plugin uses the IWMPPlayer4 interface (ActiveX), requires Windows Media Player 9 or later.

Windows only.

(back to top)

## 5. Search plugin (DSX)

DSXLocate

This plugin uses `locate` and its file database for searching. We can search by file name, part of it or by mask (symbol "*" means match any number of characters).

Linux and other Unix-like OS.

(back to top)