sexta-feira, 8 de novembro de 2013

Instalando aplicativos no Haiku (na nova hierarquia de pastas)

Traduzimos um pequeno tutorial disponibilizado pelo Humdinger no fórum do Haiku explicando de maneira simples como instalar aplicativos no Haiku R1A4 com Package Manager (PM). Como a criação do PM obrigou à substituição de algumas pastas de sistema, bem como a alteração de acesso de outras, este tutorial é bastante útil tanto para entender como instalar os aplicativos em si, como dá uma fórmula simples de como empacotar usando o novo formato .hpkg.

Instalando aplicativos


Com a recente incorporação do gerenciador de pacotes (obtenha uma nightly image e verifique) algumas coisas mudaram com respeito a instalação de aplicativos. Veja bem, tudo ainda está em evolução, com erros sendo encontrados e corrigidos e funcionalidades sendo refinadas (este artigo foi escrito para a versão hrev46218). Também, tenha em mente que não estou pessoalmente a par das funcionalidades do gerenciador de pacotes. Apreciarei correções, complementos e dicas!

Uma vez que os repositórios e pacotes estejam disponíveis e o HaikuDepot esteja mais completo em recursos, as coisas ficarão mais fáceis. Mas, até lá, eis como entendo as coisas. Existem basicamente três cenários:


1. Um novo pacote .hpkg correspondente

Se instalado automaticamente via HaikuDepot, por exemplo o WonderBrush, ou baixado de algum site. Ao usar o HaikuDepot, tudo estará configurado. Se baixar algo mais, apenas mova o arquivo .hpkg para dentro de ~/config/packages/ e (no caso de um aplicativo) ele aparecerá em ~/config/apps/.


2. Um “velho” arquivo autônomo

Estes vem tradicionalmente de sites como BeBits ou Haikuware na forma de uma pasta zipada. Como antes, você pode descompactar em qualquer lugar em /boot/home/ (exceto ~/config/ que é apenas leitura) e carregar o aplicativo do mesmo jeito que fazia antes do gerenciador de pacotes.


3. Um “velho” arquivo compactado que tem arquivos para espalhar

Este é o caso onde você costumava descompactar o arquivo em qualquer lugar e tinha que executar um script de instalação ou copiar alguns arquivos para locais especiais. Pensem em protetores de tela, tradutores e coisas semelhantes. Uma vez que a hierarquia do sistema de arquivos foi ligeiramente alterada e algumas pastas tornaram-se apenas leitura, aqueles aplicativos não mais funcionam facilmente. Você tem duas escolhas para fazê-los funcionar:


3.1 A pasta non-packaged

Em ~/config/non-packaged/ você pode recriar a hierarquia de arquivos necessária. Tomemos como exemplo a muito conveniente ferramenta TextBank, que oferece um histórico e modelos da área de transferência. Após descompactá-la para ~/config/non-packaged/apps/ você pode carregar o TextBank, mas ele ainda não fará nada. Os adicionais input_server TextBankAssistantPasteSender e TextBankAssistantSpy não estarão ainda no lugar certo no sistema de arquivos e portanto não serão carregados pelo sistema.

O TextBank se oferece para instalar aqueles arquivos em suas preferências, mas desde a mudança de hierarquia por causa do gerenciamento de pacotes, isso não funciona mais. Você terá que fazer isso manualmente, criando as pastas necessárias e copiando o arquivo correspondente:


~/config/non-packaged/add-ons/input_server/devices/TextBankAssistantPasteSender

~/config/non-packaged/add-ons/input_server/filters/TextBankAssistantSpy


Na próxima vez que reiniciar (ou restartar o input_server pelo Terminal com “/system/servers/input_server -q”) ele deverá funcionar.


3.2 Fazendo-o dentro de um pacote .hpkg correspondente

O método da pasta non-packaged é um pouco incômodo se você está atualizando seu sistema do zero frequentemente. Eis como criar um .hpkg do TextBank:

Crie uma pasta qualquer “PastaQualquer” e acrescente nela as subpastas “apps”, “add-ons/input_server/filters/” e “add-ons/input_server/devices/”.

Então descompacte o arquivo TextBank em “apps” e mova "TextBankAssistantPasteSender" e "TextBankAssistantSpy" para as pastas correspondentes recém-criadas.

Agora, a parte mais difícil, você tem que criar o arquivo de texto “.PackageInfo” na pasta pai “PastaQualquer”. A sintaxe exata desse arquivo é descrita na wiki do PM. Além disso, arquivos .hpkg abertos no Expansor (marque “Mostrar Conteúdo”) pode ser educativo. Ele mostrará algo assim:


name                    textbank_x86
version                 5.3.2-1
architecture            x86_gcc2
 
summary                 "A tool to provide clipboard history and more"
description             "Useful text provision tool (Clipboard history/template/time & date...)"
 
packager                "Humdinger "
vendor                  "SHINTA"
 
copyrights              "SHINTA"
licenses                "MIT"
 
provides {
                        textbank_x86 = 5.3.2-1
}
 
Observe, a licença é na verdade Creative Commons, mas este não existe ainda em /system/data/licenses/.
Você pode criar a sua própria, naturalmente, mas isso nos desviaria deste exemplo educativo.
Espero que SHINTA não exista... :)
Finalmente, vamos criar o arquivo .hpkg em si. Abra um Terminal em “PastaQualquer” e digite:
 
package create -b textbank.hpkg
 
Isso cria um pacote vazio com apenas o .PackageInfo. Continue com:
 
package add textbank.hpkg apps add-ons
 
E voilá! Ponha-o dentro de ~/config/packages para instalar e o TextBank irá aparecer em ~/config/apps/.

Nenhum comentário:

Postar um comentário