Page 2 of 3
7Z new zip - <Solved>
Posted: 10 Nov 2022, 23:10
by Ed_P
Well my old p7zip-16.02 module has no menu entry, and apparently doesn't do much.
Code: Select all
guest@porteus:~$ p7zip -h
Usage: /usr/bin/p7zip [-d] [-h|--help] [--] [ name ... ]
-h print this help
-d decompress file
-- treats all subsequent arguments as file names, even if they start with a dash
guest@porteus:~$
The new version has a P7ZIP entry in the menu's Accessories section and opens a 7-Zip (ALPHA Software) GUI. User friendly and full functional for users.
A 7-zip-21.02-x86_64-1ncm module I have from Porteus 4.0 has no menu entry and no GUI that I found but is very functional.
Code: Select all
guest@porteus:~$ zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
Zip 3.0 (July 5th 2008). Usage:
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list]
The default action is to add or replace zipfile entries from list, which
can include the special name - to compress standard input.
If zipfile and list are omitted, zip compresses stdin to stdout.
-f freshen: only changed files -u update: only changed or new files
-d delete entries in zipfile -m move into zipfile (delete OS files)
-r recurse into directories -j junk (don't record) directory names
-0 store only -l convert LF to CR LF (-ll CR LF to LF)
-1 compress faster -9 compress better
-q quiet operation -v verbose operation/print version info
-c add one-line comments -z add zipfile comment
-@ read names from stdin -o make zipfile as old as latest entry
-x exclude the following names -i include only the following names
-F fix zipfile (-FF try harder) -D do not add directory entries
-A adjust self-extracting exe -J junk zipfile prefix (unzipsfx)
-T test zipfile integrity -X eXclude eXtra file attributes
-y store symbolic links as the link instead of the referenced file
-e encrypt -n don't compress these suffixes
-h2 show more help
guest@porteus:~$
Code: Select all
guest@porteus:/mnt/nvme0n1p7/porteus5.0/Optional$ ls -oh *zip*.xzm
-rwxrwxrwx 1 guest 852K Dec 30 2021 7-zip-21.02-x86_64-1ncm.xzm*
-rwxrwxrwx 1 guest 2.0M Jul 26 2021 p7zip-16.02-x86_64-4_ncm.xzm*
-rwxrwxrwx 1 guest 6.0M Nov 10 12:41 p7zip-Gui.xzm*
guest@porteus:/mnt/nvme0n1p7/porteus5.0/Optional$
7Z new zip - <Solved>
Posted: 11 Nov 2022, 00:59
by Rava
this is what we have by default, but you cannot call p7zip a GUI, there s nothing GUI about it:
Code: Select all
guest@porteus:/$ p7zip -h
Usage: /usr/bin/p7zip [-d] [-h|--help] [--] [ name ... ]
-h print this help
-d decompress file
-- treats all subsequent arguments as file names, even if they start with a dash
and we also have a zip command by default without additional module:
Code: Select all
guest@porteus:/$ zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
Zip 3.0 (July 5th 2008). Usage:
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list]
The default action is to add or replace zipfile entries from list, which
can include the special name - to compress standard input.
If zipfile and list are omitted, zip compresses stdin to stdout.
-f freshen: only changed files -u update: only changed or new files
-d delete entries in zipfile -m move into zipfile (delete OS files)
-r recurse into directories -j junk (don't record) directory names
-0 store only -l convert LF to CR LF (-ll CR LF to LF)
-1 compress faster -9 compress better
-q quiet operation -v verbose operation/print version info
-c add one-line comments -z add zipfile comment
-@ read names from stdin -o make zipfile as old as latest entry
-x exclude the following names -i include only the following names
-F fix zipfile (-FF try harder) -D do not add directory entries
-A adjust self-extracting exe -J junk zipfile prefix (unzipsfx)
-T test zipfile integrity -X eXclude eXtra file attributes
-y store symbolic links as the link instead of the referenced file
-e encrypt -n don't compress these suffixes
-h2 show more help
You sure the two commands you quoted are not the same that I quoted? and not the ones from any additional modules?
Added in 4 minutes 13 seconds:
The real GUI thingy we have in XFCE (4.16 module) is engrampa that also works from the console:
Code: Select all
guest@porteus:/$ engrampa --help
Usage:
engrampa [OPTION…] - Create and modify an archive
Help Options:
-?, --help Show help options
--help-all Show all help options
--help-gtk Show GTK+ Options
--help-sm-client Show session management options
Application Options:
-a, --add-to=ARCHIVE Add files to the specified archive and quit the program
-d, --add Add files asking the name of the archive and quit the program
-e, --extract-to=FOLDER Extract archives to the specified folder and quit the program
-f, --extract Extract archives asking the destination folder and quit the program
-h, --extract-here Extract the contents of the archives in the archive folder and quit the program
--default-dir=FOLDER Default folder to use for the '--add' and '--extract' commands
--force Create destination folder without asking confirmation
--version Show the application's version
--display=DISPLAY X display to use
guest@porteus:/$ engrampa --version
Engrampa Archive Manager 1.26.0
Its GUI
About window also says this
Code: Select all
Engrampa is an archive manager for the MATE Desktop
Added in 21 minutes 54 seconds:
using modified one-liner from my lsxzmgrep V2020-12-19 script to search though the 003- modules (as in updates/core/20220924/ ) , it seems
003-xfce-4.16.xzm (I renamed the module due to the existence of a 003-xfce V 4.12 module) and
003-openbox.xzm and
003-mate.xzm all use engrampa :
Code: Select all
guest@porteus:/tmp/003-tests$ md5sum *xzm
c1e05cf09bb362b1d38e940abcac96a5 003-cinnamon.xzm
9940a53029f15a1540576d79922ffc05 003-gnome.xzm
a3964b623164877489fdf6d31fcd80e7 003-kde5.xzm
b6605dd33347cb5c3b0fcec1be15fc6e 003-lxde.xzm
6926f700db97962b4c1ab18dfe84c4e7 003-lxqt.xzm
29d3e367bc92a5cc06235294ac2baa97 003-mate.xzm
185b65fe34bf1f55ea3ffaaa323235c4 003-openbox.xzm
4f61156879b273749c3af1d2b245c41b 003-xfce-4.16.xzm
guest@porteus:/tmp/003-tests$ for module in $(find "." -type f,l -name "*.xzm"); do lsxzm ${module} | grep -l engrampa | sed -r "s#.+#>${module}\n&#" ; done
>./003-mate.xzm
(standard input)
>./003-lxde.xzm
(standard input)
>./003-xfce-4.16.xzm
(standard input)
meaning, in reverse, 003-cinnamon.xzm , 003-gnome.xzm , 003-kde5.xzm , 003-lxqt.xzm and 003-openbox.xzm use a different GUI for handling archives than engrampa (or have no GUI at all?)
Added in 15 minutes 17 seconds:
Due to looking in all the above
(in the "Added in 21 minutes 54 seconds:" part of this post but not quoted in that part per se) I found /usr/libexec/engrampa/isoinfo.sh being part of the 003-xfce-4.16.xzm module - but in itself it's not made executable:
Code: Select all
root@porteus:~# file /usr/libexec/engrampa/isoinfo.sh
/usr/libexec/engrampa/isoinfo.sh: ASCII text
root@porteus:~# ls -o /usr/libexec/engrampa/isoinfo.sh
-rw-r--r-- 1 root 565 2021-08-07 16:22 /usr/libexec/engrampa/isoinfo.sh
Here the [
code
] for the ones curious about isoinfo.sh
Code: Select all
filename=$2
JOLIET=true
ROCK_RIDGE=true
ISOINFO=`isoinfo -d -i "$filename"`
if echo $ISOINFO | grep "NO Joliet present" >/dev/null 2>&1; then
JOLIET=false
fi
if echo $ISOINFO | grep "NO Rock Ridge present" >/dev/null 2>&1; then
ROCK_RIDGE=false
fi
iso_extensions=""
if test $ROCK_RIDGE = true; then
iso_extensions="-R"
elif test $JOLIET = true; then
iso_extensions="-J"
fi
if test "x$3" = x-x; then
file_to_extract=$4
outfile=$5
isoinfo $iso_extensions -i "$filename" -x "$file_to_extract" > "$outfile"
else
isoinfo $iso_extensions -i "$filename" -l
fi
7Z new zip - <Solved>
Posted: 11 Nov 2022, 06:36
by Ed_P
My system. No Optional zip modules active.
Code: Select all
guest@porteus:/mnt/live/memory/images$ ls -oh
total 0
drwxr-xr-x 5 root 61 Jul 2 03:32 000-kernel.xzm/
drwxr-xr-x 20 root 305 Oct 6 01:00 001-core.xzm/
drwxr-xr-x 10 root 154 Oct 6 01:07 002-xorg.xzm/
drwxr-xr-x 6 root 72 Jun 30 03:13 002-xtra.xzm/
drwxr-xr-x 10 root 129 Sep 25 01:21 003-cinnamon.xzm/
drwxr-xr-x 6 root 60 Oct 29 13:51 011-slapt-get-0.11.6-x86_64-2gv.xzm/
drwxr-xr-x 7 root 94 Aug 6 07:54 07-printing-x86_64-2022-08-06.xzm/
drwxr-xr-x 4 root 37 Oct 22 01:14 Dellautonet.xzm/
drwxr-xr-x 3 root 26 May 14 00:20 Dellsound.xzm/
drwxr-xr-x 3 root 26 Jul 30 00:31 Dellwifi2.xzm/
drwxr-xr-x 4 root 37 Nov 24 2021 firefox-94.0.2-x86_64-en-US.xzm/
drwxr-xr-x 8 root 95 Nov 2 01:48 mychanges.xzm/
drwxr-xr-x 3 root 26 Oct 30 03:04 updater-test-22-10-31.xzm/
Code: Select all
uest@porteus:/mnt/live/memory/images$ p7zip -h
Usage: /usr/bin/p7zip [-d] [-h|--help] [--] [ name ... ]
-h print this help
-d decompress file
-- treats all subsequent arguments as file names, even if they start with a dash
Code: Select all
guest@porteus:/mnt/live/memory/images$ zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
Zip 3.0 (July 5th 2008). Usage:
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list]
The default action is to add or replace zipfile entries from list, which
can include the special name - to compress standard input.
If zipfile and list are omitted, zip compresses stdin to stdout.
-f freshen: only changed files -u update: only changed or new files
-d delete entries in zipfile -m move into zipfile (delete OS files)
-r recurse into directories -j junk (don't record) directory names
-0 store only -l convert LF to CR LF (-ll CR LF to LF)
-1 compress faster -9 compress better
-q quiet operation -v verbose operation/print version info
-c add one-line comments -z add zipfile comment
-@ read names from stdin -o make zipfile as old as latest entry
-x exclude the following names -i include only the following names
-F fix zipfile (-FF try harder) -D do not add directory entries
-A adjust self-extracting exe -J junk zipfile prefix (unzipsfx)
-T test zipfile integrity -X eXclude eXtra file attributes
-y store symbolic links as the link instead of the referenced file
-e encrypt -n don't compress these suffixes
-h2 show more help
Code: Select all
guest@porteus:/mnt/live/memory/images$ 7z
7-Zip [64] 17.04 : Copyright (c) 1999-2021 Igor Pavlov : 2017-08-28
p7zip Version 17.04 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,8 CPUs x64)
Usage: 7z <command> [<switches>...] <archive_name> [<file_names>...]
<Commands>
a : Add files to archive
b : Benchmark
d : Delete files from archive
e : Extract files from archive (without using directory names)
h : Calculate hash values for files
i : Show information about supported formats
l : List contents of archive
rn : Rename files in archive
t : Test integrity of archive
u : Update files to archive
x : eXtract files with full paths
<Switches>
-- : Stop switches parsing
@listfile : set path to listfile that contains file names
-ai[r[-|0]]{@listfile|!wildcard} : Include archives
-ax[r[-|0]]{@listfile|!wildcard} : eXclude archives
-ao{a|s|t|u} : set Overwrite mode
-an : disable archive_name field
-bb[0-3] : set output log level
-bd : disable progress indicator
-bs{o|e|p}{0|1|2} : set output stream for output/error/progress line
-bt : show execution time statistics
-i[r[-|0]]{@listfile|!wildcard} : Include filenames
-m{Parameters} : set compression Method
-mmt[N] : set number of CPU threads
-mx[N] : set compression level: -mx1 (fastest) ... -mx9 (ultra)
-o{Directory} : set Output directory
-p{Password} : set Password
-r[-|0] : Recurse subdirectories
-sa{a|e|s} : set Archive name mode
-scc{UTF-8|WIN|DOS} : set charset for for console input/output
-scs{UTF-8|UTF-16LE|UTF-16BE|WIN|DOS|{id}} : set charset for list files
-scrc[CRC32|CRC64|SHA1|SHA256|*] : set hash function for x, e, h commands
-sdel : delete files after compression
-seml[.] : send archive by email
-sfx[{name}] : Create SFX archive
-si[{name}] : read data from stdin
-slp : set Large Pages mode
-slt : show technical information for l (List) command
-snh : store hard links as links
-snl : store symbolic links as links
-sni : store NT security information
-sns[-] : store NTFS alternate streams
-so : write data to stdout
-spd : disable wildcard matching for file names
-spe : eliminate duplication of root folder for extract command
-spf : use fully qualified file paths
-ssc[-] : set sensitive case mode
-ssw : compress shared files
-stl : set archive timestamp from the most recently modified file
-stm{HexMask} : set CPU thread affinity mask (hexadecimal number)
-stx{Type} : exclude archive type
-t{Type} : Set type of archive
-u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] : Update options
-v{Size}[b|k|m|g] : Create volumes
-w[{path}] : assign Work directory. Empty path means a temporary directory
-x[r[-|0]]{@listfile|!wildcard} : eXclude filenames
-y : assume Yes on all queries
7Z - build new zip - <Solved>
Posted: 11 Nov 2022, 12:31
by Testuser
Ed_P wrote: ↑10 Nov 2022, 17:52
Your module is 6,084 KB and I found I have an old p7zip-16.02-x86_64_ncm.xzm module in my /optional folder that is 1,976 KB.
I dont think this has bloatware, it had the supporting library files in lib and lib64 folders required for LXDE or maybe you already had those libraries which created this much size.
Now I see Engrampa does all what 7zip can do except two things so far I noticed.
1. 7zip GUI can directly open squashfs files inside any Linux ISO and see the contents and extract required files.
2. 7zip Gui can directly see what is inside the Xzm files without extacting it.
Thanks
7Z - build new zip - <Solved>
Posted: 11 Nov 2022, 17:23
by Ed_P
Testuser wrote: ↑11 Nov 2022, 12:31
1. 7zip GUI can directly open squashfs files inside any Linux ISO and see the contents and extract required files.
2. 7zip Gui can directly see what is inside the Xzm files without extacting it.
Wow! Nice.
7Z - build new zip - <Solved>
Posted: 11 Nov 2022, 19:26
by Rava
Ed_P wrote: ↑11 Nov 2022, 17:23
Testuser wrote: ↑11 Nov 2022, 12:31
1. 7zip GUI can directly open squashfs files inside any Linux ISO and see the contents and extract required files.
2. 7zip Gui can directly see what is inside the Xzm files without extacting it.
Wow! Nice.
Know what would be brilliant: when we could tweak Engrampa into also being able doing these two things.
7Z - build new zip - <Solved>
Posted: 07 Jun 2023, 10:50
by M. Eerie
Testuser wrote: ↑11 Nov 2022, 12:31
Engrampa does all what 7zip can do except two things so far I noticed.
Engrampa currently fails to compress 7z/.zip format if you have 7z-full instead of the unmaintained p7zip package.
Now it seems
there is a commit to allow the use of the 7zz which is the replacement to p7zip.
I can't find it in Arch repos however.
7Z - build new zip - <Solved>
Posted: 07 Jun 2023, 13:21
by ncmprhnsbl
M. Eerie wrote: ↑07 Jun 2023, 10:50
I can't find it in Arch repos however.
looks to me that the AUR: '7zip-full' provides 7zz
see in the PKGBUILD:
https://gitlab.archlinux.org/archlinux/ ... n/PKGBUILD
7Z - build new zip - <Solved>
Posted: 07 Jun 2023, 13:40
by M. Eerie
ncmprhnsbl wrote: ↑07 Jun 2023, 13:21
AUR: '7zip-full' provides 7zz
Yes, I got it installed.
But
engrampa refuses to compress both .zip (.jar etc.) and .7z archives with 7zz.
In fact, I had a symlink to 7zz called 7z. When I remove the symlink, I can compress to .zip because 7z is no longer used. But then the option to compress .7z is not available in engrampa.
7Z - build new zip - <Solved>
Posted: 07 Jun 2023, 13:51
by ncmprhnsbl
ah, ok , so even though engrampa-1.26.1 release includes that commit that adds support for 7zz, it's still not working.
7Z - build new zip - <Solved>
Posted: 07 Jun 2023, 14:08
by M. Eerie
ncmprhnsbl wrote: ↑07 Jun 2023, 13:51
engrampa-1.26.1 release includes that commit
I have just downgraded from v1.27.0-1 and still the same
7Z - build new zip - <Solved>
Posted: 07 Jun 2023, 17:56
by beny
hi add the p7zip package and engrampa can manage this archive format
7Z - build new zip - <Solved>
Posted: 07 Jun 2023, 19:49
by M. Eerie
beny wrote: ↑07 Jun 2023, 17:56
add the p7zip package
I know, but...
7Z - build new zip - <Solved>
Posted: 07 Jun 2023, 21:42
by beny
Code: Select all
p7zip 17.04
===========
Homepage : https://github.com/jinfeihan57/p7zip
p7zip is a port of the Windows programs 7z.exe and 7za.exe provided by 7-zip.
7-zip is a file archiver with the highest compression ratio.
Homepage : www.7-zip.org
7z uses plugins (7z.so and Codecs/Rar.so) to handle archives.
7za is a stand-alone executable (7za handles less archive formats than 7z).
7zr is a light stand-alone executable that supports only 7z/LZMA/BCJ/BCJ2.
Some GUI :
7zG : beta stage
7zFM : alpha stage
CAUTION :
---------
- FIRST : DO NOT USE the 7-zip format for backup purpose on Linux/Unix because :
- 7-zip does not store the owner/group of the file
On Linux/Unix, in order to backup directories you must use tar !
to backup a directory : tar cf - directory | 7za a -si directory.tar.7z
to restore your backup : 7za x -so directory.tar.7z | tar xf -
- if you want to send files and directories (not the owner of file)
to others Unix/MacOS/Windows users, you can use the 7-zip format.
example : 7za a directory.7z directory
do not use "-r" because this flag does not do what you think
do not use "directory/*" because of ".*" files
(example : "directory/*" does not match "directory/.profile")
7Z - build new zip - <Solved>
Posted: 08 Jun 2023, 07:46
by M. Eerie
Thanks, Beny, but I'd rather prefer to stick with the real project instead of a fork.
Apart from the fact that there are problems when using UTF-8 encoding, The original is POSIX compliant and respects user/group.
In my opinion, the real problem is in engrampa, not in 7zip.
I tried to follow these
instructions, but the result is the same.
Funny thing is *I can* create
.tar.7z fooling engrampa with a cheat, creating a plain text /usr/bin/7z (emulating 7za and 7zr ones)
/usr/bin/7z contents:
Code: Select all
#! /bin/sh
"/usr/lib/p7zip/7zz" "$@"
But I cannot compress directly to .7z
So weird!