Capítulo 5. Software disponível no sistema Debian

Índice

5.1. Que tipos de aplicações e software de desenvolvimento estão disponíveis para Debian GNU/Linux?
5.2. Quem escreveu todo esse software?
5.3. Como posso obter a lista actual de programas que foram empacotados para Debian?
5.4. Como posso instalar um ambiente de desenvolvedor para compilar pacotes?
5.5. O que está a falar em Debian GNU/Linux?
5.6. Porque é que Me aparecem mensagens "ld: cannot find -lfoo" ao compilar programas? Porque não existem nenhuns ficheiros libfoo.so nos pacotes binários de Debian?
5.7. (Como) Debian suporta Java?
5.8. Com é que Eu verifico que estou a usar um sistema Debian, e qual versão é?
5.9. Como é que Debian suporta linguagens não-Inglês?
5.10. Onde está ezmlm/djbdns/qmail?
5.11. Onde está o reprodutor para Flash (SWF)?
5.12. Onde está o Google Earth?
5.13. Onde está o software VoIP?
5.14. I have a device that requires non-free firmware. What should I do?
5.15. Eu tenho uma placa de rede sem fios que não funciona com Linux. Que devo fazer?

5.1. Que tipos de aplicações e software de desenvolvimento estão disponíveis para Debian GNU/Linux?

Como a maioria das distribuições Linux, Debian GNU/Linux disponibiliza:

  • a maioria das aplicações GNU para desenvolvimento de software, manipulação de ficheiros, e processamento de texto, incluindo gcc, g++, make, texinfo, Emacs, a shell Bash e vários utilitários Unix actualizados,

  • Perl, Python, Tcl/Tk e vários programas relacionados, módulos e bibliotecas para cada um deles,

  • TeX (LaTeX) e Lyx, dvips, Ghostscript,

  • o sistema de janelas Xorg, que disponibiliza uma interface em rede gráfica de utilizador para Linux, e inúmeras aplicações X incluindo os ambientes de trabalho GNOME, KDE e Xfce,

  • um conjunto completo de aplicações de rede, incluindo servidores para protocolos de Internet como HTTP (WWW), FTP, NNTP (noticias), SMTP e POP (mail) e DNS (servidores de nomes); bases de dados relacionais como PostgreSQL, MySQL; também disponibilizados estão navegadores web incluindo os vários produtos da Mozilla,

  • um completo conjunto de aplicações de escritório, incluindo o conjunto de produtividade LibreOffice, o Gnumeric e outras folhas de cálculo, editores WYSIWYG, calendários.

Mais de 63879 pacotes, que vão desde servidores e leitores de notícias a suporte de som, programas e FAX, programas de base de dados e folha de cálculo, programas de processamento de imagem, comunicações, rede, e utilitários de mail. Servidores web,e até programas de rádio amador estão incluídos na distribuição. Outros conjuntos de software 1082 estão disponíveis como pacotes Debian, mas não são formalmente parte de Debian devido a restrições de licença.

5.2. Quem escreveu todo esse software?

Para cada pacote os autores dos programas são creditados no ficheiro /usr/share/doc/PACOTE/copyright, onde PACOTE deve para ser substituído pelo nome do pacote.

Os Maintainers que empacotam este software para o sistema Debian GNU/Linux estão listados no ficheiro de controle Debian (veja Secção 7.4, “O que é um ficheiro de controle Debian?”) que vem com cada pacote. O registo de alterações Debian, em /usr/share/doc/PACKAGE/changelog.Debian.gz, menciona as pessoas que também trabalharam no empacotamento Debian.

5.3. Como posso obter a lista actual de programas que foram empacotados para Debian?

Uma lista completa está disponível a partir de qualquer Debian mirrors, no ficheiro indices/Maintainers. Esse ficheiro inclui os nomes dos pacotes e os nomes e e-mails dos seus respectivos responsáveis.

Em WWW interface para pacotes Debian há um sumário conveniente dos pacotes em cerca de trinta "secções" do arquivo Debian.

5.4. Como posso instalar um ambiente de desenvolvedor para compilar pacotes?

Se você deseja compilar pacotes no seu sistema Debian irá precisar de ter uma ambiente de desenvolvimento básico, incluindo um compilador de C/C++ e alguns outros pacotes essenciais. De modo a instalar este ambiente você só precisa de instalar o pacote build-essential. Este é um meta-pacote ou pacote marcador-de-posição que depende das ferramentas de desenvolvimento standard que são precisas para compilar um pacote Debian.

Algum software pode, no entanto, precisar de software adicional para ser re-compilado, incluindo cabeçalhos de bibliotecas ou ferramentas adicionais como autoconf ou gettext. Debian fornece muitas das ferramentas necessárias para compilar outro software como pacotes Debian.

Descobrir qual software é precisamente o requerido é difícil, no entanto, a menos que você esteja a planear em recompilar pacotes Debian. Esta última tarefa é bastante fácil de fazer, pois os pacotes oficiais têm de incluir uma lista do software adicional (para além dos pacotes em build-essential) precisos para compilar o pacote, isto é conhecido como Build-Dependencies. Para instalar todos os pacotes necessários para compilar um determinado pacote fonte e então compilar o referido pacote fonte basta você correr:

# apt-get build-dep foo
# apt-get source --build foo

Note que se você quer compilar os kernels de Linux distribuídos por Debian, você vai querer também instalar o pacote kernel-package. Para mais informação veja Secção 10.2, “Que ferramentas Debian fornece para compilar kernels personalizados?”.

5.5. O que está a falar em Debian GNU/Linux?

Existe uma lista de pacotes que ainda precisam de ser empacotados para Debian, o Work-Needing and Prospective Packages list.

Para mais detalhes sobre adicionar coisas em falta, veja Capítulo 13, Contribuir para o Projecto Debian.

5.6. Porque é que Me aparecem mensagens "ld: cannot find -lfoo" ao compilar programas? Porque não existem nenhuns ficheiros libfoo.so nos pacotes binários de Debian?

A Política Debian requer que tais links simbólicos (para libfoo.so.x.y.z ou semelhante) sejam colocados em pacotes de desenvolvimento separados. Esses são geralmente chamados libfoo-dev ou libfooX-dev (assumindo que o pacote de biblioteca é chamado libfooX, e X é um número inteiro).

5.7. (Como) Debian suporta Java?

Várias implementações livres da tecnologia Java está disponível em pacotes Debian, fornecendo ambos Kits de Desenvolvimento Java como também Ambientes Runtime. Você pode escrever, depurar e correr programas Java usando Debian.

Correr um aplicativo Java requer um navegador web com a capacidade de o reconhecer e o executar. Vários navegadores web disponíveis em Debian, como o Mozilla ou o Konqueror, suportam plug-ins Java que permitem correr aplicativos Java neles.

Por favor consulte o Debian Java FAQ para mais informação.

5.8. Com é que Eu verifico que estou a usar um sistema Debian, e qual versão é?

De modo a certificar-se que o seu sistema foi instalado a partir de discos Debian base reais, use o comando

lsb_release -a

. Este irá mostrar o nome da distribuição (no campo Distributor ID) e a versão do sistema (nos campos Release e Codename). O seguinte é um exemplo corrido num sistema Debian:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 7.4 (wheezy)
Release:    7.4
Codename:   wheezy

Você também pode verificar a existência do ficheiro /etc/debian_version, que contém uma única linha que fornece o número de versão do lançamento, como definido pelo pacote base-files.

No entanto, os utilizadores devem ter em conta que o sistema Debian consiste de muitas partes, cada uma das quais pode ser actualizada (quase sempre) independentemente. Cada "lançamento" de Debian contém conteúdos bem definidos e que não mudam. As actualizações estão disponíveis separadamente. Para uma descrição de uma-linha do estado de instalação do pacote foo, use o comando dpkg --list foo. Para uma descrição mais detalhada, use:

dpkg --status foo

Para ver as versões do todos os pacotes instalado, corra:

dpkg -l

Note que a existência do programa dpkg mostra que deverá ser capaz de instalar pacotes Debian no seu sistema. No entanto, como o programa foi portado para muitos outros sistemas operativos e arquitecturas, isto não é mais um método de confiança para determinar se um sistema é Debian GNU/Linux.

5.9. Como é que Debian suporta linguagens não-Inglês?

  • Debian GNU/Linux é distribuído com mapas de teclados para quase duas dúzias de teclados, e com utilitários (no pacote kbd) para instalar, visualizar e modificar as tabelas.

    A instalação pede ao utilizador para especificar o teclado a usar.

  • Praticamente todo o software em Debian suporta UTF-8 como conjunto de caracteres. Os conjuntos de caracteres antigos, como ISO-8859-1 ou ISO-8859-2, devem ser considerados obsoletos.

  • Actualmente, o suporte para manuais em Alemão, Espanhol, Francês, Húngaro, Italiano, Japonês, Coreano, Holandês, Polaco, Português, Russo, Turco, e Chinês é disponibilizado pelos pacotes manpages-LANG (onde LANG é o código de país ISO de duas letras). Para aceder a um manual NLS, o utilizador tem de definir a variável de shell LC_MESSAGES para a string apropriada.

    Por exemplo, no caso dos manuais em linguagem Italiana, LC_MESSAGES precisa de ser definido para 'italian'. o programa man ira então procurar por manuais em Italiano sob /usr/share/man/it/.

5.10. Onde está ezmlm/djbdns/qmail?

Dan J. Bernstein costumava distribuir todo o software que escreveu com uma licença restrita a qual não permitia que se distribuíssem binários modificados. Em novembro de 2007 no entanto, Bernstein disse "[...] Eu decidi colocar todo o meu software futuro e [...] passado no domínio público". Veja FAQ de distribuidores para os seus termos de distribuição.

à data desta escrita (2016-03), ezmlm-idx está disponível apenas em experimental (mlmmj semelhante, e lançado com o Debian jessie); djbdns está disponível em sid (unstable) apenas, veja Bug #516394 e Bug #796118 para detalhes e veja dbndns para uma alternativa semelhante; o software publicfile ainda é software não livre, está disponível um pacote publicfile-installer a partir da secção contrib de Debian.

Outro software de Dan J. Bernstein (qmail, daemontools, ucspi-tcp) é lançado juntamente com Debian.

5.11. Onde está o reprodutor para Flash (SWF)?

Debian embarca ambos gnash e swfdec: dois reprodutores de vídeo SWF livres.

5.12. Onde está o Google Earth?

Google Earth está disponível para GNU/Linux a partir do site web da Google, mas não apenas não é Software Livre, como é completamente não-distribuível por terceiros. No entanto, googleearth-package (na secção contrib) pode ajudar a usar este software.

5.13. Onde está o software VoIP?

Dois protocolos principais abertos usados para Voice Over IP: SIP e H.323. Ambos estão implementados numa grande variedade de software no arquivo main de Debian. ekiga é um dos clientes populares.

5.14. I have a device that requires non-free firmware. What should I do?

Firmware refers to embedded software which controls electronic devices. Many devices require firmware to operate. Historically, firmware would be built into the device's ROM or Flash memory, but more and more often, a firmware image has to be loaded into the device RAM by a device driver during device initialisation.

Some devices require non-free firmware to work properly. And there could be firmware updates in the future.

In Debian release 11 (bullseye) and older, Debian did not include non-free firmware on official images and live installations. For Debian 12 onwards, all the packaged non-free firmware binaries that Debian can distribute have been moved to a new component in the Debian archive, called non-free-firmware. If you're upgrading from an older release of Debian and you need these firmware binaries, make sure that your sources.list uses this new component:

http://deb.debian.org/debian bookworm main non-free-firmware contrib non-free

For more information please refer to Firmware information in the Debian Wiki.

5.15. Eu tenho uma placa de rede sem fios que não funciona com Linux. Que devo fazer?

Compre uma que funcione :)

Em alternativa, use o ndiswrapper para usar uma driver para Windows (se tiver uma) no seu sistema Linux. Veja Debian Wiki ndiswrapper page para mais informação.