quinta-feira, 12 de outubro de 2017

Começando com Flatpak

O Fedora é uma distribuição que não se afasta da tecnologia emergente. Portanto, não é surpresa que o Fedora esteja na vanguarda de um revolucionário novo sistema de pacotes de software. Trata-se do Flatpak,  que por ser tão novo, muito mudou desde a última vez.

O que é Flatpak?

O Flatpak pode ser descrito como uma substituição moderna para RPMs, mas seu impacto é muito mais significativo do que simplesmente oferecer um novo formato de embalagem. Antes de entrar no que o Flatpak oferece, primeiro considere o atual fluxo de entrega de software presente no Fedora hoje.

1. Os autores upstream trabalham em uma nova versão, produzindo finalmente um arquivo contendo código fonte (frobnicate-0.4.2.tar.gz)

2. Os embaladores de distribuição recebem um aviso de que sua equipe a montante lançou uma nova versã

3. Os empacotadores de distribuição baixam o arquivo de origem e criam a nova versão para todas as distribuições suportadas, produzindo um RPM binário (frobnicate-0.4.2-1.fc26.x86_64.rpm) para cada distribuição

4. Os pacotes de distribuição enviam os RPMs binários para o sistema de atualização apropriado, empurrando os RPMs através do fluxo de trabalho para que ...

5. Finalmente, um usuário pode baixar a nova versão do  frobnicate (dnf upgrade frobnicate)

Este processo do início ao fim pode levar de alguns dias a meses ou mais. O Flatpak fornece ferramentas para o desenvolvedor upstream e para o usuário final que reduz consideravelmente o tempo entre uma versão upstream e uma binária que chega na atualização dnf de um usuário. Agora vamos revisar frobnicate, mas com o Flatpak no lugar tanto com o desenvolvedor upstream quanto com o usuário final.

1. Os autores upstream trabalham em uma nova versão, produzindo finalmente um arquivo contendo código fonte (frobnicate-0.4.2.tar.gz)

2. Os autores upstream criam um repositório Flatpak usando  flatpak-builder

3. Os autores upstream empurram o novo repositório para uma URL já conhecida pelos usuários e/ou anunciada no site do projeto

4. O usuário final recebe a nova versão do frobnicate durante a atualização do flatpak

Flatpak conecta diretamente o autor upstream com o usuário final; não há intermediários de distribuição envolvidos. O Flatpak usa OSTree para criar um sistema de arquivos contendo todas as bibliotecas e arquivos dependentes necessários para executar o programa desejado. Isso significa que um único repositório Flatpak pode ser executado em todas as distribuições Linux capazes de executar o programa flatpak. Além disso, porque os repositórios OSTree podem ser ramificados, diferentes versões do mesmo programa podem ser instaladas ao mesmo tempo (Imagine ter uma versão estável e lançada, bem como uma versão notável do desenvolvedor!). Finalmente, o Flatpak executa cada programa dentro de um ambiente sandbox, solicitando permissão do usuário antes de acessar dispositivos ou arquivos de hardware.

Configurar repositórios

Qualquer um pode hospedar um repositório Flatpak, mas requer um servidor e algumas ferramentas para manter. Como resultado, algumas equipes de software se juntaram em torno de dois repositórios principais diferentes.

GNOME

O time de desenvolvimento do GNOME hospeda um repositório contendo compilações noturnas de todos os aplicativos básicos do GNOME, bem como muitas outras aplicações. Para adicionar o repositório gnome-nightly , abra o Terminal e execute:

flatpak remote-add --if-not-exists gnome-nightly https://sdk.gnome.org/gnome-nightly.flatpakrepo
flatpak remote-add --if-not-exists gnome-apps-nightly https://sdk.gnome.org/gnome-apps-nightly.flatpakrepo

Flathub

Uma equipe de desenvolvedores da Flatpak iniciou um projeto conhecido como Flathub . O Flathub pretende fornecer um repositório centralizado para disponibilizar aplicativos Flatpak aos usuários. O Flathub cobre mais do que o conjunto de aplicativos do GNOME e está adicionando regularmente novos aplicativos. Para adicionar o repositório do Flathub, abra o Terminal e execute:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Aplicações

O software GNOME já suporta repositórios Flatpak, de modo que aplicativos podem ser instalados com o software GNOME ou com o comando flatpak. Inicie o software na Visão geral, clique no botão Pesquisar e procure o aplicativo desejado. Se estiver disponível nos repositórios tradicionais do Fedora como RPM, há dois resultados.

1. A entrada intitulada Source: fedoraproject.org é o RPM.
2. A entrada intitulada Source: sdk.gnome.org é o Flatpak.

Selecione a entrada Flatpak e clique em Instalar.


Uma vez instalado, o Polari pode ser lançado a partir da Visão Geral como qualquer outro aplicativo; O GNOME shell já suporta aplicações Flatpak.



O  comando flatpak também lista e instala aplicativos e tempos de execução. Para listar todas as aplicações disponíveis em um repositório específico, execute o  comando remote-ls:

flatpak remote-ls flathub --app

Instale um aplicativo com o comando de instalação:

flatpak install flathub com.valvesoftware.Steam

Uma vez instalado, o prazo comando irá executar o aplicativo:

flatpak run com.valvesoftware.Steam

Construa o seu próprio

Não é possível encontrar seus aplicativos favoritos no Flathub ou em outro lugar como um Flatpak? Construir o seu próprio é realmente bastante direto. Se você estiver confortável compilando o software "à mão", criar um repositório Flatpak parecerá bastante familiar. Os repositórios Flatpak podem ser construídos de várias formas diferentes, mas o método mais simples é criar um arquivo formatado JSON chamado "manifesto". Por exemplo, pegue o GNOME Dictionary:

{
  "app-id": "org.gnome.Dictionary",
  "runtime": "org.gnome.Platform",
  "runtime-version": "3.22",
  "sdk": "org.gnome.Sdk",
  "command": "gnome-dictionary",
  "finish-args": [
     "--socket=x11",
     "--share=network"
  ],
  "modules": [
    {
      "name": "gnome-dictionary",
      "sources": [
        {
          "type": "archive",
          "url": "https://download.gnome.org/sources/gnome-dictionary/3.20/gnome-dictionary-3.20.0.tar.xz",
          "sha256": "efb36377d46eff9291d3b8fec37baab2355f9dc8bc7edb791b6a625574716121"
        }
      ]
    }
  ]
}

Salve isso em um arquivo e execute flatpak-builder para criar um repositório.

$ flatpak-builder gnome-dictionary-app-dir org.gnome.Dictionary.json
Recursos

Há um número crescente de recursos úteis para construir e usar Flatpaks.

GNOME Manuscritos noturnos de flatpak-construtor


Fonte:
https://fedoramagazine.org/getting-started-flatpak/

2 comentários:

  1. Amigo, vc poderia fazer um tutorial de como instalar o compiz no Arch de preferencia com a interface XFCE ?

    ResponderExcluir
    Respostas
    1. No site do Arch Linux, tem esse conteúdo, veja:
      https://wiki.archlinux.org/index.php/Compiz_(Português)

      Excluir