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

<channel>
	<title>RiK0's Tech Temple</title>
	<atom:link href="http://www.akropolix.net/rik0/blogs/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.akropolix.net/rik0/blogs</link>
	<description>Python, Ruby, Dynamic Languages, Object Oriented Software Developement</description>
	<pubDate>Sat, 14 Jun 2008 09:40:19 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>My Yellow Dog ate my Red Hat.</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/08/06/my-yellow-dog-ate-my-red-hat/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/08/06/my-yellow-dog-ate-my-red-hat/#comments</comments>
		<pubDate>Mon, 06 Aug 2007 13:27:20 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[Linux World]]></category>

		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/08/06/my-yellow-dog-ate-my-red-hat/</guid>
		<description><![CDATA[I&#8217;ve always been one of the (not so) few geeks who run Linux on PowerPC.
Sometime ago, Linus himself was one of us, however, it appears that now
he uses a different machine.
Since Apple dropped PPC, the Linux PPC world is quite in turmoil. The architecture is perceived as almost dead. However, new interest comes from the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve always been one of the (not so) few geeks who run Linux on PowerPC.<br />
Sometime ago, Linus himself was one of us, however, it appears that now<br />
he uses a different machine.</p>
<p>Since Apple dropped PPC, the Linux PPC world is quite in turmoil. The architecture is perceived as almost dead. However, new interest comes from the Linux on PS3 projects.</p>
<p>In any case Ubuntu dropped official support for PPC. That was a sad piece of new, since I was quite satisfied with it. I had to recompile the kernel in order to fully support my machine (but this would have been solved in successive releases).</p>
<p>I got back to Debian. I&#8217;ve been a Debian user since Woody, and I liked it ever since. I was a Debian unstable user, and I have always been satisfied with it. However, this time it was different. I&#8217;ve had many more troubles: each upgrade broke something I needed.</p>
<p>I don&#8217;t know if it&#8217;s a matter of developers paying more attention to Ubuntu or whatever: the point is that using Debian unstable as a &#8216;reliable&#8217; desktop system on power pc seemed quite hard. I don&#8217;t want to blame Debian developers: it&#8217;s unstable. No warranties. I used it at my own risk.</p>
<p>Since Debian is unsuitable for my present needs (no hassle, no config, no time), I considered switching Yellow Dog. I know that these days a PPC community mantained version of Ubuntu has been released.</p>
<p><img src="http://www.akropolix.net/rik0/blogs/wp-content/uploads/2007/08/ydl5.jpg" alt="Ydl5" width="140" height="140" /></p>
<p>I bought a Yellow Dog Enhanced account, since I did want to support their work and I was interested in support, if something was not perferct in the first place. Remember, no time.</p>
<p>I installed the distribution from the DVD. My hardware was entirely recognized correctly. From the soundcard to the backlit keyboard. My video card should also work with dual head, though I haven&#8217;t tried it yet. YD comes with a nice GUI to do this.</p>
<p>The only thing that was not working was the airport card. I just had to get the fwcutter and extract the firmware. Then it worked. Moreover, the network applet that stays in the notification area works great. I don&#8217;t know why, but in Debian and Ubuntu for some reasons it did not work properly (in Ubuntu from a certain moment the whole network-manager stopped working). I did not investigate as I needed less time to write a couple of shell scripts to configure the network interfaces when I needed to switch.</p>
<p>I have always been skeptical about rpm-based distros. Once I used SuSE, but after using Debian I got somewhat convinced of the superiority of the Debian packages. More accurate studies on rpm done recently seem to go in another direction: it was not that deb is better than rpm. It is just that deb repositories were maintained more carefully.</p>
<p>YellowDog repositories <strong>are</strong> maintained quite carefully. However, there is not a lot of software. I suppose something like 1000 packages (Debian has got ten times that). So I had to learn how to cook my own rpms or simply build software from sources and install it with make install. This is probably the major drawback. However, I&#8217;m pretty satisfied with Yellow Dog.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/08/06/my-yellow-dog-ate-my-red-hat/feed/</wfw:commentRss>
		</item>
		<item>
		<title>About autotools, YellowDog, Prolog and Xpm</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/07/29/about-autotools-yellowdog-prolog-and-xpm/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/07/29/about-autotools-yellowdog-prolog-and-xpm/#comments</comments>
		<pubDate>Sun, 29 Jul 2007 14:06:02 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/07/29/about-autotools-yellowdog-prolog-and-xpm/</guid>
		<description><![CDATA[A few days ago, I switched to Yellow Dog for my powerbook.
I&#8217;m very satisfied with the hardware support. It&#8217;s the first distro
that supported my backlit keyboard from the beginning.
However, it lacks a lot of software packages. Most of them can be
taken from Fedora PPC (it&#8217;s advised to use those of Fedora Core 5
or). However, other [...]]]></description>
			<content:encoded><![CDATA[<p>A few days ago, I switched to Yellow Dog for my powerbook.<br />
I&#8217;m very satisfied with the hardware support. It&#8217;s the first distro<br />
that supported my backlit keyboard from the beginning.</p>
<p>However, it lacks a lot of software packages. Most of them can be<br />
taken from Fedora PPC (it&#8217;s advised to use those of Fedora Core 5<br />
or). However, other must be compiled.</p>
<p>For example, I had to compile swi-prolog, since the software I&#8217;m working<br />
on at the moment is written in Prolog. Swi Prolog itself was easy to install.<br />
I compiled it and I had it working in a few minutes.</p>
<p>However, I was unable to compile XPCE. While I do not use the library itself,<br />
I find it useful sometimes to use gtrace or the &#8216;graphic&#8217; help.<br />
The problem reported was that Xpm was not found. However, I installed<br />
both libxpm and its development files. The ./configure script reported<br />
that it was not able to link against libXpm.</p>
<p>I first tried manually linking and it worked, so I had a look at the log.<br />
In fact it  wasn&#8217;t libxpm fault. The test program tried to link both libxpm<br />
and libxt, and the latter failed. Amazingly, the configure script did not<br />
check for errors in linking libxt, so the erroro reported was totally<br />
misleading.<br />
The problem was that there was no libXt.so, but only libXt.so.6. I had to<br />
manually create the symbolic link.</p>
<p>Eventually, I bumped into another error (this time during &#8216;make&#8217;).<br />
The culprit was once again Xt: it seemed that some of its &#8217;standard&#8217; header<br />
files were missing. I found a fedora 5 devel package that fixed that<br />
and I was able to compile xpce.</p>
<p>Quite unfortunately, I can&#8217;t use it now. Another bug in the installation of<br />
xorg conjures against me. This bug can be seen using a Tkinter canvas too.<br />
The problem is that &#8216;names&#8217; of colors are not found (probably because rgb.txt<br />
is in the wrong place). Xpce fails and so does many stuff with Tkinter.</p>
<p>I don&#8217;t know where rgb.txt should be. I tried to put it in standard places,<br />
but up to now the server does not find it. The problem is that I have to restart the server each time (and since sometimes this hangs the whole system, I have to reboot, and Red Hat derived distros have slow boots.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/07/29/about-autotools-yellowdog-prolog-and-xpm/feed/</wfw:commentRss>
		</item>
		<item>
		<title>FAQ it.comp.lang.c++</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/07/01/faq-itcomplangc-2/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/07/01/faq-itcomplangc-2/#comments</comments>
		<pubDate>Sun, 01 Jul 2007 10:50:46 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[C and C++]]></category>

		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/07/01/faq-itcomplangc-2/</guid>
		<description><![CDATA[Queste sono le FAQ del newsgroup italiano dedicato a C++.
Mi sono reso conto che in effetti non è facilissimo trovarle,
ache se contengono molte informazioni che risparmierebbero
domande banali sul newsgroup.
Per cui, nel caso, le linko.
Link.
]]></description>
			<content:encoded><![CDATA[<p>Queste sono le FAQ del newsgroup italiano dedicato a C++.<br />
Mi sono reso conto che in effetti non è facilissimo trovarle,<br />
ache se contengono molte informazioni che risparmierebbero<br />
domande banali sul newsgroup.</p>
<p>Per cui, nel caso, le linko.<br />
<a href="http://www.emagsoftware.it/faqcpp.htm">Link.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/07/01/faq-itcomplangc-2/feed/</wfw:commentRss>
		</item>
		<item>
		<title>FAQ it.comp.lang.c++</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/07/01/faq-itcomplangc/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/07/01/faq-itcomplangc/#comments</comments>
		<pubDate>Sun, 01 Jul 2007 10:50:46 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[C and C++]]></category>

		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/07/01/faq-itcomplangc/</guid>
		<description><![CDATA[Queste sono le FAQ del newsgroup italiano dedicato a C++.
Mi sono reso conto che in effetti non è facilissimo trovarle,
ache se contengono molte informazioni che risparmierebbero
domande banali sul newsgroup.
Per cui, nel caso, le linko.
Link.
]]></description>
			<content:encoded><![CDATA[<p>Queste sono le FAQ del newsgroup italiano dedicato a C++.<br />
Mi sono reso conto che in effetti non è facilissimo trovarle,<br />
ache se contengono molte informazioni che risparmierebbero<br />
domande banali sul newsgroup.</p>
<p>Per cui, nel caso, le linko.<br />
<a href="http://www.emagsoftware.it/faqcpp.htm">Link.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/07/01/faq-itcomplangc/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Illuminated keyboard on PowerBook G4 and Linux.</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/04/25/illuminated-keyboard-on-powerbook-g4-and-linux/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/04/25/illuminated-keyboard-on-powerbook-g4-and-linux/#comments</comments>
		<pubDate>Wed, 25 Apr 2007 21:38:03 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[Linux World]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/04/25/illuminated-keyboard-on-powerbook-g4-and-linux/</guid>
		<description><![CDATA[An image is worth a thousand words.

It was a matter of mod-probing i2c-dev.
It is a custom Linux 2.6.20 Kernel on Debian Unstable. Cool!
]]></description>
			<content:encoded><![CDATA[<p>An image is worth a thousand words.</p>
<p><img src="/rik0/dropbox/illuminated_keyboard.jpg" /></p>
<p>It was a matter of mod-probing i2c-dev.<br />
It is a custom Linux 2.6.20 Kernel on Debian Unstable. Cool!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/04/25/illuminated-keyboard-on-powerbook-g4-and-linux/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Pictures just before the Foundation of &#8220;Python Italia&#8221;</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/03/25/pictures-just-before-the-foundation-of-python-italia/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/03/25/pictures-just-before-the-foundation-of-python-italia/#comments</comments>
		<pubDate>Sun, 25 Mar 2007 11:55:48 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/03/25/pictures-just-before-the-foundation-of-python-italia/</guid>
		<description><![CDATA[
	


	
	
	
]]></description>
			<content:encoded><![CDATA[<p>
	<a href="/rik0/dropbox/fondazione_python_italia_pub1.jpg"><img src="/rik0/dropbox/fondazione_python_italia_pub1_small.jpg" /></a>
</p>
<p>
	<a href="/rik0/dropbox/fondazione_python_italia_pub2.jpg"><br />
	<img src="/rik0/dropbox/fondazione_python_italia_pub2_small.jpg" /><br />
	</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/03/25/pictures-just-before-the-foundation-of-python-italia/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Execute saved Synaptic markings</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/03/22/execute-saved-synaptic-markings/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/03/22/execute-saved-synaptic-markings/#comments</comments>
		<pubDate>Thu, 22 Mar 2007 14:49:07 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[Linux World]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/03/22/execute-saved-synaptic-markings/</guid>
		<description><![CDATA[It happens quite often that I use synaptic to manage packages on my debian.
However, sometime I save the markings in order to perform the installations another time.
For example I need to apt-get something quickly without waiting for the whole thing to be
downloaded and installed.
The standard procedure would be running synaptic again and then loading the [...]]]></description>
			<content:encoded><![CDATA[<p>It happens quite often that I use synaptic to manage packages on my debian.<br />
However, sometime I save the markings in order to perform the installations another time.<br />
For example I need to apt-get something quickly without waiting for the whole thing to be<br />
downloaded and installed.</p>
<p>The standard procedure would be running synaptic again and then loading the markings.<br />
However, in this cases I don&#8217;t feel like I need to start the whole synaptic thing.<br />
I&#8217;d prefer a small command line utility that processes the saved markings.</p>
<p>I wrote one. It is very simple. It uses sudo, so every now and then it asks the password.<br />
Of course one could do a better job, but I had not time to do something better.</p>
<pre>
#!/usr/bin/env ruby

args = $*
if args.size == 0
  puts "You should provide a file to process"
  exit 0
end

dict = Hash.new

File.open(args[0]) do |f|
  f.each_line do |line|
    key, action = *line.split
    dict[key] = action
  end
end

# sudo apt-get #{v} #{k}

dict.each do |k, v|
  exec(&#8221;sudo apt-get -y #{v} #{k}&#8221;) if fork.nil?
  Process.wait
end
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/03/22/execute-saved-synaptic-markings/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Scripting languages</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/03/21/scripting-languages/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/03/21/scripting-languages/#comments</comments>
		<pubDate>Wed, 21 Mar 2007 19:12:27 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[Python]]></category>

		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/03/21/scripting-languages/</guid>
		<description><![CDATA[What is a scripting language?

	From Wikipedia we read that:


Scripting languages (commonly called scripting programming languages or script languages) are computer programming languages that are typically interpreted and can be typed directly from a keyboard. Thus, scripts are often distinguished from programs, because programs are converted permanently into binary executable files (i.e., zeros and ones) before [...]]]></description>
			<content:encoded><![CDATA[<h3>What is a scripting language?</h3>
<p>
	From Wikipedia we read that:
</p>
<blockquote><p>
Scripting languages (commonly called scripting programming languages or script languages) are computer programming languages that are typically interpreted and can be typed directly from a keyboard. Thus, scripts are often distinguished from programs, because programs are converted permanently into binary executable files (i.e., zeros and ones) before they are run. Scripts remain in their original form and are interpreted command-by-command each time they are run. Scripts were created to shorten the traditional edit-compile-link-run process.
</p></blockquote>
<p>Of course any self respecting computer scientist knows that definition is meaningless, because a language is a mathematical construct<br />
and is not tied to its implementation. You can write a C interpreter, for example (and there are some). You can also write a compiler for any &#8216;interpreted language&#8217; (of course the term &#8216;interpreted language is also meaningless). And there are theoretical constructs (Futamura projections) that given any interpreter are able to build a compiler from it (you could implement them even in practice, though it would be terribly inefficient).
</p>
<p>However, any other definition would be misleading as well: if you define a scripting language as a language you can use to &#8220;script&#8221; (as in &#8220;bash script&#8221;), then you&#8217;ve got definition that&#8217;s even more stupid. bash is a scripting language, and so it is Python. However, if someone writes an application that is scripted in C, C becomes a &#8217;scripting language&#8217;).</p>
<p>
  Both definitions have an additional problem: scripting languages are considered somewhat inferior to &#8216;non-scripting languages&#8217;. Some even use the term &#8216;true programming languages&#8217; (and this &#8216;true programming languages&#8217; are usually considered to be C and C++, for example).
</p>
<h3>Lisp, Haskell, OCaml, Prolog</h3>
<p>
  In this dissertation on &#8217;scripting languages&#8217;, Lisp is quite emblematic. Lisp can be compiled (there are some Lisp compilers around). But Lisp can also be interpreted. <a href="http://clisp.cons.org/">This</a> is one of the most<br />
  widespread Lisp environments (and it is an interpreter). Moreover, in Emacs you can just run some Lisp snippets. And Emacs itself is scripted in Lisp (thus Lisp would be a scripting language according to the second definition). However, no one can assert that it is not a &#8216;true&#8217; programming language. Emacs itself is a beautiful (and complex) piece of software, and a lot of &#8216;real&#8217; (and extremely difficult) stuff in the AI field has been written in Lisp.
</p>
<p>
  Haskell can be another example. <a href="http://www.haskell.org/hugs/">Hugs</a> is an interpreter, <a href="http://www.haskell.org/ghc/">ghc</a> is both an interpreter and a compiler. And Haskell is even statically typed (so you see, being dynamic is<br />
  not necessary ). The very same applies for OCaml or Prolog. And all this<br />
  languages have been used by the most theory-oriented computer scientist to<br />
  implement real programs.
</p>
<p>
  I suppose nobody would say that Lisp or Haskell are &#8217;scripting languages&#8217; (even if according to the definitions they are &#8212; Haskell is used in many configuration tools by Linspire programmers).
</p>
<h3>Bash, Perl, Python, Ruby.</h3>
<p>
  All this languages have been labeled as &#8217;scripting languages&#8217;. And in fact according to definitions, they are. However, they are very different languages.
</p>
<p>
  Bash is a very simple language designed to do simple things. Unix system administrators used it intensively (along with awk and sed and other utilities) to automate many repetitive tasks. Although this is surely &#8216;programming&#8217;, in some sense it&#8217;s different from programming an application from scratch. Some even consider it a &#8216;lower level&#8217; kind of programming (and surely we must recognize that skills involved in writing a boot script are different from skills used to write a compiler)
</p>
<p>
  Perl was born in this environment: its goal was textual manipulations and interactions between processes in a system. It is a nicer alternative to bash + awk in many situations. Later it has been added a fully fledged object model, but in the while it has been used to write very complex applications that go outside the &#8216;lower level programming domain&#8217; that is usually associated with &#8217;scripting&#8217;. Even though I don&#8217;t like Perl anymore, it is a general purpose language, with the same dignity of C or C++.
</p>
<p>
  The &#8217;scripting language&#8217; monicker is not fitting anymore. And it is even less fitting for Python. Python has been an object oriented programming language from the beginning. Good software engineering practices have always been employed. However, many consider it just another scripting language. And of course Python makes a great scripting language.
</p>
<p>
  The domains in which Python excels are the same in which Java is used, for example. However, Python can be used for scripting, too. That is to say&#8230; some (and I&#8217;d be tempted to say &#8216;most&#8217; ) &#8217;scripting languages&#8217; can be used both as general purpose languages and automation/scripting.
</p>
<p>
  The reason why they can be used for automation/scripting and that they are easier to use and we can write programs faster. The development cycle is faster, too. And to me, they all seem good properties.
</p>
<p>
  I think that the very same features that make Python (or Ruby) great for scripting, make it even greater for general purpose programming. That is to say we should consider a &#8217;scripting language&#8217; not a poorer language, but a better one (yeah, of course this is exaggerated, since there are languages suited for scripting that are not suited for general purpose programming &#8212; AppleScript and bash, for example).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/03/21/scripting-languages/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Emacs and emacsclient (Ruby script to call them both)</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/03/21/emacs-and-emacsclient-ruby-script-to-call-them-both/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/03/21/emacs-and-emacsclient-ruby-script-to-call-them-both/#comments</comments>
		<pubDate>Wed, 21 Mar 2007 10:26:47 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/03/21/emacs-and-emacsclient-ruby-script-to-call-them-both/</guid>
		<description><![CDATA[I usually call one single emacs server (I&#8217;ve got (server-start) at the very beginning of my .emacs), then connect to it with some emacsclient.

Unfortunately enough emacsclient just quits if there is no active emacs server.

I need a process that tries to run emacsclient: if there is no active server, it runs emacs.
Moreover, emacsclient has a [...]]]></description>
			<content:encoded><![CDATA[<p>I usually call one single emacs server (I&#8217;ve got <tt>(server-start)</tt> at the very beginning of my .emacs), then connect to it with some <tt>emacsclient</tt>.</p>
<p>
Unfortunately enough <tt>emacsclient</tt> just quits if there is no active emacs server.
</p>
<p>I need a process that tries to run <tt>emacsclient</tt>: if there is no active server, it runs <tt>emacs</tt>.<br />
Moreover, <tt>emacsclient</tt> has a <tt>-n</tt> switch that makes it return ASAP, so the terminal is available for more commands.<br />
<tt>emacs</tt> has not such a switch, but that behaviour is the one I want.
</p>
<p>So I decided to write a small ruby script that does just this:</p>
<ol>
<li>Tries to run <tt>emacsclient</tt> with the <tt>-n</tt> option.</tt>
<li>If it succeeds, we are done. Otherwise we run <strong>Emacs</strong> doing some<br />
		standard posix process manipulation in order to return to the shell as soon as possible.</li>
</ol>
<p>This is the script:</p>
<pre>
#!/usr/bin/env ruby

fork do
  exec('emacsclient', '-n', *$*)
end
Process.wait
if $?.exitstatus != 0
  fork do
    Process.setsid
    Signal.trap('HUP', 'SIG_IGN')
    exec('emacs', *$*) if fork.nil?
    exit!(0)
  end
  Process.wait
end
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/03/21/emacs-and-emacsclient-ruby-script-to-call-them-both/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Welcome Home, Debian! (Ubuntu PPC discontinued?)</title>
		<link>http://www.akropolix.net/rik0/blogs/2007/03/21/welcome-home-debian-ububtu-ppc-discontinued/</link>
		<comments>http://www.akropolix.net/rik0/blogs/2007/03/21/welcome-home-debian-ububtu-ppc-discontinued/#comments</comments>
		<pubDate>Wed, 21 Mar 2007 08:39:30 +0000</pubDate>
		<dc:creator>Enrico Franchi</dc:creator>
		
		<category><![CDATA[Linux World]]></category>

		<guid isPermaLink="false">http://www.akropolix.net/rik0/blogs/2007/03/21/welcome-home-debian-ububtu-ppc-discontinued/</guid>
		<description><![CDATA[<p>Recently there are rumors that Ubuntu PPC will be discontinued. 
In fact there is an IRC log about it:</p>
<blockquote>
Something asked a few times: Will PPC support be discontinued soon?
<sabdfl> We will make a final decision on PPC for Feisty by the end of next week
if there is sufficient community contribution on this, then the community port can be just as good as a Canonical-supported one
we would keep the builds in place, but not block the release if things failed to build
so if people step up to unblock issues when they occur, then PPC would be on the same footing as it currently is
<Seveas> sabdfl, will "but ps3 is ppc" be a valid argument? (asked a few times as well)
<sabdfl> the extra architecture costs us a lot in terms of testing bandwidth at release time, and figuring out issues like how to deal with the live CD are compicated
if SONY fund Ubuntu-on-PS3 then I guarantee it will happen :-)
</blockquote>]]></description>
			<content:encoded><![CDATA[<h3>Ubuntu discontinued?</h3>
<p>Recently there are rumors that Ubuntu PPC will be discontinued.<br />
In fact there is an IRC log about it:</p>
<blockquote><p>Something asked a few times: Will PPC support be discontinued soon?<br />
We will make a final decision on PPC for Feisty by the end of next week<br />
if there is sufficient community contribution on this, then the community port can be just as good as a Canonical-supported one<br />
we would keep the builds in place, but not block the release if things failed to build<br />
so if people step up to unblock issues when they occur, then PPC would be on the same footing as it currently is<br />
sabdfl, will &#8220;but ps3 is ppc&#8221; be a valid argument? (asked a few times as well)<br />
the extra architecture costs us a lot in terms of testing bandwidth at release time, and figuring out issues like how to deal with the live CD are compicated<br />
if SONY fund Ubuntu-on-PS3 then I guarantee it will happen <img src='http://www.akropolix.net/rik0/blogs/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p></blockquote>
<p>I have to say I&#8217;ve not been pleased about it. Of course Canonical should make its own interests: that is to say, if they feel that supporting PPC is not worth it, they are doing the right thing. However, it&#8217;s quite sad: there are a loto of perfectly functioning G3, G4 and G5 machines out there. Dropping support like this, seems to be the way commercial companies act.</p>
<p>The point is that we must realize that Canonical <strong>is</strong> a commercial company. You just can&#8217;t do anything about it and accept it.</p>
<p>Since at the moment I run Linux mostly on a PPC machine (my notebook), PPC support becomes a key factor in chosing the right distribution. My choice was obvious: I had been using Debian for ages before Ubuntu, why not going back to Debian? Welcome home, Debian!</p>
<h3>Debian PPC</h3>
<p>I downloaded the DVD iso for testing. Since I&#8217;m running on PPC, the new graphical installer is still experimental. Moreover, I quite feel at home with good old Debian textual installer.</p>
<p>Installation was really smooth. Debian recognised all my hardware with no need for manual intervention. Of course the airport card did not work without <strong>bcm43xx-fwcutter</strong>. Unfortunately enough, I left my working ethernet cable at the university, in the office I share with some fellow students. This was just a small delay.</p>
<p>Quite interesting Debian recognised my display better than Ubuntu (I still don&#8217;t know why, but I had to set the resolution manually or Ubuntu would not start X11). However, Debian did not preload <strong>pbbuttons</strong> (that are used for the notebook multimedia keys, volume, lcd backlight, etc).</p>
<p>In fact I think a noob prefers to find a system with no multimedia buttons and working graphics than vice-versa. It seems that the guys at Debian did a pretty good work. Nonetheless, I&#8217;m quite sad for the exclusion of pbbuttons: I <strong>did</strong> chose a macro-package (when installing) called &#8216;laptop&#8217; or something like that. I think that pbbuttons should be included in the first DVD. In fact most PPC machine out there should be laptops (well, maybe not &#8216;most&#8217;, but surely a great number).</p>
<p>Everything else worked smoothly. I recompiled the kernel (I would like to have that backlit keyboard working, it <strong>should</strong> work even with the 2.6.18 default kernel, but maybe something useful was not compiled into it). The backlit keyboard still does not work, which is a pity, but is something I can live without. Beryl does not work too (but it didn&#8217;t work with Ubuntu, either). And it <strong>should</strong> work. But that is another thing I can happily live without.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.akropolix.net/rik0/blogs/2007/03/21/welcome-home-debian-ububtu-ppc-discontinued/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
