Review Request: Add support for The Unarchiver command line utilities (unar/lsar) to operate on RARv3 files

Andrius Štikonas stikonas at gmail.com
Fri Aug 12 21:44:40 UTC 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://svn.reviewboard.kde.org/r/6730/#review10356
-----------------------------------------------------------


I've tested this patch and it worked for simple rar files and multivolume archives. Also, as you have suspected it fails to unpack password protected rar files (with the correct password of course). Even with a couple of bugs it would be nice to get this for KDE S.C. 4.8 release (but I'm not an Ark developer, so I am a bit hesitant to apply this patch myself).

- Andrius


On June 20, 2011, 9:21 p.m., Luke Shumaker wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://svn.reviewboard.kde.org/r/6730/
> -----------------------------------------------------------
> 
> (Updated June 20, 2011, 9:21 p.m.)
> 
> 
> Review request for kdeutils.
> 
> 
> Summary
> -------
> 
> This patch will allow Ark to use The Unarchiver command line utilities
> (unar/lsar) to operate on RAR files, particularly RARv3.
> 
> Now, Ark selects which plugin to use based on MIME type, and the
> X-KDE-Priority of the plugin.  Unfortunately, there is currently no
> mechanism for a fallback, say one plugin doesn't work, to use
> another.  So, for right now users wishing to use Ark with RAR files
> must either choose between clirarplugin (which either uses unrar-free
> or unrar-nonfree), and cliunarchiverplugin (which uses unar and lsar),
> with Ark not being able to just detect which is installed.
> 
> To change the X-KDE-Priority, you just need to edit some .desktop
> files.  In the source they are
> `ark/plugins/*plugin/kerfuffle_*.desktop', which on many systems get
> installed to `/usr/share/kde4/services/kerfuffle_*.desktop'. The
> plugin with the highest priority is used. The clirarplugin has a
> defualt priority of 120, I've given cliunarchiverplugin a priority of
> 150.  This is probably best set by the package maintainer of an OS;
> for example, many systems will prefer unrar-nonfree, but I created
> this with Parabola in mind, on which unrar-nonfree does not exist, and
> this is the only way that RARv3 files will be opened.
> 
> Honestly though, this setup sucks, because unrar-free and unar/lsar
> both have their own stengths (basically, unar/lsar suck, but
> unrar-free doesn't work on RARv3), and the ideal setup would be to use
> unrar-free in most cases, but to fall back to unar/lsar for RARv3
> files that unrar-free can't handle.  Actually, I guess the ideal setup
> would be to make unar/lsar suck less, or to add RARv3 to rar-free.
> 
> === Known Bugs ===
> 
> The whole thing will bork (segfault?) if there is a file in the
> archive contains a file with the filename
>   "some regexp that nothing will ever _ever_ match"
> 
> The program should be able to look at which version of RAR the file
> is, but currently doesn't.  (I mean just within lsar) This is simply
> because I don't know which field to look at.
> 
> I'm pretty sure password protected files will do something weird and
> not work.
> 
> Those last two bugs do could be easily fixed if people send me RAR
> files to test this with; I can't create RARv3 files because I don't
> have rar-nonfree.
> 
> === Troubleshooting ===
> 
> If you have trouble applying the patch, try first running
> $ mkdir ark/plugins/cliunarchiverplugin
> 
> === ChangeLog ===
> 
> 00 - Initial patch
> 01 - Enable clirar, but make cliunarchiver higher priority
> 02 - Reformat patch
> 03 - Reformat patch so that ReviewBoard recognizes it
> 
> Happy Hacking!
> ~ Luke Shumaker <LukeShu at sbcglobal.net>
> 
> 
> Diffs
> -----
> 
>   /trunk/KDE/kdeutils/ark/plugins/CMakeLists.txt 1237729 
>   /trunk/KDE/kdeutils/ark/plugins/cliunarchiverplugin/CMakeLists.txt PRE-CREATION 
>   /trunk/KDE/kdeutils/ark/plugins/cliunarchiverplugin/cliplugin.cpp PRE-CREATION 
>   /trunk/KDE/kdeutils/ark/plugins/cliunarchiverplugin/kerfuffle_cliunarchiver.desktop PRE-CREATION 
> 
> Diff: http://svn.reviewboard.kde.org/r/6730/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Luke
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-utils-devel/attachments/20110812/2fef9112/attachment.html>


More information about the Kde-utils-devel mailing list