Mastral Is a new open source Drop box Client for macOS and Linux, currently in beta. It can be used with or without a GUI. It was created to enable Dropbox clients to support folder synchronization to drop boxes that use file systems such as Btrfs, Ext3, ZFS, XFS, or encrypted file systems.[Later edit] Dropbox has partially reverted changes that only support the Ext4 file system on Linux. The Dropbox client update restores support for ZFS and XFS on 64-bit Linux systems and eCryptFS and Btrfs on all Linux systems.
The first release of the PyQt5 application was available for daily use only two days ago, but it already includes the following features:
- Pause / resume synchronization
- Display synchronization status and potential synchronization errors
- Selective synchronization
- System notification of file changes
- List of recently changed files (for current session only)
- Show total used / Dropbox space
- Choose your Dropbox folder location
- Menu item opens Dropbox folder and launches Dropbox website
- Launch Maestral at login
- Opt out of linking with Maestral’s Dropbox account
- Key ring integration via Python key ring library, which supports backends such as macOS keychains, Freedesktop Secret Service supports many DEs, including GNOME and KDE KWallet
- Can be run in GUI or command line mode
When using Maestral from the command line, you can choose to keep it running and continuously sync your Dropbox folders, or to perform only certain operations on Dropbox files, such as moving or renaming, uploading new files to your Dropbox account, and more. .
As you might expect, the app’s features are not compatible with the official Dropbox client, but more features may be added in future releases. Some of the more important features that Maestral is missing include support for Dropbox Teams, Dropbox Paper, shared folder management, and file browser integration. Other features it hasn’t included include proxy support, choosing the type of notifications to receive, LAN synchronization or bandwidth throttling. Related: How to Use Dropbox on Linux on Non-Ext4 File System (Btrfs, Ext3, XFS, ZFS, etc.) (Workaround)
But Maestral does provide features that the official Dropbox client no longer offers: file systems such as Btrfs, Ext3, ZFS, XFS or encrypted file systems are supported on both Linux and macOS. There are some workarounds for the moment, you can use them to continue using the official Dropbox client and use Dropbox to treat it as an “uncommon” file system as I already mentioned, so please use it, but note that this way The solution may stop working at any time.
In addition, the app is lighter than the official Dropbox app. According to the Maestral project page, this application “is 80% smaller than the official Dropbox application (50 MB vs. 290 MB) and uses 70% less memory.” If you use Maestral without a GUI, both applications have May become smaller. To do this, I will also add this information to the Ubuntu 19.04 desktop. The System Monitor reports that Maestral (GUI) uses 63 MiB of RAM and Dropbox uses 165 MiB of RAM.
There are some warnings on the Maestral GitHub repository page, and because they are so important, I will mention them here. Because Maestral is still in beta, there are some rough edges, and although extremely unlikely, using it can cause data loss, so be careful. In addition, Maestral has no production status yet, so its API is currently limited to 500 user accounts!
Since Maestral is a tray application, you need a working tray system to use the GUI (this system is not needed if you plan to use it from the command line only). On Gnome Shell, you can use AppIndicator supports extensions. It is installed and enabled on Ubuntu by default. You might also like (it can encrypt Dropbox data on the client): Cryptomator protects your cloud storage data (open source, multi-platform client encryption tool)
Installation and use of Maestral Dropbox
macOS Mojave users can start from Publish tags On GitHub. Maestral indicates that it is recommended to install applications from PyPI using pip. Let’s install it only for your users (preferably not mix pip and sudo), and install PyQt5 dependencies through the package manager of your Linux distribution.
~/.local/bin Give you
PATH If not already added. This is required because the binaries of the packages installed using pip are in this folder and the folder is not in yours
PATH by default.
- For Bash:
echo "export PATH="$PATH:$HOME/.local/bin"" >> ~/.bashrc . ~/.bashrc
- For Zsh:
echo "export PATH="$PATH:$HOME/.local/bin"" >> ~/.zshrc . ~/.zshrc
2. Install Python3 PIP, Setuptools and PyQt5 from the repository of the Linux distribution.
- Debian, Ubuntu, Linux Mint, Pop! _OS etc:
sudo apt install python3-pip python3-setuptools python3-pyqt5
sudo dnf install python3-pip python3-setuptools python3-qt5
sudo zypper install python3-pip python3-setuptools python3-qt5
- Arch Linux / Manjaro:
sudo pacman -S python-pip python-setuptools python-pyqt5
3. Install Maestral for your users.
python3 -m pip install --user maestral
When you want to update it, run:
python3 -m pip install --upgrade --user maestral
Maestral is now installed, and you can run it for the first time using the following graphical user interface:
If you want Maestral to continuously sync your Dropbox folders using your Dropbox account, but not using the GUI, run it from the command line using the following command:
The first time you use the GUI or run Maestral from the command line, it will guide you through the process of linking your Dropbox account.
Maestral will not appear in your application menu after installation, so please launch it from the terminal using the command I pointed out earlier. You can also enable its option to start automatically at login, so you don’t have to run it manually.
~/.local/bin Outside of your PATH system, the autostart feature will not work. In this case, you can have Maestral launch automatically at login by enabling the following features
Start Maestral on login Option, next time open
~/.config/autostart/maestral.desktop Use a text editor and use
sh -c "~/.local/bin/maestral gui" As
Exec=sh -c "~/.local/bin/maestral gui"). You can also do all of these with a single command:
sed -i 's/^Exec.*/Exec=sh -c "~/.local/bin/maestral gui"/' ~/.config/autostart/maestral.desktop