Um cliente Dropbox de fonte leve e de código aberto para MacOS e Linux.
O Maestral é um cliente Dropbox de código aberto escrito em Python. O principal objetivo do projeto é fornecer um cliente para plataformas e sistemas de arquivos que não são mais suportados diretamente pelo Dropbox.
Atualmente, o Maestral não suporta papel Dropbox, o gerenciamento de equipes do Dropbox e o gerenciamento de configurações de pasta compartilhada. Se você precisar dessa funcionalidade, use o site Dropbox ou o cliente oficial. O Maestral suporta sincronizar várias contas do Dropbox e excluir arquivos locais do Sync com um arquivo ".mignore".
O foco na sincronização de arquivos "simples" vem com vantagens: no macOS, o pacote de aplicativos Maestral é significativamente menor que o aplicativo oficial do Dropbox e usa menos memória. O uso exato da memória dependerá do tamanho da pasta SyncEn Dropbox e pode ser reduzido ainda mais ao executar o Maestral sem uma GUI.
O Maestral usa a API do Dropbox Public, que, diferentemente do cliente oficial, não suporta a transferência de apenas as partes de um arquivo que mudou ("Bininary Diff"). O Maestral pode, portanto, usar mais largura de banda do que o cliente oficial. No entanto, isso evitará o upload ou o download de um arquivo se já existir com o mesmo conteúdo localmente ou na nuvem.
Um pacote de aplicativos é fornecido para o MacOS Catalina e mais alto e pode ser baixado na guia Lançamentos. Este pacote de aplicativos também é o pacote como um barril homebrew.
Em outras plataformas, você pode baixar e instalar o Maestral como um pacote Python da Pypi ou como uma imagem do Docker do Docker Hub.
Para obter informações mais detalhadas sobre os requisitos de instalação, configuração e sistema, verifique a documentação.
Os lançamentos oficiais do Maestral também estão disponíveis como barris homebrew. Se você tem homebrew no seu sistema, pode instalar usando:
$ brew install maestralÉ recomendado para instalar o Maestral dentro de um ambiente virtual da seguinte maneira:
$ python3 -m venv maestral-venv
$ source maestral-venv/bin/activate
(maestral-venv)$ python3 -m pip install --upgrade maestral Se você pretende usar a interface gráfica do usuário, também precisará especificar a opção GUI durante a instalação ou atualização. Isso instalará o Frontend maestral-qt e PyQt5 no Linux e o maestral-cocoa no macOS:
(maestral-venv)$ python3 -m pip install --upgrade 'maestral[gui]'Uma imagem do Docker está disponível para plataformas x86, ARM/V7 (32 bits) e ARM64 e pode ser instalada com:
$ docker pull maestraldbx/maestral
Execute maestral gui na linha de comando (ou abra o aplicativo Maestral no macOS) para iniciar o Maestral com uma interface gráfica do usuário. Em sua primeira execução, o Maestral o guiará a vincular e configurar o Dropbox e começará a sincronizar.
Após a instalação, o Maestral estará disponível como um script de linha de comando digitando maestral no prompt de comando. Tipo maestral --help para obter uma lista completa dos comandos disponíveis. O mais importante é:
maestral gui : inicia a GUI do maestral. Cria um daemon de sincronização, se ainda não estiver em execução.maestral start|stop : inicia ou para o daemon de sincronização do maestral.maestral pause|resume : pausas ou currículos sincronizando.maestral autostart -Y|-N : define o daemon para iniciar o login.maestral status : obtém o status atual do Maestral.maestral filestatus LOCAL_PATH : obtém o status de sincronização de um arquivo ou pasta individual.maestral excluded add|remove|list : Grupo de comando para gerenciar pastas excluídas.maestral ls DROPBOX_PATH : lista o conteúdo de um diretório no Dropbox.maestral notify snooze N : Snote as notificações de desktop por N minutos. O Maestral suporta sincronizar várias contas do Dropbox, executando várias instâncias com diferentes arquivos de configuração. Isso precisa ser configurado da linha de comando, passando a opção --config-name para maestral start ou maestral gui . O Maestral selecionará uma configuração existente com o nome fornecido ou criará um novo. Por exemplo:
$ maestral start --config-name= " personal "
$ maestral start --config-name= " work " Isso iniciará duas instâncias de maestral, sincronizando uma conta privada e de trabalho, respectivamente. As configurações serão ativadas automaticamente ao desbaste de uma conta. Você pode listar todas as contas vinculadas atualmente com maestral config-files . A configuração acima, por exemplo, retornará o seguinte no macOS:
$ maestral config-files
Config name Account Path
maestral [email protected] ~/Library/Application Support/maestral/maestral.ini
private [email protected] ~/Library/Application Support/maestral/private.iniPor padrão, os nomes de pastas do Dropbox conterão o nome de configuração capitalizado no aparelho. No caso acima, isso será "Dropbox (pessoal)" e "Dropbox (trabalho)".
Uma documentação completa da CLI está disponível no site.
Existem vários tópicos que podem usar sua ajuda. Alguns deles são fáceis, como adicionar novos comandos da CLI, outros exigem mais experiência, como embalagens para plataformas que não são de macos. Procure problemas marcados com "Boa Primeira edição" ou "Ajuda desejada".
Os recursos relevantes são:
Contribuindo.md contém informações detalhadas sobre o estilo de código esperado e o formato de teste.
Se você estiver usando o pacote de aplicativos do MacOS, considere patrocinar o projeto com £ 1 por mês para compensar o custo de uma conta de desenvolvedor da Apple para assinar e notarizar o pacote.