Ir para o conteúdo

Ajudar a desenvolver o KDE Linux

A equipe do KDE Linux sempre agradece a ajuda para desenvolver o KDE Linux como o sistema operacional do futuro!

  • Para conversar com os desenvolvedores do KDE Linux, use o Matrix.
  • Para propor alterações, envie uma solicitação de mesclagem em um dos repositórios git relevantes.
  • Para relatar problemas no próprio sistema operacional KDE Linux (por exemplo, design do SO, integração, serviços do sistema, etc) use o invent.kde.org e ignore o assustador banner vermelho no topo da página.
  • Para reportar problemas no KDE Plasma ou em qualquer aplicativo KDE, use o bugs.kde.org.
  • Para obter ajuda com algo relacionado ao KDE Linux, use o discuss.kde.org e marque sua postagem com “kde-linux”.

Imagens CI

Verifique o registro de compilação do seu pipeline. Ele deve indicar onde as imagens foram publicadas.

Você também pode navegar pelas imagens aqui.

Melhorar a velocidade de compilação local

Para acelerar as compilações locais, crie um arquivo mkosi.local.conf na raiz do repositório com o seguinte conteúdo:

[Content]
Environment=LOCALE_GEN="pt_BR.UTF-8 UTF-8" # substitua com o seu locale`
Environment=MIRRORS_COUNTRY=br # substitua com o código do seu país`
Environment=PARALLEL_DOWNLOADS=50 # se sua conexão internet for rápida

Você precisa usar o driver de armazenamento Btrfs para o Docker, caso contrário isso não funcionará corretamente.

Se o sistema de arquivos do seu host usa Btrfs (como o KDE Linux), adicione o seguinte ao arquivo /etc/docker/daemon.json

{
  "storage-driver": "btrfs"
}

A documentação oficial do Docker explicando isso pode ser encontrada aqui.

Se você não usa Btrfs para sua máquina host, ainda pode criar um volume Btrfs com suporte em um arquivo, como mostrado abaixo:

systemctl stop docker.socket docker.service || true
fallocate -l 64G /store/docker.btrfs
mkfs.btrfs /store/docker.btrfs
[ -d /var/lib/docker ] || mkdir /var/lib/docker
mount /store/docker.btrfs /var/lib/docker
systemctl restart docker.socket docker.service

Então execute:

./build_docker.sh --incremental

Criar imagens do sistema personalizadas

Você pode gerar imagens personalizadas do KDE Linux para testar integrações de pacotes ou modificações do sistema locais. O processo de criação usa o mkosi encapsulado em um contêiner Docker.

Para incluir pacotes personalizados, adicione os nomes dos pacotes desejados aos arquivos de configuração relevantes (como a seção [Packages] em mkosi.conf ou os arquivos .packages específicos) antes de executar o script de criação.

Crie a imagem com:

./build_docker.sh

Assim que o processo for concluído com sucesso, a saída será um arquivo de imagem .iso localizado em mkosi.output/.

Testes rápidos com o Virt-Manager

A maneira mais rápida de testar suas alterações é inicializar a imagem .iso diretamente como um disco existente em uma Máquina Virtual, ignorando o processo completo de instalação.

  1. Abra o Gerenciador de Máquinas Virtuais e inicie o assistente Nova Máquina Virtual.
  2. Selecione Mídia de instalação local e escolha o arquivo .iso gerado.
  3. Aloque pelo menos 4 GB de RAM e 2 núcleos de CPU.
  4. Importante: Na configuração da máquina virtual, certifique-se de que o Firmware esteja definido como UEFI e que a Inicialização Segura esteja desativada.

Para uma configuração mais permanente ou instruções sobre como usar outras ferramentas de virtualização como VirtualBox ou UTM, consulte o guia Instalando em uma Máquina Virtual.

Testar alterações com o openQA

O KDE Linux utiliza um conjunto de testes automatizados do openQA para testar imagens do sistema antes de sua publicação. Esse conjunto inicializa as imagens em máquinas virtuais e executa fluxos de trabalho essenciais, incluindo a instalação de um novo sistema, a atualização de um sistema existente e o teste das funcionalidades do sistema instalado. Isso ajuda a detectar regressões que podem não ser evidentes ao testar manualmente uma compilação local.

Se a sua alteração afetar a criação de imagens, a instalação, as atualizações, os serviços do sistema ou o ambiente de desktop, considere se os testes automatizados precisam abrangê-la. Consulte openQA para Desenvolvedores para saber como escrever testes para isso.


Artigo contribuído por e sob a licença CC-BY-4.0.