Commit graph

24 commits

Author SHA1 Message Date
Ivailo Monev
3fb98b7044 ark: reserve space for the files to copy/remove from libarchive plugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-19 23:42:04 +03:00
Ivailo Monev
b024821c56 ark: implement isReadOnly() for libarchive plugin
now the interface will properly indicate that the archive is not writable
when that is the case (it was not even before the port to KArchive)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 02:09:04 +02:00
Ivailo Monev
6eba0a9eeb ark: set the KArchive temporary prefix to the global working directory
fixes creating of archives with large files that cannot fit in /tmp (or
whatever the temporary directory is set to). note that this still depends
on how much space is available on the filesystem the archive is created on
and will not work for remote archives - remote archives will have to be
fetched somewhere with enough space to hold the archive and a copy of it
(possibly $HOME) but that is for another commit (currently archives are
fetched into /tmp but not uploaded upon modification)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-19 18:09:23 +02:00
Ivailo Monev
d2eba577b8 ark: implement overwrite query for libarchive plugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-11 13:45:18 +03:00
Ivailo Monev
19c071ae34 ark: connect to the KArchive progress signal
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 21:03:42 +03:00
Ivailo Monev
9d9f4c765d ark: implement extraction of password-protected files
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 15:39:40 +03:00
Ivailo Monev
c772aa4756 ark: emit entries for added files from libarchive plugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 21:33:53 +03:00
Ivailo Monev
3ee5a39a6b ark: report the actual error from libarchive plugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 19:57:07 +03:00
Ivailo Monev
61bcac4d43 generic: use the new karchive library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 16:55:46 +03:00
Ivailo Monev
108c168002 ark: handle warnings when setting write filter in libarchive plugin
fixes LZO compression

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-10 22:14:55 +03:00
Ivailo Monev
90b1789d62 ark: crude crash fix for application/x-archive with weird directory entry
e.g. the libkspeech.a static library created by cmake

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-21 22:16:59 +02:00
Ivailo Monev
c3e740dc21 ark: do not use static buffer in KArchiveInterface::permissionsString()
make it protected so that it is reusable and implement permissions
for LibArchiveInterface via it while at it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-11 08:19:18 +02:00
Ivailo Monev
38684eebd8 ark: add missing MIME types and filters depending on their availability
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-11-25 20:22:07 +02:00
Ivailo Monev
194f6eda25 ark: implement encrypted entries info for libarchive plugin
fixes kerfuffle-archivetest failure

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-07-28 20:08:28 +03:00
Ivailo Monev
de80280f54 ark: replace archive_entry_pathname_w() with archive_entry_pathname_utf8()
archive_entry_pathname_w() is supposedly going to be removed/deprecated in
libarchive v4, see bottom of:
https://github.com/libarchive/libarchive/wiki/Filenames

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-11-29 02:24:18 +00:00
Ivailo Monev
85f69572f7 ark: deal with TODO
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-11-29 01:35:13 +00:00
Ivailo Monev
01d1bee274 ark: workaround archive_entry_set_pathname() limitation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-04-05 06:51:30 +00:00
Ivailo Monev
c135cfa6bf generic: adjust for CMake moc 2015-02-27 11:02:43 +00:00
Ivailo Monev
f9842ce013 ark: handle abosolute path entries properly 2015-02-24 23:31:46 +00:00
Ivailo Monev
0dddeae117 ark: remove now unnecessary include 2015-01-04 20:14:19 +00:00
Ivailo Monev
f3ad4c778e ark: drop libarchive cmake module and unconditionalize some features
since CMake 2.8.3 (according to Raphael) FindLibArchive module is
bundled with it, to avoid dublication drop the bundled one.

in addition, libarchive does not conditionally define support of
archives and will just bail out if the format is not recognized
thus dropping the ifdef's in the handler
2015-01-04 02:18:10 +00:00
Ivailo Monev
063252de21 fixup zip and 7z archives support
TODO: the format does not get recognized via archive_format() when
called on existing archive created with Ark, what the heck? is it
a libarchive bug (test with git checkout)? if it is then checking
the format in the case when the filter is ARCHIVE_FILTER_NONE with
another switch would do the job without manually checking the
extensions for zip and 7z.
2014-12-11 20:28:11 +00:00
Ivailo Monev
530de69699 fixed libarchive deprecations warnings 2014-11-18 18:06:49 +00:00
Ivailo Monev
07d10d4d4e initial import of ark 2014-11-18 17:46:34 +00:00