Arquivo de 21/05/2011

No seguimento da Série de Visuais do Ubuntued, apresento hoje um tema que poderá utilizar caso já tenha instalado o Ubuntu 11.04 Natty Narhwall. Este foi um tema desenhado por NanaBuluku especialmente para utilizadores que não gostem de temas muito claros e brilhantes.

O Unitary Night contém um conjunto de cores que se poderá comparar ao Ambiance, mas apresenta um estilo um pouco mais personalizado que certamente irá agradar a muitos utilizadores. Um dos pontos fortes deste tema, e que certamente irá prender muitos utilizadores, é o facto de ter obtido um contraste entre o texto e fundo de janelas muito bom para a leitura, e isto é algo que muitos temas não conseguem atingir.

No artigo que se segue ser-lhe-a explicado passo a passo como instalar não só o tema Unitary Night, mas também alguns temas para outras aplicações. Desta forma poderá ter um ambiente de trabalho agradável à vista e ao mesmo tempo funcional para trabalhar no dia a dia.

Entre as modificações que serão indicadas encontrará instruções de como instalar os ícones Faenza, um excelente tema para o CoverGloobus e um tipo de letra que irá modificar totalmente o seu ambiente de trabalho.

Tema

A instalação deste tema é bastante simples. O primeiro passo será transferir o ficheiro do tema, por isso, inicie a transferência clicando na seguinte ligação:

Unitary Night – Transferência

Ao abrir o ficheiro no final da transferência deverá encontrar a pasta “unitary_night_inside“. Extraia essa pasta para uma diretoria à sua escolha. Dentro da pasta “unitary_night_inside” encontrará o arquivo “unitary_night.tar.gz“, este é o ficheiro que terá de arrastar para a aplicação Preferências de Aparência.

A instalação é efetuada automaticamente e poderá começar a utilizar o tema desde já.

Ícones

De forma a personalizar ainda mais o seu ambiente de trabalho poderá instalar o pacote de ícones Faenza, pois é dos melhores conjuntos de ícones que se adaptam à barra lateral do Unity e oferece também um aspecto visual deveras agradável. A instalação dos ícones Faenza é efectuada via terminal (Alt+F2gnome-terminal) com o seguinte comando.

sudo add-apt-repository ppa:tiheum/equinox &&  sudo apt-get update && sudo apt-get install faenza-icon-theme

No final da instalação poderá ativar os ícones a partir das Preferências de Aparência. Nessa aplicação clique no botão “Personalizar” que se encontra na aba Temas. Verá agora uma nova janela onde deve escolher a aba Ícones e selecionar a opção Faenza.

Tipo de Letra

Caso queira dar um aspeto diferente ao seu ambiente de trabalho, pode experimentar instalar um tipo de letra diferente. Com o tema Unitary Night recomendo o tipo de letra Vibrocentric, que pelo seu look retro-futurista dará ao seu ambiente de trabalho um aspeto muito característico. Faça a transferência deste tipo de letra clicando no botão “download” no lado direito desta página:

Vibrocentric Font – Transferência

No final do download abra o ficheiro comprimido que transferiu. Dentro dele encontrará quatro ficheiros com a extensão “.ttf” que deverá abrir um a um e, em cada um deles, clicar na opção Instalar Fonte.

Com a fonte Vibrocentric agora instalada, poderá ativá-la na aba Fonte da aplicação Preferências de Aparência.

CoverGloobus

Se utiliza o CoverGloobus como um gestor de música no seu ambiente de trabalho, poderá então instalar um pequeno tema para uma melhor integração com o Unitary Night. O tema chama-se loom’ox e tem um aspeto bastante minimalista, mas muito funcional e prático.

Inicie a transferência do tema para o seu computador clicando na seguinte ligação.

loom’ox for Covergloobus – Transferência

Quando a transferência terminar extraia o conteúdo do arquivo transferido e mova a nova pasta para a seguinte diretoria:

/usr/share/covergloobus/themes

Reinicie o Covergloobus e poderá escolher o tema a partir da lista do programa.

Produtividade

De modo a aumentar a sua produtividade no Ubuntu, caso utilize este sistema como ferramenta de trabalho, recomendo que leia o seguinte artigo. Nele encontrará várias dicas que poderão aumentar a quantidade de trabalho produzido e também a sua qualidade.

Aumente a produtividade através do Compiz

Se utiliza com alguma regularidade o LibreOffice também recomendo a leitura do seguinte artigo. Nele é explicado como integrar o LibreOffice no Global Menubar do Unity.

Como integrar os menus do LibreOffice na Global Menubar


Menu no Unity

Caso ainda tenha alguns problemas com a organização dos menus do Unity, quando procura por algum programa ou ficheiro, poderá facilmente adicionar um iniciador para o menu Cardapio. Leia o seguinte artigo para saber como:

Como ter um menu no Unity

Terminal

Um utilizador que faça bastante uso do terminal necessita que ele seja bastante visível e de fácil leitura. Já um novo utilizador que tenha pouco conhecimento sobre os comandos passa bastante tempo a copiar e colar comandos, comprometendo a sua aprendizagem. Juntar o melhor de dois mundos é bastante fácil, bastará seguir as seguintes indicações.

Abra as Preferências de Perfil da consola (Editar→Preferências de Perfil), na aba Fundo escolha “fundo transparente” e diminua a opacidade ao mínimo.

O passo seguinte passa pela escolha de cor que mais contraste oferece, seleccione a aba Cores e retire o visto da opção “utilizar cores do tema de sistema“. Deverá agora escolher uma cor de texto com contraste suficiente, como por exemplo o verde claro.

Para finalizar também é recomendável que altere o tipo de letra para que não se confunda com as imagens e texto de fundo. Na aba Geral retire o visto da opção “utilizar a fonte de largura fixa do sistema“. Assim já poderá modificar o tipo de letra a seu gosto. No entanto recomendo que utilize a fonte Monospace em negrito.

Fica assim concluida a instalação do tema Unitary Night. Espero que tenha gostado do tema e das dicas oferecidas neste artigo. No próximo dia 30 de Maio estará disponivel mais um tema para poder instalar no seu computador.

Fonte: Ubuntued.info

Symfony é um framework open source escrito em PHP 5, desenvolvido com objetivo de acelerar a produção de aplicações web. Segue o padrão MVC (Model View Control), com  camadas bem definidas, proporcionando uma melhor organização do código fonte.

Benefícios:

  • O framework é totalmente Orientado a Objetos;
  • Facilidade de implementar metodologias de desenvolvimento ágil ( Scrum ou XP );
  • Trabalha com dois tipos de ORM (Object Relational Mapper): Doctrine e Propel;
  • É super flexível, tanto para aplicações mais simples (sites pessoais, blogs, hotsites, etc.) como aplicações mais robustas (intranet, CRM, e-commerce, ERP, etc.);
  • Fácil de dar manutenção;
  • Flexível para ampliar o projeto;
  • Reutilização de aplicativos, com o desenvolvimento de plugins próprios;
  • Uma vasta fonte de informações, devido a uma excelente documentação;
  • Comunidade mundial muito forte;
  • Segurança das aplicações;
  • Linguagem de configuração super intuitiva e simples YAML;
  • Linha de comando para evitar a repetição e agilizar a produção;
  • Não há limitações para iniciar trabalhar com Symfony. É ótimo para programadores iniciantes e avançados;

Requisitos usados neste artigo:

  • Ubuntu 10.+
  • Apache2.2.+
  • PHP 5.2.4 || +
  • MySQL, PostgreSQL, SQLite, ou qualquer DB compatível com PDO.

Mãos à obra! Primeiramente, demonstrarei como configurar um servidor virtual no Ubuntu.

A partir do Terminal e liberar as permissões de administrador para o usuário.

$ sudo su

Vamos preparar o local onde ficará o projeto. Prefiro inserir o projeto na pasta local do meu usuário. Então, vamos criar um diretório chamado “localhost” na pasta do usuário local ou qualquer outro nome que você possa identificar os seus projetos web. Pelo Terminal, navegue até esta pasta e crie dentro dela a estrutura necessária para o projeto Symfony. Neste caso, chamarei o projeto de “imasters”.

$ mkdir –p imasters/lib/vendor

Agora vamos configurar o servidor local dentro do Apache2 para definir o caminho do meu projeto. Ou seja, quando digitar no navegador um endereço deverá ser reconhecido e apontado para os arquivos dentro do diretório do projeto “imasters”.

No Terminal, digite o seguinte comando:

$ gedit /etc/apache2/httpd.conf

Copie e cole o código abaixo nesse arquivo, substituindo pelo seu nome de usuário do Ubuntu. Onde estiver “gaspar” substituir pelo seu usuário:

<VirtualHost *:80>
    ServerName imasters.tut.br
    DocumentRoot /home/gaspar/localhost/imasters/web
    <Directory /home/gaspar/localhost/imasters/web >
        AllowOverride All
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

Agora configuramos o arquivo hosts, onde estão os endereços a serem reconhecidos como endereços do servidor local.

$ gedit /etc/hosts

Copie e cole o seguinte código neste arquivo logo abaixo da linha onde contém o trecho “localhost”

127.0.0.1       imasters.tut.br

Vamos reiniciar o servidor local antes de criarmos o nosso projeto.

$ /etc/init.d/apache2 restart

Criando o projeto “iMasters”

Vamos navegar até o endereço http://www.symfony-project.org/installation e ir até a linha “Download”, coluna “Symfony 1.4” e clicar em “Source .tgz”.

Após fazer o download, localize-o pelo nome “symfony-1.4.11.tgz”. No meu caso está no diretório “Downloads”. Através da linha de comando, vou copiá-lo até o devido local dentro do meu projeto.

$ cp  ../Downloads/symfony-1.4.11.tgz imasters/lib/vendor

Vamos navegar pelo Terminal até o endereço do arquivo e descompactar o arquivo dentro desta pasta indicada pela documentação do symonfy, “lib/vendor/symfony”.

$ cd imasters/lib/vendor
$ tar zxpf symfony-1.4.11.tgz

Agora vamos re nomear a pasta “symfony-1.4.11” para apenas “symfony”.

$ mv symfony-1.4.11 symfony

Não se esqueça de excluir o arquivo .tgz que ficou nesta pasta.

$ rm symfony-1.4.11.tgz

Agora posicionaremos o cursor do Terminal até a pasta do projeto. Ou seja, o diretório “imasters”.

$ cd ../../

Neste momento, basta criar o projeto com o seguinte comando.

$ lib/vendor/symfony/data/bin/symfony generate:project imasters

Após executar o comando acima, observe que o uma série de pastas e arquivos serão geradas dentro do diretório “imasters”. Mas ainda não será possível visualizar o projeto no navegador. Por que não criamos uma aplicação.

Vamos criar uma aplicação chamada “frontend”, através da linha de comando é claro. Para executar esta ação você já utilizará o próprio comando do symfony.

$ php symfony generate:app frontend

Novamente uma estrutura de arquivos será criado. E, para visualizarmos perfeitamente. Vamos finalizar com apenas um comando que mostrará na integra o página padrão do projeto criada. Ou seja, vamos copiar as imagens e css para a pasta publica (“web”) do projeto.

$ cp –R lib/vendor/symfony/data/web/sf web/

Pronto basta abrir o seu navegador e digitar a seguinte url: http://imasters.tut.br

Você verá algo como a imagem abaixo:

Depois de instalar e configurar o Symfony Framework no Ubuntu, vamos criar nossa primeira aplicação. O objetivo é configurar a página inicial do projeto. Criaremos o módulo home e entenderemos como o symfony realiza o “roteamento” das urls – routing.

Umas das principais vantagens da URL amigável é a segurança gerada no seu site, pois a idéia é que seja eliminada do endereço a linguagem que foi aplicada no processo de desenvolvimento.

Ao invés de http://www.seusite.com.br/home.php teremos http://www.seusite.com.br/home

Com symfony isso é muito simples de configurar e você poderá fazer diversas adaptações, passando slugs ao invés de id numérico, por meio do método GET. Além disso, poderá configurar facilmente urls para sites multilíngües.

Primeiramente vamos entender estrutura do nosso projeto na imagem abaixo:


Você poderá usar o seu editor preferido para trabalhar com o projeto. Não se esqueça de informar que é um projeto UTF-8 e PHP 5.2+ para não gerar conflitos com a análise dos projetos, conforme algumas IDEs fazem.

Vamos abrir o projeto com o editor Gedit e verificar a estrutura da aplicação. Ou seja, a pasta “apps” onde será realizado todo o grande trabalho, para cada aplicação que for gerada.

Criaremos o novo módulo chamado home, que será o nosso modulo default. Dentro do diretório “modules” criaremos o diretório “home”, e dentro dele outros dois diretórios, “actions” e “templates”. Actions é a controladora do módulo e Templates é a Visão. Ou seja, toda a regra de negócio e ações serão definidas em “actions”, mais precisamente em um arquivo chamado “actions.class.php”. E para cada ação criada no controlador do módulo home (“actions.class.php”) será criado uma visão onde estará o HTML em “templates” com o mesmo nome da ação (no caso “indexSuccess.php”).

Dentro da pasta “actions” crie um arquivo chamado “actions.class.php” e insira o código abaixo:

<?php
/***** actions.class **********
controlador do módulo home
******************************/
class homeActions extends sfAction
{
    public function executeIndex(sfWebRequest $request){
        $this->dinamicos = "Hello World";
                $this->outraVar = "Bem vindos à página inicial da sua primeira aplicação em Symfony";
            $this->maisOutra = "Hoje é ". date('d/m/Y');
        }
}

Agora, em “templates”, vamos criar outro arquivo, que mostrará as informações da controladora na visão. Ou seja, representará a ação inicial do modulo home. “index.Success.php” – copie e cole nesse o código abaixo.

<div id="homepage">
    <h1><?php echo $dinamicos ?></h1>
    <p><?php echo $outraVar ?></p>
    <hr>
    <small><?php echo $maisOutra ?></small>
</div>

Antes de realizar o teste vejamos como ficou a estrutura.

Agora você irá executar o comando mais utilizado no symfony, que é a limpeza do cache. Abra o terminal e navegue até a pasta do projeto. Ou seja, vá até o diretório “imasters” e execute a linha abaixo:

$ php symfony cc

Abra o seu navegador e execute a seguinte URL: http://imasters.tut.br/index.php/home/index você verá como a imagem abaixo:

Para ajustarmos a url e torná-la amigável deveremos ajustar o arquivo “routing.yml”, que está dentro do diretório “config” da aplicação frontend. Vamos editar este arquivo.

Nas linhas 4 até 7, você vê:

# default rules
homepage:
  url:   /
  param: { module: default, action: index }
Editamos, mudando o default por home:
# default rules
homepage:
  url:   /
  param: { module: home, action: index }

Novamente execute o comando para Limpar o Cache do projeto, pois foi alterado um arquivo YAML de configuração.

$ php symfony cc

Agora em seu navegador modifique a URL por esta http://imasters.tut.br/

Explicando

A página inicial da aplicação estava mostrando uma tela padrão do symfony. Eu apenas configurei um módulo que eu desenvolvi especialmente para a página inicial do meu projeto.

YAML: o arquivo de configuração das urls, chamado “routing.yml” é um arquivo que precisa, necessariamente, ser identado. YAML é uma linguagem identada. Ou seja, deve haver sempre dois espaços (executados obrigatoriamente pela barra de espaços do seu teclado) aos elementos subordinados. Na prática, a palavra homepage: é um roteador que levará a uma url vazia e será apontado para o módulo “home” e a ação “index”. Então “url” e “param” são subordinados à homepage. Eles devem ser identados por dois espaços.

No próximo artigo explicarei como configurar melhor a aplicação, carregar os headers e trabalhar com componentes incluídos e partes.

Por favor, deixe sua dúvida ou sugestão.

Gaspar Teixeira é estudante de Análise e Desenvolvimento de Sistemas em Porto Alegre e Programador na GetNet Tecnologia. Explorador de novas tecnologias, acumula em seu histórico experiências com linguagens PHP OO, Python e Action Script 3. Frameworks Symfony, Zend e Django. É colaborador do iMasters desde 2006.

Fonte: Imasters

Porque criar utilizadores no Linux?

Como já referi em alguns artigos, o Linux é um sistema operacinal multi-usuários ou seja, o sistema suporta vários usuários ligados em simultâneo. Assim, vários clientes podem-se ligar por exemplo remotamente, ao mesmo tempo, a uma mesma máquina no sistema Linux. Por outro lado, a criação de usuários permite o acesso a serviços fundamentais como por exemplo o correio eletronico ou www (ex. apache).

Onde fica guardada a informação dos usuários?

A informação relativa aos utilizadores fica normalmente armazenada no arquivo /etc/passwd. O password dos usuários é mantida no arquivo /etc/shadow. Existem ainda arquivos que mantêm a informação sobre os grupos ao qual o usuário pertence.

Uma vez que o arquivo /etc/passwd pode ser lido por qualquer usuário  o password é mantido em alternativa no arquivo /etc/shadow.

Para quem pretender perceber a informação do arquivo /etc/passwd, deixo uma pequena tabela explicativa:

Como criar, remover e editar usuários?

O processo de criação de usuários pode ser realizado via terminal ou ambiente gráfico.

TERMINAL

Podemos recorrer aos comandos «useradd», «userdel> e «usermod», que servem para criar, remover e modificar usuários respectivamente.

Criar usuário (UID: 1010, shell=bash, home=/home/kelseysantos, username=kelseysantos)

useradd -u 1010 -s /bin/bash -d /home/kelseysantos kelseysantos

Através do comando acima, estamos a definir que o usuário terá o username: kelseysantos, que terá como shell o bash e terá como UID (User id) o número 10 (que deverá ser único no sistema). Para definir uma senha podem fazer através do seguinte comando:

passwd kelseysantos

Apagar usuário (Opção -r para apagar automaticamente diretoria)

userdel -r xpto

Mudar informações do usuário (Mudar por exemplo a shell para csh)

usermod –s /bin/csh kelseysantos

Qualquer duvida entrem em contato.

Fonte: Kelsey Santos

Denominado Plataforma de SMS Cobra, o sistema de envio de mensagens curtas (SMS – Short Message Service) para telefonia celular desenvolvido pela Cobra Tecnologia, empresa do conglomerado do Banco do Brasil, combina tecnologias de padrões abertos de gateway e mensageria.

A plataforma instalada no Data Center Cobra, com infraestrutura de software livre, faz o recebimento e roteamento das mensagens junto às operadoras de celulares, que posteriormente entregam ao cliente final.

Entre as funcionalidades do sistema, destacam-se envio e recebimento de mensagens SMS, gestão de status de cada mensagem trafegada, gestão de bilhetagem e cobrança, segurança da informação. Como uma das principais inovações, a plataforma escrita pela equipe da Cobra resolve a questão da portabilidade numérica, quando o cliente muda de operadora, mas mantém seu número.

Com a plataforma de SMS, a Cobra pretende oferecer serviços de qualidade para o mercado corporativo, tendo capacidade para distribuir centenas de mensagens por segundo. (Com assessoria de imprensa).

Via ARede.

Fonte: Comunidade Linux na Rede