PackIt-1.22 - a flexible Archiving/Compressing GUI

Miscellaneous tools
Message
Author
User avatar
SFR
Posts: 1800
Joined: Wed 26 Oct 2011, 21:52

PackIt-1.22 - a flexible Archiving/Compressing GUI

#1 Post by SFR »

Unlike UExtract, PackIt is not intended to be an ultimate (i.e. millions of supported formats) tool.
But it's designed to be simple yet flexible.
Just take a look at the screenshot - I hope no usage instructions are necessary...

I've implemented only crucial (IMO and for me) parameters for Pass_2 tools, like:
- compression level
- solid archive (only 7z/rar)
- password (only 7z/rar/zip)
- filenames encryption (only 7z/rar)

Like UExtract, PackIt is packaged as a ROX right-click app and this is the easier way to use it (right-click or drag'n'drop), however menu entry is also available.

Supported archiving/compressing tools:
Pass_1: tar, cpio, mkisofs, mke2fs, mksquashfs
Pass_2: 7z/7za/7zr, bzip2, gzip, lz4, lzip, lzma, lzop, pigz, rar, xz, zip, zstd

Requirements: Bash, Busybox, Gtkdialog (>= 0.8.3) + at least one of supported archiving/compressing tools.
___________

Note that mixing mksquashfs with any of 'Pass_2' tools is not supported, for two reasons:
- mksquashfs refuses to send its output to stdout, so I'd have to use some ugly workarounds
- it'd be poinless anyway, since *.sfs is already compressed


PS. I couldn't find any icon for this app that would satisfy my aesthetic sense (yeah, I'm pretty fussy), so I just used the one from UExtract, but with inverted colors.
Actually, they look quite nice side by side. :wink:
___________

PackIt contains the following translations:

- Polish (me)
- Spanish (nilsonmorales & vicmz)
- French (charlie6)
- Russian (Senderok)
- German (L18L)
___________

Changelog

Version 0.9:
- initial release

Version 1.0:
- added: 'Verbose mode' checkbox
- various, minor fixes

Version 1.1:
- can create a shortcut in $HOME/Desktop (if exists)
- added MD5 checkbox
- various minor fixes and improvements

Version 1.2:
- can create SFX archives (7z/rar/zip only)
- better compatibility with older busybox and xterm (thanks to ac2011)
- added: version number in titlebar (thanks to jplt)

Version 1.3:
- added Spanish translation (thanks to Nilsonmorales)
- mksquashfs' compression method is now choosable.
- can create also *.exe (Win/GUI) self-extracting archives (only 7z/rar)
- .sfx/.exe extensions are shown only if appropriate modules are available.
- creating encrypted, self-extrating ZIP archives is not allowed (unzipsfx doesn't support it)
- bugfix: wrong compression level calculation for rar
- xterm changed to $TERM
- some other minor fixes.

Version 1.4:
- pinstall.sh is now Woof-friendly (thanks to Pemasu)
- updated ES translation (thanks to Vicmz)
- tar|cpio|iso.zip archives preserve normal name inside (instead of - (dash))
- tar|cpio|iso.sfx extensions (zip) unblocked
- small bugfix in routine that tests sfx/exe abilities

Version 1.5:
- fixed: improper handling of dir/filenames and passwords with some special chars like ' " * < >
- fixed: if Pass_1 fails, in some cases Pass_2 may continue without errors
- some other minor fixes

Version 1.6:
- bugfix: improper handling of filename(s) and passwords that contain ` (backtick)
- bugfix: not detecting 7za/7zr if 7z not available

Version 1.7:
- p(un)install.sh: can create right-click entries for Thunar
- added 'mke2fs' to "Pass_1" tools
- all 'xmessage' stuff replaced with pure Gtkdialog

Version 1.8:
- archiving can be aborted also in non-verbose mode
- visual improvements (non-verbose mode)
- some internal improvements/fixes

Version 1.9:
- mksquashfs: better compression in xz mode (-Xbcj x86 -b 512K)
- mkisofs: Joliet disabled when creating Puppy ISO (if presence of "*.sfs", "initrd*" and "vmlinuz" files has been detected)
- fixed regression in creating right-click entries in FatDog

Version 1.10:
- support for lzip
- withdrawn: '-Xbcj x86' option for mksquashfs in 'xz' mode
- added SHA1
- preview of output archive's size in non-verbose mode
- minor internal changes

Version 1.11:
- pressing 'Enter' activates the 'PackIt!' button
- better compatibility with FatDog64-700 (ROX right-click integration in pinstall.sh)
- some minor fixes

Version 1.12:
- bugfix: creating MD5/SHA1 was failing if output dir wasn't the same as input files' dir
- in Fatdog right-click entries are installed to /etc now
- some internal rearrangements

Version 1.13:
- slightly re-arranged structure of internal directories
- increased max. password length from 64 to 256
- added German translation (thanks to L18L)

Version 1.14:
- added '-mqs' switch to 7z (only for versions >= 15) in order to re-enable old sorting method, which provides better compression for solid archives
- mksquashfs: can detect and use 'lz4' (if mksquashfs supports it)
- also added 'lz4' to PASS_2 tools
- if "Password" field is empty, "Encrypt filenames" checkbox is kept insensitive (works only for Gtkdialog >= 0.8.3)
- removed some superfluous extensions like .gzip, .gtar, etc.
- after clicking X (during packing) PackIt won't be continuing in the background, but will just abort

Version 1.15:
- added button (within entrybox) to toggle visibility of password
- can handle multiple input files dropped onto entrybox (when PackIt was launched via Menu entry, not via right-click option)

Version 1.16:
- make (un)install scripts compatibile with Fatdog build system
- added zstd support
- added sha256 checksum

Version 1.17:
- removed compress and freeze support
- added 'Block size' option to mksquashfs
- various fixes and improvements

Version 1.18:
- can create zstd compressed SFSes (requires squashfs-tools v4.4 built with zstd)
- fixed typo in one extension

Version 1.19:
- mksquashfs: added option to not compress (-noI -noId -noD -noF -noX)
- fixed disabling mksquashfs's "block size" combobox after choosing '(none)'

Version 1.20:
- mksquashfs: remove '-noId' option, which is not supported by older versions of squashfs-tools
- add missing ; in .desktop file

Version 1.21:
- fixes and improvements in creating ISO and ext2 images
- zstd: use '-T0' option (max. # of threads)

Version 1.22:
- added ability to select individual checksums
- added support for pigz compressor
- PackIt.desktop: fix category (thanks to BarryK)
- install script: ignore parent ROX MIME-Types (thanks to BarryK)
- some minor fixes

Have a nice packing &
Greetings!
Attachments
packit-1.22.pet
MD5: 64eecbc60e5bf11f0c281d3311d32952 packit-1.22.pet
(33.96 KiB) Downloaded 2914 times
Screenshot.png
(36.83 KiB) Downloaded 4770 times
Last edited by SFR on Sun 10 May 2020, 15:08, edited 32 times in total.
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
User avatar
ASRI éducation
Posts: 3197
Joined: Sat 09 May 2009, 12:10
Location: France
Contact:

#2 Post by ASRI éducation »

PackIt seems to be a very interesting utility (I trust in SFR).
Projet ASRI éducation => [url=http://asri-education.org/]Association[/url] | [url=http://forum.asri-education.org/]Forum[/url] | [url=http://dl01.asri-education.org/]Dépôt[/url] | [url=http://kids.asri-education.org/]Espace kids[/url]
User avatar
SFR
Posts: 1800
Joined: Wed 26 Oct 2011, 21:52

#3 Post by SFR »

Ok, no feedback (except ASRI's - thanks!), so I'm assuming no bugs were found as well (I found just a few), therefore let's bump it at once to:
Version 1.0

- added: 'Verbose mode' checkbox - this option executes "packing command" within terminal window (what also makes possible to break the operation with CTRL+C)
- various, minor fixes

First post updated!

Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
User avatar
rg66
Posts: 1158
Joined: Mon 23 Jul 2012, 05:53
Location: Vancouver, BC Canada / Entebbe, Uganda Africa!?!

#4 Post by rg66 »

This is a very cool app. I've already converted it to work with thunar right click and will be adding it to X-precise, X-slacko and Carolina if and when it's updated.

I did have to dl rar for linux but it seems to be a trial only.

Anyway, thanks for this!
X-slacko-5b1 - X-tahr-2.0 - X-precise-2.4
[url=http://smokey01.com/rg66/]X-series repo[/url]
User avatar
SFR
Posts: 1800
Joined: Wed 26 Oct 2011, 21:52

#5 Post by SFR »

Thanks rg66!
rg66 wrote:I did have to dl rar for linux but it seems to be a trial only.
It's not necessary to install rar - if any of supported tools isn't installed, it simply won't be displayed in the GUI.

Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
User avatar
rg66
Posts: 1158
Joined: Mon 23 Jul 2012, 05:53
Location: Vancouver, BC Canada / Entebbe, Uganda Africa!?!

#6 Post by rg66 »

SFR wrote:It's not necessary to install rar - if any of supported tools isn't installed, it simply won't be displayed in the GUI.

Greetings!
I noticed that since it didn't show rar as an option until I added it. I do need it as most of my compressed files on my Win box are rared.

Again, thanks for this very handy tool.
X-slacko-5b1 - X-tahr-2.0 - X-precise-2.4
[url=http://smokey01.com/rg66/]X-series repo[/url]
musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#7 Post by musher0 »

SFR, you're the best! :)
Thanks for this.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
User avatar
ASRI éducation
Posts: 3197
Joined: Sat 09 May 2009, 12:10
Location: France
Contact:

#8 Post by ASRI éducation »

I looked at the content of the package.
This is signed SFR. So, it is obviously very well written.
Thank you SFR!
Projet ASRI éducation => [url=http://asri-education.org/]Association[/url] | [url=http://forum.asri-education.org/]Forum[/url] | [url=http://dl01.asri-education.org/]Dépôt[/url] | [url=http://kids.asri-education.org/]Espace kids[/url]
User avatar
SFR
Posts: 1800
Joined: Wed 26 Oct 2011, 21:52

#9 Post by SFR »

Thanks guys! :)

A small update, mostly polishing up...

Version 1.1:

- during install time can also create a shortcut in $HOME/Desktop (if exists), because drag'n'dropping files/dirs on such icon also works fine, just like in ROX (tested in Carolina/Thunar & Peebee's LXPup13.10/PCManFM)
- added MD5 checkbox (default - false)
- various minor fixes and improvements

@Geoffrey: the 'n' bug has also been fixed. :wink:

First post updated!

Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
jplt

#10 Post by jplt »

It would be useful in the gui to have the version of the software.

Thanks for packit.
User avatar
RetroTechGuy
Posts: 2947
Joined: Tue 15 Dec 2009, 17:20
Location: USA

#11 Post by RetroTechGuy »

Interesting...
[url=http://murga-linux.com/puppy/viewtopic.php?t=58615]Add swapfile[/url]
[url=http://wellminded.net63.net/]WellMinded Search[/url]
[url=http://puppylinux.us/psearch.html]PuppyLinux.US Search[/url]
User avatar
Geoffrey
Posts: 2355
Joined: Sun 30 May 2010, 08:42
Location: Queensland

#12 Post by Geoffrey »

SFR wrote:@Geoffrey: the 'n' bug has also been fixed. :wink:
The midget has been decommissioned, cool :lol:
[b]Carolina:[/b] [url=http://smokey01.com/carolina/pages/recent-repo.html]Recent Repository Additions[/url]
[img]https://dl.dropboxusercontent.com/s/ahfade8q4def1lq/signbot.gif[/img]
ac2011
Posts: 134
Joined: Wed 09 Feb 2011, 08:22

#13 Post by ac2011 »

It's a nice, simple-to-use tool. Well done. One request (or maybe I'm missing something). Is it possible to send more than one file/directory name for archiving? i.e. to select three or four files in Rox, right-click and send them to be compressed into one archive? That would be very useful.
User avatar
SFR
Posts: 1800
Joined: Wed 26 Oct 2011, 21:52

#14 Post by SFR »

Hey Ac2011

Sure it's possible, it's just a bit longer path - after selecting multiple files/dirs: right-click -> OpenWith -> PackIt
Or, if you have its icon on the desktop, drag'n'drop them onto it.
jplt wrote:It would be useful in the gui to have the version of the software.
Hmm, perhaps I'll include version number in the titlebar (or somewhere in the GUI) when/if I'll be releasing the next version; for now one can easily check it by right clicking PackIt's icon -> Properties.

Thanks &
Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
ac2011
Posts: 134
Joined: Wed 09 Feb 2011, 08:22

#15 Post by ac2011 »

Hmm... still doesn't work for me. Actually, even choosing one file and right-clicking, or dragging onto the desktop icon, doesn't work. With 'Verbose mode' ticked I get no report, and with it unticked I get the message "Creation of XXX.tar has failed!" Viewing the log shows:

Code: Select all

tar: --: Cannot stat: No such file or directory
tar: --: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
This is in Fluppy, by the way. I think I had it working in Carolina. I get the same error when inputting the filename manually after launching packit from the commandline.

Launching Packit from the commandline with a file, e.g. "packit path/to/file.txt" gives this after I attempt to run the compression:

Code: Select all

BusyBox v1.15.0.svn (2009-07-25 18:23:53 GMT-8) multi-call binary

Usage: dirname FILENAME

Strip non-directory suffix from FILENAME

xterm:  bad command line option "--title"

usage:  xterm [-/+132] [-C] [-Sccn] [-T string] [-/+ah] [-/+ai] [-/+aw]
    [-b number] [-/+bc] [-bcf milliseconds] [-bcn milliseconds] [-bd color]
    [-/+bdc] [-bg color] [-bw number] [-/+cb] [-cc classrange] [-class string]
    [-/+cm] [-/+cn] [-cr color] [-/+cu] [-/+dc] [-display displayname]
    [-e command args ...] [-fa pattern] [-fb fontname] [-/+fbb] [-/+fbx]
    [-fd pattern] [-fg color] [-fi fontname] [-fn fontname] [-fs size]
    [-fx fontname] [%geom] [#geom] [-geometry geom] [-help] [-/+hold] [-iconic]
    [-/+ie] [-/+im] [-into windowId] [-/+j] [-/+k8] [-kt keyboardtype] [-/+l]
    [-leftbar] [-lf filename] [-/+ls] [-/+mb] [-mc milliseconds] [-/+mesg]
    [-ms color] [-n string] [-name string] [-nb number] [-/+nul] [-/+pc]
    [-/+pob] [-rightbar] [-/+rv] [-/+rvc] [-/+rw] [-/+s] [-/+samename] [-/+sb]
    [-selbg color] [-selfg color] [-/+sf] [-/+si] [-/+sk] [-sl number] [-/+sm]
    [-/+sp] [-/+t] [-ti termid] [-title string] [-tm string] [-tn name]
    [-/+ulc] [-/+ulit] [-/+ut] [-/+vb] [-version] [-/+wf] [-xrm resourcestring]
    [-ziconbeep percent]

Type xterm -help for a full description.
So do I need to upgrade xterm/busybox or can I strip out the --title bit from the code?
User avatar
Monsie
Posts: 631
Joined: Thu 01 Dec 2011, 07:37
Location: Kamloops BC Canada

PackIt-1.1 - a flexible Archiving/Compressing GUI

#16 Post by Monsie »

rg66 wrote:
SFR wrote:It's not necessary to install rar - if any of supported tools isn't installed, it simply won't be displayed in the GUI.

Greetings!
I noticed that since it didn't show rar as an option until I added it. I do need it as most of my compressed files on my Win box are rared.

Again, thanks for this very handy tool.
I'm just trying to understand this situation... is there a current Puppy or derivative that does not have support for rar files?

Thanks,
Monsie
My [u]username[/u] is pronounced: "mun-see". Derived from my surname, it was my nickname throughout high school.
ac2011
Posts: 134
Joined: Wed 09 Feb 2011, 08:22

#17 Post by ac2011 »

To answer my own post, changing --title to -title in the code prevents that error, and I can now use verbose mode, but still compression fails with:

Code: Select all

tar: --: Cannot stat: No such file or directory


Or, if I try to zip:

Code: Select all

zip error: Invalid command arguments (no such option: -)
This is when just attempting to archive one single file.
User avatar
SFR
Posts: 1800
Joined: Wed 26 Oct 2011, 21:52

#18 Post by SFR »

Thank you for reporting this.

Ok, I found an old Fluppy-013 ISO (You have upgraded Gtkdialog, I presume? The inbuilt versions are too old for PackIt.).
The problem was the use of -- switch with dirname and basename cmds (yeah, probably too old busybox version).
Same with zip (upgrade recommended, btw).
Well, the -- switch is a bit paranoid precaution, to cover dir/filenames that start with a dash. Rare case. Also, since right-click & drag'n'drop sends a full path(s) to an application anyway, only the use from command line could be the case.
I've withdrawn this precaution (not fully though, but other commands (except mksquashfs, btw) do work with this).

As for xterm's problem with '--title' - I found that the most compatible variant of this parameter is '-T' (works with lxterminal, xterm, (u)rxvt).
___________

Version 1.2:
- can create SFX archives (7z/rar/zip only) - choosable via combobox next to archive name
This functionality depends on the presence of the following files:
7z - 7zCon.sfx (/usr/local/lib/p7zip/)
rar - default.sfx (/usr/local/lib/)
zip - unzipsfx (by default it's in /usr/bin/, but can be wherever $PATH can reach)
- better compatibility with older busybox and "real" xterm
- added: version number in titlebar

First post updated!

Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#19 Post by musher0 »

Ha-ha, sfx archives! Yyyyyess! Thanks, SFR! :D
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
ac2011
Posts: 134
Joined: Wed 09 Feb 2011, 08:22

#20 Post by ac2011 »

Now that's service :D

Thanks very much. I'm mostly using Carolina but I have a few non-PAE machines that run Fluppy, though tweaked out of all recognition. It's a nice challenge to keep these machines alive.

Yes, I'm using updated gtkdialog. Haven't updated zip yet, but I will.

Thanks again.
Post Reply