aRchCloneTray is a modern PyQt6-based system tray application for Rclone, providing seamless integration with Linux desktop environments and easy access to remote file systems.
- 🖥️ Modern PyQt6 interface with dark mode support
- 🔄 Real-time mount management and status monitoring
- 📊 Dashboard with system statistics and transfer monitoring
- ⚙️ Advanced mount options and configuration
- 🔔 System notifications for mount events
- 🎨 Clean and intuitive user interface
- 🚀 Sync and copy operations between remotes
- 📈 Real-time transfer progress monitoring
- 🎛️ Dynamic bandwidth control for transfers
- ⏸️ Pause/resume and cancel transfer operations
- Python 3.8 or higher
- PyQt6
- rclone (installed via system package manager)
- FUSE3
- Install dependencies:
sudo pacman -S python python-pyqt6 rclone fuse3 qt6-base- Install from source:
git clone https://github.com/maxkilla/aRchCloneTray.git
cd aRchCloneTray
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt- Run the application:
python -m rclonetray- (Optional) Add to autostart:
mkdir -p ~/.config/autostart
cp desktop/org.archclonetray.desktop ~/.config/autostart/The application will automatically start with your desktop environment and appear in the system tray.
- Ensure rclone is installed and configured
- Start aRchCloneTray
- Use the system tray icon to:
- Mount/unmount remotes
- View transfer status
- Access the dashboard
- Configure settings
- Open the dashboard by clicking the tray icon
- Go to the "Transfers" tab
- Click "New Sync" or "New Copy" to start a transfer:
- Sync: One-way sync that makes destination identical to source
- Copy: Copy files from source to destination
- Select source and destination remotes and paths
- Configure transfer options:
- Dry Run: Test without making changes
- Verbose Output: Show detailed progress
- Skip Newer: Skip files newer on destination
- Empty Dirs: Create empty directories
- Monitor transfers in real-time:
- View progress, speed, and ETA
- Control bandwidth usage
- Cancel transfers if needed
The application uses your existing rclone configuration (~/.config/rclone/rclone.conf) and stores its own settings in ~/.config/archclonetray/config.json.
This is a modern Linux application built with:
- PyQt6 for the UI
- Python standard library for process management
- Modern async/await patterns for better performance
Contributions are welcome! Please feel free to submit a Pull Request.
How do I configure rclone?
Use rclone config in the terminal to set up your remotes, or use the built-in configuration interface in aRchCloneTray.
Where are my mounts located?
By default, mounts are created in ~/mnt/<remote_name>.
How do I update aRchCloneTray?
Pull the latest changes from the repository and restart the application:
git pull
pip install -r requirements.txtThis project is licensed under the MIT License.