View previous topic :: View next topic |
Author |
Message |
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 1:01 pm Post subject: apt-get no portage? |
|
|
Seria possível ter o apt-get no portage?
Eu acho que seria uma boa idéia. Algumas pessoas têm computadores realmente lentos, e compilar o X ou o KDE deve ser uma tortura. Que tal um "emerge apt-get" e "apt-get install kde"?
Idéias... |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 1:47 pm Post subject: |
|
|
Passando pelo site do Debian, eu vi o pacote apt. Está no site também os sources, eu acredito que não seria tão difícil assim portar para o Gentoo. Eu acho que vou experimentar .
Outra coisa que me chamou a atenção foi o pacote rpm no portage, para instalar rpms. Mas é claro que o apt-get é mais interessante, pois reflete melhor a "filosofia" do Gentoo.
Eu vou baixar os sources e tentar instalar aqui . Vocês já pensaram numa integração entre Debian e Gentoo? Pacotes do Debian sendo "apt-getados" pelo portage e no Debian o apt-get compilando? Eu acho que isso pode ser alguma coisa produtiva.
Eu já ouvi falar de Debtoo, mas acho que não é necessário criar uma nova distro, somente um novo pacote .
Não teríamos que fazer mais mozilla-firebird-bin e afins. O que quiséssemos instalar como binário usaríamos o apt. |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 2:14 pm Post subject: |
|
|
Deu parcialmente certo... Compilou tudo bem, mas depois o apt ficou reclamando de uma "biblioteca.so.3.3".
O interessante é que existe uma "biblioteca.so.3.3.0" e um link para ela que tem o nome "biblioteca.3.3". Tá tudo numa pasta só, tanto as libs quanto os binários, então não acredito num erro de PATH... |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 3:43 pm Post subject: |
|
|
Não tinha visto isso, o dpkg está no portage. Vou instalar e a partir dele tentar instalar o apt... |
|
Back to top |
|
|
Operador Nabla Apprentice
Joined: 06 Feb 2004 Posts: 176 Location: Salesópolis - SP - Brasil
|
Posted: Sat Feb 07, 2004 5:07 pm Post subject: |
|
|
Tendo em vista as semelhanças entre o APT e o Portage, eu imagino que também seria interessante se pudéssemos portar o Synaptic (consagrado front-end, com contribuições brasileiras, para o APT) para tornar-se um poderoso front-end para o Portage. |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 5:11 pm Post subject: |
|
|
Operador Nabla wrote: | Tendo em vista as semelhanças entre o APT e o Portage, eu imagino que também seria interessante se pudéssemos portar o Synaptic (consagrado front-end, com contribuições brasileiras, para o APT) para tornar-se um poderoso front-end para o Portage. |
Eu estava pensando nisso também. E estou quase conseguindo colocar o dpkg pra funcionar. Depois disso, eu acho que é suficiente instalar o apt e pronto.
O que me mata é a minha total inexperiência com o Debian. Mas eu vou continuar tentando, estou quase lá . É esse o futuro do Linux: Debian no Gentoo, Gentoo no Debian. O melhor dos dois lados.
E aí eu quero ver a desculpa que instalar o Gentoo é demorado .
Vamos pensar num jeito de integrar o apt no portage, ou pelo menos o dpkg, vai ser muito útil, estou tendo que mexer nums arquivos de configuração a mão que não deveriam ser mexidos por causa disso... Dependências... |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 5:21 pm Post subject: |
|
|
Primeiro passo concluído: instalei o apt e o apt-get update funcionou .
Agora vou ver se eu instalo um jogo pra testar... Interessante, se o dpkg tivesse uma opção como a inject do emerge eu teria feito isso há uma hora atrás!
EDIT: Estaria aí a facilidade que tanto se busca para instalar o Gentoo? Uma interface gráfica com o Synaptic é relativamente fácil! |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 5:29 pm Post subject: |
|
|
Funcionou.
Nesse exato momento estou escrevendo do Blackbox, que eu baixei com um:
Code: | apt-get install blackbox |
Estou me sentindo no Kurumim. |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 5:59 pm Post subject: |
|
|
O maior desafio de integrar o Portage e o Dpkg são os pacotes. Os pacotes do Debian tem nomes e versões diferentes no Gentoo.
Para que os dois sistemas coexistam, um não pode sobreescrever o outro. Mas o Portage não "olha" o banco de dados do Dpkg e vice-versa. Então, nós temos que fazer isso manualmente (hoje, em breve por scripts).
Quando pegamos um pacote simples, como o Blackbox, sua nomenclatura e o seu conteúdo é o mesmo. Mas as bibliotecas libstdc++ são um pacote no Gentoo (libcompat), e vários no Debian. Então, para que tudo funcione, os scripts terão que olhar um banco de dados de pacotes "problemáticos" quais são os pacotes correspondentes no outro sistema, e assinalar as mudanças.
O sistema vai ter algumas limitações, onde o sistema mais flexível vai ter que submeter ao pacote menos flexível. Como no exmplo acima, os pacotes do Debian são mais flexíveis e não poderão ser instalados individualmente. Essa perda de funcionalidade é mínima, já que são poucos os casos onde essa diferença acontece (se resumem em grande parte a bibliotecas), e na maioria das vezes o sistema mais flexível acaba tendo os mesmos pacotes que o menos flexível.
Quem quiser tentar usar esse artifício, os passos não são complicados (uma vez que se aprende), e eu posto um guia aqui. Enquanto isso vou tentar fazer alguns scripts bem básicos pra facilitar.
Peguei gosto pela idéia . |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 7:04 pm Post subject: |
|
|
fernandotcl wrote: | Operador Nabla wrote: | Tendo em vista as semelhanças entre o APT e o Portage, eu imagino que também seria interessante se pudéssemos portar o Synaptic (consagrado front-end, com contribuições brasileiras, para o APT) para tornar-se um poderoso front-end para o Portage. |
Eu estava pensando nisso também. E estou quase conseguindo colocar o dpkg pra funcionar. Depois disso, eu acho que é suficiente instalar o apt e pronto.
O que me mata é a minha total inexperiência com o Debian. Mas eu vou continuar tentando, estou quase lá . É esse o futuro do Linux: Debian no Gentoo, Gentoo no Debian. O melhor dos dois lados.
E aí eu quero ver a desculpa que instalar o Gentoo é demorado .
Vamos pensar num jeito de integrar o apt no portage, ou pelo menos o dpkg, vai ser muito útil, estou tendo que mexer nums arquivos de configuração a mão que não deveriam ser mexidos por causa disso... Dependências... |
Instalei o Synaptic. Surpreendentemente funciona. Só congela na hora de instalar os pacotes. Parece que fica esperando um evento acontecer, e esse evento nunca acontece.
Alguém aqui sabe se o dpkg ou o apt têm uma função similar à inject do portage? Se tivesse estariamos com meio caminho andado. |
|
Back to top |
|
|
AngusYoung Retired Dev
Joined: 20 Dec 2002 Posts: 473 Location: Czech Republic
|
Posted: Sat Feb 07, 2004 7:27 pm Post subject: |
|
|
Hey, já fizeram ebuilds para isso??? Meu, se quiserem a minha ajuda é só mandar mp, email ou falar comigo no ICQ. Gostei da idéia. _________________ My blog
Twitter |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 7:48 pm Post subject: |
|
|
AngusYoung wrote: | Hey, já fizeram ebuilds para isso??? Meu, se quiserem a minha ajuda é só mandar mp, email ou falar comigo no ICQ. Gostei da idéia. |
Agradeço muito a iniciativa de oferecer ajuda. Realmente o trabalho não vai ser fácil .
Ebuilds? Eu ainda mal consegui instalar alguma coisa . O que podemos fazer é corrigir um ebuild já existente, o dpkg, que não é funcional se você só instalar com emerge dpkg; tem uma série de outras coisas a serem feitas.
Vou postar aqui os passos, num formato de script (não é garantido que funcione, estou fazendo de cabeça):
* Editado * Peguem o deb do apt aqui e baixem para ~/deb/.
Code: | #!/bin/bash
# Pegar o dpkg
emerge dpkg
# Pegar o update-rc.d
# esqueci o endereço :D
# acho que não é necessário que o arquivo seja real
echo "#!/bin/bash" > /usr/sbin/update-rc.d
chmod +x /usr/sbin/update-rc.d
# Ajustar antes de instalar
touch /usr/lib/db/available
echo "Package: libc6" > /usr/lib/db/status
echo "Version: 2.3.2-9" >> /usr/lib/db/status
echo "Status: hold ok installed" >> /usr/lib/db/status
echo >> /usr/lib/db/status
echo "Package: libstdc++2.10-glibc2.2" >> /usr/lib/db/status
echo "Version: 1:2.95.4-0.010810" >> /usr/lib/db/status
echo "Status: hold ok installed" >> /usr/lib/db/status
mkdir /var/lib/dpkg
cp /usr/lib/db/status /var/lib/dpkg/status
# Instalar apt
dpkg -i ~/deb/apt.deb |
Agora muita atenção:
Para cada pacote que você for instalar usando o apt-get install, você antes precisa ver suas dependências. Se você já tiver os pacotes, é melhor não os sobreescrever. Então você tem que editar
o status e colocar o nome e a versão do pacote que você tem. Parece complicado, mas depois que se acostuma melhora
Outra coisa, antes de instalar, façam um updatedb antes como segurança se tudo der errado .
Corrijam o script se necessário, e me informem se der erro.
EDIT: Se vcs não entenderam, ou o script não der certo, não se preocupem, eu vou escrever um guia melhor em pouco tempo, ainda hoje provavelmente.
E outra coisa que eu esqueci de dizer... O packages.debian.org virou o melhor amigo de quem quiser fazer isso
EDIT2: Link Errado! O link para o apt está errado, baixa um tar.gz. O link não é direto, baixem o arquivo manualmente aqui. Já mudei lá em cima. |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 07, 2004 9:42 pm Post subject: |
|
|
Deixa eu ver se eu consigo me explicar melhor, é uma limpeza de tudo que está no post anterior:
- Instalar o instalador de arquivos *.deb, o dpkg:
Este programa não roda sem um script nativo do Debian, o update-rc.d que não sei porque é utilizado. Esse arquivo terá que ser adaptado no futuro para o Gentoo, pois os runlevels do Gentoo não são compatíveis com os do Debian. Provavelmente um arquivo vazio pode substituí-lo, se não funcionar eu posto o original.
Code: | # touch /usr/sbin/update-rc.d |
Caso ele exija um script "legítimo:
Code: | # echo "#!/bin/bash" > /usr/sbin/update-rc.d |
Agora damos permissões de execução ao script:
Code: | # chmod +x /usr/sbin/update-rc.d |
Baixar o apt, criando uma pasta temporária para ele. Ele pode ser encontrado aqui. Vamos supor que o arquivo foi baixado para ~/deb/.
O apt não vai ser instalado se não existirem os arquivos /usr/lib/db/status e /usr/lib/db/available. O arquivo available é dummy também:
Code: | # touch /usr/lib/db/available |
Já o status também poderia ser. Este arquivo lista todos os pacotes instalados. O problema é que o apt tem duas dependências, os pacotes libc6 e libstdc++2.10-glibc2.2. Se essas dependências não forem resolvidas, o apt não vai instalar.
Poderíamos baixar as dependências e instalar, mas já as temos instaladas no Gentoo. Então, temos que "enganar" o dpkg. Com seu editor favorito, crie o arquivo /usr/lib/db/status assim:
Code: | Package: libc6
Version: 2.3.2-9
Status: hold ok installed
Package: libstdc++2.10-glibc2.2
Version: 1:2.95.4-0.010810
Status: hold ok installed |
Isso faz com que ele pense que esses arquivos não devem ser atualizados (hold), obtiveram sucesso (ok) na instalação (installed). As versões são um problema. A da libc6 é a mesma versão que a minha do Portage. Já a libstc++ não dá pra saber, já que no Portage essa biblioteca não constitue um pacote inteiro. Então peguei por segurança a última versão do repositório do Debian.
Mesmo agora, o dpkg não iria instalar o apt. O dpkg requer um diretório /var/lib/dpkg. Então:
Code: | # mkdir /var/lib/dpkg |
Ele também exige que uma cópia do arquivo status esteja lá:
Code: | # cp /usr/lib/db/status /var/lib/dpkg/ |
Esse último comando é muito utilizado. Sempre antes e depois de um apt-get é necessário copiar o status da pasta usr pra var. Ainda não descobri exatamente o porque. Me parece que o dpkg usa o /var/lib/dpkg como um diretório temporário.
Agora basta instalar o apt:
Code: | # dpkg -i ~/deb/apt-xxxx.deb |
Agora vem a parte mais difícl - instalar os pacotes.
Como exemplo vou tomar o Blackbox, meu primeiro apt-get com sucesso.
Se formos em packages.debian.org e procurarmos por blackbox em stable, vamos achar esta página. Os círculos vermelhos em "Other packages related to blackbox" são suas dependências.
A única dependência que não está no status é "xlibs". Agora é necessário um pouco de dedução. Xlibs são as bibliotecas do XFree. Quem tem XFree tem essas bibliotecas, reinstalá-las não é uma boa idéia. Então, temos que dizer ao dpkg que já temos o pacote instalado. Em /usr/lib/db/status:
Code: | ...
Package: xlib
Status: hold ok installed # = não mexa, foi bem sucedida, está instalada
Version: 4.3.0-3 |
Repare a versão: é a versão do XFree retornada em "emerge -s xfree". Repare também que "-3" significa "-r3" na notação Gentooísta.
Agora:
Code: | # cp /usr/lib/db/status /var/lib/dpkg/
# apt-get install blackbox |
Lembrando sempre da cópia do status para var entre apt-gets.
É isso, por enquanto, bem básico .
O próximo desafio é automatizar essa rotina, até que seja prático instalar pacotes binários assim. E depois, construir um banco de dados relacionando os pacotes das duas distros. E um ebuild . |
|
Back to top |
|
|
jcarlos n00b
Joined: 13 Sep 2003 Posts: 70 Location: Australia
|
Posted: Sun Feb 08, 2004 3:41 am Post subject: |
|
|
Seria interessante o portage ter uma opção como --bin-package que instalasse os pacotes binários caso necessários, e usando um emerge -v --bin-package ele mostraria as opções de compilação utilizadas no pacote, só não seria possível fazer alteração nestas opções, caso queria uma alteração pode-se compilar o pacote no modelo tradicional do gentoo =)
Mas não sei, talvez o ideal /p umas pessoas seja fazer uma instalação binaria e personalizar apenas alguns pacotes utilizando um fonte. Sendo que em uma distribuição binária é bem mais trabalhoso personalizar o programa pelo fonte que no Gentoo enquanto que no Gentoo é bem mais trabalhoso encontrar e atualizar pacotes binarios (apenas instalando uma nova grp? com exceção dos pacotes que possuem -bin)
Acho que um dia o portage também terá gerenciamento de pacotes binários (de forma mais prática e polida que os atuais .tar.bz2) . Não sei ao certo quantos .ebuilds o portage possuí mas sei que tem uma quantidade enorme, e cada .ebuild tem seu mantedor, não seria impossível cada mantedor de um .ebuild manter uma versão compilada do pacote.
Manter uma base de dados atualizada entre uma porção de .ebuilds e .debs seria extremamente trabalhoso.
Em todo caso boa sorte em seu projeto, acho que a idéia de poder instalar QUALQUER pacote através dos fontes ou dos binários quando quiser é muito boa. Fora que deve ser uma diversão /p você tentar instalar o apt-get no Gentoo
OFF: O que mais me agrada no gentoo não é o desempenho extra que se granha compilando os pacotes do fonte, mas sim a maneira como é fácil manter os pacotes atualizados sem dores de cabeça e manter as configurações feitas. Fora a flexibilidade e a forma como o sistema fica enxuto /c apenas os pacotes que utilizo. Sempre tive dores de cabeça com gerenciadores de pacotes até conhecer o portage.
OFF2: Essa mensagem ficou maior do que eu esperava |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sun Feb 08, 2004 11:57 am Post subject: |
|
|
Ate que o trabalho nao e tao grande assim. Eu estava vendo, os unicos pacotes com nomes diferentes sao bibliotecas. E essas sao faceis "traduzir", basta juntar todas num so pacote . Eu acho que e viavel.
Eu estou instalando agora uma instalacao limpa do Gentoo pra ver se e viavel mesmo. Vou traduzir todos os meus pacotes .
O que eu pretendo e instalar programas que nao estao no portage (o repositorio do Debian e maior que o do Gentoo) e de uma maneira mais simples.
Minha nova instalacao do Gentoo (isso mesmo, eu cheguei a esse ponto ) vai ter toda a parte grafica (X e afins) binaria, assim eu evito muita dor de cabeca .
A ideia e que isso nao se torne um substituto do Portage, e sim um complemento. Os pacotes que precisam de desempenho (de jogos ao gcc) serao compilados, enquanto os pacotes que se atualizam com rapidez, sao lentos para compilar e podem gerar erros devido a flags agressivas e coisas do tipo poderiam entao ser baixados como binarios.
Isso sem contar que nao sao todos os pacotes que precisam ser traduzidos. Alguns nao existem no Portage, nem suas dependencias. Esses nao precisam. O numero de pacotes que exigem essa traducao eu estimo em 500 ou menos. |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sun Feb 08, 2004 2:00 pm Post subject: |
|
|
Acabei a instalacao e conclui que isso e realmente inviavel...
Seria facil se so os nomes dos pacotes ou suas versoes mudassem, e um pouco mais complicado quando o conteudo dos pacotes tambem fosse diferente.
Agora o que me fez concluir que nao e viavel foi uma variavel que eu nao contava... As versoes dos pacotes sao totalmente diferentes. Na maioria dos pacotes isso e solucionavel. Mas alguns sao totalmente incompativeis, sem contar os patches que as distros aplicam e as releases diferentes dos mesmos pacotes...
Em alguns casos e impossivel ter os dois sistemas juntos, ao menos sem intervencao do usuario.
Pelo menos deu pra distrair. O ruim e que o X ainda esta compilando... .
Eu queria ver mesmo mais pacotes binarios no portage. Quem sabe uma opcao -bin... |
|
Back to top |
|
|
tscolari l33t
Joined: 02 May 2004 Posts: 602 Location: curitiba - pr - Brazil
|
Posted: Wed Aug 25, 2004 3:02 pm Post subject: |
|
|
hehe
as vezes é complicado compilar...
Eu to tentando instalar gentoo num pentium 166... tortura total (o xorg demorou em média 20 horas pra compilar)...
To tentando usar aquele distcc pra fazer compilação remota mas estou tendo problemas com ele |
|
Back to top |
|
|
malloc l33t
Joined: 19 Sep 2003 Posts: 762
|
Posted: Wed Aug 25, 2004 3:24 pm Post subject: |
|
|
A ideia sinceramente é realmente apelativa. Gosto mt do Gentoo, mas sinceramente n tenho paciencia para perder 4 ou 5 horas a instala-lo, assim so tenho gentoo no meu desktop e no resto (server e 2 laptops) tenho debian.
Como uso os dois em paralelo cada vez tenho mais consciencia dos pros e contras de cada distro.
Por exemplo, no debian acho q a forma de distribuição de packages deles e simplesmente má (exemplo, libncurses, libncurses-dev, os xservers todos separados, etc), penso q podia melhorar se criassem mais meta-packages para facilitar a instalação, neste campo o gentoo e mt superior ao debian.
Tambem n gosto mt do facto do debian usar uma configuração tipo sysv em vez de bsd para os init scripts, aq o gentoo tb leva vantagem.
Depois temos o facto de q sabemos q qq coisa q instalamos no debian vai funcionar, e aq tá muito a frente do gentoo
Enfim acho q a filosofia das distros sao diferentes, eu pessoalmente considero o gentoo como uma distro perfeita para desktops e o debian para servidores, devido a facilildade de instalação e manutenção.
Quanto ao porting do apt para gentoo, já existe uma distro (Debtoo se n me engano) q está a fazer o contrário, portar o portage pro debian.
Acho que ainda é mt beta mas de qualquer maneira tenho curiosidade em ver como é que essa distro vai evoluir.
De qualquer maneira parabéns ao fernandotcl pela ideia e caso ainda esteja interessado em continuar teria muito gosto em ajudar no q puder. |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Wed Aug 25, 2004 5:19 pm Post subject: |
|
|
malloc wrote: | caso ainda esteja interessado em continuar teria muito gosto em ajudar no q puder. |
Na verdade, a idéia é velha. Encontrei alternativas como o Arch Linux, então dificilmente vou voltar à continuar esse projeto. |
|
Back to top |
|
|
malloc l33t
Joined: 19 Sep 2003 Posts: 762
|
Posted: Wed Aug 25, 2004 5:49 pm Post subject: |
|
|
fernandotcl wrote: | malloc wrote: | caso ainda esteja interessado em continuar teria muito gosto em ajudar no q puder. |
Na verdade, a idéia é velha. Encontrei alternativas como o Arch Linux, então dificilmente vou voltar à continuar esse projeto. |
Realmente devia ter visto a data dos posts
O arch é uma boa distro, no entanto axo q peca pelo pouco software q ainda tem. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|