diff --git a/README.MD b/README.MD index 21bcf8c..ee7ccff 100644 --- a/README.MD +++ b/README.MD @@ -1,7 +1,116 @@ -Requirements: +# Nautilus-Universal-File-Converter -- ffmpeg -- imagemagick -- zenity +A versatile Nautilus (Files) script designed to provide a universal file conversion utility directly within your file manager's context menu. -Put the script in ~/.local/share/nautilus/scripts/ \ No newline at end of file +## 🚀 Overview + +This script empowers your Nautilus file manager with robust file conversion capabilities. Instead of opening separate applications or remembering complex command-line syntax, you can now right-click on a variety of file types (videos, audio, images, and more) and convert them to your desired format with a few clicks. It's built to simplify your workflow for common conversion tasks, providing a seamless and integrated experience. + +## ✨ Features + +* **Context Menu Integration:** Accessible via right-click on any selected file(s) in Nautilus. +* **Multi-Format Support:** Leverages powerful backend tools (`ffmpeg`, `imagemagick`) to handle a wide array of video, audio, and image formats. +* **Intuitive Interface:** Uses `zenity` for graphical dialogs, allowing you to easily select output formats, quality settings, or conversion profiles. +* **Flexible Output:** Create new files in the same directory, or be prompted for a new location/name. +* **Error Handling:** Provides user-friendly feedback for successful conversions or any encountered issues. + +## 📋 Requirements + +This script relies on the following command-line tools for its conversion magic: + +* **`ffmpeg`**: Essential for video/audio format conversions. +* **`imagemagick`**: Used for image format changes, resizing, etc. +* **`zenity`**: For creating the interactive graphical dialogs for user input and selection within Nautilus. + +## ⚙️ Installation + +The installation process involves two main steps: installing the required dependencies and then placing the script in the correct Nautilus scripts directory. + +### 1. Install Dependencies + +Below are instructions for installing `ffmpeg`, `imagemagick`, and `zenity` on major Linux distributions. + +#### Debian/Ubuntu-based Distributions + +```bash +sudo apt update +sudo apt install ffmpeg imagemagick zenity +``` + +#### Arch Linux + +```bash +sudo pacman -S ffmpeg imagemagick zenity +``` + +#### NixOS + +On NixOS, you can install these packages either system-wide (recommended for global availability) or user-specific. + +**System-wide (recommended - via `configuration.nix`):** + +Add the packages to your `environment.systemPackages` in your `/etc/nixos/configuration.nix` file: + +```nix +# /etc/nixos/configuration.nix +{ config, pkgs, ... }: + +{ + # ... other configurations ... + + environment.systemPackages = with pkgs; [ + # ... existing packages ... + ffmpeg + imagemagick + zenity + ]; + + # ... other configurations ... +} +``` + +After modifying `configuration.nix`, rebuild and switch your system: + +```bash +sudo nixos-rebuild switch +``` + +### 2. Install the Nautilus Script + +1. **Download the script:** + Obtain the `File Converter script from this repository. + +2. **Create the Nautilus scripts directory:** + If you don't already have a `scripts` directory for Nautilus, create it: + + ```bash + mkdir -p ~/.local/share/nautilus/scripts/ + ``` + +3. **Copy the script:** + Move or copy the downloaded script into the `scripts` directory. It's recommended to name it something clear that will appear in your context menu, like `Convert File` or `Universal Converter`. + + ```bash + cp ./File\ Converter ~/.local/share/nautilus/scripts/ + ``` + +4. **Make the script executable:** + + ```bash + chmod +x ~/.local/share/nautilus/scripts/File\ Converter + ``` + +## 🚀 Usage + +1. **Open Nautilus (Files)** and navigate to the directory containing the file(s) you wish to convert. +2. **Right-click** on the file you want to convert. +3. Hover over the "Scripts" menu item. +4. Click on "Convert File" (or whatever you named the script). +5. A `zenity` dialog will appear, prompting you to select the desired output format, quality, or other conversion options. Follow the on-screen instructions. +6. Once you've made your selections, the script will process the file. A progress or completion message will inform you about the conversion status. The newly converted file will typically appear in the same directory as the original, often with a new extension. + +## 📄 License + +This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. + +--- \ No newline at end of file