Metadata-Version: 2.4
Name: raven_backup
Version: 1.4.9.1
Summary: Raven Backup is a desktop application built in Python 3.10 with a Tkinter GUI
Author-email: Daniel Dorfman <danieldorfman@proton.me>
License: GPL-3.0-only
Project-URL: Homepage, https://github.com/DDorfm/raven_backup
Project-URL: Repository, https://github.com/DDorfm/raven_backup
Keywords: backup,python,cryptography,babel,multilanguage,Linux
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: System :: Archiving :: Backup
Classifier: Topic :: Utilities
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cryptography<44.0.0,>=43.0.0
Requires-Dist: babel<2.16.0,>=2.15.0
Dynamic: license-file

# Raven Backup

Raven Backup is a desktop application built in Python 3.10 with a Tkinter GUI for performing local and remote backups using `rsync`. It supports scheduling tasks via `cron`, compressing during copy, incremental backups, and managing symbolic links.  
It was developed on the GNU/Linux operating system, leveraging its features and executing system commands via subprocesses.

---

## 🚀 Features

- Local and remote backups (SSH)
- Incremental backup support
- Option to compress during copy
- Delete files at destination if removed from source
- Symbolic link management: preserve or copy target files
- Task scheduler with `cron`
- Multilingual interface (Spanish / English)
- Secure password storage using AES encryption (Fernet)
- Real-time logging and status tracking

---

## 🛠️ Requirements

- Python 3.10+
- Module `venv`for Python 
- `tkinter` 
- `git` (to clone the repository)
- `cryptography` (encrypts passwords)
- `babel` (for translation compilation)
- `rsync` installed on the system

---

## 📦 Installation

- Just type in bash:

	```bash
	pip install raven_backup
	```



---

## ⚙️ Initial Configuration

1. Select source files/directories using the Choose files or Choose directories buttons.

2. Define the destination (local or remote: user@host:path).

3. Configure options:

	```bash
	- Delete at destination if removed from source

	- Compress during copy

	- Incremental backup

	- Symbolic link handling
	```

4. For remote access:

	```bash
	- Choose access type: password or public key

	- Specify SSH port and password (if applicable)
	```
> Note: raven_backup creates a hidden configuration file named `.raven_config.conf`
Do not edit this file manually, nor any other file created by the application.
---
## 🌐 Translations

The application compiles the language file automatically at startup 
— no manual compilation is required by the user. Currently, Spanish 
and English are supported.

---
## 🛡️ Security
Passwords are stored encrypted using Fernet.
The .secret.key file has restricted permissions (chmod 600).
No credentials are stored in plain text.

---

## ⚖️ License
Rights and obligations under **GNU GPL v3.0**.

Free to use, modify, and distribute — as long as any derivative version is also free.


---

## 🐞 Reporting Bugs
If you encounter any issues, please contact danieldorfman@proton.me 
and include:

	- Problem description
	- Step-by-step reproduction instructions
	- Operating system and Python version






