| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: zpaqfranz | Distribution: openSUSE Tumbleweed |
| Version: 65.8 | Vendor: openSUSE |
| Release: 1.1 | Build date: Tue Oct 6 09:18:04 2026 |
| Group: Unspecified | Build host: reproducible |
| Size: 5028048 | Source RPM: zpaqfranz-65.8-1.1.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://github.com/fcorbelli/zpaqfranz | |
| Summary: A journaling, incremental, deduplicating archiver | |
Swiss army knife for backup and disaster recovery, like 7z or RAR on steroids,with deduplicated "snapshots" (versions). Conceptually similar to Mac time machine, but much more efficiently.
Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND MIT AND SUSE-Public-Domain AND Zlib AND Unlicense AND Ferguson-Twofish
* Tue Oct 06 2026 Martin Pluskal <mpluskal@suse.com>
- Update to version 65.8:
* New -mailfull and -mailprivacy: an e-mail report at the end
of any command, with a second log without file names for
whoever looks after the backup
* New -rescue: image a dying disk, jumping ahead on failed
reads and coming back instead of insisting
* Thin images: free clusters that came along are stored as
zeros, and image -to writes a sparse or flat (-raw) .vmdk
* cloud reports OK or ERROR per phase, resumes the upload
where the remote archive ends, and sends drive images
* Fix clusters over 64 KB, a short raw image through VSS,
password writing garbage with a wrong key, and -to
silently ignored with a wildcard
* Many more fixes and improvements; see upstream's release
notes for the full list
* Fri Oct 02 2026 Martin Pluskal <mpluskal@suse.com>
- Update to version 65.7:
* a -image now picks the mode by itself: used clusters of NTFS
(VSS when possible, swap files left out), used clusters of
FAT/exFAT with the drive locked, or the whole partition when
that cannot be read; -raw stays for the whole partition. The
old -image -ntfs -vss still work
* -turbo, default since 65.6, now parallelises image streams as
well as files (about 800 MB/s for an NVMe image)
* image -raw now also writes the unused part of the destination;
a file or .vhd destination is unaffected
* A full disk while extracting is reported at the first failing
write (56483, exit 2); with -image it was not reported at all
* -huge now applies to every file, not only the first, forces
- sparse off and shows one progress with one ETA
* Fix a raw restore with -to writing on the SOURCE drive instead
of the destination (also in 65.6) and the free space being
checked on the current drive instead of the destination's
* Exit codes: a damaged-archive .vhd export is 2 instead of 0
* New Windows-only .vhd output and mount of .vhd/.vhdx/.iso
(mount needs -DZPAQMOUNT, which this build does not define)
* Many more fixes of upstream issues and Windows-only ones
- Upstream's credits block gained entry 29 (postami, MIT) and entry
30 (mbedTLS 3.6.4, Apache-2.0), compiled in unlisted since 65.6;
both are already in the License tag, so it is unchanged. Update
the Legal-Review-Notice entry count
* Thu Oct 01 2026 Martin Pluskal <mpluskal@suse.com>
- Update to version 65.6:
* New defaults for a: -m8 (zstd), -turbo and -fast; -715,
- noturbo, -nofast and -nosparse restore the 65.5 behaviour.
- filelist is now -fast, the old names still work
* New f -test: a read-only surface test of a whole device with a
verdict; with -force -paranoid it writes the device back, reads
it and compares, to find fake capacity and lost writes
* New franzdash console dashboard showing the live map of f -test
and of a -image; -nodashboard or -noeta for the classic line
* a -image now continues past an unreadable sector, filling it
with zeros, and reports one big READ ERROR with exit code 2
* New mount -range A:B, which mounts only what those versions
added or updated; mount itself needs -DZPAQMOUNT, which this
build does not define
* New work email: an SMTP client with TLS inside the binary, plus
work zip for a plain deflate .zip of one file
* Damaged archives are now reported instead of silently misread:
missing blocks, a broken block name, a lost index block
(72401-72406, 72414), and a -chunk archive whose last part was
dropped
* Exit codes are now trustworthy: a fatal error is 2 instead of
0, and commands that counted errors return the worst of the
parts (0, 1 or 2) instead of a sum that could read as success
* Fix x -stdout sending its messages into the data instead of
stderr, x without -force silently skipping files of a different
size, a flipped bit in an index block name losing the last
version, and x -ramdisk stopping all writes after one failure
* Many more fixes of upstream issues and Windows-only ones
- Upstream's tag 65.6 points at the 65.6 commit, so the
zpaqfranz.cpp release-asset overlay and the Source1 it needed are
gone again
- mbedTLS 3.6.4 is new in 65.6, bundled for work email; it is
Apache-2.0 OR GPL-2.0-or-later and Apache-2.0 is elected, so the
License tag is unchanged
- Drop the now-empty bundled(lz4): LZ4 and LZAV lost all their code
in 65.5 and only their credits stubs remain, so bundled(xxhash)
is now the sole BSD-2-Clause source; add bundled(mbedtls) = 3.6.4
* Wed Sep 30 2026 Martin Pluskal <mpluskal@suse.com>
- Update to version 65.5:
* New -m8: zstd 1.5.7 inside zpaq, faster than -m1 and smaller;
the archive stays a normal zpaq archive, extractable by any
zpaq through a ZPAQL decoder stored in the archive itself
* -m6 redefined as "m4.5": -m4 plus three sparse contexts, a bit
smaller than -m4 for a quarter more time; the old -m6 (LZ4)
and -m7 (LZAV) methods are gone, their archives still extract
* a -append rewritten: the archive is written only forward (two
passes, no seek back) and a -append -stdout emits the new
version as a delta stream to glue after the archive
* New autotest -all -quick, a four-step self test for slow
machines; ARM Linux builds now use all their cores
* -mx/-ms are now accepted as the short form of -method: they
used to be silently ignored, making a plain -m1 archive
* mount without ZPAQMOUNT now exits 2 instead of printing help;
a batch of fixes of upstream issues 292-313
- Upstream's tag 65.5 still points at the 65.4 commit, so the
zpaqfranz.cpp release asset is overlaid in %prep; the License
tag gains BSD-3-Clause for the bundled zstd
* Mon Sep 28 2026 Martin Pluskal <mpluskal@suse.com>
- Update to version 65.4:
* New -filelist: every add also stores the deduplicated history
of the file list inside the archive, so l reads that alone
instead of the index of every version: on an archive with 1351
versions l drops from 15.2 s to 0.3 s, l -all from 215 s to
12.1 s. Even without -filelist l is about 3 times faster, with
byte identical output.
* New -tar: archive as a tar, keeping on Linux, macOS, FreeBSD,
OpenBSD and Solaris what tar keeps - owners by name and number,
permissions including setuid, setgid and sticky, times with
nanoseconds, symlinks, hard links, FIFOs and devices; sockets
are skipped, as tar does. Extended attributes, ACLs and SELinux
labels are not stored.
* The -tar block reader no longer reads one byte past the 550
byte franz_block: a memory safety fix, no CVE assigned.
* -turbo now takes an explicit thread count for the fragmenter;
the archive stays byte identical whatever the number.
* On Unix, x no longer writes through a symlink, FIFO or device
but removes it first: x -force over a FIFO used to wait
forever, and over a symlink wrote to its target.
* The temporary folder is now per user, /tmp/_zpaqfranz_<uid>.
* The test suite now runs upstream's full "autotest -all".
* Many more fixes and improvements; see upstream's release
notes for the full list
* Fri Sep 25 2026 Martin Pluskal <mpluskal@suse.com>
- Update to version 65.3:
* Much faster processing of large files (default -m1
output is byte-identical to 65.2)
* New experimental parallel -turbo mode
* New back-compatible methods -m6 (LZ4) and -m7 (LZAV)
* Mount support on FreeBSD, OpenBSD and macOS,
redesigned mount cache
* Improved hash healing and -touch, more portability
fixes and autotests
- Drop zpaqfranz-qualify-std-string.patch (fixed
upstream in 65.3)
* Tue Sep 22 2026 Martin Pluskal <mpluskal@suse.com>
- Update to 65.2:
* New zip command: write an archive out as one single ZIP64
file, with the same filters, -until and -range as x. Stored
and multithreaded by default
* zip -deflate (alias -zip) compresses the entries with a
DEFLATE encoder written for the purpose, so no zlib is
linked. Already-compressed extensions and tiny files stay
stored
* zip -all writes one VER<n> folder per version, each a full
snapshot; -range picks which ones, and the space and memory
cost is estimated before anything is written
* Quoted wildcards are expanded internally on Linux and BSD,
so "/tmp/nas*" matches instead of being taken literally
* dir matches its pattern against the file name, not against
the whole path
* An archive can be a franzen file with no cleartext .zpaq side
* copy with several sources no longer counts and copies the
same file once per source
- Add zpaqfranz-qualify-std-string.patch: 65.2 declares two new
globals as bare string before using std::string, so g++ cannot
compile it
* Sun Sep 20 2026 Martin Pluskal <mpluskal@suse.com>
- Update to 65.1:
* New mount command, which exposes a zpaq archive as a
read-only filesystem. It needs -DZPAQMOUNT and libfuse3 and
upstream calls it untested on Unix, so it is not enabled here
* New xx command, the sequential-write extraction that was
reachable only as x -recover; faster on rotating media and
salvages more from a damaged archive
* New x -backupdir, which moves every file that would be
overwritten into a timestamped folder instead of erasing it
* The -franzen option no longer writes a cleartext .zpaq
beside the encrypted .zpaq.franzen
* w -ramdisk can extract a file larger than the chunk, in
sequential RAM windows; the chunk counter no longer loops
forever on such a file
* v no longer reports a file as FAILED on every run after a
metadata-only change
* t and pp -ssd decode the .franzen container first and exit 2
when that pre-check fails
* Many more fixes and improvements; see upstream's release
notes for the full list
- Extend the Legal-Review-Notice: the upstream credits block
grew to 27 entries. The two new ones, libfuse and WinFsp,
belong to the mount command, which is not compiled here, so
the License tag is unchanged.
* Sat Aug 08 2026 Martin Pluskal <mpluskal@suse.com>
- Update to 64.8:
* New -turbo switch for the add command, using a different
algorithm that can be up to 50% faster in favourable cases.
Upstream marks it as under active development and it has to be
requested explicitly
* New -recover extraction mode, which reads the archive in random
order and writes the extracted files strictly sequentially. This
is aimed at extracting onto high-latency media and often recovers
more files from a damaged archive
* New -recover switch for the consolidate command, which
regenerates the .index and .txt files of a multipart backup
* The dump command was rewritten and now handles archives of any
size
* SFTP transfers can be bandwidth-limited across threads with the
new -bandwidth switch
* New -huge switch, an alternative file preparation algorithm for
very large files on filesystems without sparse file support
* New work fc command for a binary comparison of two files, and
new work crc32 and work ispasswordok commands
* New -stdinsize switch to give an accurate ETA when creating an
archive from -stdin
* The dir command gained -nodir to list files only, the hash
command gained -norecursion, and the new -always switch forces
adding files whose timestamp has not changed
* Improved handling of local time, including negative UTC offsets
* Fixed deprecated streamed ZPAQ files being misdetected as
standard ZPAQ files
* The autotest command now runs a quick hash check by default and
reports more detail under -all
* Added the experimental FRANZEN encrypted format, enabled with
- franzen. Upstream states it is not suitable for anything beyond
experimentation and has no backward compatibility
* Source changes to avoid heuristic false positives from some
antivirus products
* The jump from the 61.x to the 62.x numbering was made by
upstream to unstick Homebrew users, not to mark a large change
- Add a %check section running the upstream autotest command
followed by an archive create and verify round trip.
- Install the man page that upstream ships in man/.
- Pass the distribution linker flags: the compiler was invoked with
the optflags but never with LDFLAGS, so the binary was built
without the standard link hardening.
- Build with -DIPV6 so IPv4 is no longer forced.
- Replace the unsatisfiable "Suggests: libcurl" with Recommends on
libcurl4 and libssh4, which are the libraries the binary actually
dlopens by name at run time.
- Declare the bundled blake3, highwayhash, libdivsufsort-lite, lz4
and xxhash copies with bundled() Provides.
- Correct the License tag to
Apache-2.0 AND BSD-2-Clause AND MIT AND SUSE-Public-Domain AND Zlib
AND Unlicense AND Ferguson-Twofish, derived from the credits block
that upstream maintains in zpaqfranz.cpp. The previous tag named
only two of the licences of the 25 bundled components. The
derivation is recorded in a Legal-Review-Notice comment above the
tag.
- Normalise the CRLF line endings of CHANGELOG.md and COPYING.
- This version is not affected by CVE-2025-50327 (boo#1272902): the
flaw is a failure to propagate the Windows Mark-of-the-Web to
extracted files, a mechanism that does not exist on Linux, and the
report covers 61.3 and earlier in any case.
* Fri May 02 2025 Dirk Müller <dmueller@suse.com>
- update to 61.3:
* Reducing power consumption
+ In order to reduce energy consumption, I have implemented new
switches and functions.
`-slow`
`-shutdown`
`-monitor` (Windows only)
+ The `-slow` switch attempts to disable the TurboBoost feature
on modern CPUs, limiting their maximum frequency and, as a
result, reducing energy consumption.
In certain circumstances, when the most relevant phase is
deduplication rather than compression, the operating system
might activate the CPU's maximum power consumption mode
(e.g., calculating SHA1 for file fragments) in a situation
where it is essentially unnecessary.
In these cases, `-slow` can reduce power consumption by up to
30% (at least on modern AMD CPUs; I haven't tested Intel
CPUs), with essentially no slowdown in total execution time
(or at most, a slight percentage decrease). It also reduces
noise on systems with variable power cooling (fans, pumps,
etc.).
The `-shutdown` switch attempts to "mercilessly" shut down
the system after completing an `a` (add) command, which is
used to add data.
- update to 61.2:
* The main new feature of this release is the new `mysqldump`
command, which automatically generates scripts for backing up
MySQL (or MariaDB) databases.
* As usual, the best way to get familiar is to ask for help,
i.e., `zpaqfranz h mysqldump`, or contact me directly or open
an issue on GitHub.
* Wed Mar 12 2025 Andrea Manzini <andrea.manzini@suse.com>
- update to 61.1:
* First Big Thing: SFTP and libcurl
* implemented a minimal interface with the tui command to list files,
select them, and optionally extract them.
* implemented the ls command, which roughly allows you to navigate a zpaq
archive like a filesystem.
* -norecursion with -only in list
* Removed SERVER Code
* Fixed some linuxsettime
- added libcurl as optional dependency
- update to 60.10:
* New switch -tmp (now enabled by default for backups) that names archives
with the .tmp extension during compression before renaming them to .zpaq.
This helps handle cases of shutdown or zpaqfranz crash during archiving
* New flag -notrim that disables the auto-correction mechanism for incomplete
transactions when they are in the last transaction
* New switch -destination in the consolidate command to rename zpaq backup
files
* The "i" (info) command, now shows totals
- update to 60.09:
* Better password handling
* New ZETA hasher / -backupzeta
* new -nomore switch
* IPv6 support (untested)
* Sat Nov 09 2024 Andrea Manzini <andrea.manzini@suse.com>
- update to 60.8:
* -backupzeta
This new switch, to be used in the backup command, generates checksums
on the fly, without reading them at the end of the .zpaq file
creation, saving a lot of time, especially on slow disk drives like HDDs.
The generated checksums are quite robust ("almost" XXHASH64 and CRC-32).
In the future, it will also support encrypted volumes
* Set the creation date of .zpaq archives to 1/1/1980
so it is easy to quickly identify those that were not written completely
* New hash algorithms ZETA and ZETAENC.
Can be selected with -zeta and -zetaenc. You can find the explanation here
https://github.com/fcorbelli/zpaqfranz/issues/139#issuecomment-2425010093
* -destination
With the new switch, it is possible to load a series of lines (from a text
file) as if they were multiple -to options. The explanation is here
https://github.com/fcorbelli/zpaqfranz/issues/136#issuecomment-2422947782
* -nodelete
This switch does not mark files as deleted if they are not found during the
path scan. It is used for bulk manipulation of the file list.
The explanation is here
https://github.com/fcorbelli/zpaqfranz/issues/136#issuecomment-2422947782
* -salt
This switch forces an empty salt (i.e., 32 bytes of zeros). It is something
you should NOT normally use. It serves as a development mechanism
(i.e., it is something that is useful for ME, not for YOU).
* -hdd
With this switch, you use the computer's memory (including virtual memory,
i.e., the swap file) to sequentially write the extracted data. It is useful
if you have a lot of RAM or an SSD system drive and want to extract to an
HDD. In this case, everything will first be decompressed into RAM and then
written to the HDD, without any seeks (head movement) in the output.
It is not suitable for gigantic files, but for medium sizes, it can halve
the extraction time.
* -ramdisk
Internal for -hdd
* fix on -input
Minor bug fixed on Windows
* warnings in yellows Because sometimes colours... counts...
- update to 60.7:
* This release includes numerous new features; hopefully, not too many bugs :)
* The license of one component has been changed to make it compatible with
Fedora policies.
* It's now possible to create a file with a list of errors to reduce
confusion in the logs (-errorlog).
* Captchas can be bypassed using -nocaptcha.
* By default, it now uses the number of physical CPUs (no Hyperthread); you
can use -ht to bypass this and return to the previous method.
* Error messages now appear in red by default.
* zpaqfranz tracks memory usage (more or less) in the very last output line.
* It shows more understandable error messages (!) when running out of memory
due to overly small fragments.
* Output lines have been renumbered.
* With the -input switch, you can load a list of files to be added.
* The -715 switch in the l (list) command restores an output that is nearly
identical, binary-wise, to zpaq 7.15.
* In the sum command, the -home switch replaces -checksum.
* Sat Sep 07 2024 Dirk Müller <dmueller@suse.com>
- update to 60.6:
* Better -stdin management
Now files added with -stdin should be deduplicated as well as
those added manually (up to the previous version the
deduplicator was less efficient, for a whole series of
reasons long to explain)
* New comparehex command
This command performs an operation that happens very
frequently, namely comparing two lines (typically HASH codes)
present in two files. If the codes are the same it exits with
OK. You can also impose the expected length of the hash.
* Counts within more than one file the occurrences of a certain
string, and returns OK if the number is the expected one In
essence, within a log file, it counts how many positive
results there are.
* If you don't select a string to search for, it will use the
default one for OKs with the -big switch
* During program termination with Control-C press, a better
management of the deletion of files created with -chunk is
performed.
* It might also perform rollback of .zpaq files, maybe in the
future.
* Apparently it should work in a portable way across various
platforms, or at least I hope so.
* The problem of terminating a multithreaded system based on a
condition is not trivial, even from a performance
perspective. I used "dirty tricks", we'll see in the future.
* Improvement in the creation of temporary files, for the use
of multiple zpaqfranz processes simultaneously
* Temporary files are created inside different subfolders
(marked with mtime) in order to reduce the risk of
"collision" if multiple zpaqfranz are launched simultaneously.
* Used to automate many convenient functions for backup logs.
* Use -find/replace to fix path (if needed); -ssd for M/T
* The t command (without a path) do NOT read something from
filesystem
* You have to use the t command WITH a path (or use the -verify
switch)
* The brand new -crc32 switch is makes a triple CRC-32
comparing, READING from the filesystem.
* In this case, the -find and -replace switches can be useful
to transform the stored paths into physical paths (if they
are different)
* New -csv and -csvhf switches for l (list)
* -external in add
* hashdeep format
But it's still using zpaqfranz: any bugs could still affect
its reliability
* For delicate situations we use an external program, which
therefore doesn't have the possible bugs of zpaqfranz, such
as hashdeep (in the Windows version hashdeep64 is faster)
* Wed Jun 19 2024 Dirk Müller <dmueller@suse.com>
- update to 59.8:
* _The l (list) command use a new format; filesize is now ...
autosized; estimated ratio is written, better infos with -all
switch, do not show attrs by default
* Do not add() if the X folder does not exists
* -nocolors on redirect
- update to 59.7:
* Less used RAM enumerating files
* zfssize command
* switch -pause in add
* updated info on vss
* AMD 3950X benchmark added
* New hash command
* Command s with -home switch
* Command hash with -orderby
* add -ignore switch
* substituted /sec with /s
* minor fixes in -noeta
* fixes in update (on *nix)
- update to 59.4:
* crop command
* c command -checksum switch
- update to 59.3:
* New update command
[#]## Warning. Downloading executable programs from the
Internet is potentially dangerous. Always choose a reliable
source (such as github or sourceforce), or directly my site
https://www.francocorbelli.it/zpaqfranz/win64/
* Sun Mar 17 2024 Dirk Müller <dmueller@suse.com>
- update to 59.2:
* Some minor "things"
* Sun Feb 18 2024 Andrea Manzini <andrea.manzini@suse.com>
- update to 59.1:
This new build is of a new branch, includes several new features to be tested, and may therefore contain bugs.
* -chunk option to create multipart fixed-size archives
* -fast: store inside zpaq archive a "kind of" file list (to be developed)
* ADS filelists (NTFS alternate data stream)
* Getting password from console is changed, now should be run... everywhere
* Colors on Windows
* Smarter debug
* -longpath files support on Windows
* Sun Nov 26 2023 Dirk Müller <dmueller@suse.com>
- update to 58.11:
* Undocumented -collision -kill, to be implemented
* Quickly check and (sometimes) recovery from SHA-1 collision
* Warning-hunting on 15+ years compiler
* Removed a fake compiler warning
* 32 bit gcc fix, or better workaroud
https://bugzilla.redhat.com/show_bug.cgi?id=2238781
* disclaimer after help for USE THE DOUBLE QUOTES, LUKE!
* changed $day, $hour... to %day, %hour ( Linux does not like
'$' very much )
* PowerPC fix
* New switch -home in a command (add)
* Stripped of about everything from zpaqfranz repository
* Moved to zpaqfranz-stuff (for license reason when 'packaged')
* the subfolders, much smaller git
* Fixed some typo in zpaqfranz.cpp source code, added some
greetings
* Tue Aug 22 2023 Martin Pluskal <mpluskal@suse.com>
- Initial package for version 58.8
/usr/bin/zpaqfranz /usr/share/doc/packages/zpaqfranz /usr/share/doc/packages/zpaqfranz/CHANGELOG.md /usr/share/doc/packages/zpaqfranz/README.md /usr/share/doc/packages/zpaqfranz/TODO.md /usr/share/licenses/zpaqfranz /usr/share/licenses/zpaqfranz/COPYING /usr/share/licenses/zpaqfranz/LICENSE /usr/share/man/man1/zpaqfranz.1.gz
Generated by rpm2html 1.8.1
Fabrice Bellet, Sat Oct 10 23:54:43 2026