GTK4 archive manager. Pure Python3/GTK4. Fully X11 and Wayland native. Inspired by rox archive. Part of the DwarvenSuite.
Project description
DwarvenArchive
A fast, minimal GTK4 archive manager. Part of the DwarvenSuite.
Spiritual successor to ROX Archive. Same one-click workflow, pure GTK4, no legacy dependencies.
What it does
Pass DwarvenArchive a file or folder -- it opens, you pick a destination and format, click Save. Done. Pass it an archive -- pick a destination, click Save. Done. No second dialog. No hunting through menus. One window, one click.
Works via right-click in any file manager that supports Open With or custom actions.
Each launch is fully independent -- multiple concurrent archive and extraction operations work without interference, just like ROX Archive.
Supported formats
Create archives (from a folder, file, or multiple files/folders): ZIP (password), Tar+gzip, Tar+bzip2, Tar+xz, Tar+lzma, Tar, 7-Zip (password), JAR (password), LHA
Compress single files: gzip, bzip2, xz, lzma, UUencode
Extract: ZIP, TGZ, TAR.BZ2, TAR.Z, TLZ, TXZ, RAR, ACE, TAR, RPM, CPIO, DEB, JAR, LHA, 7Z
Password-protected extraction: ZIP, JAR, 7Z
Formats requiring tools that are not installed simply do not appear in the format list.
Installation
pip install dwarvenarchive
On first launch, DwarvenArchive automatically installs its icon and desktop file. No manual setup required.
Usage
dwarvenarchive /path/to/folder # Archive a directory
dwarvenarchive file1.txt file2.png dir/ # Archive multiple files/folders together
dwarvenarchive /path/to/archive.tgz # Extract an archive
dwarvenarchive - # Read from stdin
When launched with a directory or file -- presents the archive/extraction dialog. When launched with multiple paths -- presents archive creation dialog for all of them combined, using the first filename as the output name. When launched with no arguments -- shows the launch window. From there you can drag and drop one or more files, folders, or archives directly onto the window. Files accumulate as you drop them; the operation starts automatically once drops stop arriving.
Drag and drop is compatible with GTK2, GTK3, and GTK4 file managers (tested with ROXFiler and Thunar).
Dependencies
Required: Python 3.9+, GTK 4.0, PyGObject (python3-gi)
Optional (enables additional formats): gzip, bzip2, xz, lzma, tar (usually pre-installed), zip/unzip, 7z (p7zip-full), unrar, unace, lha (lhasa), rpm2cpio
Part of DwarvenSuite
All tools follow the same philosophy: small, fast, correct, as few dependencies as possible!
Author
thedwarf -- gitdwarf
Support / Tip Jar
If you find DwarvenArchive useful, you can support the project:
License
GPL-2.0-or-later -- same as ROX Archive, whose workflow inspired this tool.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dwarvenarchive-1.1.0.tar.gz.
File metadata
- Download URL: dwarvenarchive-1.1.0.tar.gz
- Upload date:
- Size: 72.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9554890e281667efca5d9cff9786e1b4f89490949c82dba7d59b33e2b4ff3ce
|
|
| MD5 |
9250dac803946982acfcd386c43b5984
|
|
| BLAKE2b-256 |
671e740eea47733fba3cc5b99cbc84cff221f0522ec4b553069d84f2ab3b9233
|
File details
Details for the file dwarvenarchive-1.1.0-py3-none-any.whl.
File metadata
- Download URL: dwarvenarchive-1.1.0-py3-none-any.whl
- Upload date:
- Size: 82.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1a6113a9935dabfe7f28452228c1f01f576ba3790713ab2ac244e2bedaaa8dc
|
|
| MD5 |
09bec0abca5d9efe7fcb8105510dc1c2
|
|
| BLAKE2b-256 |
1f1c0324c7ef3cae1fcc8f95b882ef027de22cee05cc3c2a030da66e5ad1c73e
|