Primeiro de tudo, adicionar instável a um sistema estável como você fez é uma má idéia realmente : as ferramentas de distribuição considerarão os pacotes instáveis como destinos de atualização válidos e, mesmo que você seja cuidadoso, normalmente, você precisará atualizar uma biblioteca amplamente usada, e acabará com a maioria de seus pacotes de rastreamento instável em pouco tempo. (Use pinning se você realmente precisa.)
Em relação à sua pergunta, em geral, é possível criar um pacote de fontes instáveis no stable, seguindo o procedimento para o qual você vincula . Como você indica, isso pode envolver dependências de back porting ou adaptar o pacote de origem para que ele possa ser construído estável. Se a etapa apt-get build-dep
falhar, essa é a razão: algumas das dependências de compilação do pacote de origem instável não podem ser satisfeitas na estabilidade. Você precisa repetir esse processo até ter feito o back-port de tudo o que é necessário, instalando os pacotes gerados durante o processo. Para pacotes populares, vale a pena registrar um bug para solicitar um backport oficial.
Observe que quando apt-get build-dep
falhar, você precisará instalar as dependências de compilação manualmente. dpkg-buildpackage
dirá o que está faltando, o que é útil se você estiver transferindo dependências de construção: à medida que você adiciona dependências de compilação, a lista de pacotes ausentes relatada por dpkg-buildpackage
diminuirá e quando parar reclamando você sabe que está feito. Isso também leva em consideração quaisquer alterações feitas nas dependências de compilação em debian/control
(que apt-get build-dep
não fará).
Para rustc
as coisas são muito mais complicadas: rustc
precisa de si para construir, por isso precisa ser "bootstrapped". Isso foi feito há alguns meses na instável, com a colaboração dos mestres de FTP; não é algo fácil de replicar de maneira limpa em um sistema estável.
Então, para obter rustc
instalado em um sistema estável, aqui está como eu faria ...
- Back-port
binutils
(comDEB_BUILD_OPTIONS=nocross,nomult,nogold
para evitar a criação do conjunto de ferramentas cruzadas egold
, que não pode ser criado comg++
do Jessie). - Instale
libllvm3.8
dos backports de Jessie. - Instale o
libstd-rust-dev
,libstd-rust-1.12
erustc
da instável.