Skip to main content

The universal archive manager

Project description

Tarumba

The universal archive manager.

Tarumba is a frontend for multiple archive managers. It aims to provide a simple unified interface to manage all your archives. Tarumba is also a Python library for archive manager integration.

Tarumba cannot handle any archives by itself. Instead, it uses the archive managers available on the system. See the list of supported backends below.

      Tarumba logo       Code linting
Build project
Unit testing
Repository License
PyPI - Version
PyPI - Python Version

Usage

The basic usage of Tarumba is:

tarumba action [options] archive [files...]

Archive is the path to the archive that you want to manage.

Files are the paths to the files used in the action.

There are 6 available actions, you can enter the word or only the first letter.

  • (l) list
    Lists files in the archive. You can enter an optional list of files to list only those files.
  • (a) add
    Adds files to the archive. The list of files is mandatory, a new archive will be created if it doesn't exist.
  • (e)(x) extract
    Extract files from the archive. The list of files is optional, when absent all the files in the archive will be extracted.
  • (d) delete
    Deletes files from the archive. The list of files is mandatory.
  • (t) test
    Tests the archive integrity. With some archive formats, you can enter an optional list of files to check only those files.
  • (r) rename
    Renames files in the archive. It is mandatory to enter pairs of files and every par will be interpreted as the old and new file paths.

Options

  • -a, --always-overwrite
    Always overwrite existing files.
  • -b
    Force a specific backend, overriding autodetection.
  • -c COLUMNS, --columns COLUMNS
    Comma separated columns to include in the listing.
  • -C, --no-color
    Disable the colored output.
  • -D, --debug
    Show debugging information.
  • -e, --encrypt
    Encrypt the archive contents using a password.
  • -E, --encode
    Specify a character encoding for non-standard archives.
  • -f {auto,yes,no}, --create-folder {auto,yes,no}
    Creates a root folder with the archive name when extracting files.
  • -h, --help
    Show the help message and exit.
  • -k, --follow-links
    Follow symbolic links. WARNING: MAY CREATE INIFINITE PATHS.
  • -l LEVEL, --level LEVEL
    Compression level [0-9].
  • -n, --never-overwrite
    Never overwrite existing files.
  • -o {table,raw,csv,json}, --output-format {table,raw,csv,json}
    Listing output format.
  • -O OCCURRENCE, --occurrence OCCURRENCE
    Process only the Nth occurrence of each file in the archive.
  • -p PATH, --path PATH
    Modify the file paths in the archive using this reference.
  • -P, --no-progress
    Disable the progress bars.
  • -q, --quiet
    Don't print any warnings or errors.
  • -v, --verbose
    Verbosely list processed files.
  • -V --version
    Show Tarumba's installed version and exit.
  • -w, --owner
    Preserve the owner user and group when possible.

Supported backends

Installation

Tarumba is available on PyPI and can be installed with pip.

pip install tarumba

If you are a developer and want to contribute to Tarumba, you can clone the repository and use Hatch to manage the project. The following actions are available.

Build the project

hatch build

Run the tests

hatch test -v

Linting with ruff

hatch fmt --check

Linting with pylint

hatch run pylint src tests

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

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

tarumba-0.0.12.tar.gz (65.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tarumba-0.0.12-py3-none-any.whl (72.9 kB view details)

Uploaded Python 3

File details

Details for the file tarumba-0.0.12.tar.gz.

File metadata

  • Download URL: tarumba-0.0.12.tar.gz
  • Upload date:
  • Size: 65.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.3 cpython/3.13.12 HTTPX/0.27.2

File hashes

Hashes for tarumba-0.0.12.tar.gz
Algorithm Hash digest
SHA256 2d5fe24690dc1508bc486b70a73335993bfff1fef05c3d22cd8f96d8301eb78e
MD5 bdb3948ff52df67b545d0fe8367d0fb2
BLAKE2b-256 e9719763416ee29ccb7b166669ad0f4641f59dc9c5696b773231ef37decf663b

See more details on using hashes here.

File details

Details for the file tarumba-0.0.12-py3-none-any.whl.

File metadata

  • Download URL: tarumba-0.0.12-py3-none-any.whl
  • Upload date:
  • Size: 72.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.3 cpython/3.13.12 HTTPX/0.27.2

File hashes

Hashes for tarumba-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 4847119fe90a61c32979bb3583f1252fff79c8e092ec69903ae36ac4b75a54c0
MD5 ee91f7149ec6485d03275e0e53731b68
BLAKE2b-256 7c313e5e19a54626e70ebc70588bc1f3f4fda0f7d001f9b3e284beb27883bb29

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page