Skip to content

Latest commit

 

History

History
508 lines (359 loc) · 14.4 KB

pt_BR.md

File metadata and controls

508 lines (359 loc) · 14.4 KB

A ferramenta de controle de "dotfiles".

Tests Python Versions Updates Python Whell PyPI PyPI - Implementation Isort Mypy Code style: Black PyPI - Downloads GitHub license


Construído com ❤︎ por: William Canin no tempo livre, ao som da playlist: Bursting Of The Tympanum


Sobre

Inicialmente, o Dotctrl surgiu apenas para controlar "aquivos dotfiles", porem, ao decorrer, ele se tornou mais do que isso. Agora, o Dotctrl é um mantenedor de qualquer tipo arquivo e pasta dentro do seu próprio repositório particular.

Isso é demais!

O Dotctrl irá gerenciar os elementos do diretório HOME do usuário; funcionando em cima de um arquivo de configuração (dotctrl.json) que contém os caminhos do local de origem dos elementos.

Todos os elementos gerenciados pelo Dotctrl são mantidos no repositório/pasta "dotctrl".

Veja uma demonstração:

Características

  • Suporta aos idiomas: Inglês Americano e Português brasileiro;
  • Crie (ou não) vários repositórios para seus elementos;
  • Abandone a criação de links simbólicos manuais enormes;
  • O repositório armazena a mesma estrutura de caminho que seu local ($HOME) original;
  • Gerencie elementos únicos ou em massa;
  • Restaure os elementos do repositório para sua localização original com um único comando;
  • E muito mais :)

Requisitos

Para funcionar corretamente, você precisará primeiro:

Instalando

É hora de instalar o Dotctrl. Para fazer isso, faça:

python3 -m pip install dotctrl --user

NOTA: Se você estiver instalando no ambiente local do usuário, certifique-se de adicionar as variáveis de ambiente ao arquivo zshrc ou arquivo .bashrc.

Usando

init

Após instalar o pacote, você precisa criar o repositório Dotctrl em uma pasta vazia no local do sua escolha. Recomendamos sempre criar no diretório raiz /home ou /Users, pois criando na pasta do usuário, pode ser perdido se o usuário for excluído. Com isso, veja o exemplo abaixo:

Linux:

sudo mkdir -p /home/.dotfiles; cd $_
sudo chown -R $(whoami) /home/.dotfiles
sudo chmod -R 700 /home/.dotfiles
dotctrl init

macOS:

sudo mkdir -p /Users/.dotfiles; cd $_
sudo chown -R $(id -un) /Users/.dotfiles
sudo chmod -R 700 /Users/.dotfiles
dotctrl init

--auto

Você pode contornar todos esses comandos acima usando a flag --auto. O Dotctrl criará automaticamente uma base diretório para armazenar os dados, no entanto, você DEVE ter permissão sudo.

Recomendamos usar fortemente está opção caso tenha permissão.

dotctrl init --auto

--git

Esta flag faz com que o Dotctrl crie um repositório git dentro do repositório Dotctrl.

dotctrl init --git

Você também pode combinar está flag com a flag --auto:

dotctrl init --auto --git

pull

Com a base já criada, é hora de você PUXAR os elementos para a base do Dotctrl com o comando pull.

Puxe UM elemento para o repositório Dotctrl:

dotctrl pull --e .zprofile

Se você quiser fazer um pull massivo, faça:

dotctrl pull

Nota: Esta opção só é possível se você passar os elements manualmente no arquivo dotctrl.json ou não ter limpadado o registro.

link

Depois de puxar o(s) elemento(s), crie links simbólicos para eles em seus locais originais:

dotctrl link --e .zprofile

Se você quiser realizar um link massivo, faça:

dotctrl link

Nota: Esta opção só é possível se você passar os elements manualmente no arquivo dotctrl.json ou não ter limpado o registro.

unlink

Desvincule o elemento do repositório com o local de origem:

dotctrl unlink --e .zprofile

Se você quiser desvincular elementos de forma massiva, faça:

dotctrl unlink

Nota: Esta opção só é possível se você passar os elements manualmente no arquivo dotctrl.json ou não ter limpadado o registro.

restore

Este comando irá tirar um elemento do repositório Dotctrl e restaurar para seu local original:

dotctrl restore --e .zprofile

Se você quiser realizar uma restauração massiva, faça:

dotctrl restore

Nota: Por padrão, ao restaurar elemento(s) para o local de origem, o Dotctrl NÃO remove os elemento do registro (dotctrl.json). Para limpar, veja --autoclean.

repo

Este comando trás informações do repositório, veja abaixo alguns de seu subcomandos:

--check

Faça uma verificação para ver se há elementos a serem vinculados:

dotctrl repo --check

--ls

Verifique os elementos já importados no repositório do Dotctrl.

dotctrl repo --ls

--info

Com o comando abaixo você pode ver algumas informações do repositório Dotctrl, como quantidade de pastas e arquivos, o caminho absoluto do repositório e se a variável de ambiente DOTCTRL_PATH estiver ativa.

dotctrl repo --info

find

Pesquisa qualquer elemento dentro do repositório do Dotctrl. Para isso, use o comando:

dotctrl find --name .zprofile

Nota: Envolva o elemento a ser encontrar com aspas duplas caso o mesmo tenha espaços no nome.

config

Este comando irá manipular o arquivo de configuração do Dotctrl, veja abaixo alguns subcomandos do mesmo.

--autoclean

Faz uma limpeza nos elementos presentes no arquivo de configuração do Dotctrl. Qualquer elemento que estiver presente no arquivo de configuração do Dotctrl e não EXISTIR no repositório, serão eliminados do arquivo de configuração.

Geralmente o --autoclean é usado após usar o comando de restauração de elementos.

dotctrl config --autoclean

--view

Dê uma espiada no arquivo de configuração do Dotctrl pelo terminal.

--open

Permite editar o arquivo de configuração do Dotctrl no próprio terminal usando o comando:

dotctrl config --open

Nota: Usa por padrão o editor vim, caso não tenha, irá tentar usar o nano, emacs ou micro.

--lang

Use está flag para alterar o idioma do Dotctrl. No momento, o Dotctrl dá suporte para 2 (dois) idiomas, eles são: Inglês Americano e Português Brasileiro. Ao usar o comando abaixo, irá mostrar uma lista para você escolher qual idioma quer usar. A alteração é instantânea.

dotctrl config --lang

Flags globais

--e (--element)

A flag --e ou --element, é responsável por manipular um elemento especifico do repositório Dotctrl.

Esta flag deve receber um elemento sem o caminho absoluto, apenas o relativo a partir da $HOME.

Exemplos:

  • dotctrl pull --e .zprofile
  • dotctrl link --e .zprofile
  • dotctrl unlink --e .zprofile
  • dotctrl restore --e .zprofile

Se o elemento tiver espaços no nome, envolva-o entre aspas duplas. Exemplo: dotctrl pull --e "arquivo legal.txt"

--f (--force)

A flag --f ou --force, força literalmente o uso do comando, impedindo que algo impeça sua conclusão. Esta opção está presente em todos os comandos que manipula os elementos, esses comandos são o: pull, link, unlink e restore.

Arquivo de configuração (dotctrl.json)

Este é um exemplo de uma estrutura completa do arquivo de configuração (dotctrl.json) do Dotctrl:

{
    "dotctrl": {
        "config": {
            "editor": "vim",
            "language": "pt_BR"
        },
        "elements": [
            ".zshrc",
            ".config/xfce4/terminal/terminalrc",
            ".config/Code/User",
            "Images/Wedding"
        ],
    }
}

Variável de ambiente

Por padrão, Dotctrl funciona com vários diretórios, o que faz com que você precise usá-lo em um determinado diretório que você criou para seus elementos.

Se você quiser usar Dotctrl em qualquer PATH, você precisa criar uma variável de ambiente que Dotctrl disponibiliza. Esta variável de ambiente é DOTCTRL_PATH.

Você deve inserir a variável DOTCTRL_PATH em seu sistema operacional contendo o diretório onde estarão seus dotfiles. Por exemplo, em seu arquivo .bashrc ou .zshrc:

Linux:

export DOTCTRL_PATH="/home/.dotfiles"

ou

macOS:

export DOTCTRL_PATH="/Users/.dotfiles"

NOTA: Lembre-se, ao criar esta variável de ambiente, você não poderá criar outros repositórios para Dotctrl.

Atualizando

Se Dotctrl tiver novos recursos, atualize a linha de comando abaixo:

python3 -m pip install dotctrl -U --user

Mais comandos

Para obter mais informações de comando, use:

dotctrl [--help | -h]

Extras

Deploy e Clone do repositório Dotctrl

Agora que você tem o controle de seus elementos, é hora de fazer o deploy dos mesmo em um serviço de git. Este exemplo abaixo mostrará como realizar o deploy e clone no GitHub.

1 - Deploy:

A - Entrando na pasta raiz criada do Dotctrl:

Linux:

cd /home/.dotfiles

macOS:

cd /Users/.dotfiles

B - Criando repositório git, commit e salvando (push)

git remote add origin [email protected]:<YOUR USER>/dotfiles.git
git init
git add .
git commit -m "Update"
git push origin main

2 - Clone:

Você também pode clonar qualquer diretório de sua escolha, mas vamos manter o diretório de compilação de exemplo acima. Siga os passos:

Linux:

sudo mkdir -p /home/.dotfiles
sudo chmod -R 770 /home/.dotfiles
cd /home/.dotfiles
git clone [email protected]:<YOUR USER>/dotfiles.git .
dotctrl link --f

macOS:

sudo mkdir -p /Users/.dotfiles
sudo chmod -R 770 /Users/.dotfiles
cd /Users/.dotfiles
git clone [email protected]:<YOUR USER>/dotfiles.git .
dotctrl link --f

Doação

Clique na imagem abaixo para ser redirecionado aos formulários de doação:

É muito importante você fazer uma doação para motivar a continuação de desenvolvimento do Dotctrl. :)

Licença

O projeto está disponível como código aberto sob os termos da Licença MIT ©

Creditos

Veja, AUTHORS.