<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Muitos Mundos</title>
	<atom:link href="http://muitosmundos.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://muitosmundos.wordpress.com</link>
	<description>Um blog sobre (quase) tudo o que me vier à cabeça</description>
	<lastBuildDate>Mon, 19 Dec 2011 18:30:27 +0000</lastBuildDate>
	<language>pt-br</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='muitosmundos.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Muitos Mundos</title>
		<link>http://muitosmundos.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://muitosmundos.wordpress.com/osd.xml" title="Muitos Mundos" />
	<atom:link rel='hub' href='http://muitosmundos.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Novo endereço!</title>
		<link>http://muitosmundos.wordpress.com/2011/03/27/novo-endereco/</link>
		<comments>http://muitosmundos.wordpress.com/2011/03/27/novo-endereco/#comments</comments>
		<pubDate>Sun, 27 Mar 2011 14:28:40 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[Sem categoria]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=1447</guid>
		<description><![CDATA[Olá, Mudei de endereço. Agora meu novo blog se encontra em http://blog.eldermarco.com. Eu gosto do Muitos Mundos, mas escrever em dois blogs sobre o mesmo assunto é meio desnecessário. Assim, ficarei apenas nesse novo endereço, mas esse blog não será excluído e os posts irão ficar. Talvez em migre alguns deles para o novo blog, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1447&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Olá,</p>
<p>Mudei de endereço. Agora meu novo blog se encontra em <a title="http://blog.eldermarco.com" href="http://blog.eldermarco.com">http://blog.eldermarco.com</a>. Eu gosto do <em>Muitos Mundos</em>, mas escrever em dois blogs sobre o mesmo assunto é meio desnecessário. Assim, ficarei apenas nesse novo endereço, mas esse blog não será excluído e os posts irão ficar. Talvez em migre alguns deles para o novo blog, mas não todos.</p>
<p>&nbsp;</p>
<p>Sem mais <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/1447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/1447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/1447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/1447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/1447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/1447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/1447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/1447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/1447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/1447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/1447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/1447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/1447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/1447/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1447&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2011/03/27/novo-endereco/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>
	</item>
		<item>
		<title>Obtendo o tempo ocioso em uma sessão do X</title>
		<link>http://muitosmundos.wordpress.com/2010/09/16/obtendo-o-tempo-ocioso-em-uma-sessao-do-x/</link>
		<comments>http://muitosmundos.wordpress.com/2010/09/16/obtendo-o-tempo-ocioso-em-uma-sessao-do-x/#comments</comments>
		<pubDate>Thu, 16 Sep 2010 22:29:39 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[C]]></category>
		<category><![CDATA[Linguagens de programação]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Shell Script]]></category>
		<category><![CDATA[Software Livre]]></category>
		<category><![CDATA[deslogar usuário]]></category>
		<category><![CDATA[tempo ocioso]]></category>
		<category><![CDATA[X]]></category>
		<category><![CDATA[Xlib]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=1398</guid>
		<description><![CDATA[Recentemente me deparei com uma pergunta no VOL a respeito do tempo ocioso em uma sessão em modo gráfico. A ideia era que estando o usuário sem realizar qualquer atividade na frente do PC depois de um determinado tempo, fosse deslogado automaticamente. Em modo texto, é possível fazer isso  através da variável TMOUT, mas isso [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1398&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;"><img class="alignleft size-medium wp-image-1416" src="http://muitosmundos.files.wordpress.com/2010/09/x_server.jpg?w=259&#038;h=225" alt="" width="259" height="225" />Recentemente me deparei com uma <a title="Ir para a pergunta" href="http://www.vivaolinux.com.br/topico/Shell-Script/Derrubar-sessao-usuario-ocioso/">pergunta no VOL</a> a respeito do tempo ocioso em uma sessão em modo gráfico. A ideia era que estando o usuário sem realizar qualquer atividade na frente do PC depois de um determinado tempo, fosse deslogado automaticamente. Em modo texto, é possível fazer isso  através da variável TMOUT, mas isso não funciona em modo gráfico.  Em modo gráfico seria necessário obter o tempo ocioso de um usuário que estivesse usando KDE, GNOME, etc, verificar se esse tempo era maior ou igual a um tempo limite e caso fosse, executar um script que desconecta o usuário. A parte de desconectar o usuário não é difícil, mas obter o tempo ocioso do usuário se fez mais complicado. A saída do comando <code>w</code> tinha informações para as sessões em modo texto, mas nada de uma sessão do X. Pensei em obter esse tempo também via D-Bus, perguntando ao <em>gnome-screensaver</em> (no caso de um usuário estiver usando o GNOME ou XFCE), mas notei que o método <em>GetIdleTime</em>, não estava mais disponível.</p>
<p style="text-align:justify;">Dessa maneira, decidi escrever um humilde programa em C usando a <em>Xlib</em> para obter essa informação e então aproveitá-la em um script. Não sou um expert com essa biblioteca, mas o procedimento era bem simples. O programa <em><strong>xidle</strong></em>, como chamei, retorna o tempo ocioso de uma sessão do X em segundos. Segue abaixo o programa, bem como uma explicação nos comentários sobre como compilar ele:</p>
<p><pre class="brush: cpp; wrap-lines: false;">
/*---------------------------------------------------------------------
 *    Imprime o tempo de inatividade de uma sessão do X em segundos.
 *
 *    Obs: Compile esse programa com o comando:
 *         $ gcc -o xidle xidle.c -lX11 -lXss
 *
 *         Depois mova-o para um diretório no seu PATH (um bom local
 *         seria o diretório /usr/local/bin)
 *
 *    No Fedora, é necessário instalar o pacote 'libXScrnSaver-devel'
 *    e 'libX11-devel' para poder seguir com a compilação.
 *
 *                 Autor: Elder Marco &lt;eldermarco@gmail.com&gt;
 *                 Data : 13/09/2010
 *    Última modificação: 07/11/2010
 *---------------------------------------------------------------------*/
#include &lt;X11/extensions/scrnsaver.h&gt;
#include &lt;X11/Xlib.h&gt;
#include &lt;X11/Xlibint.h&gt;
#include &lt;stdio.h&gt;

int main() {
     XScreenSaverInfo *info;
     Display *display;

     info = XScreenSaverAllocInfo();
     display = XOpenDisplay(NULL);

     XScreenSaverQueryInfo(display,
                           DefaultRootWindow(display),
                           info);
     printf(&quot;%.0f s\n&quot;, (float)info-&gt;idle/1000);

     Xfree(info);
     XCloseDisplay(display);

     return 0;
}
</pre></p>
<p style="text-align:justify;">Considerando que você moveu o programa compilado para algum diretório no seu PATH, basta fazer:</p>
<p><pre class="brush: bash; wrap-lines: false;">
cut -f 1 -d' ' &lt;(xidle)
</pre></p>
<p>para obter esse tempo. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p style="text-align:justify;">Obviamente, se você executar o programa <em>xidle</em> a partir do terminal, ele sempre vai retornar 0s, já que você acabou de dar um ENTER&#8230; mas se quer testar, você pode usar o comando <em>sleep</em> para esperar um tempo e depois executar o <em>xidle </em>(só não toque no teclado e nem mexa no mouse enquanto isso!). Veja:</p>
<p><pre class="brush: plain; wrap-lines: false;">
$ sleep 11 &amp;&amp; xidle
11 s
$ sleep 11 &amp;&amp; cut -f 1 -d ' ' &lt;(xidle)
11
</pre></p>
<p style="text-align:justify;">E pra finalizar, depois que terminei esse programa, encontrei um outro que embora não retorne o tempo ocioso &#8212; até onde pude ver &#8211;, ele executa um script depois de um tempo de ociosidade do usuário. Procure por <a href="http://www.google.com.br/#hl=pt-BR&amp;source=hp&amp;q=xautolock&amp;aq=f&amp;aqi=&amp;aql=&amp;oq=&amp;gs_rfai=&amp;fp=266728f8e9bd1a07">xautolock no Google</a>.</p>
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/deslogar-usuario/'>deslogar usuário</a>, <a href='http://muitosmundos.wordpress.com/tag/tempo-ocioso/'>tempo ocioso</a>, <a href='http://muitosmundos.wordpress.com/tag/x/'>X</a>, <a href='http://muitosmundos.wordpress.com/tag/xlib/'>Xlib</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/1398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/1398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/1398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/1398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/1398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/1398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/1398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/1398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/1398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/1398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/1398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/1398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/1398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/1398/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1398&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/09/16/obtendo-o-tempo-ocioso-em-uma-sessao-do-x/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>

		<media:content url="http://muitosmundos.files.wordpress.com/2010/09/x_server.jpg?w=300" medium="image" />
	</item>
		<item>
		<title>Auto-completando opções de comandos com o bash completion</title>
		<link>http://muitosmundos.wordpress.com/2010/07/27/auto-completando-opcoes-de-comandos-com-o-bash-completion/</link>
		<comments>http://muitosmundos.wordpress.com/2010/07/27/auto-completando-opcoes-de-comandos-com-o-bash-completion/#comments</comments>
		<pubDate>Wed, 28 Jul 2010 00:19:47 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[fedora]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Shell Script]]></category>
		<category><![CDATA[auto-completar]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[dica]]></category>
		<category><![CDATA[terminal]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=1382</guid>
		<description><![CDATA[Um recurso que achei muito bom no Ubuntu  e me dei conta que não tinha no fedora é o de auto-completar opções de vários comandos no terminal apenas como a tecla TAB. Já é sabido que o bash é capaz de completar o nome de um de um comando, um arquivo ou um caminho através [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1382&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;"><img class="alignleft size-full wp-image-1387" src="http://muitosmundos.files.wordpress.com/2010/07/bash.png?w=600" alt=""   />Um recurso que achei muito bom no Ubuntu  e me dei conta que não tinha no fedora é o de auto-completar opções de vários comandos no terminal apenas como a tecla TAB. Já é sabido que o <a href="http://pt.wikipedia.org/wiki/Bash">bash</a> é capaz de completar o nome de um de um comando, um arquivo ou um caminho através dessa tecla, mas o que muitos não sabem é que também é possível completar as opções dos comandos passados ou até mesmo o nome de um pacote que você quer remover ou instalar do seu sistema. Vejamos um exemplo (o caractere &#8216;|&#8217; representa a posição do cursor, abaixo):</p>
<p><pre class="brush: plain;">
# yum l|[TAB]
list          localinstall
</pre></p>
<p>Note que eu me referi a uma opção que começa com &#8216;l&#8217; do comando <em>yum</em> e teclei TAB (duas vezes na primeira vez) e como retorno, o shell me mostrou as duas opções possíveis para o comando <em>yum</em> que começam com a letra &#8216;l&#8217;: <em>list</em> e <em>localinstall</em>. Nesse caso, se eu colocar mais uma letra e dar um TAB, a opção já fica automaticamente definida.  Assim, se fizer:</p>
<p><pre class="brush: plain;">
# yum lo|[TAB]
</pre></p>
<p>o shell irá expandir para</p>
<p><pre class="brush: plain;">
# yum localinstall |
</pre></p>
<p>Vejamos mais dois exemplos. Um ainda com o <em>yum</em> e outro com o comando <em>update-alternatives</em>:</p>
<p><pre class="brush: plain;">
# yum ins|[TAB]
</pre></p>
<p>Expande para</p>
<p><pre class="brush: plain;">
# yum install |
</pre></p>
<p>E depois tento instalar um programa que começa com <em>ea</em>:</p>
<p><pre class="brush: plain;">
# yum install ea|[TAB]
earcandy.noarch                           easymock2-javadoc.noarch
earth-and-moon-backgrounds-common.noarch  easymock2.noarch
earth-and-moon-backgrounds-dual.noarch    easymock-javadoc.noarch
earth-and-moon-backgrounds-kdm.noarch     easymock.noarch
earth-and-moon-backgrounds.noarch         easystroke.x86_64
earth-and-moon-backgrounds-single.noarch  easytag.x86_64
</pre></p>
<p>isto é, uma lista de todos os programas que posso instalar no meu sistema. Agora veja:</p>
<p><pre class="brush: plain;">
# yum install easyt|[TAB]
</pre></p>
<p>e então..</p>
<p><pre class="brush: plain;">
# yum install easytag |
</pre></p>
<p>Agora com o <em>update-alternatives</em>:</p>
<p><pre class="brush: plain;">
# update-alternatives --|[TAB]
--admindir  --auto      --display   --install   --remove    --verbose
--altdir    --config    --help      --quiet     --set       --version
</pre></p>
<p><pre class="brush: plain;">
# update-alternatives --c|[TAB]
</pre></p>
<p>E será expandido para:</p>
<p><pre class="brush: plain;">
# update-alternatives --config |
</pre></p>
<p style="text-align:justify;">LOL! Ficou com vontade de ter um recurso desse no seu Pinguim? Então, como uso fedora, vou passar o procedimento para obter esses efeitos nele. Se você usa outra distro, procure por esse pacote e instale ele. No caso do fedora, é bem simples.  Instale o pacote <em>bash-completion</em> no seu sistema:</p>
<p><pre class="brush: plain;">
# yum install bash-completion
</pre></p>
<p>E é somente isso. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Você pode ver uma lista de comandos que permitem utilizar o recurso de auto-completar listando o conteúdo do diretório <em>/etc/bash_completion.d</em>:</p>
<p><pre class="brush: plain; wrap-lines: true;">
$ ls /etc/bash_completion.d
</pre></p>
<p>Onde cada arquivo nesse diretório se refere a um comando do sistema.</p>
<p style="text-align:justify;">É até possível criar suas funções que permitem auto-completar comandos que você queira ou de programas que criou, mas isso está fora do escopo desse post. Só com esses você já terá muitos comandos com esse recurso.</p>
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/auto-completar/'>auto-completar</a>, <a href='http://muitosmundos.wordpress.com/tag/bash/'>bash</a>, <a href='http://muitosmundos.wordpress.com/tag/dica/'>dica</a>, <a href='http://muitosmundos.wordpress.com/tag/terminal/'>terminal</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/1382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/1382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/1382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/1382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/1382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/1382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/1382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/1382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/1382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/1382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/1382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/1382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/1382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/1382/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1382&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/07/27/auto-completando-opcoes-de-comandos-com-o-bash-completion/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>

		<media:content url="http://muitosmundos.files.wordpress.com/2010/07/bash.png" medium="image" />
	</item>
		<item>
		<title>Minhas impresssões com o Ubuntu 10.04 &#8211; Lucid Lynx</title>
		<link>http://muitosmundos.wordpress.com/2010/07/24/minhas-impresssoes-com-o-ubuntu-10-04-lucid-lynx/</link>
		<comments>http://muitosmundos.wordpress.com/2010/07/24/minhas-impresssoes-com-o-ubuntu-10-04-lucid-lynx/#comments</comments>
		<pubDate>Sat, 24 Jul 2010 19:08:30 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software Livre]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[experiência]]></category>
		<category><![CDATA[fedora]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=1361</guid>
		<description><![CDATA[Sempre fui um usuário do fedora.  Sou até chato de vez de quando, de tanto que falo dessa distro para amigos. Não porque eu a ache melhor que as outras ou coisa do tipo. A verdade é que simplesmente sou apegado a distro por me identificar com ela ou simplesmente porque aprendi a gostar dela, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1361&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Sempre fui um usuário do fedora.  Sou até chato de vez de quando, de tanto que falo dessa distro para amigos. Não porque eu a ache melhor que as outras ou coisa do tipo. A verdade é que simplesmente sou apegado a distro por me identificar com ela ou simplesmente porque aprendi a gostar dela, conforme fui me envolvendo com  o mundo do software livre. No entanto, resolvi deixar de lado  esse meu apego  e me aventurar em terras um pouco (não muito) desconhecidas de outras distros. Eu já usava o Arch Linux  e Ubuntu através de uma máquina virtual, com a intenção de conhecer sem ter de formatar o PC ou ficar a rodar pelo LiveCD (no caso do Ubuntu), mas tomei uma decisão faz pouco tempo de mudar minha distro padrão e então baixei e instalei o <em>Ubuntu 10.04 Lucid Lynx  64 </em>bits no meu PC e também no do meu pai.</p>
<p style="text-align:justify;">Uma coisa que sempre me chamou a atenção no Ubuntu, é que a equipe de arte da distro sempre fez um bom trabalho deixando um visual nessa distro que fica realmente muito bonito, na minha opinião. Eu gosto de desktops bonitos e nessa parte, o Ubuntu teve um ponto positivo comigo, apesar de não ser um suuuper ponto, visto que não considero a parte mais importante numa distro. Mas é alguma coisa, principalmente para usuários iniciantes em que uma primeira impressão pode definir se fica ou não na distro (ou no Linux).</p>
<div id="attachment_1367" class="wp-caption aligncenter" style="width: 586px"><a href="http://muitosmundos.files.wordpress.com/2010/07/ubuntu10-04.png"><img class="size-full wp-image-1367" src="http://muitosmundos.files.wordpress.com/2010/07/ubuntu10-04.png?w=600" alt=""   /></a><p class="wp-caption-text">Minha área de trabalho no Ubuntu 10.04 - Lucid Lynx. Ainda a padrão, já que gostei bastante dela.</p></div>
<p style="text-align:center;">
<p style="text-align:justify;">Logo que dei o primeiro boot, o Ubuntu já me notificou que da existência de um driver (proprietário) para a minha placa de vídeo Nvidia. Eu adorei isso e como sei que, por enquanto,  nenhuma solução livre  trabalha de maneira satisfatória com placas Nvidia, resolvi instalar o driver proprietário e logo tive o compiz também rodando de maneira discreta no meu PC, da maneira como gosto.  Pra ser sincero,  o driver <em>nouveau</em> avançou muito ultimamente e é muito provável que eu passe a usar ele num futuro muito próximo.</p>
<p style="text-align:justify;">A canonical tem cumprido o que disse: &#8220;<em>Linux for Human Beings&#8221;</em>. Ubuntu é uma distro fácil de usar, configurar, com vários scripts/programas que a deixam ainda mais completa instalando tudo o que usuário precisa (e também o que não precisa..), como codecs, Java, Flash, players, algumas configurações, etc.  O Ubuntu Perfeito, criado pelo <a href="http://hamacker.santhanna.net">Hamacker</a> é muito bom nisso. Existe também o <a href="https://launchpad.net/ubuntustart">Ubuntu Start</a> e atualmente, foi lançado o <a href="http://sites.google.com/site/ubuntucontrolcenter/">Ubuntu Control Center</a> que integra várias serviços do Ubuntu em um mesmo local e também o <a href="http://ubuntu-tweak.com/">Ubuntu Tweak</a>.  A comunidade está sempre disposta a ajudar pelos fóruns e o IRC. Aliás, tive um problema com o meu som que não funcionava na parte frontal e encontrei alguém já disposto a me ajudar no canal <em>#ubuntu-br</em> no <em>freenode.net</em> .  Depois de quebrar um pouco a cabeça, descobri o problema, que teve uma solução bem simples.</p>
<p style="text-align:justify;">O gerenciador de pacotes <em>apt-get</em> é  bem rápido, mas muitos usuários dizem que se comparado com o <em>yum</em>, do fedora ele é beeem mais rápido.  Bom, pode ser que no passado o yum era mais lento, mas atualmente não percebi grandes diferenças Achei satisfatório o desempenho dos dois. Os repositórios do programa me impressionaram. Tem software pra tudo lá! É bom saber que se um dia eu precisar, poderia esperar encontrar ele nos repositórios. Mais interessante ainda é <a href="http://launchpad.net">launchpad</a> que permite a você criar pacotes para o Ubuntu e disponibilizar para todo mundo. Isso faz falta no fedora, visto que não existe nenhum serviço que permite criar repositários e manter programas nele. Eu, por exemplo, mantenho alguns programas e jogos que empacoto no Open SUSE Build Service, que permite criar pacotes para o fedora, mas nada fornecido pelo comunidade fedora, até onde sei.</p>
<p style="text-align:justify;">Mas nem tudo são flores. Além do problema com o som numa versão de 64 bits que relatei acima, ainda achei três coisas que não me agradaram. A primeira diz respeito a tradução do sistema para o português brasileiro. Houve momentos em que li erros de português ou falta de atenção do tradutor em certos trechos. Acho que seria melhor dizer, falta de atenção mesmo. A questão é que isso não deveria ter passado  em alguma revisão e por ter chegado ao usuário final  dá uma impressão de que a equipe não se importa com a qualidade da tradução feita . Infelizmente, não tenho nenhum screenshot de exemplo aqui, já que não fiquei capturando telas quando via algo assim, mas  encontrei esses erro em alguns lugares e seria bom corrigir. Mas também devo dizer que não foram em muitos, mas o suficiente para me chamar a atenção.</p>
<p style="text-align:justify;">Outro problema chatinho é o painel do GNOME que costuma se desorganizar em algumas sessões. Algumas vezes, preciso abrir um terminal e digitar <code> pkill gnome-panel</code> para corrigir esse problema e não acho uma solução elegante para algo que não deveria acontecer..</p>
<p style="text-align:justify;">O terceiro problema diz respeito ao pacote <em>gmt</em>, um conjunto de ferramentas que utilizo bastante para processamento Geofísico. Geralmente para gerar mapas de anomalias, realizar interpolaçõrd, etc. Quando instalei esse pacote no Ubuntu, percebi que ele não colocou o caminho dos binários para esse programa no meu PATH, fazendo que com que eu tivesse de colocar manualmente editando meu arquivo <em>~/.bashrc</em>. Houve também um problema de conflito entre pacotes desse mesmo software e não entendi os motivos, mas não era algo essencial, se é que era necessário. Fora isso, instalei, coloquei no PATH e tudo funcionou sem problemas.</p>
<p style="text-align:justify;">Assim, esse pouco tempo  usando o Ubuntu como padrão no meu PC  me faz concluir que essa é uma distro que merece realmente se a mais popular entre os usuários, pelo fato de ter um alto investimento em simplicidade  &#8212; do ponto de vista de um usuário não experiente com computadores, antes que algum chato venha reclamar <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> .  É também uma distro com excelente desempenho, apesar de ter lido críticas dizendo o oposto em alguns lugares. O tempo de boot no meu PC me impressionou.  A verdade é que se tiver de sugerir uma distro para um usuário super leigo eu terei duas sugestões de cara: fedora ou Ubuntu. Mais o Ubuntu do que o fedora ainda, mas também vejo o fedora como uma distro para iniciantes.</p>
<p style="text-align:justify;">Não sei se irei manter o Ubuntu no meu PC é provável que volte para o fedora. Sinto falta dele pelos motivos que citei no primeiro parágrafo, mas com certeza irei manter ele no PC do meu pai que também gostou muito da distro.  Se for o caso de mudar, não considero deixar um dual boot, não curto muito isso. Já mantive Windows e Linux em dual boot no meu PC e acho chato ter de cuidar de dois sistemas operacionais num mesmo PC.</p>
<p style="text-align:justify;">Verdade  seja dita, sou homem de uma distro só.</p>
<p style="text-align:justify;">
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/experiencia/'>experiência</a>, <a href='http://muitosmundos.wordpress.com/tag/fedora/'>fedora</a>, <a href='http://muitosmundos.wordpress.com/tag/linux/'>Linux</a>, <a href='http://muitosmundos.wordpress.com/tag/software-livre/'>Software Livre</a>, <a href='http://muitosmundos.wordpress.com/tag/ubuntu/'>ubuntu</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/1361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/1361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/1361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/1361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/1361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/1361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/1361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/1361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/1361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/1361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/1361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/1361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/1361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/1361/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1361&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/07/24/minhas-impresssoes-com-o-ubuntu-10-04-lucid-lynx/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>

		<media:content url="http://muitosmundos.files.wordpress.com/2010/07/ubuntu10-04.png" medium="image" />
	</item>
		<item>
		<title>Tratando argumentos passados a um programa em C</title>
		<link>http://muitosmundos.wordpress.com/2010/05/13/tratando-argumentos-passados-a-um-programa-em-c/</link>
		<comments>http://muitosmundos.wordpress.com/2010/05/13/tratando-argumentos-passados-a-um-programa-em-c/#comments</comments>
		<pubDate>Thu, 13 May 2010 20:54:05 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[C]]></category>
		<category><![CDATA[Linguagens de programação]]></category>
		<category><![CDATA[argumentos]]></category>
		<category><![CDATA[linha de comando]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=1263</guid>
		<description><![CDATA[Recentemente, tive de escrever um programa em C na minha iniciação científica e o objetivo principal do programa era ler o arquivo de um outro e retirar dele, algumas informações. Assim, eu precisaria passar o nome do programa e mais algumas opções que se fizessem necessárias como argumentos para o meu programa, mas queria fazer [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1263&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Recentemente, tive de escrever um programa em C na minha iniciação científica e o objetivo principal do programa era ler o arquivo de um outro e retirar dele, algumas informações. Assim, eu precisaria passar o nome do programa e mais algumas opções que se fizessem necessárias como argumentos para o meu programa, mas queria fazer isso de uma maneira mais organizada e então resolvi procurar alguma função que fosse capaz de tratar desses argumentos.  Tive sorte de encontrar a função<code> getopt</code> da biblioteca <code>unistd.h</code>. Essa função é muito similar ao comando <code>getopts</code> em shell script. De fato, é a cópia dela em linguagem C (ou seria a <code>getopts</code> a cópia da <code>getopt</code> em shell script? Bah! Deixa pra lá!)</p>
<p style="text-align:justify;">A sintaxe dessa função é:</p>
<p><pre class="brush: cpp; wrap-lines: false;">
int getopt (int argc, char **argv, const char *options)
extern char *optarg;
extern int optind, opterr, optopt;
</pre></p>
<p style="text-align:justify;">A função <code>getopt</code> retorna o próximo caractere passado como argumento ou -1 quando a lista de argumentos passados termina. Se o caractere é desconhecido ou não foi passado o argumento a uma opção que requer, será retornado  &#8216;?&#8217;.  O argumento <em>options</em> é uma string que irá dizer quais são as opções válidas para o seu programa.  Se uma opção requer um argumento, você precisa especificar isso colocando um &#8216;:&#8217; na frente dessa opção.</p>
<p style="text-align:justify;">As variáveis externas apresentadas acima carecem de uma explicação:</p>
<ul style="text-align:justify;">
<li style="text-align:justify;"> <strong>opterr</strong> &#8211; Se a função <code>getopt</code> encontra algum erro como um caractere de opção inválido ou a falta de algum argumento que não foi passado para uma opção, ela imprime uma mensagem de erro. Para desativar essas mensagens e você mesmo tratar elas, você pode definir a variável com um valor zero no seu programa.</li>
<li style="text-align:justify;"><strong>optarg</strong> -  Você passa ao seu programa opções, mas algumas delas requerem algum argumento. Por exemplo, uma opção como <strong>-o</strong> poderia necessitar que você especificasse um arquivo de saída. A variável <code>optarg</code> é um ponteiro para a string que contém o argumento passado a opção retornada pela função <code>getopt.</code></li>
<li style="text-align:justify;"><strong>optind &#8211; </strong>Essa variável é utilizada como forma de saber qual o próximo elemento de <code>argv</code> deve ser processado. Ele é bastante útil para você tratar argumentos que não são opções e nem argumentos de opções. O programa abaixo irá mostrar um exemplo.</li>
<li style="text-align:justify;"><strong>optopt</strong> &#8211; Se a função <code>getopt</code> encontrar um caractere de opção desconhecido ou o usuário não passou o argumento que deveria para uma determinada opção,  será retornado &#8216;?&#8217; e  a função <code>getopt</code> irá armazenar caractere nessa variável.</li>
</ul>
<p style="text-align:justify;">Assim, vamos considerar um programa que aceite  as opções <em>x, y</em> e <em>z</em>, sendo que <em>z</em> necessita de um argumento a ser passado.  Esse programa poderia se chamar <em>testagetopt</em> e ser como abaixo:</p>
<p style="text-align:justify;">
<p><pre class="brush: cpp; wrap-lines: false;">
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;ctype.h&gt;
#include &lt;unistd.h&gt;

int main ( int argc, char *argv[] )
{
	int opcao;		// Opção passada pelo usuário ao programa.
	int indice;		// Usado para pegar argumentos que não são opções
				    // Nem argumentos usados em opções.

	int xflag =  0;		// Opção -x desativada por default
	int yflag =  0;		// Opção -y desativada por default

	char *zarg = NULL;      // Irá apontar para o argumento de z
				            // se for passado.

	// Desativa as mensagens de erro da função getopt
	opterr = 0;

	// Faz um loop pegando as opções passados pelo usuário. Note
	// o ':' depois do 'z'. Isso quer dizer que deve haver um
	// argumento depois dessa opção.
	while ( ( opcao = getopt ( argc, argv, &quot;xyz:&quot; ) ) != -1 )
	{
		switch ( opcao )
		{
			// Usuário passou a opção -x, habilita:
			case 'x':
				xflag = 1;
				break;

			// Usuário passou a opção -y, habilita:
			case 'y':
				yflag = 1;
				break;

			// Usuário escolheu a opção -z, pegar o argumento
			case 'z':
				zarg = optarg;
				break;

			// Se houve algum problema, vamos diagnosticar e enviar
			// nossas próprias mensagens de erro.
			case '?':
				if ( optopt == 'z' )	// Esqueceu um argumento
					fprintf (stderr, &quot;Opção '-%c' requer argumento.\n&quot;,
					optopt);
				else if ( isprint ( optopt ) )
				     	fprintf( stderr, &quot;Opção '-%c' desconhecida.\n&quot;,
				        optopt );
			        else
			            fprintf( stderr, &quot;Caractere '\\x%x' de opção desconhecido.\n&quot;,
				            optopt );
				exit ( 1 );
		}
	}

	printf ( &quot;         xflag = %s\n&quot;, xflag ? &quot;sim&quot; : &quot;não&quot; );
	printf ( &quot;         yflag = %s\n&quot;, yflag ? &quot;sim&quot; : &quot;não&quot; );
	printf ( &quot;          zarg = %s\n&quot;, zarg  ?  zarg : &quot;nenhum&quot; );

	printf ( &quot;Outros argumentos:\n&quot; );

	for ( indice = optind; indice &lt; argc; indice++ )
		printf ( &quot;                 %s\n&quot;, argv[indice]);

	return 0;
}
</pre></p>
<p>Compile o programa:</p>
<p><pre class="brush: plain; wrap-lines: false;">
$ gcc -o testagetopt testagetopt.c
</pre></p>
<p>Executando com algumas opções teríamos:</p>
<p><pre class="brush: plain; wrap-lines: false;">
shell&gt; ./testagetopt -xy -z topgear.txt testagetopt blabla
         xflag = sim
         yflag = sim
          zarg = topgear.txt
 Outros argumentos:
                 testagetopt
                 blabla

shell&gt; ./testagetopt -x -z topgear.txt testagetopt blabla
         xflag = sim
         yflag = não
          zarg = topgear.txt
Outros argumentos:
                 testagetopt
                 blabla

shell&gt; ./testagetopt -y -z topgear.txt testa?.txt
         xflag = não
         yflag = sim
          zarg = topgear.txt
Outros argumentos:
                 testa1.txt
                 testa2.txt
                 testa3.txt
                 testa4.txt
shell&gt; ./testagetopt -z
Opção '-z' requer argumento.

$ ./testagetopt -c
Opção '-c' desconhecida.

shell&gt; ./testagetopt -xy topgear.txt
         xflag = sim
         yflag = sim
          zarg = nenhum
Outros argumentos:
                 topgear.txt
</pre></p>
<p>Bem mais prático!</p>
<p><strong>Referências:</strong></p>
<p><a href="http://www.gnu.org/software/libc/manual/html_node/Using-Getopt.html#Using-Getopt">Using getopt</a> &#8211; Documentação oficial da função</p>
<p><strong>Documentação relacionada:</strong></p>
<p><a href="http://www.gnu.org/software/libc/manual/html_node/Getopt-Long-Options.html#Getopt-Long-Options">Getopt Long Options</a> -  Para o caso de você querer usar opções longas, não somente com uma letra.</p>
<p><a href="http://www.gnu.org/software/libc/manual/html_node/Argp.html#Argp">Argp</a> &#8211; Um função que permite tanto opções longas quanto curtas, além de criar uma saída para as opções <code>--help</code> e <code>--version</code> automaticamente.</p>
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/argumentos/'>argumentos</a>, <a href='http://muitosmundos.wordpress.com/tag/c/'>C</a>, <a href='http://muitosmundos.wordpress.com/tag/linha-de-comando/'>linha de comando</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/1263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/1263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/1263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/1263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/1263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/1263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/1263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/1263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/1263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/1263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/1263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/1263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/1263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/1263/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1263&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/05/13/tratando-argumentos-passados-a-um-programa-em-c/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>
	</item>
		<item>
		<title>Reforma</title>
		<link>http://muitosmundos.wordpress.com/2010/04/16/reforma/</link>
		<comments>http://muitosmundos.wordpress.com/2010/04/16/reforma/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 18:33:28 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[Geral]]></category>
		<category><![CDATA[migração]]></category>
		<category><![CDATA[reforma]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=1179</guid>
		<description><![CDATA[Recentemente, fiz a migração de alguns posts do meu antigo blog, o Idiossincrasias para este. No entanto, devido a alterações que fiz para mudar os URLs para esse novo endereço (dei um sed no arquivo .xml de exportado) acabou que alguns posts ficaram sem imagens e alguns ficaram sem os vídeos, não sei por qual [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1179&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recentemente, fiz a migração de alguns posts do meu antigo blog, o <a href="http://www.idiossincrasias.com">Idiossincrasias</a> para este. No entanto, devido a alterações que fiz para mudar os URLs para esse novo endereço (dei um sed no arquivo .xml de exportado) acabou que alguns posts ficaram sem imagens e alguns ficaram sem os vídeos, não sei por qual motivo. Assim, não estranhe caso encontre posts mais antigos assim. Nas minhas horas vagas estou a corrigir isso, mas sendo muitos posts e ainda alguns com dezenas de imagens (no caso de posts que falei da migração para o Fedora), acaba que isso vem a demorar bastante.</p>
<p>Mas você pode visitar o mesmo p0st no blog Idiossincrasias que ele ainda está inteiro por lá! Só irei mudar as coisas por aqueles lados quando terminar de arrumar as coisas por aqui <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/reforma/'>reforma</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/1179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/1179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/1179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/1179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/1179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/1179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/1179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/1179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/1179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/1179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/1179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/1179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/1179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/1179/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1179&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/04/16/reforma/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>
	</item>
		<item>
		<title>Nightingale, um fork do Songbird para o Linux</title>
		<link>http://muitosmundos.wordpress.com/2010/04/08/nightingale-um-fork-do-songbird-para-o-linux/</link>
		<comments>http://muitosmundos.wordpress.com/2010/04/08/nightingale-um-fork-do-songbird-para-o-linux/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 17:37:10 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Música]]></category>
		<category><![CDATA[Multimídia]]></category>
		<category><![CDATA[Software Livre]]></category>
		<category><![CDATA[fork]]></category>
		<category><![CDATA[nightingale]]></category>
		<category><![CDATA[songbird]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=1116</guid>
		<description><![CDATA[Há pouco dias atrás a equipe do Songbird anunciou que o player de música deixaria de ser suportado no Linux. Entre as justicativas, estava o argumento de que existem pouquíssimos usuários desse player para o Linux. Ainda,  segundo o blog desse player, foi uma conclusão dolorosa deixar o suporte para o Pinguim. Eu cheguei a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1116&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://muitosmundos.files.wordpress.com/2010/04/guitarbird-clean.png"><img class="alignleft size-medium wp-image-1118" src="http://muitosmundos.files.wordpress.com/2010/04/guitarbird-clean.png?w=300&#038;h=229" alt="" width="300" height="229" /></a>Há pouco dias atrás a equipe do Songbird anunciou que o player de música deixaria de ser suportado no Linux. Entre as justicativas, estava o argumento de que existem pouquíssimos usuários desse player para o Linux. Ainda,  segundo o <a href="http://blog.songbirdnest.com/2010/04/02/songbird-singing-a-new-tune/" target="_blank">blog desse player</a>, foi uma conclusão dolorosa deixar o suporte para o Pinguim.</p>
<p>Eu cheguei a testar o Songbird certa vez enquanto estava a ter problemas com o Amarok e confesso que gostei bastante dele, apesar de ter tido outros problemas, mas nada de anormal. O Songbird é um excelente player na minha opinião e só não tinha ido ainda para os repositórios do fedora por ter versões de  certas bibliotecas que eram próprias e coisas que não são aceitáveis pelo Projeto Fedora.  Apesar de eu não ser um usuário desse player &#8212; sou apaixonado pelo Amarok &#8212;,  não achei boa essa ideia de abandonar o Linux. Bom, não somente eu&#8230;</p>
<p>Não durou muito tempo e surgiu um novo projeto baseado no Songbird, o <a href="http://getnightingale.org/">Nightingale</a> que tem justamente a intenção de manter o suporte para o Linux.  Fiz uma visita no <a href="http://getnightingale.org/forum/viewtopic.php?id=5">fórum do projeto</a> e tem um pessoal bastante animado com o desenvolvimento do Nightingale. Uma boa parte, são pessoas dispostas a traduzi-lo para seus idiomas, inclusive já apareceu um voluntário para fazer a tradução para o português brasileiro.</p>
<p>Será que a coisa rola? Espero que sim. Espero que em breve ele já esteja nos repositórios de várias distros por aí, inclusive o fedora.</p>
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/fork/'>fork</a>, <a href='http://muitosmundos.wordpress.com/tag/nightingale/'>nightingale</a>, <a href='http://muitosmundos.wordpress.com/tag/songbird/'>songbird</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/1116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/1116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/1116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/1116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/1116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/1116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/1116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/1116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/1116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/1116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/1116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/1116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/1116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/1116/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1116&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/04/08/nightingale-um-fork-do-songbird-para-o-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>

		<media:content url="http://muitosmundos.files.wordpress.com/2010/04/guitarbird-clean.png?w=300" medium="image" />
	</item>
		<item>
		<title>plowshare &#8211; um gerenciador de downloads em linha de comando</title>
		<link>http://muitosmundos.wordpress.com/2010/04/03/plowshare-um-gerenciador-de-downloads-em-linha-de-comando/</link>
		<comments>http://muitosmundos.wordpress.com/2010/04/03/plowshare-um-gerenciador-de-downloads-em-linha-de-comando/#comments</comments>
		<pubDate>Sat, 03 Apr 2010 23:00:20 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[fedora]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[compartilhamento de arquivos]]></category>
		<category><![CDATA[linha de comando]]></category>
		<category><![CDATA[plowshare]]></category>
		<category><![CDATA[rpm]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=44</guid>
		<description><![CDATA[Neste artigo, falo sobre o plowshare, um excelente gerenciador de downloads que funciona em linha de comando. Ótimo para usuários habituados com o terminal e que gostam de programas realmente leves.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=44&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-46" title="folder-download" src="http://muitosmundos.files.wordpress.com/2010/04/folder-download.png?w=600" alt=""   />Tempos atrás eu falei sobre um gerenciador de downloads escrito em Java que gostei muito: o <a href="http://www.jdownloader.org/" target="_blank">JDownloader</a>. Ele de fato, é um ótimo gerenciador de downloads, mas de um tempo para cá o <a href="http://plowshare.googlecode.com" target="_blank">plowshare</a> têm ganhado mais espaço no meu PC. Eu o conheci em uma <a href="http://www.vivaolinux.com.br/artigo/Baixando-arquivos-do-MegaUpload-Rapidshare-2Shared-4Shared-ZShare-Badongo-DepositFiles-e-Mediafire" target="_blank">dica que vi no Viva o Linux</a>.  Ele não é mais completo que o JDownloader, mas tem melhorado a cada versão e tem  tudo que necessito. E o melhor:  roda em linha de comando. Você pode achar que isso é bobagem, mas uma vantagem que vejo de imediato  nisso é que posso deixar ele baixando algum arquivo da internet e assim que terminar, desligar o computador já que em muitos momentos não posso esperar o download terminar. Isso é mais complicado com um gerenciador gráfico. Outra vantagem é que ele é bem mais leve, como a maior parte dos programas em linha de comando.  Atualmente, os desenvolvedores disponibilizam um pacote para usuários do Debian e também é possível instalar um pacote para o ArchLinux via AUR e o Gentoo.  Como não havia nenhum para o Fedora,  decidi eu mesmo criar um pacote rpm pra ele e manter, de preferência, em sua última versão em um repositório que tenho.  Se estiver a usar o fedora, baixe o arquivo elder.repo <a href="http://www.box.net/shared/3jdaso1oyd" target="_blank">aqui</a> e mova-o para o diretório <em>/etc/yum.repos.d</em></p>
<p>Depois, um simples comando para ter esse excelente gerenciador de downloads instalado no seu sistema:</p>
<p><pre class="brush: plain; wrap-lines: false;">
# yum install plowshare
</pre></p>
<p>Outras formas de download, verifique o <a href="http://code.google.com/p/plowshare/wiki/Readme" target="_blank">wiki do projeto</a> .</p>
<p><strong>Alguns comandos úteis:</strong></p>
<ul>
<li><code>plowdown &lt;URL&gt;</code> &#8211; Faz o download de um arquivo presente em algum servidor de downloads. Esse servidor precisa ser suportado pelo software. Atualmente, existem muitos e só tem crescido o número de servidores suportados.</li>
<li><code>plowdown lista.txt</code> &#8211; Faz o download de todos os arquivos que forem espeficados no arquivo <em>lista.txt</em>. As URLs desses arquivos precisam estar uma em cada linha.</li>
<li><code>plowdown -r 90K &lt;URL&gt;</code> &#8211; Limita o download do arquivo especificado por URL a uma taxa de 90Kb/s por segundo. Você pode usar a notação para o <em>curl</em> para essas taxas, visto que por padrão, é ele que o plowshare utiliza.</li>
<li><code>plowup -a meu_usuario:minha_senha -d "Descrição" /algum/arquivo megaupload</code> &#8211; Carrega um arquivo no seu PC para a sua conta no <a href="http://www.megaupload.com/" target="_blank">MegaUpload </a></li>
</ul>
<p>Esses são alguns. Para saber mais você pode ler as páginas de manual dele:</p>
<p><pre class="brush: plain; wrap-lines: false;">
$ man plowdown
</pre></p>
<p>ou</p>
<p><pre class="brush: plain; wrap-lines: false;">
$ man plowup
</pre></p>
<p>ou</p>
<p><pre class="brush: plain; wrap-lines: false;">
$ man plowdel
</pre></p>
<p>ou ainda</p>
<p><pre class="brush: plain; wrap-lines: false;">
$ man plowlist
</pre></p>
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/compartilhamento-de-arquivos/'>compartilhamento de arquivos</a>, <a href='http://muitosmundos.wordpress.com/tag/linha-de-comando/'>linha de comando</a>, <a href='http://muitosmundos.wordpress.com/tag/plowshare/'>plowshare</a>, <a href='http://muitosmundos.wordpress.com/tag/rpm/'>rpm</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=44&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/04/03/plowshare-um-gerenciador-de-downloads-em-linha-de-comando/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>

		<media:content url="http://muitosmundos.files.wordpress.com/2010/04/folder-download.png" medium="image">
			<media:title type="html">folder-download</media:title>
		</media:content>
	</item>
		<item>
		<title>Shell Script: Extrair trechos de uma linha</title>
		<link>http://muitosmundos.wordpress.com/2010/04/02/shell-script-extrair-trechos-de-uma-linha/</link>
		<comments>http://muitosmundos.wordpress.com/2010/04/02/shell-script-extrair-trechos-de-uma-linha/#comments</comments>
		<pubDate>Fri, 02 Apr 2010 22:32:53 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Shell Script]]></category>
		<category><![CDATA[dica]]></category>
		<category><![CDATA[grep]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[sed]]></category>

		<guid isPermaLink="false">http://muitosmundos.wordpress.com/?p=37</guid>
		<description><![CDATA[Neste post, é apresentada uma maneira de extrair um trecho de uma linha onde algumas partes estão delimitadas por chaves usando o grep e o sed para isso. <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=37&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Acompanhando meus feeds, vi um post interessante do InFog com o título de <a href="http://infog.casoft.info/?p=844" target="_blank">Expressões Regulares:  Casar texto entre chaves</a> .  Nesse post, ele demonstra como obter um texto que se encontra entre chaves em uma linha usando a linguagem Python e PHP.  Essa era uma coisa que eu estava procurando em meu aprendizado com Shell Script e resolvi tentar achar uma solução nessa linguagem.  Depois de umas tentativas sem sucesso, obtive ajuda de colegas da lista shell-script no Yahoo! Grupos.</p>
<p>Eis então duas abordagens interessantes:</p>
<p><strong>Primeira: </strong>Obter os textos juntamente com as chaves.</p>
<p>Essa solução é a mais simples. Vou usar o mesmo texto que foi usado no post dele no script abaixo:</p>
<p><pre class="brush: bash; wrap-lines: false;">
#!/bin/bash

texto=&quot;ola, {sou} uma string com {varios} caracteres {especiais}&quot;

grep -o '[{][^}]*[}]' &lt;&lt;&lt; &quot;$texto&quot;
</pre></p>
<p>Se executar esse script, a saída será:</p>
<p><pre class="brush: plain;">
{sou}
{varios}
{especiais}
</pre></p>
<p>Interessante!  Mas eu ainda queria algo que também eliminasse as chaves e ficasse somente o texto dentro delas, cada um em uma linha. O <em>sed</em> é ótimo pra isso.</p>
<p><strong>Segunda:</strong> Obter os textos sem as chaves na saída </p>
<p><pre class="brush: bash; wrap-lines: false;">
#!/bin/bash

texto=&quot;ola, {sou} uma string com {varios} caracteres {especiais}&quot;

sed '
        s/^[^{]*[{]//;
        s/[}][^{]*[{]/\n/g;
        s/[}].*$//
' &lt;&lt;&lt; &quot;$texto&quot;
</pre></p>
<p>O primeiro comando do <em>sed</em> apaga do início da linha até a primeira chave. O segundo, substitui todo o conteúdo entre as chaves por um caractere de nova linha (\n) e o terceiro apaga desde a última chave até a final da linha.</p>
<p>E se executarmos o script&#8230;</p>
<p><pre class="brush: plain;">
sou
varios
especiais
</pre></p>
<p>Exatamente como eu queria! </p>
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/dica/'>dica</a>, <a href='http://muitosmundos.wordpress.com/tag/grep/'>grep</a>, <a href='http://muitosmundos.wordpress.com/tag/script/'>script</a>, <a href='http://muitosmundos.wordpress.com/tag/sed/'>sed</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=37&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/04/02/shell-script-extrair-trechos-de-uma-linha/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>
	</item>
		<item>
		<title>Repositório de jogos para o Arch Linux</title>
		<link>http://muitosmundos.wordpress.com/2010/03/20/repositorio-de-jogos-para-o-arch-linux/</link>
		<comments>http://muitosmundos.wordpress.com/2010/03/20/repositorio-de-jogos-para-o-arch-linux/#comments</comments>
		<pubDate>Sat, 20 Mar 2010 18:47:43 +0000</pubDate>
		<dc:creator>Elder Marco</dc:creator>
				<category><![CDATA[archlinux]]></category>
		<category><![CDATA[Jogos]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Neste post, apresento um repositório somente para jogos no ArchLinux. Muitos costumam dizer que jogos costumam ser um ponto fraco no Linux, mas verdade seja dita: existem muitos jogos interessantes nessa distro. Que tal jogar o FPS no seu 
Arch? <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://muitosmundos.files.wordpress.com/2010/03/bloodfrontier-jogo.png"><img class="alignleft size-medium wp-image-28" title="bloodfrontier-jogo" src="http://muitosmundos.files.wordpress.com/2010/03/bloodfrontier-jogo.png?w=300&#038;h=226" alt="" width="300" height="226" /></a>Recentemente, fazendo uma pesquisa sobre alguns repositórios de jogos para o <em>Arch Linux</em>,  tive a sorte de me deparar com o <a href="http://archlinux-gaming.org/" target="_blank">Arch Linux Gaming Repository</a>, um projeto que tem por objetivo criar pacotes para jogos nessa distro. Aliás, já existem alguns jogos que estão disponíveis no repositório <em>community. </em>Dentre eles, o  meu preferido é o jogo <a title="Site do projeto Assault Cube" href="http://assault.cubers.net" target="_blank">Assault Cube</a>,  mas ainda tenho muitos outros para explorar, como <a href="http://www.bloodfrontier.com" target="_blank">Blood Frontier</a> (imagem ao lado) e um repositório dedicado somente a jogos é realmente interessante. Você pode ver uma lista de jogos disponíveis  nesse link <a href="http://repo.archlinux-gaming.org/" target="_blank">aqui</a>.</p>
<p>Para adicionar o repositório, edite o arquivo <em>/etc/pacman.conf </em> e adicione essas linhas abaixo:</p>
<p><pre class="brush: plain;">
[arch-games]
Server = http://repo.archlinux-gaming.org/$ARCH
</pre></p>
<p>Onde <code><strong>$ARCH = i686</strong></code> ou <code><strong>$ARCH = x86_64</strong></code>. Substitua de acordo com a arquitetura que estiver usando.</p>
<p>Pronto, agora basta atualizar a lista de pacotes disponíveis:</p>
<p><pre class="brush: plain;">
# pacman -Sy
</pre></p>
<p>E depois instalar muito mais jogos no seu Arch! <img src='http://s0.wp.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
<br /> Tagged: <a href='http://muitosmundos.wordpress.com/tag/archlinux/'>archlinux</a>, <a href='http://muitosmundos.wordpress.com/tag/jogos/'>Jogos</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/muitosmundos.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/muitosmundos.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/muitosmundos.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/muitosmundos.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/muitosmundos.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/muitosmundos.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/muitosmundos.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/muitosmundos.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/muitosmundos.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/muitosmundos.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/muitosmundos.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/muitosmundos.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/muitosmundos.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/muitosmundos.wordpress.com/1/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=muitosmundos.wordpress.com&amp;blog=10457273&amp;post=1&amp;subd=muitosmundos&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://muitosmundos.wordpress.com/2010/03/20/repositorio-de-jogos-para-o-arch-linux/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/99061da32885c01615688847a6085ce6?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Elder</media:title>
		</media:content>

		<media:content url="http://muitosmundos.files.wordpress.com/2010/03/bloodfrontier-jogo.png?w=300" medium="image">
			<media:title type="html">bloodfrontier-jogo</media:title>
		</media:content>
	</item>
	</channel>
</rss>
