Commit Graph

49 Commits

Author SHA1 Message Date
e50dd3417c feat(extract): add support for .crx (Chrome extension format) (#12652) 2024-09-05 12:07:18 +02:00
c68ff8aeed feat(extract): add support for .vsix files (VS Code extension) (#12643) 2024-08-30 14:30:57 +02:00
4e8099175e feat(extract): add support for multi-part 7z (#12484) 2024-06-08 10:48:33 +02:00
668ca3a32d fix(extract): zst now extracts as expected (#12395) 2024-05-03 21:43:53 +02:00
4ad09ab0b1 feat(extract): prefer using pbzip2 instead of bunzip2 (#12280) 2024-03-13 00:23:08 +07:00
1f56f2bdc4 fix(extract): remove extraction file extension for tar (#11873) 2023-09-03 17:08:19 +02:00
3f477e5da5 fix(extract): extraction to directory for single-file .gz (#11852) 2023-08-23 13:25:33 +02:00
b06663df23 feat(extract): add support for .zlib and .exe files (#11085)
Fixes #11085
2023-05-21 21:05:14 +02:00
3a01d7df82 fix(extract): fix extract dir naming conflicts
Fixes #11642
2023-05-21 21:05:14 +02:00
49d34d00cd fix(extract): fix conflict if compressed file has a folder of the same name
This change fixes the case where the compressed file (e.g. tools.tgz) only
contains a folder with the same name (e.g. tools) in its root folder.

tools.tgz:
|- tools
   |- fileA.txt
   |- fileB.txt
   \- fileC.txt

In that case, the "smart" folder creation mechanism will extract the files in
a folder "tools", and this extraction folder will contain a single folder with
the same name.

Before this fix, the tool would try to move out the inside folder to the parent
one, but there would already be a folder named "tools", so it would generate a
conflict.

This change first renames the inside folder to a random string, and only then
it is moved outside and the old extraction folder is deleted.
2023-04-06 21:06:16 +02:00
d47e1d65f6 fix(extract): safely remove extract directory
The previous code would remove the extract directory if the command failed.
This could be bad because we're not checking if the extract directory
already existed (since we're using `mkdir -p`), so it could be possible
that the extract operation failed, and we'd be removing a directory that
already existed and had files in it.

This change only removes the directory if there are no files in it, regardless
of whether the extract operation was successful or not. This is much safer.
2023-04-02 16:33:54 +02:00
75405b7b0a feat(extract): always extract files into its own folder (#11596) 2023-04-02 14:28:01 +02:00
a4f08ad238 feat(extract): support obscpio format (#11511)
Co-authored-by: Carlo Sala <carlosalag@protonmail.com>
2023-02-22 10:16:28 +01:00
9b91e82560 feat(extract): add zpaq support (#11478) 2023-02-05 08:32:49 +01:00
4b5076b5ec feat(extract): add pbzip2 and pixz (#11435) 2023-01-16 13:19:01 +01:00
0b32e4b25f style(extract): adopt main code style guide and refactor variables 2021-08-14 22:34:14 +02:00
10a00085d0 fix(extract): don't push entries to dirstack when extracting rpm and deb files 2021-08-14 22:33:46 +02:00
a2f1ef69b5 fix(extract): correctly extract rpm files on other directories 2021-08-14 22:33:06 +02:00
0b506fea0c feat(extract): add cpio support 2021-08-14 22:32:05 +02:00
59a9b453d3 fix(extract): support unpacking deb file from different directory 2021-08-14 22:32:04 +02:00
6dc937ff68 feat(extract): add suport for .cab files via cabextract 2021-08-14 22:32:04 +02:00
706b2f3765 feat(extract): add support for .ear files (#9901)
Co-authored-by: Corey Hinkle <corey.hinkle@five9.com>
2021-05-28 11:27:16 +02:00
322e592c38 extract: add IPA to extractable filetypes (#9117)
Co-authored-by: Marc Cornellà <marc.cornella@live.com>
2020-07-18 16:32:50 +02:00
78b07e92fd extract: add lz4 support (#8510) 2020-01-04 17:15:24 +01:00
6bac9eb103 extract: add lrz support (#8500) 2019-12-28 20:36:29 -08:00
ad1169bf39 extract: add tar.lz support (#8479) 2019-12-18 10:53:53 +01:00
1761685d3e extract: add zstd support (#8469) 2019-12-17 17:35:40 +01:00
68c4c06283 extract: add RPM archive support (#8347)
Also more quiet extraction. -D for cpio was not used due to additional
output.
2019-11-19 17:00:53 +01:00
24726678dd extract: keep *.gz files with pigz and gunzip
Fixes #8368
2019-11-09 12:37:41 +01:00
586ca16902 extract: add AAR Android archive support (#7511) 2019-01-15 19:03:07 +01:00
5fbf912093 extract: whl files support (#7045) 2018-08-09 18:16:15 +02:00
91b771914b extract: check file extension as lowercase (#6158)
Fixes #6157
2018-08-07 00:45:24 +02:00
3f654922de Update extract.plugin.zsh (#6516) 2018-01-22 19:24:18 -08:00
bac896fca7 extract: add README 2016-09-30 00:38:21 +02:00
b5dc976d23 extract: add file extensions to extract completion 2016-09-30 00:38:21 +02:00
68425c266a extract: replace basename&sed w/ zsh variable expansion syntax
`${var:t:h}` uses:

- `${var:t}` which acts as `basename`.

- `${var:r}` which removes the extension.

See http://zsh.sourceforge.net/Doc/Release/Expansion.html#Modifiers
2016-09-30 00:38:03 +02:00
f12cb5a697 extract: fix extraction of deb packages with data.tar.xz 2016-09-29 14:05:21 +02:00
09d95251a7 extract: fix styling 2016-09-29 14:05:21 +02:00
a42a3eead7 Recognize Firefox addon and Android packages. 2015-12-02 12:05:05 +08:00
f1d12c598b Add .ipsw to the extract plugin. 2015-02-11 16:48:31 -08:00
db8eacf6fd use pigz if available in extract plugin 2014-11-26 14:20:00 +00:00
6fc241b0d2 extract plugin will unzip *.sublime-package files 2014-05-26 12:15:20 +02:00
671db71d21 Added '.jar' 2013-10-03 13:00:12 +03:00
387de3a57e Added '.war' extension to unzip 2013-10-03 09:48:49 +03:00
2264c51355 Update plugins/extract/extract.plugin.zsh
Cause unrar to preserve directory structure. (Why is only unrar different?!)
2013-02-15 16:57:36 +00:00
b73f95ab26 Removed the assignments to fpath as well, since that's all handled in the .oh-my-zsh/oh-my-zsh.sh boot script. 2012-01-16 13:34:07 +00:00
c04b4abe91 Removed calls to compinit in the extract and the bundler plugins. compinit should only be called once, after all modules, libs, etc are imported. 2012-01-13 12:40:59 +00:00
a5c383258b Handle tar.xz and tar.lzma better (credit: @gwjo). 2011-06-01 20:33:16 -04:00
1db6575f14 Added extract plugin. 2011-06-01 20:33:16 -04:00