Added support for ZStandard compression.

Available in all major distros with a simple yum/apt-get/pkg.

References: 
ZSTD Compression by Allan Jude - https://www.youtube.com/watch?v=hWnWEitDPlM
Zstandard - https://facebook.github.io/zstd/
This commit is contained in:
danielewood 2018-04-12 17:43:08 -07:00 committed by GitHub
parent f6519c0aea
commit ecf2a852b5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 13 additions and 1 deletions

14
syncoid
View File

@ -368,6 +368,18 @@ sub compressargset {
decomrawcmd => '/usr/bin/pigz',
decomargs => '-dc',
},
'zstd-fast' => {
rawcmd => '/usr/bin/zstd',
args => '-3',
decomrawcmd => '/usr/bin/zstd',
decomargs => '-dc',
},
'zstd-slow' => {
rawcmd => '/usr/bin/zstd',
args => '-19',
decomrawcmd => '/usr/bin/zstd',
decomargs => '-dc',
},
'lzo' => {
rawcmd => '/usr/bin/lzop',
args => '',
@ -378,7 +390,7 @@ sub compressargset {
if ($value eq 'default') {
$value = $DEFAULT_COMPRESSION;
} elsif (!(grep $value eq $_, ('gzip', 'pigz-fast', 'pigz-slow', 'lzo', 'default', 'none'))) {
} elsif (!(grep $value eq $_, ('gzip', 'pigz-fast', 'pigz-slow', 'zstd-fast', 'zstd-slow', 'lzo', 'default', 'none'))) {
warn "Unrecognised compression value $value, defaulting to $DEFAULT_COMPRESSION";
$value = $DEFAULT_COMPRESSION;
}