Total de visualizações de página

Eu sou:

Minha foto
"A mente que se abre a uma nova idéia jamais voltará ao seu tamanho original." Albert Einstein

quinta-feira, 27 de janeiro de 2011

Create package Debian - Criar um pacote Debian



Quem precisa do Zeca? :)

Instalar um programa em Linux é tão fácil que simplesmente esquecemos do método "antigo" de dois cliques e next, next e next. Há alguns casos que se assemelham com o "Next", mas nada melhor que um "apt-get", "dpkg -i" ou simplesmente dois cliques e...fim. :)

Há também a instalação em modo gráfico com o Kpackagekit ou Synaptic, bastando apenas pesquisar pelo programa, selecioná-lo se estiver disponível, mandar ver na instalação. Onde está a vantagem de tudo isso?

1 Você não precisará ir na barraca do Zeca e comprar um piratão.

2 Você não vai passar raiva com o Zeca porque o Crack do programa não está funcionando.

3 Você não vai precisar voltar no Zeca para trocar a bomba.

4 Não entrará em fúria quando colocar o novo CD do Zeca no PC, sendo atacado por um vírus ou praga que veio de "brinde".

5 Você não precisará dizer que o Zeca é um enganador, muito menos denunciá-lo no Procon por venda de produtos de baixa qualidade.

6 Você não precisará pagar R$ 100,00 ou mais em um programa original, tendo milhares de programas bons e gratuitos.

Pode parecer brincadeira, mas isso já aconteceu com muita gente (menos a parte do Procon kkkk Acho eu.). Mas para quem usa Linux... Isso é coisa de sofredor e noobie.

Package Debian - Linux é tudo original em pacote ;)

Um pacote Debian é o programa propriamente dito, empacotado com toda a estrutura para seu funcionamento, podendo ser adquirido por download na net ou usando o gerenciador de pacotes de sua distribuição.

Há muitas distribuições baseadas em Debian, cada uma com melhorias significativas para o usuário final. Escolher uma distribuição mais amigável pode ser a porta de entrada no mundo Linux. Veja a imagem abaixo e entenda como funciona a hierarquia de algumas distribuições Debian:



Essas distribuições possuem o gerenciador de pacotes e usam o arquivo ".deb" para instalar os programas. Mas oque é esse pacote na verdade?

Para você ver a estrutura do pacote Debian basta baixar qualquer um, então faça comando abaixo no diretório onde o pacote está (No Terminal):

dpkg-deb -x nome_do_Pacote.deb /home/usuário

No comando acima eu escolhi o lugar onde será extraído a estrutura do pacote em /home/usuário, podendo ser onde você estiver afim. Vale lembrar que em "usuário" é o seu nome de usuário.

Bem, um pacote Debian não é composto apenas de uma estrutura de diretórios onde será copiados os arquivos do programas, mas temos também um diretório de controle dentro desse pacote. Para extrair o diretório de controle faça:

dpkg-deb -e nome_do_pacote.deb /home/usuário/DEBIAN

Ficou confuso entender? Bem, quando queremos criar um pacote Debian, precisamos primeiro criar um diretório (pasta) com o nome do programa, depois dentro desse diretório criamos um outro diretório chamado DEBIAN (Diretório de controle) e outros diretórios apontando para os lugares onde ficarão os arquivos do programa. Veja a imagem abaixo:


Diretório do pacote = É a pasta raíz do pacote, temos que colocar o nome do nosso programa. Lembre-se que devemos colocar com letras minúsculas.

DEBIAN = Diretório onde ficará os scripts de controle do pacote (vamos falar mais sobre isso). Quando um pacote é instalado, esse diretório não entra na hierarquia do sistema.

/usr = Arquivos de usuários nativos da distribuição

/usr/local = Para instalação de programas não oficiais da Distribuição

/usr/loca/bin = Em "bin" ficam os executáveis de programas ou diretórios dos programas não oficiais. Exemplo:

usr/local/bin/meu_programa_criado/executável_programa

ou

usr/local/bin/executável_programa
/usr/share =
Diretório de compartilhamento, independente da arquitetura.

/usr/share/pixmaps = Aqui ficam os ícones dos programas

/usr/share/menu = Colocamos os lançadores dos nossos programas

/usr/share/applications = Nesse ficam os atalhos para Desktop

Entender a estrutura de diretórios do Linux ajuda muito na hora de criar seus pacotes, organizando cada detalhe de maneira correta. Caso tenha dúvidas pesquise no Google, porque esse é o melhor professor que criaram até hoje :)



Estrutura de diretório Linux
Vendo novamente a imagem 3 neste blog, percebemos que o pacote Debian, nada mais é, que um meio de copiar os arquivos já prontos para diretórios do sistema. Bastando apenas criar uma estrutura de diretórios que simule o caminho correto para onde vão os arquivos.

ENTENDENDO O DIRETÓRIO DEBIAN

Faltou falarmos do diretório DEBIAN, que vai de intruso nesse pacote. O diretório DEBIAN não vai fazer parte da estrutura de diretórios do sistema, sendo ignorado, mas possuindo a funcionalidade de executar scripts antes e depois da instalação do pacote. Veja abaixo os scripts padrão do diretório DEBIAN:

control = O arquivo de controle "control" é muito importante, porque ele vai especificar o nome do pacote, nome do mantenedor, versão do pacote, listar as dependências necessárias para funcionar o pacote, descrição do pacote e para que serve. O arquivo pode ser mais abrangente, mas esses são as informações básicas do arquivo de controle "control". Veja abaixo um exemplo do arquivo control:

Package: zsnes Source: zsnes (1.510-2.2)
Version: 1.510-2.2+b1 Architecture: i386
Maintainer: Joshua Kwan
Installed-Size: 4084
Depends: libao4 (>= 1.0.0), libc6 (>= 2.3.6-6~), libgcc1 (>= 1:4.1.1), libgl1-mesa-glx | libgl1, libpng12-0 (>= 1.2.13-4), libsdl1.2debian (>= 1.2.10-1), libstdc++6 (>= 4.1.1), zlib1g (>= 1:1.2.2.3)


Section: otherosfs
Priority: optional
Description: Emulator of the Super Nintendo Entertainment System (TM)
ZSNES allows you to play classic games written for the "SNES" game console on a GNU/Linux system. It supports advanced features such as multiplayer gameplay over a TCP/IP network. . Please note that many separately-available games playable under this emulator are non-free. See /usr/share/doc/zsnes/README.Debian for more information.


postinst = Atualiza o menu na instalação (script shell)

#!/bin/sh
set -e
# Automatically added by dh_installmenu
if [ "$1" = "configure" ] && [ -x "`which update-menus 2>/dev/null`" ]; then
update-menus
fi
# End automatically added section


postrm = Atualiza menu na desinstalação do programa (script shell)

#!/bin/sh
set -e
# Automatically added by dh_installmenu

if [ -x "`which update-menus 2>/dev/null`" ]; then update-menus ; fi
# End automatically added section

Podemos ver que dentro do diretório DEBIAN ficará os três arquivos acima. O criador do pacote pode colocar outros, mas esses dois fazem o básico para começar. Então nosso diretório DEBIAN ficou assim:

Um dica básica é dissecar pacotes Debian pequenos e tentar entender oque os scripts fazem. Estudar bem a estrutura do pacote, analisando os caminhos apontados e os arquivos que serão instalados.

FINALIZANDO O PACOTE DEBIAN

Quando você já tiver feito todos os passos necessários para criação do pacote, então já é hora de transformar tudo em DEB. Faça o comando abaixo no terminal:

dpkg-deb -b

No comando acima eu mostrei o cominho completo onde está o pacote base e depois o caminho completo onde será criado o pacote Debian pronto. Ficaria assim no meu caso:

dpkg-deb -d /home/renato/tralhas /home/renato/tralhas

No meu diretório há o pacote base e depois será criado o pacote Debian final.

Fazer um pacote Debian é muito facil se você já conhece o básico da estrutura de diretórios do Linux. Acho que é muito divertido criar nossos próprios pacotes e, no final de tudo, ele instalar e funcionar perfeitamente.

Fiz este post com base em minhas pesquisas, mas pode conter erros que não pude notar ou por falta de conhecimento mais avançado. Peço que me corrijam se há algum erro, afinal, não sou expert em Linux ainda.



domingo, 23 de janeiro de 2011

ePSXe 1.6 - Instalando emulador de Playstation no Ubuntu/Kubuntu/Debian.


Eu não sei porque nos repositórios oficiais de muitas distros não há o emulador ePSXe 1.6 para ser instalado. Por mais que encontremos outros, não se compara com o ePSXe nem em outra vida. Vendo esse pequeno detalhe, resolvi fazer meu próprio pacote Debian para guardar e distribuir para quem prefere o emulador.

Packcage Debian ePSXe 1.6


No pacote Debian que estou distribuindo há:

Plugins de Video
Plugins de audio
Plugins para Joystick
Bios
Driver xjoypad = /usr/bin

Criei uma arquivo zipado com as dependências necessárias para Ubuntu/Kubuntu. Preciso que alguém tente instalar no Debian e depois me diga se fufou, se pediu dependências e etc. Mas a estrutura dos sistemas é praticamente a mesma, sendo assim, espero que não dê errado.

A pasta do emulador será instalado em /usr/local/bin/epsxe, caso queiram acrescentar outras coisas é só acessar e mandar ver.


OBS: Não consegui de maneira alguma no Ubuntu/ Kubuntu as setas do teclado correspondentes ao direcional funcionarem no emulador, muito menos os botões direcionais digitais/analógicos no controle USB. Para jogar com o teclado você terá que configurar o direcional com as setas do teclado numérico. Exemplo:

8 = UP
4 = RIGHT
6 = LEFT
2 = DOWN

Há um script que segui para habilitar o joystick USB, mesmo assim, não deu certo a questão do direcional, mas resolveu o problema inicial do não reconhecimento do joystick USB. O Problema da seta e direcional deve ser um Bug de incompatibilidade da Distro. Há outros usuários na net que tiveram o mesmo problema, mas não vi solução ainda. Pode ser que no Debian não aconteça o mesmo (espero).

Segue o script para reconhecimento do joystick usb (caso não reconheça):

#! /bin/bash

# Ativa o suporte para joystick

cd /dev
rm js*
mkdir input
mknod input/js0 c 13 0
mknod input/js1 c 13 1
mknod input/js2 c 13 2
mknod input/js3 c 13 3
ln -s input/js0 js0
ln -s input/js1 js1
ln -s input/js2 js2
ln -s input/js3 js3
mknod input/event0 c 13 64
mknod input/event1 c 13 65
mknod input/event2 c 13 66
mknod input/event3 c 13 67

modprobe -r lp
modprobe joydev
modprobe gamecon map=0,7
xjoypad -device /dev/js0 &

O pacote está disponível para aqueles que curtem games e querem ajudar na melhoria dele.

quinta-feira, 20 de janeiro de 2011

Download Urban Terror 4.1 para Ubuntu/Kubuntu



Quem curte Counter Strike sabe que um game de tiro em primeira pessoa, só nos primeiros 10 minutos, ou em até menos, já dá para ter ideia se a jogatina será boa ou não. Joguei vários games nesse estilo e nem sabia que em Linux possuía um game tão bom.

Pesquisei sobre o game e resolvi baixá-lo e testá-lo, para constatar que é um game muito bom e divertido. Os gráficos são até bons, mas podiam ser melhores, já que games como Combat Arms 3 estão muito na frente na parte gráfica. O que você verá é um game com gráficos mais para PS2, mas com um taxa de diversão online que não deve a nada aos seus primos Counter Strike e Combat Arms 3.


O game foi baseado na Engine de Quaker 3, com muitas melhorias, deixando o resultado final bem satisfatório. Os controles são precisos e não deixam você na mão no meio de um combate. Os servidores para combates multiplayer estão sempre em atividade, com muitos Brasileiros ou gringos já calejados.


Não achei um pacote Debian para a instalação, então eu mesmo fiz o pacote e disponibilizei na internet para todos que estiverem afim de largar o dedo. :)

Segue a pasta no Megauploader com o pacote Debian para a instalação:

http://www.megaupload.com/?f=GN7IG8ZQ

DICA: Se você tentar entrar em um server e der erro na hora de baixar um mapa, com uma mensagem dizendo que não conseguiu carregar a curl Library. Faça assim:

No Konsole ou Terminal digite:

sudo apt-get install curl

O sistema baixará dos repositórios a dependência necessária para fazermos a correção do problema. Depois abra o arquivo abaixo no caminho descrito com um editor de texto como root:

Exemplo:
kate /usr/local/games/urbaterror/q3ut4/autoexec.cfg

Coloque na última linha do arquivo autoexec.exe o comando como mostra a imagem abaixo:

Salve o arquivo, e se tudo ocorrer bem, você conseguirá baixar os mapas sem problemas. Espero que gostem das dicas e principalmente desse bom game.

domingo, 16 de janeiro de 2011

Instalando suporte multimídia, compactadores e outros no Kubuntu


Eu ainda estou na versão 10.04 LTS do Ubuntu e Kubuntu, nem quero ver outra versão tão cedo. A estabilidade do ambiente gráfico KDE da versão 10.04 realmente me deixou eufórico em relação ao Gnome da mesma versão. Só tive dificuldades em me adaptar as diferenças do novo ambiente e confesso que já estou muito satisfeito. Tive alguns problemas estranhos no Ubuntu, bordas das janelas desapareciam, travamentos repentinos e outras coisas fora da normalidade. Mas no Kubuntu ainda não tive nada de estranho até agora.

Um ponto que me deixou insatisfeito é a falta de capricho no suporte do Kubuntu, deixando várias ferramentas legais do Ubuntu praticamente inexistentes. Uma delas é a Central de programas (software-center) que não existe e nem mesmo uma versão não oficial no estilo Ubuntu tweak (se alguém achar algo me diz). Resumindo, quem não possui uma experiência em Linux vai precisar usar o Konsole (terminal) ou o Kpackagekit (adicionar e remover software). Na Central de programas as coisas são mais limpas para os usuários iniciantes e isso é importante.

Uma coisa que me deixou frustado foi o suporte a multimídia, mesmo instalando muitos codecs e outras coisas para deixar a casa redonda...o Amarok não tocava MP3 nem com reza brava. Então tive que caçar na internet a solução e resolvi postar aqui muito mais, afim de ajudar quem gosta do ambiente gráfico KDE.

DEIXANDO A CASA REDONDA - Praticamente tudo aqui funciona no Ubuntu ou Kubuntu em qualquer versão.

A primeira coisa a fazer é instalar o repositório Medibunto com o comando abaixo no Konsole:

sudo wget http://www.medibuntu.org/sources.list.d/$(lsb_release -cs).list --output-document=/etc/apt/sources.list.d/medibuntu.list ; sudo apt-get -q update ; sudo apt-get --yes -q --allow-unauthenticated install medibuntu-keyring ; sudo apt-get -q update

O comando acima foi retirado do próprio site oficial do repositório, veja:

https://help.ubuntu.com/community/Medibuntu

Depois de instalar os repositórios, vá em kpackagekit (Instalar e remover programas) > Configurações > Editar fontes de software

Na opção "baixar de" deixe "Servidor principal".

Obs: Caso dê algum erro na hora de adicionar o repositório, coloque em "Baixar de" em "Servidor principal" primeiro. Depois adicione o repositório.

Se tudo ocorrer bem você já terá o repositório Medibuntu adicionado e pronto para baixar os programas necessários para multimídia, Java e outros.

Instalando os programas

Codecs de audio e video - No console execute os comandos abaixo (separei para não virar bagunça)

32bits
sudo aptitude install kubuntu-restricted-extras non-free-codecs w32codecs libdvdcss2 -y

64bits
sudo aptitude install kubuntu-restricted-extras non-free-codecs w64codecs libdvdcss2 -y

Obs: Os comandos acima devem ser feitos de acordo com a arquitetura.

sudo apt-get install gstreamer0.10-tools gstreamer-tools gstreamer0.10-ffmpeg gstreamer0.10-fluendo-mp3 gstreamer0.10-fluendo-mpegdemux gstreamer0.10-fluendo-mpegmux gstreamer0.10-packagekit gstreamer0.10-pitfdll gstreamer0.10-sdl

sudo apt-get install faac faad ffmpeg libjpeg-progs libxine1-plugins -y

Java

sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fontssudo -y

Compactadores de arquivos

sudo aptitude install arj lha rar unace-nonfree unrar p7zip p7zip-full p7zip-rar -y

Wine - Executar e instalar programas Windows em Linux (Nem precisa de Medibuntu)

sudo aptitude install wine -y

Adobe Reader - Visualizador de aquivos PDF

sudo aptitude install acroread -y

Smplayer - Player de audio e video poderoso e roda tudo

Obs: Esse player possui uma opção de upscaling nos videos, deixando a imagem com resolução muito boa. Você precisa habilitar o recurso em Vídeo > Filtros > Software Scaling.

sudo aptitude install smplayer -y


Vlc - Player de audio e video também muito bom e compativel com praticamente tudo.

sudo aptitude install vlc -y

aMSN - Mensageiro compatível com o Windows Live (Deixei de usar devido a instabilidade, mas tem gente que curte)

Obs: O aMSN possui a possibilidade de instalar plugins muito legais, podendo deixar seu visual mais parecido com o Windows Live.

sudo aptitude install amsn -y

Compiladores - Sem os compiladores você não conseguirá instalar programas a partir do Código fonte.

sudo apt-get install build-essential gcc python2.6-dbg -y

Com esses programas seu Kubuntu vai rodar muitos formatos de áudio, vídeo e outras funções sem engasgar na hora que mais precisamos.

























sábado, 15 de janeiro de 2011

Editores de texto gráficos não abrem no terminal? Solucionado :)

No KDE, seja no Debian ou no Kubuntu, eu tive problemas na hora de editar arquivos com o Kate ou Kwrite no Konsole, aparecendo uma mensagem de erro (nem lembro mais) . Resumindo, se você não conseguir executar o Kate ou outro editor de texto sem usar o kdesu no inicio do comando, basta fazer o seguinte:

Abra um Konsole (Terminal) e digite:

xhost local:root

Depois faça:

sudo vim /root/.bashrc

Obs: O vim é um poderoso editor texto em modo texto, funcionando perfeitamente e sem muitas dificuldades no seu uso (já postei sobre ele aqui no Blog).

Coloque no final do arquivo a seguinte linha:

export XAUTHORITY=/home/name/.Xauthority

obs: Lembrando que onde está "name" deve ser o nome do usuário que está logado no PC (seu usuário).

Salve o arquivo e tente usar o Kate ou Kwrite e verá que eles agora funcionam belezinha. :)

Adicionado google public DNS no Kubuntu.(Internet lenta)

De uns tempos para cá tenho notado que o Net Virtual não está rápida no Ubuntu e no Kubuntu. Você consegue fazer o download sem problemas de lentidão, mas as páginas da web estão lentas e demoradas para abrir. Tive esse problema no Ubuntu, mas agora voltei a ter no Kubuntu.

A solução é simples, basta adicionar o DNS do Google ou outro DNS público que corrija o problema. No Ubuntu é tão fácil, que até já fiz uma postagem sobre o assunto, mas no Kubuntu tinha que procurar a solução. Vamos fazer a modificação e parar de sofrer. :)

O Google public DNS são:

8.8.8.8
8.8.4.4

Bem, sabendo o DNS que queremos adicionar no nosso sistema, basta agora abrir um terminal e editar o arquivo dhclient.conf no caminho abaixo:

/etc/dhcp3/dhclient.conf

Exemplo: sudo kate /etc/dhcp3/dhclient.conf

ou

sudo vim /etc/dhcp3/dhclient.conf

Eu uso bastante o vim, mas o Kubuntu possui um "problema" com editores gráficos no terminal, impossibilitando a edição de arquivos até você corrigir (já postei uma dica sobre isso para Kubuntu).

Quando você abrir o arquivo procure a linha que estiver assim:

#prepend domain-name-servers 127.0.0.1;

Deixando-a assim:

prepend domain-name-servers 8.8.8.8,8.8.4.4;

Salve o arquivo e reinicie o dispositivo que está conectado sua internet. Exemplo:

ifconfig eth0 down

depois

ifconfig eth0 up

Se der certo nas propriedades da sua interface de rede estará assim:

Veja que o Google public DNS ficou acima dos DNS's padrão do seu provedor. Com essas mudanças minha internet voltaram a normalidade.