Pré-requisitos

Você DEVE ter um ambiente Debian instável (unstable) (boot físico/dual boot, máquina virtual, contêiner ou um chroot com schroot) para criar pacotes adequados para enviar para o Debian. Veja as instruções fornecidas abaixo para configurar o Debian Sid. Você pode usar lxc, docker ou uma máquina virtual para desenvolvimento.

Nota: O público-alvo destina-se a pessoas que acabaram de descobrir o Debian.

Nota do(a) leitor(a): esta página lista 5 abordagens diferentes. Não lista 5 etapas de uma abordagem. Você pode escolher qualquer abordagem de cada vez e seguir as instruções abaixo. Por exemplo, se você deseja usar o docker, não há necessidade de executar os comandos listados em Schroot/LXC/Máquina Virtual.

Opção 1: Systemd Nspawn e Debspawn

Se o seu sistema host já possui o systemd como sistema init, esta seria a melhor opção para você.

Opção 2: Schroot e Sbuild

Se você já tem uma distribuição Debian estável ou baseada em Debian (Arch também possui o pacote schroot, embora se você tiver uma distro diferente, precisa verificar se ela possui o pacote schroot), esta opção é a melhor para você.

sudo apt install schroot debootstrap

Crie um sistema de arquivos root:

sudo mkdir -p /srv/chroot/debian-sid
sudo debootstrap sid /srv/chroot/debian-sid

Se tiver uma conexão de Internet não confiável, talvez seja melhor usar apt-cacher-ng para armazenar e reutilizar debs já baixados quando você tentar novamente o comando debootstrap.

sudo apt install apt-cacher-ng auto-apt-proxy debian-archive-keyring

sudo auto-apt-proxy debootstrap sid /srv/chroot/debian-sid

Crie um arquivo texto /etc/schroot/chroot.d/debian-sid com seu editor favorito (por exemplo, nano):

sudo nano /etc/schroot/chroot.d/debian-sid

e adicione as seguintes linhas no arquivo:

# schroot chroot definitions.
# See schroot.conf(5) for complete documentation of the file format.
#
# Please take note that you should not add untrusted users to
# root-groups, because they will essentially have full root access
# to your system.  They will only have root access inside the chroot,
# but that's enough to cause malicious damage.
#
# The following lines are examples only.  Uncomment and alter them to
# customise schroot for your needs, or create a new entry from scratch.
#
[debian-sid]
description=Debian Sid for building packages suitable for uploading to debian
type=directory
directory=/srv/chroot/debian-sid
users=<seu_nome_de_usuário(a)>
root-groups=root
personality=linux
preserve-environment=true

Onde <seu_nome_de_usuário(a)> é um(a) usuário(a) sem privilégios no seu sistema.

Para obter um shell root, use:

sudo schroot -c debian-sid

W: Failed to change to directory '/ ... é uma mensagem ok.

apt-get update && apt-get install <algum_pacote>
exit

Para obter um shell de usuário(a) normal (execute schroot como usuário(a) normal normal),

schroot -c debian-sid

Error: pkg: unrecoverable fatal error, aborting: unknown system group 'apt-cacher-ng' in statoverride file

Se encontrou este erro, siga estas etapas para removê-lo (isso deve ser feito dentro do chroot)

1. Abra "/var/lib/dpkg/statoverride"

nano /var/lib/dpkg/statoverride

2. Remova esta linha: "root apt-cacher-ng 640 /etc/apt-cacher-ng/security.conf" do arquivo e salve-o.

O sbuild é um script envoltório conveniente do schroot para construir pacotes sob o chroot especificado como instável (unstable). Veja sbuild.

Nota: você precisará de chroots separados para schroot (desenvolvimento local) e sbuild (compilação limpa). Tanto o schroot quanto o sbuild devem ser configurados no sistema host (não tente configurar o sbuild dentro do schroot).

Opção 3: LXC

Se tiver problemas para configurá-lo, pule esta seção e consulte a seção docker abaixo.

Se já configurou um ambiente de desenvolvimento sid usando um dos métodos fornecidos acima, você pode pular esta etapa.

Opção 4: Docker

Se já configurou um ambiente de desenvolvimento sid usando um dos métodos fornecidos acima, você pode pular esta etapa.

Opção 5: Máquina virtual

Se já configurou um ambiente de desenvolvimento sid usando um dos métodos fornecidos acima, você pode pular esta etapa.

Opção 6: Instalação direta (bare metal)

Você também pode instalar a Debian instável (unstable) em sua máquina com configuração de inicialização dupla ou até mesmo substituindo o sistema operacional existente. Veja Debian instável (unstable).

Opção 7: Window Subsystem para Linux (WSL 2)

Se já configurou um ambiente de desenvolvimento sid usando um dos métodos fornecidos acima, você pode pular esta etapa.

O Debian instável (unstable) também pode ser instalado em sua máquina local com o sistema operacional Windows usando WSL2 (informações de instalação).

Observe que isso requer que você execute o Windows 10 versão 2004 ou superior (Build 19041 ou superior) ou o Windows 11. Consulte instalando o WSL2 .

O WSL2 instalado não vem com uma configuração "pronta para usar" para o schroot. Você precisará configurar o schroot (da Opção 2) após instalar uma distribuição Debian em WSL2.