<?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/"
	>

<channel>
	<title>Blog do Tiago &#187; fnord</title>
	<atom:link href="http://blog.tiagomadeira.com/tag/fnord/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.tiagomadeira.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Sun, 29 Aug 2010 14:10:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Calendário santo-discordiano no Fluxbox</title>
		<link>http://blog.tiagomadeira.com/calendario-santo-discordiano-no-fluxbox/</link>
		<comments>http://blog.tiagomadeira.com/calendario-santo-discordiano-no-fluxbox/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 03:00:55 +0000</pubDate>
		<dc:creator>Tiago Madeira</dc:creator>
				<category><![CDATA[Software Livre]]></category>
		<category><![CDATA[ddate]]></category>
		<category><![CDATA[discordianismo]]></category>
		<category><![CDATA[fluxbox]]></category>
		<category><![CDATA[fnord]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[x]]></category>

		<guid isPermaLink="false">http://blog.tiagomadeira.com/?p=680</guid>
		<description><![CDATA[Acabei de implementar o calendário santo-discordiano no Fluxbox 1.1.1 (última versão). Link para download do código: fluxbox-ddate-1.1.1-0.tar.bz2 Se você usa Arch Linux, não precisa baixar e compilar manualmente. Basta usar o pkgbuild que o Rev. Beraldo fez para o AUR: aur.archlinux.org/packages.php?ID=40364. Se você usa Gentoo, não precisa baixar e compilar manualmente. Basta colocar o ebuild [...]]]></description>
			<content:encoded><![CDATA[<p>Acabei de implementar o <a href="http://www.cabaladada.org/discordiapedia/Calend%C3%A1rio_Santo-Discordiano">calendário santo-discordiano</a> no Fluxbox 1.1.1 (última versão).</p>
<p><strong>Link para download do código:</strong> <a href="http://blog.tiagomadeira.com/fluxbox-ddate-1.1.1-0.tar.bz2">fluxbox-ddate-1.1.1-0.tar.bz2</a></p>
<p>Se você usa <strong>Arch Linux</strong>, não precisa baixar e compilar manualmente. Basta usar o pkgbuild que o <a href="http://www.cabaladada.org/">Rev. Beraldo</a> fez para o AUR: <a href="http://aur.archlinux.org/packages.php?ID=40364">aur.archlinux.org/packages.php?ID=40364</a>.</p>
<p>Se você usa <strong>Gentoo</strong>, não precisa baixar e compilar manualmente. Basta colocar o ebuild que eu fiz num overlay: <a href="http://blog.tiagomadeira.com/fluxbox-ddate-no-gentoo/">fluxbox-ddate no Gentoo</a>.</p>
<p><small>Versões compiladas .deb, .rpm, .tgz etc. e <del>ebuilds</del>, <del>pkgbuilds</del> etc. são bem vindos! Me passem que eu coloco um link aqui!</small></p>
<h3>Como baixar e descompactar</h3>
<p>Como você faria com qualquer outro pacote .tar.bz2&#8230;</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ <span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>blog.tiagomadeira.com<span style="color: #000000; font-weight: bold;">/</span>fluxbox-ddate-1.1.1-0.tar.bz2
$ <span style="color: #c20cb9; font-weight: bold;">tar</span> xjvf fluxbox-ddate-1.1.1-0.tar.bz2
$ <span style="color: #7a0874; font-weight: bold;">cd</span> fluxbox-ddate-1.1.1-<span style="color: #000000;">0</span></pre></div></div>

<h3>Como compilar</h3>
<p>Versão simples:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ .<span style="color: #000000; font-weight: bold;">/</span>configure
$ <span style="color: #c20cb9; font-weight: bold;">make</span>
$ <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>Versão complicada:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ <span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">CFLAGS</span>=-O2 <span style="color: #660033;">-march</span>=native -msse4.1
$ <span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">CXXFLAGS</span>=<span style="color: #007800;">$CFLAGS</span>
$ .<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--prefix</span>=<span style="color: #000000; font-weight: bold;">/</span>usr <span style="color: #660033;">--build</span>=x86_64-pc-linux-gnu <span style="color: #660033;">--host</span>=x86_64-pc-linux-gnu <span style="color: #660033;">--enable-nls</span> <span style="color: #660033;">--disable-xinerama</span> <span style="color: #660033;">--enable-xft</span> <span style="color: #660033;">--disable-gnome</span> <span style="color: #660033;">--enable-imlib2</span> <span style="color: #660033;">--enable-slit</span> <span style="color: #660033;">--enable-toolbar</span> <span style="color: #660033;">--sysconfdir</span>=<span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>X11<span style="color: #000000; font-weight: bold;">/</span>fluxbox
$ <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #660033;">-j3</span>
$ <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>Encontre seu meio termo (ou use a simples) e divirta-se!</p>
<h3>Como iniciar um Fluxbox</h3>
<p>Inicie o X e peça pra ele abrir a versão que você compilou do Fluxbox da seguinte maneira:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ startx <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>local<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span>fluxbox <span style="color: #660033;">--</span> :<span style="color: #000000;">1</span></pre></div></div>

<p>(Lembre-se de mudar /usr/local para o <tt>--prefix</tt> que usou no ./configure)</p>
<p>Esta linha funciona dentro de uma sessão do X (abre outra), por causa do <tt>-- :1</tt>.</p>
<h3>Como usar a data discordiana</h3>
<p>Clique com a tecla direita no relógio do seu Fluxbox e <strong>Edit clock format</strong>. Se você usar um formato de data convencional, do falso calendário (como deve estar usando no momento), nada de especial acontecerá. O segredo está no <strong>|fnord|</strong>.</p>
<p>Quando você coloca um <strong>|fnord|</strong> no formato, o Fluxbox interpretará tudo que veio antes como formato de data discordiano.</p>
<p><small>(Para escolher o formato de data ideal, você pode digitar <strong>man ddate</strong> num terminal.)</small></p>
<p><em>Exemplos de uso:</em></p>
<ul>
<li>Formato: <strong>%c</strong> → Saída: <strong>Sat 28 Aug 2010 11:50:26 PM BRT</strong></li>
<li>Formato: <strong>%e of %B of %Y|fnord|</strong> → Saída: <strong>21st of Bureaucracy of 3176</strong></li>
<li>Formato: <strong>%d %b %Y|fnord|, %H:%M:%S</strong> → Saída: <strong>21 Bcy 3176, 23:50:26</strong></li>
<li>Formato: <strong>%.|fnord|</strong> → Saída: <strong>All Hail Discordia!</strong></li>
</ul>
<h3>Dúvidas, sugestões?</h3>
<p>Contate a glândula pineal.</p>
<h3>Como funciona o código?</h3>
<p>O Fluxbox usa a função <tt>strftime</tt> para formatar a data do relógio. Isso acontece na linha 274 do arquivo src/ClockTool.cc. Modifiquei este trecho do código adicionando cerca de 23 linhas que separam a string do formato de data no <strong>|fnord|</strong> e passam o que vem antes dele como parâmetro para uma chamada de sistema pro <tt>ddate</tt> (sim, de fato pra próxima versão é melhor copiar o código do ddate ou reimplementar pra não ter este overhead) e o que vem depois continua indo pro <tt>strftime</tt>.</p>
<p>Ficou assim:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #0000ff;">char</span> s<span style="color: #008000;">&#91;</span><span style="color: #0000dd;">255</span><span style="color: #008000;">&#93;</span>, u<span style="color: #008000;">&#91;</span><span style="color: #0000dd;">255</span><span style="color: #008000;">&#93;</span><span style="color: #008080;">;</span>
<span style="color: #0000dd;">strcpy</span><span style="color: #008000;">&#40;</span>s, m_timeformat<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>c_str<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
<span style="color: #0000ff;">char</span> <span style="color: #000040;">*</span>t <span style="color: #000080;">=</span> <span style="color: #0000dd;">strstr</span><span style="color: #008000;">&#40;</span>s, <span style="color: #FF0000;">&quot;|fnord|&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
time_string_len <span style="color: #000080;">=</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>
<span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>t <span style="color: #000040;">!</span><span style="color: #000080;">=</span> <span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span>
	<span style="color: #000040;">*</span>t <span style="color: #000080;">=</span> <span style="color: #FF0000;">'<span style="color: #006699; font-weight: bold;">\0</span>'</span><span style="color: #008080;">;</span>
	<span style="color: #0000dd;">sprintf</span><span style="color: #008000;">&#40;</span>u, <span style="color: #FF0000;">&quot;ddate +'%s'&quot;</span>, s<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
	<span style="color: #0000ff;">FILE</span> <span style="color: #000040;">*</span>ddate <span style="color: #000080;">=</span> popen<span style="color: #008000;">&#40;</span>u, <span style="color: #FF0000;">&quot;r&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
	<span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span><span style="color: #0000dd;">fgets</span><span style="color: #008000;">&#40;</span>time_string, <span style="color: #0000dd;">255</span>, ddate<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span>
		time_string_len <span style="color: #000080;">=</span> <span style="color: #0000dd;">strlen</span><span style="color: #008000;">&#40;</span>time_string<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
		time_string<span style="color: #008000;">&#91;</span><span style="color: #000040;">--</span>time_string_len<span style="color: #008000;">&#93;</span> <span style="color: #000080;">=</span> <span style="color: #FF0000;">'<span style="color: #006699; font-weight: bold;">\0</span>'</span><span style="color: #008080;">;</span>
		<span style="color: #0000dd;">fclose</span><span style="color: #008000;">&#40;</span>ddate<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
	<span style="color: #008000;">&#125;</span>
	t<span style="color: #000040;">+</span><span style="color: #000080;">=</span> <span style="color: #0000dd;">7</span><span style="color: #008080;">;</span>
<span style="color: #008000;">&#125;</span> <span style="color: #0000ff;">else</span> <span style="color: #008000;">&#123;</span>
	t <span style="color: #000080;">=</span> s<span style="color: #008080;">;</span>
<span style="color: #008000;">&#125;</span>
time_string_len<span style="color: #000040;">+</span><span style="color: #000080;">=</span> <span style="color: #0000dd;">strftime</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>time_string<span style="color: #008000;">&#91;</span>time_string_len<span style="color: #008000;">&#93;</span>, <span style="color: #0000dd;">255</span> <span style="color: #000040;">-</span> time_string_len, t, time_type<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></pre></div></div>

<h3>Known bugs</h3>
<ol>
<li>Colocar &#8216; (aspas simples) no lado esquerdo do |fnord| faz com que a data discordiana não apareça.</li>
<li>Requer <a href="http://www.kernel.org/pub/linux/utils/util-linux-ng/">util-linux-ng</a> e faz uma chamada de sistema ao <em>ddate</em> uma vez por segundo.</li>
<li>Não trabalha ainda com <a href="http://www.cabaladada.org/discordiapedia/Horas_M%C3%A9tricas">horas métricas</a>.</li>
<li><em>&#8230; me informe se achar mais algum!</em></li>
</ol>
<h3>Screenshots</h3>
<style type="text/css"> img.screenshot { border:solid 5px #ccc; } </style>
<p><img src="http://blog.tiagomadeira.com/wp-content/uploads/2010/08/a1.png" alt="Screenshot 0" width="258" height="92" class="screenshot alignnone size-full wp-image-692" /></p>
<p><a href="http://blog.tiagomadeira.com/wp-content/uploads/2010/08/b.png"><img src="http://blog.tiagomadeira.com/wp-content/uploads/2010/08/b.png" alt="Screenshot 1" width="247" height="83" class="screenshot alignnone size-full wp-image-693" /></a></p>
<p><a href="http://blog.tiagomadeira.com/wp-content/uploads/2010/08/c.png"><img src="http://blog.tiagomadeira.com/wp-content/uploads/2010/08/c.png" alt="Screenshot 2" width="237" height="67" class="screenshot alignnone size-full wp-image-694" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tiagomadeira.com/calendario-santo-discordiano-no-fluxbox/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Um sermão sobre ética e amor</title>
		<link>http://blog.tiagomadeira.com/um-sermao-sobre-etica-e-amor/</link>
		<comments>http://blog.tiagomadeira.com/um-sermao-sobre-etica-e-amor/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 18:10:46 +0000</pubDate>
		<dc:creator>Tiago Madeira</dc:creator>
				<category><![CDATA[Futilidades]]></category>
		<category><![CDATA[discordia]]></category>
		<category><![CDATA[eris]]></category>
		<category><![CDATA[fnord]]></category>

		<guid isPermaLink="false">http://blog.tiagomadeira.com/?p=479</guid>
		<description><![CDATA[One day Mal-2 asked the messenger spirit Saint Gulik to approach the Goddess and request Her presence for some desperate advice. Shortly afterwards the radio came on by itself, and an ethereal female Voice said YES? “O! Eris! Blessed Mother of Man! Queen of Chaos! Daughter of Discord! Concubine of Confusion! O! Exquisite Lady, I [...]]]></description>
			<content:encoded><![CDATA[<p>One day Mal-2 asked the messenger spirit Saint Gulik to approach the Goddess and request Her presence for some desperate advice. Shortly afterwards the radio came on by itself, and an ethereal female Voice said <strong>YES</strong>?</p>
<p><em>“O! Eris! Blessed Mother of Man! Queen of Chaos! Daughter of Discord! Concubine of Confusion! O! Exquisite Lady, I beseech You to lift a heavy burden from my heart!”</em></p>
<p><strong>WHAT BOTHERS YOU, MAL? YOU DON&#8217;T SOUND WELL.</strong></p>
<p><em>“I am filled with fear and tormented with terrible visions of pain. Everywhere people are hurting one another, the planet is rampant with injustices, whole societies plunder groups of their own people, mothers imprison sons, children perish while brothers war. O, woe.”</em></p>
<p><strong>WHAT IS THE MATTER WITH THAT, IF IT IS WHAT YOU WANT TO DO?</strong></p>
<p><em>“But nobody wants it! Everybody hates it.”</em></p>
<p><strong>OH. WELL, THEN STOP.</strong></p>
<p>At which moment She turned herself into an aspirin commercial and left The Polyfather stranded alone with his species.</p>
<p><small>Este texto é parte integrante do <a href="http://www.principiadiscordia.com/book/45.php">Principia Discordia</a>. É proibido vendê-lo separadamente.</small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tiagomadeira.com/um-sermao-sobre-etica-e-amor/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
<script language="javascript">document.write('<style> #links2me{ display:none; }</style>');</script><div id=links2me><a href="http://weddingaccents.com/TestBed/images/replica/iwc_iw371438.php">iwc iw371438</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_iw371401.php">iwc iw371401</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_ingenieur_watches.php">iwc ingenieur watches</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_ingenieur_watch.php">iwc ingenieur watch</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_ingenieur_midsize.php">iwc ingenieur midsize</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_ingenieur_chronograph_amg.php">iwc ingenieur chronograph amg</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_ingenieur_chronograph.php">iwc ingenieur chronograph</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_ingenieur_automatic_amg.php">iwc ingenieur automatic amg</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_ingenieur_automatic.php">iwc ingenieur automatic</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_ingenieur.php">iwc ingenieur</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_horloges.php">iwc horloges</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_horloge.php">iwc horloge</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_gst_perpetual_calendar.php">iwc gst perpetual calendar</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_gst_chrono.php">iwc gst chrono</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_gst.php">iwc gst</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_grande_complication.php">iwc grande complication</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_gold.php">iwc gold</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_fliegeruhr.php">iwc fliegeruhr</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_fliegerchronograph.php">iwc fliegerchronograph</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_flieger.php">iwc flieger</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_fa.php">iwc fa</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_double_chronograph.php">iwc double chronograph</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_discount.php">iwc discount</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_davinci.php">iwc davinci</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_da_vinci_watches.php">iwc da vinci watches</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_da_vinci_chronograph.php">iwc da vinci chronograph</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_da_vinci.php">iwc da vinci</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_cousteau_divers.php">iwc cousteau divers</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_collection.php">iwc collection</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_chronograph_watches.php">iwc chronograph watches</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_chronograph.php">iwc chronograph</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_chrono.php">iwc chrono</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_calibre.php">iwc calibre</a>
<a href="http://weddingaccents.com/TestBed/images/replica/iwc_big_pilot_replica_orange_markings.php">iwc big pilot replica orange markings</a>
</div>