<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5783356697092613581</id><updated>2011-11-28T08:06:32.604+07:00</updated><category term='usynth'/><category term='music'/><category term='capsula'/><category term='code'/><category term='diy'/><category term='supercollider'/><category term='ubuntu'/><category term='python'/><category term='vala'/><title type='text'>Corridor Nine</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.artfwo.net/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-6503595006293123356</id><published>2011-05-09T21:49:00.001+07:00</published><updated>2011-05-25T20:12:53.322+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='capsula'/><category scheme='http://www.blogger.com/atom/ns#' term='vala'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='usynth'/><title type='text'>Hello, Vala!</title><content type='html'>A while ago I've been playing with &lt;a href="http://live.gnome.org/Vala"&gt;Vala&lt;/a&gt;. The cool thing about Vala is that it's a cutting edge language which is able to produce programs with similar performance to those written directly in C. Obviously, it may prove to be a perfect language for fast audio-processing tasks, and there already are bindings for &lt;a href="http://repo.or.cz/w/jackpanel.git?a=blob;f=jack.vapi"&gt;JACK&lt;/a&gt;, &lt;a href="http://hg.pysoy.org/pysoy/file/61b7eff772bc/vapi/liboil-0.3.vapi"&gt;liboil&lt;/a&gt; (now removed from PySoy), an ongoing &lt;a href="http://www.mail-archive.com/vala-list@gnome.org/msg05412.html"&gt;effort&lt;/a&gt; to create bindings for libsndfile and probably other libraries, which I overlooked.&lt;br /&gt;&lt;br /&gt;For the exercise, I tried to create Vala &lt;a href="http://bazaar.launchpad.net/%7Eartfwo/+junk/vala-playground/view/head:/vapi/liblo.vapi"&gt;bindings&lt;/a&gt; for &lt;a href="http://liblo.sourceforge.net/"&gt;liblo&lt;/a&gt;, the lightweight OSC protocol library. They're still unpolished, but already usable in a straightforward, almost C-like way:&lt;br /&gt;&lt;pre&gt;static void main(string[] args)&lt;br /&gt;{&lt;br /&gt;    Lo.Address t = new Lo.Address(null, "8080");&lt;br /&gt;    Lo.send(t, "/box/grid/led/all", "i", 1);&lt;br /&gt;}&lt;/pre&gt;Right now, I'm working on Vala bindings for &lt;a href="http://lv2plug.in/"&gt;LV2&lt;/a&gt; and the accompanying &lt;a href="http://drobilla.net/2011/04/29/slv2-is-dead-long-live-slv2/"&gt;Lilv&lt;/a&gt; library. For this purpose and for further experiments with LV2 plugins I've created &lt;strike&gt;uSynth&lt;/strike&gt; &lt;a href="https://launchpad.net/capsula"&gt;capsula&lt;/a&gt; - a project, which currently provides little more than a functional port of lv2jack host from Lilv source distribution. It does not have any support for plugin GUIs yet, but it's a planned feature. Loading GUIs with SLV2 (a Lilv predecessor) worked to some extent:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://picasaweb.google.com/lh/photo/Mh46xMF8YHK453ak9wlYXQ?feat=embedwebsite" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img height="241" src="https://lh6.googleusercontent.com/_3HE50Du1eV8/TcfkOf_Nm-I/AAAAAAAACnk/Rr-rdEnrPLw/s288/slv2-host.png" width="288" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Capsula is still in the earliest planning stages and doesn't have a roadmap yet. For now, I'm thinking about a full featured LV2 plugin host, completely controllable by OSC. I don't have any further ideas, but perhaps you have? Then, by all means, feel free to &lt;a href="https://launchpad.net/capsula"&gt;join the fun&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-6503595006293123356?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/6503595006293123356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2011/05/hello-vala.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/6503595006293123356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/6503595006293123356'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2011/05/hello-vala.html' title='Hello, Vala!'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh6.googleusercontent.com/_3HE50Du1eV8/TcfkOf_Nm-I/AAAAAAAACnk/Rr-rdEnrPLw/s72-c/slv2-host.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-5431812467922868172</id><published>2011-04-30T22:22:00.001+07:00</published><updated>2011-04-30T22:25:17.024+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Natty Release Party: success!</title><content type='html'>The release party in Gorno-Altaisk turned out to be the best release party we ever had, a really joyful evening. I have no idea how many people came, but the place was certainly full of people, who continued to arrive.&lt;br /&gt;&lt;br /&gt;We had the usual bulk of DVDs to give out, a talk about free software and Ubuntu, a talk about the local media environment, and lots of interaction and conversations about Ubuntu and open source. For the entertainment part, there was a &lt;a href="http://en.wikipedia.org/wiki/Mafia_%28party_game%29"&gt;Mafia game&lt;/a&gt; with a geek theme and some live music, performed under Linux with the &lt;a href="http://monome.org/"&gt;monome&lt;/a&gt; (actually an arduinome) controller and &lt;a href="https://github.com/wrl/rove"&gt;rove&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Several pictures from the event are below, and the full set is available &lt;a href="http://www.flickr.com/photos/gazetashum/sets/72157626480436631/"&gt;here&lt;/a&gt; (courtesy of the &lt;a href="http://gazeta-shum.ru/"&gt;Shum&lt;/a&gt; webzine).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/gazetashum/5667952957/" title="Во время лекции о свободном софте by gazetashum, on Flickr"&gt;&lt;img src="http://farm6.static.flickr.com/5181/5667952957_3d8a4b9024_m.jpg" width="240" height="160" alt="Во время лекции о свободном софте"&gt;&lt;/a&gt; &lt;a href="http://www.flickr.com/photos/gazetashum/5668522602/" title="Игра в &amp;quot;гик-мафию&amp;quot; by gazetashum, on Flickr"&gt;&lt;img src="http://farm6.static.flickr.com/5065/5668522602_8c315628fd_m.jpg" width="240" height="160" alt="Игра в &amp;quot;гик-мафию&amp;quot;"&gt;&lt;/a&gt; &lt;a href="http://www.flickr.com/photos/gazetashum/5669012341/" title="Вечеринка by gazetashum, on Flickr"&gt;&lt;img src="http://farm6.static.flickr.com/5222/5669012341_2131235bcb_m.jpg" width="240" height="160" alt="Вечеринка"&gt;&lt;/a&gt; &lt;a href="http://www.flickr.com/photos/gazetashum/5669155144/" title="Гости интересуются мономом by gazetashum, on Flickr"&gt;&lt;img src="http://farm6.static.flickr.com/5226/5669155144_a638bb4ecc_m.jpg" width="240" height="160" alt="Гости интересуются мономом"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-5431812467922868172?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/5431812467922868172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2011/04/natty-release-party-success.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/5431812467922868172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/5431812467922868172'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2011/04/natty-release-party-success.html' title='Natty Release Party: success!'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm6.static.flickr.com/5181/5667952957_3d8a4b9024_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-4274597786298179842</id><published>2011-02-24T22:03:00.001+06:00</published><updated>2011-02-24T22:30:14.241+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Writing PolicyKit applications in Python without D-Bus</title><content type='html'>I'm always happy when more libraries get Python bindings, and today I've been especially excited by the fact that GObject introspection support for PolicyKit has finally appeared in Natty repositories. Basically it means, that PolicyKit is now accessible from Python through a native API without direct D-Bus communication. I've tried to port the &lt;a href="http://hal.freedesktop.org/docs/polkit/polkit-apps.html#cancel-example"&gt;querying example&lt;/a&gt; from PolicyKit manual and it did work!&lt;br /&gt;&lt;br /&gt;The Python example below is an almost line-by-line port of the original, but it should give you a basic idea on how to use the API for your own scripts.&lt;br /&gt;&lt;br /&gt;&lt;pre style='color:#000000;background:#ffffff;font-size:smaller;'&gt;&lt;span style='color:#696969; '&gt;#! /usr/bin/env python&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;import&lt;/span&gt; sys&lt;span style='color:#808030; '&gt;,&lt;/span&gt; os&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;from&lt;/span&gt; gi&lt;span style='color:#808030; '&gt;.&lt;/span&gt;repository &lt;span style='color:#800000; font-weight:bold; '&gt;import&lt;/span&gt; GObject&lt;span style='color:#808030; '&gt;,&lt;/span&gt; Gio&lt;span style='color:#808030; '&gt;,&lt;/span&gt; Polkit&lt;br /&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;def&lt;/span&gt; on_tensec_timeout&lt;span style='color:#808030; '&gt;(&lt;/span&gt;loop&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;  &lt;span style='color:#800000; font-weight:bold; '&gt;print&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"Ten seconds have passed. Now exiting."&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;  loop&lt;span style='color:#808030; '&gt;.&lt;/span&gt;&lt;span style='color:#e34adc; '&gt;quit&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;  &lt;span style='color:#800000; font-weight:bold; '&gt;return&lt;/span&gt; &lt;span style='color:#e34adc; '&gt;False&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;def&lt;/span&gt; check_authorization_cb&lt;span style='color:#808030; '&gt;(&lt;/span&gt;authority&lt;span style='color:#808030; '&gt;,&lt;/span&gt; res&lt;span style='color:#808030; '&gt;,&lt;/span&gt; loop&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;try&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;        result &lt;span style='color:#808030; '&gt;=&lt;/span&gt; authority&lt;span style='color:#808030; '&gt;.&lt;/span&gt;check_authorization_finish&lt;span style='color:#808030; '&gt;(&lt;/span&gt;res&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;        &lt;span style='color:#800000; font-weight:bold; '&gt;if&lt;/span&gt; result&lt;span style='color:#808030; '&gt;.&lt;/span&gt;get_is_authorized&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;            &lt;span style='color:#800000; font-weight:bold; '&gt;print&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"Authorized"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;        &lt;span style='color:#800000; font-weight:bold; '&gt;elif&lt;/span&gt; result&lt;span style='color:#808030; '&gt;.&lt;/span&gt;get_is_challenge&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;            &lt;span style='color:#800000; font-weight:bold; '&gt;print&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"Challenge"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;        &lt;span style='color:#800000; font-weight:bold; '&gt;else&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;            &lt;span style='color:#800000; font-weight:bold; '&gt;print&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"Not authorized"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;except&lt;/span&gt; GObject&lt;span style='color:#808030; '&gt;.&lt;/span&gt;GError as error&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;         &lt;span style='color:#800000; font-weight:bold; '&gt;print&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"Error checking authorization: %s"&lt;/span&gt; &lt;span style='color:#808030; '&gt;%&lt;/span&gt; error&lt;span style='color:#808030; '&gt;.&lt;/span&gt;message&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;        &lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;print&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"Authorization check has been cancelled "&lt;/span&gt;&lt;br /&gt;          &lt;span style='color:#0000e6; '&gt;"and the dialog should now be hidden.\n"&lt;/span&gt;&lt;br /&gt;          &lt;span style='color:#0000e6; '&gt;"This process will exit in ten seconds."&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    GObject&lt;span style='color:#808030; '&gt;.&lt;/span&gt;timeout_add&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#008c00; '&gt;10000&lt;/span&gt;&lt;span style='color:#808030; '&gt;,&lt;/span&gt; on_tensec_timeout&lt;span style='color:#808030; '&gt;,&lt;/span&gt; loop&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;def&lt;/span&gt; do_cancel&lt;span style='color:#808030; '&gt;(&lt;/span&gt;cancellable&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;print&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"Timer has expired; cancelling authorization check"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    cancellable&lt;span style='color:#808030; '&gt;.&lt;/span&gt;cancel&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;return&lt;/span&gt; &lt;span style='color:#e34adc; '&gt;False&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;if&lt;/span&gt; &lt;span style='color:#e34adc; '&gt;__name__&lt;/span&gt; &lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#0000e6; '&gt;"__main__"&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;if&lt;/span&gt; &lt;span style='color:#e34adc; '&gt;len&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;sys&lt;span style='color:#808030; '&gt;.&lt;/span&gt;argv&lt;span style='color:#808030; '&gt;)&lt;/span&gt; &lt;span style='color:#808030; '&gt;!&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#008c00; '&gt;2&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;        &lt;span style='color:#800000; font-weight:bold; '&gt;print&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"usage: %s &amp;lt;action_id&gt;"&lt;/span&gt; &lt;span style='color:#808030; '&gt;%&lt;/span&gt; sys&lt;span style='color:#808030; '&gt;.&lt;/span&gt;argv&lt;span style='color:#808030; '&gt;[&lt;/span&gt;&lt;span style='color:#008c00; '&gt;0&lt;/span&gt;&lt;span style='color:#808030; '&gt;]&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;        sys&lt;span style='color:#808030; '&gt;.&lt;/span&gt;&lt;span style='color:#e34adc; '&gt;exit&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#008c00; '&gt;1&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    action_id &lt;span style='color:#808030; '&gt;=&lt;/span&gt; sys&lt;span style='color:#808030; '&gt;.&lt;/span&gt;argv&lt;span style='color:#808030; '&gt;[&lt;/span&gt;&lt;span style='color:#008c00; '&gt;1&lt;/span&gt;&lt;span style='color:#808030; '&gt;]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    mainloop &lt;span style='color:#808030; '&gt;=&lt;/span&gt; GObject&lt;span style='color:#808030; '&gt;.&lt;/span&gt;MainLoop&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    authority &lt;span style='color:#808030; '&gt;=&lt;/span&gt; Polkit&lt;span style='color:#808030; '&gt;.&lt;/span&gt;Authority&lt;span style='color:#808030; '&gt;.&lt;/span&gt;get&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    subject &lt;span style='color:#808030; '&gt;=&lt;/span&gt; Polkit&lt;span style='color:#808030; '&gt;.&lt;/span&gt;UnixProcess&lt;span style='color:#808030; '&gt;.&lt;/span&gt;new&lt;span style='color:#808030; '&gt;(&lt;/span&gt;os&lt;span style='color:#808030; '&gt;.&lt;/span&gt;getppid&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    cancellable &lt;span style='color:#808030; '&gt;=&lt;/span&gt; Gio&lt;span style='color:#808030; '&gt;.&lt;/span&gt;Cancellable&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    GObject&lt;span style='color:#808030; '&gt;.&lt;/span&gt;timeout_add&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#008c00; '&gt;10&lt;/span&gt; &lt;span style='color:#808030; '&gt;*&lt;/span&gt; &lt;span style='color:#008c00; '&gt;1000&lt;/span&gt;&lt;span style='color:#808030; '&gt;,&lt;/span&gt; do_cancel&lt;span style='color:#808030; '&gt;,&lt;/span&gt; cancellable&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    authority&lt;span style='color:#808030; '&gt;.&lt;/span&gt;check_authorization&lt;span style='color:#808030; '&gt;(&lt;/span&gt;subject&lt;span style='color:#808030; '&gt;,&lt;/span&gt;&lt;br /&gt;        action_id&lt;span style='color:#808030; '&gt;,&lt;/span&gt; &lt;span style='color:#696969; '&gt;#"org.freedesktop.policykit.exec",&lt;/span&gt;&lt;br /&gt;        &lt;span style='color:#e34adc; '&gt;None&lt;/span&gt;&lt;span style='color:#808030; '&gt;,&lt;/span&gt;&lt;br /&gt;        Polkit&lt;span style='color:#808030; '&gt;.&lt;/span&gt;CheckAuthorizationFlags&lt;span style='color:#808030; '&gt;.&lt;/span&gt;ALLOW_USER_INTERACTION&lt;span style='color:#808030; '&gt;,&lt;/span&gt;&lt;br /&gt;        cancellable&lt;span style='color:#808030; '&gt;,&lt;/span&gt;&lt;br /&gt;        check_authorization_cb&lt;span style='color:#808030; '&gt;,&lt;/span&gt;&lt;br /&gt;        mainloop&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    mainloop&lt;span style='color:#808030; '&gt;.&lt;/span&gt;run&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;In order to run this example, make sure you have the &lt;a href="http://apt.ubuntu.com/p/gir1.2-polkit-1.0"&gt;gir1.2-polkit-1.0&lt;/a&gt; package installed and provide an action in the command line, for example:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;./polkit-test org.freedesktop.policykit.exec&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;I suppose, the API is still a little rough on the edges, but it's already usable and I'm going to try it for an upcoming D-Bus service in &lt;a href="https://launchpad.net/indicator-cpufreq"&gt;indicator-cpufreq&lt;/a&gt;. Looks like it's perfect time to start moving things to GObject introspection already.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-4274597786298179842?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/4274597786298179842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2011/02/writing-policykit-applications-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/4274597786298179842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/4274597786298179842'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2011/02/writing-policykit-applications-in.html' title='Writing PolicyKit applications in Python without D-Bus'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-7589730066705849794</id><published>2011-02-18T16:38:00.001+06:00</published><updated>2011-02-18T17:33:51.395+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Hello Planet Ubuntu!</title><content type='html'>Greetings to all the Planet readers! I've become an Ubuntu member today (or was it yesterday in Americas?), and this is my first post on Planet Ubuntu.&lt;br /&gt;&lt;br /&gt;My name's Artem Popov and I am an active member of the &lt;a href="https://launchpad.net/~ubuntu-l10n-ru"&gt;Russian Ubuntu Translators&lt;/a&gt; team. Sometimes, I also help with packaging / bugs and I intend to become a MOTU in the future.&lt;br /&gt;&lt;br /&gt;Ubuntu is my favourite distribution for a long time now, because I believe it has many things done right from the very start. Contributing to Ubuntu is a great opportunity to gain new experience and it's always a pleasure to work with such a rocking community.&lt;br /&gt;&lt;br /&gt;For now, I am going to continue my work on translations and packages with the MOTU team, but maybe I shall try some other ways of helping out. Fortunately, there are &lt;a href="https://wiki.ubuntu.com/ContributeToUbuntu"&gt;plenty&lt;/a&gt; of them!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-7589730066705849794?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/7589730066705849794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2011/02/hello-planet-ubuntu.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7589730066705849794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7589730066705849794'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2011/02/hello-planet-ubuntu.html' title='Hello Planet Ubuntu!'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-7569902009428998015</id><published>2010-12-17T21:09:00.001+06:00</published><updated>2010-12-18T09:41:28.914+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='diy'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>CPU frequency indicator and DIY merchandise</title><content type='html'>I have been using Natty since Alpha 1 and I'm very happy with the new Unity desktop. It has surely got its bugs, but I almost love it. The drawbacks are that Unity doesn't support GNOME applets and doesn't seem to have a native application launcher yet. The latter problem is easily fixed by installing either &lt;a href="http://do.davebsd.com/"&gt;GNOME Do&lt;/a&gt; or &lt;a href="https://launchpad.net/synapse-project"&gt;Synapse&lt;/a&gt;. The applets, well... are not a big problem either, because I can't remember using any, except for the clock (replaced by an indicator) and the CPU frequency scaling applet, which had always saved me from all the JACK audio timing issues (with a single click).&lt;br /&gt;&lt;br /&gt;There is no indicator for selecting CPU frequency scaling mode, so I decided to write my own. I started with Jono Bacon's tutorial &lt;a href="http://www.jonobacon.org/2009/12/17/application-indicators-in-python/"&gt;here&lt;/a&gt; and used cpufreq-selector D-Bus service (bundled with the Gnome applet) to switch between governors. This functionality is also &lt;a href="http://blog.homac.de/2006/08/25/cpu-frequency-scaling-in-hal.html"&gt;provided&lt;/a&gt; by HAL, but HAL is deprecated in favour of DeviceKit, which doesn't support frequency scaling right now. I think I'll have to add a dedicated D-Bus service in the future to get rid of gnome-applets dependency... And this is how it all currently looks:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/lh/photo/eGayAFimIKrp09S49EIFNg?feat=embedwebsite"&gt;&lt;img height="300" src="http://lh3.ggpht.com/_3HE50Du1eV8/TQs42hVVV4I/AAAAAAAACfg/PzCT--6OW0I/s800/indicator-cpufreq.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Thanks to &lt;a href="https://launchpad.net/quickly"&gt;Quickly&lt;/a&gt;, an Ubuntu package was a piece of cake. You can install it from &lt;a href="https://launchpad.net/~artfwo/+archive/ppa"&gt;here&lt;/a&gt; or grab the source from &lt;a href="https://launchpad.net/indicator-cpufreq"&gt;project page&lt;/a&gt; in Launchpad. Please report any issues. Thanks!&lt;br /&gt;&lt;br /&gt;Another thing that bothers me, is an almost critical bug with the &lt;a href="http://shop.canonical.com/product_info.php?products_id=704"&gt;Ubuntu Beanie Hat&lt;/a&gt; from Canonical store. It just cannot stand low temperatures in winter and is unsafe to wear outside. I wonder, if there is a Launchpad project to report bugs against Ubuntu merchandise :) Anyway, I came up with a simple workaround, which works if you're not afraid of DIY:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Get an &lt;a href="http://en.wikipedia.org/wiki/Ushanka"&gt;ushanka&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Attach an Ubuntu button badge (I used a really old one).&lt;/li&gt;&lt;li&gt;Have fun with the new &lt;i&gt;Ubuntu ushanka&lt;/i&gt;!&lt;/li&gt;&lt;/ol&gt;&lt;a href="http://picasaweb.google.com/lh/photo/s9kgQhhDcs3aFAvGT3QHhA?feat=embedwebsite"&gt;&lt;img height="300" src="http://lh4.ggpht.com/_3HE50Du1eV8/TQsyLRMbECI/AAAAAAAACfM/pJjiP5qD5GI/s400/DSC02631.JPG" width="400" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-7569902009428998015?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/7569902009428998015/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2010/12/cpu-frequency-indicator-and-diy.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7569902009428998015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7569902009428998015'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2010/12/cpu-frequency-indicator-and-diy.html' title='CPU frequency indicator and DIY merchandise'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_3HE50Du1eV8/TQs42hVVV4I/AAAAAAAACfg/PzCT--6OW0I/s72-c/indicator-cpufreq.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-8635425375713148100</id><published>2010-05-30T20:27:00.000+07:00</published><updated>2010-05-30T20:27:13.831+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Better firewire audio support comes to Maverick</title><content type='html'>Maverick Meerkat development has started with some big changes on the professional audio front. Last week JACK2 (aka jackdmp) has finally replaced the original JACK in Ubuntu. And that's not all! There are FFADO packages, updated to work with the new firewire stack (alias Juju), which in turn is fully supported by the Maverick kernel. The news made me immediately upgrade to Maverick as soon as I've noticed a new libffado source upload in the &lt;a href="http://feeds.ubuntu-nl.org/MaverickChanges"&gt;Maverick changes&lt;/a&gt; feed... For now, I am very pleased with the result. But using JACK2 with a Juju-powered backend may require a little bit of work, that I am going to describe below.&lt;br /&gt;&lt;br /&gt;First of all, the new FFADO packages currently fail to build on Maverick, because of a Python policy violation (&lt;a href="https://launchpad.net/bugs/586821"&gt;bug 586821&lt;/a&gt;). A fix is underway, but I didn't want to wait and built a quick-and-dirty workaround package. If you like workarounds too, feel free to install libffado binaries from &lt;a href="https://launchpad.net/~artfwo/+archive/ppa"&gt;my PPA&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Second, to use the new firewire stack, FFADO needs at least libraw1394-2.0.5, which is also missing from Maverick. Hopefully the new version will be merged or synced from Debian soon (&lt;a href="https://launchpad.net/bugs/586918"&gt;bug 586918&lt;/a&gt;), but if you don't want to wait again, you can install the package from my PPA as well. That will work.&lt;br /&gt;&lt;br /&gt;Next, the old firewire stack has to be blacklisted. Simply edit &lt;b&gt;/etc/modprobe.d/blacklist-firewire.conf&lt;/b&gt; to look like:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;blacklist ohci1394&lt;br /&gt;blacklist sbp2&lt;br /&gt;blacklist dv1394&lt;br /&gt;blacklist raw1394&lt;br /&gt;blacklist video1394&lt;br /&gt;&lt;br /&gt;#blacklist firewire-ohci&lt;br /&gt;#blacklist firewire-sbp2&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Finally, run &lt;b&gt;"sudo update-initramfs -k all -u"&lt;/b&gt; and reboot. That's it... One thing to remember is that Juju creates device nodes with /dev/fw* paths without write access by default. This is easily fixed by a little udev tweak (example configuration may be found &lt;a href="http://www.kdenlive.org/user-manual/troubleshooting-and-common-problems/troubleshooting-firewire-capture"&gt;here&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Just to be safe, I also updated my rtirq settings to increase the priority of firewire_ohci IRQ service. It will not make things faster right now, because rtirq requires a realtime kernel, which has not been updated for Maverick (yet).&lt;br /&gt;&lt;br /&gt;I like the fact, that all existing JACK applications work without any extra configuration or recompilation. This includes QJackCtl, Qtractor, SuperCollider, JAMin, energyXT... Only Renoise &amp;nbsp;started to hang and produce bad noises, until I switched the "Realtime audio CPUs" parameter to 1. Most likely it has something to do with JACK's own multicore support.&lt;br /&gt;&lt;br /&gt;Some applications may also display strange port names (like firewire_pcm:0500000000000000_Unknown5_out). Luckily, JACK provides port aliases in the "system:playback_N" form. Aliases seem to work transparently for connecting/disconnecting ports, but QJackCtl will only display them if you set the appropriate option in the setup dialog.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;Audio streaming is &lt;i&gt;generally&lt;/i&gt; stable most of the time, but I've heard glitches with both the internal firewire controller (Ricoh R5C832 rev 05) and an ExpressCard controller (Texas Instruments XIO2200). So, I would not recommend performing live with Maverick right now. Nevertheless, it is great to see the progressing firewire audio support in Ubuntu. Juju migration is one of the Maverick development targets, and there is a &lt;a href="https://blueprints.launchpad.net/ubuntu/+spec/kernel-maverick-firewire-stack/"&gt;blueprint&lt;/a&gt; to track the process.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-8635425375713148100?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/8635425375713148100/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2010/05/better-firewire-audio-support-comes-to.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8635425375713148100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8635425375713148100'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2010/05/better-firewire-audio-support-comes-to.html' title='Better firewire audio support comes to Maverick'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-8827130647699481060</id><published>2009-08-18T00:21:00.002+07:00</published><updated>2009-08-18T00:27:24.759+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Scan Tailor package</title><content type='html'>I didn't expect this to happen in the Karmic release cycle, and I'm very happy, that I actually managed to do it. Today is the day, when my first package has made its way into Ubuntu! Well, not exactly the first, since I have uploaded several sponsored bugfixes in the past, but this is my first real Ubuntu package made from scratch, that has passed all of the Ubuntu requirements. This would not be possible without people from #ubuntu-motu, who have been constantly helping out and correcting (sometimes really stupid) mistakes! Thank you, guys!&lt;br /&gt;&lt;br /&gt;And now I'd like to introduce this little piece of software. It is quite a nice application, called &lt;a href="http://scantailor.sourceforge.net/"&gt;Scan Tailor&lt;/a&gt; by Joseph Artsimovich et al. and it's purpose is to cleanup and arrange raw document scans into sets of pages, ready for OCR, assembling into a book or printing. For an idea of what it looks like, here's a couple of screenshots:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_3HE50Du1eV8/Sol5GqdCftI/AAAAAAAAB24/sxAAQG-vJB8/s1600-h/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA-Unnamed+-+Scan+Tailor+0.9.6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_3HE50Du1eV8/Sol5GqdCftI/AAAAAAAAB24/sxAAQG-vJB8/s200/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA-Unnamed+-+Scan+Tailor+0.9.6.png" /&gt;&lt;/a&gt; &lt;a href="http://4.bp.blogspot.com/_3HE50Du1eV8/Sol5cMFQetI/AAAAAAAAB3A/PP8nsF-dKZY/s1600-h/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA-Unnamed+-+Scan+Tailor+0.9.6-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_3HE50Du1eV8/Sol5cMFQetI/AAAAAAAAB3A/PP8nsF-dKZY/s200/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA-Unnamed+-+Scan+Tailor+0.9.6-1.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In short, if you've been looking for an application for cropping, deskewing and splitting your scans in Linux, well... There is one and a very good one! Also, besides being a very useful tool for anybody digitizing moderate to large amounts of text, Scan Tailor rocks, because it shows the essential signs of a true UNIX app:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;It does &lt;i&gt;one&lt;/i&gt; thing and does it well.&lt;/li&gt;&lt;li&gt;It is suitable for processing both tiny and massive amounts of data.&lt;/li&gt;&lt;li&gt;It does most of the work for you, yet still allows manual control over everything.&lt;/li&gt;&lt;li&gt;It is free and open source.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Last, but not least, it is &lt;i&gt;very&lt;/i&gt; friendly and fun to use. And you can try out this amazing application by simply clicking an &lt;a href="apt:scantailor"&gt;apturl link&lt;/a&gt;, if you have Karmic installed and there are builds for Jaunty in my &lt;a href="https://launchpad.net/%7Eartfwo/+archive/ppa"&gt;Launchpad PPA&lt;/a&gt; as well. It's still got a picky &lt;a href="https://launchpad.net/ubuntu/+source/scantailor/0.9.6-0ubuntu1/+build/1159001"&gt;FTBFS&lt;/a&gt; on armel, but I hope, that I shall be able to track it. This is where the things are starting to get really exciting!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-8827130647699481060?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/8827130647699481060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2009/08/scan-tailor-package.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8827130647699481060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8827130647699481060'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2009/08/scan-tailor-package.html' title='Scan Tailor package'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_3HE50Du1eV8/Sol5GqdCftI/AAAAAAAAB24/sxAAQG-vJB8/s72-c/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA-Unnamed+-+Scan+Tailor+0.9.6.png' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-2260962122831908090</id><published>2009-03-15T08:55:00.000+06:00</published><updated>2009-03-15T08:55:28.281+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Open source acceleration on r600/r700</title><content type='html'>Well, this is something that we, Radeon owners, have surely been waiting for. Thanks to the hard work of X.org and Ubuntu developers, an open source driver with 2D and XVideo acceleration support has recently hit the repositories (&lt;a href="https://launchpad.net/ubuntu/jaunty/+source/xserver-xorg-video-ati/1:6.11.0+git20090310.945ccbbd-0ubuntu1"&gt;changelog&lt;/a&gt;). But, unfortunately, the driver still depends on kernel support, that has not been uploaded yet.&lt;br /&gt;&lt;br /&gt;Anyway, if you don't want to wait for the kernel packages, the X.org wiki has &lt;a href="http://wiki.x.org/wiki/radeonhd%3Ar6xx_r7xx_branch"&gt;cool instructions&lt;/a&gt; on building the latest DRM from source, and they just worked for me like a charm! For some extra confidence, I also did a "depmod -a" and "update-initramfs -u" after copying the modules in their places.&lt;br /&gt;&lt;br /&gt;If everything goes well, here's what you'll get in your Xorg.0.log:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;(==) RADEON(0): Using EXA acceleration architecture&lt;br /&gt;(II) RADEON(0): Acceleration enabled&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;And of course, the difference is easily noticeable. Especially if you like moving and switching windows :) The video support is also outstanding. Even high resolution clips (like &lt;a href="http://www.bigbuckbunny.org/"&gt;Big Buck Bunny&lt;/a&gt; or the &lt;a href="http://ati.amd.com/ruby/index.html"&gt;Ruby videos&lt;/a&gt;) play VERY smoothly and are quickly switched into and out of fullscreen. Really cool! And they say, EXA acceleration should work with radeonhd as well by now, but I haven't tried this myself yet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-2260962122831908090?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/2260962122831908090/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2009/03/open-source-acceleration-on-r600r700.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/2260962122831908090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/2260962122831908090'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2009/03/open-source-acceleration-on-r600r700.html' title='Open source acceleration on r600/r700'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-8576365080630704144</id><published>2009-03-09T14:00:00.010+06:00</published><updated>2009-03-09T15:15:00.427+06:00</updated><title type='text'>aoTuV Beta5.7</title><content type='html'>Just in case, you'd like to try out the latest beta on Linux and need a static binary, here's mine - &lt;a href="http://artfwo.googlepages.com/oggenc-aotuvb5d.bz2"&gt;oggenc-aotuvb5d.bz2&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;FLAC and Kate support included!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-8576365080630704144?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/8576365080630704144/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2009/03/aotuv-beta57.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8576365080630704144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8576365080630704144'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2009/03/aotuv-beta57.html' title='aoTuV Beta5.7'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-5291894178233576716</id><published>2009-01-31T19:11:00.044+06:00</published><updated>2009-01-31T20:52:52.925+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Python 3.0 / Hex On!</title><content type='html'>This week, I've started playing with &lt;a href="http://docs.python.org/3.0/whatsnew/3.0.html"&gt;Python 3.0&lt;/a&gt; (aka Py3k). The final 3.0 version had been released in December, so there is only a release candidate available in the Intrepid repositories, but I didn't care. In fact, it was dead easy to install - simply &lt;em&gt;apt-get install python3&lt;/em&gt; and you're all set!&lt;br /&gt;&lt;br /&gt;Among the things, that amazed me the most, is a new &lt;a href="http://docs.python.org/3.0/library/fractions.html"&gt;fractions&lt;/a&gt; module (actually existing since Python 2.6), that provides support for rational numbers! What are rational numbers good for? Well, they're invaluable for pretty much anything, that involves &lt;a href="http://en.wikipedia.org/wiki/Just_intonation"&gt;just intonation&lt;/a&gt;, to say the least!&lt;br /&gt;&lt;br /&gt;For example, here's how I've managed to code a simple &lt;a href="http://en.wikipedia.org/wiki/Hexany"&gt;Hexany&lt;/a&gt; generator in almost no time! Roughly speaking, a hexany is created from several prime (or not so prime) numbers, that are multiplied together in pairs to form a set. To get a scale out of it, the resulting numbers should be divided by a chosen "base note" and reduced to the octave range. So, first of all, we'll need a simple octave reduction function:&lt;br /&gt;&lt;pre style='color:#000000;background:#ffffff;'&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;def&lt;/span&gt; octave_range&lt;span style='color:#808030; '&gt;(&lt;/span&gt;fr&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;if&lt;/span&gt; fr &lt;span style='color:#808030; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#008c00; '&gt;0&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;raise&lt;/span&gt; &lt;span style='color:#e34adc; '&gt;ValueError&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"Invalid frequency ratio"&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;elif&lt;/span&gt; fr &lt;span style='color:#808030; '&gt;&gt;&lt;/span&gt; &lt;span style='color:#008c00; '&gt;2&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;return&lt;/span&gt; octave_range&lt;span style='color:#808030; '&gt;(&lt;/span&gt;fr &lt;span style='color:#808030; '&gt;/&lt;/span&gt; &lt;span style='color:#008c00; '&gt;2&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;elif&lt;/span&gt; fr &lt;span style='color:#808030; '&gt;&amp;lt;&lt;/span&gt; &lt;span style='color:#008c00; '&gt;1&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;return&lt;/span&gt; octave_range&lt;span style='color:#808030; '&gt;(&lt;/span&gt;fr &lt;span style='color:#808030; '&gt;*&lt;/span&gt; &lt;span style='color:#008c00; '&gt;2&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#800000; font-weight:bold; '&gt;else&lt;/span&gt;&lt;span style='color:#808030; '&gt;:&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;return&lt;/span&gt; fr&lt;br /&gt;&lt;/pre&gt;Now, let's define a "base note" and use set comprehension (another Py3k feature) to fill the CPS with permutations of numbers from the Wikipedia example:&lt;br /&gt;&lt;pre style='color:#000000;background:#ffffff;'&gt;nums &lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#808030; '&gt;[&lt;/span&gt;&lt;span style='color:#008c00; '&gt;2&lt;/span&gt;&lt;span style='color:#808030; '&gt;,&lt;/span&gt; &lt;span style='color:#008c00; '&gt;3&lt;/span&gt;&lt;span style='color:#808030; '&gt;,&lt;/span&gt; &lt;span style='color:#008c00; '&gt;5&lt;/span&gt;&lt;span style='color:#808030; '&gt;,&lt;/span&gt; &lt;span style='color:#008c00; '&gt;7&lt;/span&gt;&lt;span style='color:#808030; '&gt;]&lt;/span&gt;&lt;br /&gt;base &lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#008c00; '&gt;5&lt;/span&gt; &lt;span style='color:#808030; '&gt;*&lt;/span&gt; &lt;span style='color:#008c00; '&gt;7&lt;/span&gt;&lt;br /&gt;cmps &lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#800080; '&gt;{&lt;/span&gt;a &lt;span style='color:#808030; '&gt;*&lt;/span&gt; b &lt;span style='color:#800000; font-weight:bold; '&gt;for&lt;/span&gt; a &lt;span style='color:#800000; font-weight:bold; '&gt;in&lt;/span&gt; nums &lt;span style='color:#800000; font-weight:bold; '&gt;for&lt;/span&gt; b &lt;span style='color:#800000; font-weight:bold; '&gt;in&lt;/span&gt; nums &lt;span style='color:#800000; font-weight:bold; '&gt;if&lt;/span&gt; a &lt;span style='color:#808030; '&gt;!&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt; b&lt;span style='color:#800080; '&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;And thanks to the fractions support, the final step is also going to be the easiest:&lt;br /&gt;&lt;pre style='color:#000000;background:#ffffff;'&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;from&lt;/span&gt; fractions &lt;span style='color:#800000; font-weight:bold; '&gt;import&lt;/span&gt; Fraction&lt;br /&gt;hexany &lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#808030; '&gt;[&lt;/span&gt;octave_range&lt;span style='color:#808030; '&gt;(&lt;/span&gt;Fraction&lt;span style='color:#808030; '&gt;(&lt;/span&gt;note&lt;span style='color:#808030; '&gt;,&lt;/span&gt; base&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;for&lt;/span&gt; note &lt;span style='color:#800000; font-weight:bold; '&gt;in&lt;/span&gt; cmps&lt;span style='color:#808030; '&gt;]&lt;/span&gt;&lt;br /&gt;hexany&lt;span style='color:#808030; '&gt;.&lt;/span&gt;sort&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;The code is also suitable for producing dekanies and other scales, based on Wilson's combination product sets. I still have to figure out the proper ways of using them in music though :P&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-5291894178233576716?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/5291894178233576716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2009/01/python-30-hex-on.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/5291894178233576716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/5291894178233576716'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2009/01/python-30-hex-on.html' title='Python 3.0 / Hex On!'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-7840719155301382434</id><published>2009-01-26T09:00:00.001+06:00</published><updated>2009-01-26T09:07:17.591+06:00</updated><title type='text'>Updates</title><content type='html'>There's not much to write about, but here are several quick updates to keep this feed alive... First of all, Sced source code has been moved to the SuperCollider SVN tree, so any further development is going to continue out there... Another good news is that our favourite text editor - gedit is probably going to have some kind of D-Bus interface for the 2.26 release. So things like &lt;a href="http://www.listarc.bham.ac.uk/lists/sc-dev-2007/msg02136.html"&gt;ScedDocument&lt;/a&gt; (and other means of feedback from sclang) could be finally made possible.&lt;br /&gt;&lt;br /&gt;I have moved the few Russian posts in this blog into &lt;a href="http://ratzez.blogspot.com"&gt;ratzez.blogspot.com&lt;/a&gt;, thanks to the Blogger &lt;a href="http://help.blogger.com/bin/answer.py?answer=97416"&gt;import and export&lt;/a&gt; feature. It means, that from now on, I shall continue writing in English here and the secondary blog will be in Russian. Looks like it also makes the Blogger interface more convenient, 'cause the engine does not seem to respect the browser language anyway...&lt;br /&gt;&lt;br /&gt;And yet one more thing, just in case you'd like to add a little Human look to your code... It can be done with a couple of &lt;a href="http://www.ubuntu-art.org/usermanager/search.php?username=artfwo&amp;action=contents"&gt;Ubuntu-coloured themes&lt;/a&gt; for GtkSourceView. They're not quite polished yet, but already seem to nicely fit an all-human environment...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-7840719155301382434?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/7840719155301382434/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2009/01/updates.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7840719155301382434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7840719155301382434'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2009/01/updates.html' title='Updates'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-7859856282899400805</id><published>2008-11-23T12:37:00.013+06:00</published><updated>2009-01-29T08:23:53.648+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='supercollider'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><title type='text'>Back in Black</title><content type='html'>There are several big changes in &lt;a href="http://artfwo.googlepages.com/sced"&gt;Sced&lt;/a&gt; expected in the near future, so today I'm releasing the latest stable &lt;span style="font-weight: bold;"&gt;0.4&lt;/span&gt; version, that does not introduce any new features, but has fixes for a couple of long-standing bugs.&lt;br /&gt;&lt;br /&gt;It's worth mentioning however, that this version is a lot more compatible with stock and third-party style schemes for Gedit. That means, that your SuperCollider code is going to look cool and stylish, even with the darkest of them... Oh, and quite a number of themes is already available through &lt;a href="http://live.gnome.org/GtkSourceView/StyleSchemes"&gt;this page&lt;/a&gt; at GNOME Live. Go and check them out!&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_3HE50Du1eV8/SSj6ipT-EoI/AAAAAAAABFg/kLf3OcM3VNU/s1600-h/darkmacs-liberation.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5271738836949275266" src="http://3.bp.blogspot.com/_3HE50Du1eV8/SSj6ipT-EoI/AAAAAAAABFg/kLf3OcM3VNU/s200/darkmacs-liberation.png" style="cursor: pointer; height: 140px; width: 118px;" /&gt;&lt;/a&gt; &lt;a href="http://1.bp.blogspot.com/_3HE50Du1eV8/SSj64dnRKyI/AAAAAAAABFo/mY6U0_ytfGc/s1600-h/desert-radiation.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5271739211766115106" src="http://1.bp.blogspot.com/_3HE50Du1eV8/SSj64dnRKyI/AAAAAAAABFo/mY6U0_ytfGc/s200/desert-radiation.png" style="cursor: pointer; height: 140px; width: 118px;" /&gt;&lt;/a&gt; &lt;a href="http://4.bp.blogspot.com/_3HE50Du1eV8/SSj7Q2vGoCI/AAAAAAAABFw/Da1h61CH0bc/s1600-h/oblivion-swift.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5271739630826725410" src="http://4.bp.blogspot.com/_3HE50Du1eV8/SSj7Q2vGoCI/AAAAAAAABFw/Da1h61CH0bc/s200/oblivion-swift.png" style="cursor: pointer; height: 140px; width: 118px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_3HE50Du1eV8/SSj7iHBAXbI/AAAAAAAABF4/fSALO53uJ_4/s1600-h/emacsdark-penguin.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5271739927254556082" src="http://3.bp.blogspot.com/_3HE50Du1eV8/SSj7iHBAXbI/AAAAAAAABF4/fSALO53uJ_4/s200/emacsdark-penguin.png" style="cursor: pointer; height: 140px; width: 118px;" /&gt;&lt;/a&gt; &lt;a href="http://4.bp.blogspot.com/_3HE50Du1eV8/SSj7zhhDeXI/AAAAAAAABGA/33x8YFCt6e8/s1600-h/cobalt-birdeye.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5271740226426075506" src="http://4.bp.blogspot.com/_3HE50Du1eV8/SSj7zhhDeXI/AAAAAAAABGA/33x8YFCt6e8/s200/cobalt-birdeye.png" style="cursor: pointer; height: 140px; width: 118px;" /&gt;&lt;/a&gt; &lt;a href="http://1.bp.blogspot.com/_3HE50Du1eV8/SSj7987j8II/AAAAAAAABGI/bGopolXuPdE/s1600-h/turbo-teen.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5271740405583704194" src="http://1.bp.blogspot.com/_3HE50Du1eV8/SSj7987j8II/AAAAAAAABGI/bGopolXuPdE/s200/turbo-teen.png" style="cursor: pointer; height: 140px; width: 118px;" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;One more thing. In order to make your Gedit even more great and powerful, make sure you also get the &lt;a href="http://live.gnome.org/Gedit/Plugins#line-204"&gt;fullscreen plugin&lt;/a&gt; and the &lt;span style="font-weight: bold;"&gt;gedit-plugins&lt;/span&gt; package from your distro. The former enables the fullscreen mode for the distraction-free coding (or some live demos, perhaps), and the latter has some neat extensions like bracket completion and tabbar-disabler for an even cleaner workspace!&lt;br /&gt;&lt;br /&gt;The Sced tarball itself is available through the &lt;a href="http://artfwo.googlepages.com/sced"&gt;usual location&lt;/a&gt; and the Debian/Ubuntu packages should be already in the &lt;a href="https://launchpad.net/~artfwo/+archive/ppa"&gt;PPA&lt;/a&gt; at the time of writing. Just in case you missed the installation instructions, check the &lt;a href="http://artfwo.blogspot.com/2008/05/supercollider-for-human-beings.html"&gt;following post&lt;/a&gt; for a short tutorial. And, of course, your feedback is much appreciated.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-7859856282899400805?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/7859856282899400805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/11/back-in-black.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7859856282899400805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7859856282899400805'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/11/back-in-black.html' title='Back in Black'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_3HE50Du1eV8/SSj6ipT-EoI/AAAAAAAABFg/kLf3OcM3VNU/s72-c/darkmacs-liberation.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-663399908532740873</id><published>2008-10-15T07:55:00.001+07:00</published><updated>2009-01-26T10:44:02.892+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>They did it!</title><content type='html'>Yeah, I'm now running my Intrepid setup with a shiny new &lt;b&gt;fglrx-8.543&lt;/b&gt;. It installs, it runs, it works with Jockey! Right in time, when I've started to lose my hope...&lt;br /&gt;&lt;br /&gt;And I can even watch the video and play games - something I've been missing since I have installed Intrepid back in August :) My huge thanks to all the AMD/ATi and Ubuntu developers who have brought the driver back to us!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-663399908532740873?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/663399908532740873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/10/they-did-it.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/663399908532740873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/663399908532740873'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/10/they-did-it.html' title='They did it!'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-7910541074948257366</id><published>2008-10-03T12:44:00.003+07:00</published><updated>2009-01-26T10:44:02.892+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='supercollider'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Time for some colliding under Ibex...</title><content type='html'>Dang, it looks like I write in this blog, only when I publish the new SuperCollider binaries... Anyway, if you're interested in trying the latest (7803) SVN snapshot the easy way, it's now available (for Intrepid as well)!&lt;br /&gt;&lt;br /&gt;The instructions for installing the SuperCollider debs (and making some sounds) may be found in an &lt;a href="http://artfwo.blogspot.com/2008/05/supercollider-for-human-beings.html"&gt;earlier howto&lt;/a&gt;, but I also think of writing another introductory tutorial on Synths and SynthDefs in the next few days...&lt;br /&gt;&lt;br /&gt;And most importantly, I'm probably going to perform a bit of live SC noise by the end of October. So any comments and tips, esp. from those of you, who have played live with SC/Linux are kindly welcome :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-7910541074948257366?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/7910541074948257366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/10/time-for-some-colliding-under-ibex_03.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7910541074948257366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/7910541074948257366'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/10/time-for-some-colliding-under-ibex_03.html' title='Time for some colliding under Ibex...'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-8760503545569304842</id><published>2008-09-14T09:04:00.000+07:00</published><updated>2009-01-26T10:44:02.892+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Just couldn't resist...</title><content type='html'>For the &lt;a href="http://effiejayx.velugmaracaibo.org.ve/?p=156"&gt;meme&lt;/a&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;teaquetzl&lt;/li&gt;&lt;li&gt;roppongi&lt;/li&gt;&lt;li&gt;carthax&lt;/li&gt;&lt;/ul&gt;All of 'em are named after places (real and fictional) :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-8760503545569304842?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/8760503545569304842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/09/just-couldnt-resist.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8760503545569304842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8760503545569304842'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/09/just-couldnt-resist.html' title='Just couldn&apos;t resist...'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-9089520395173996997</id><published>2008-05-21T18:50:00.010+07:00</published><updated>2010-09-18T10:09:39.395+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='supercollider'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>SuperCollider for Human Beings</title><content type='html'>This time with &lt;span style="font-weight: bold;"&gt;gedit&lt;/span&gt; support!!!&lt;br /&gt;&lt;br /&gt;And here's a short hands-on tutorial, just in case anyone would like to try out this extremely efficient synthesis environment for the first time...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;UPDATE:&lt;/b&gt;The best way to get semi-official SuperCollider packages is the &lt;a href="http://launchpad.net/~supercollider/+archive/ppa"&gt;SuperCollider PPA&lt;/a&gt;. Check its page for instructions on adding the repository.&lt;br /&gt;&lt;br /&gt;After you've successfully added the PPA to your software sources, install &lt;span style="font-weight: bold;"&gt;supercollider&lt;/span&gt; and &lt;span style="font-weight: bold;"&gt;supercollider-gedit&lt;/span&gt; packages.&lt;br /&gt;&lt;br /&gt;&lt;!--&lt;b&gt;UPDATE:&lt;/b&gt; the binaries also work with the &lt;a href="http://swiki.hfbk-hamburg.de:8888/MusicTechnology/879"&gt;amd64/chroot configuration&lt;/a&gt;, that's commonly used for native execution of SC3 on 64-bit distributions. Thanks to Sornen for the instructions, which you can read &lt;a href="http://artfwo.blogspot.com/2008/04/supercollider-for-hardy.html?showComment=1223189340000#c9043691286613391933"&gt;here&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;UPDATE:&lt;/b&gt; the PPA is now signed with a generated key, which can be added to your system with the following command:&lt;br /&gt;&lt;blockquote&gt;gpg --keyserver keyserver.ubuntu.com --recv DD9300F1 &amp;&amp; gpg --export --armor DD9300F1 | sudo apt-key add -&lt;/blockquote&gt;&lt;br /&gt;The i386 (and amd64 server-only) packages are available through my &lt;a href="https://launchpad.net/~artfwo/+archive/ppa"&gt;PPA&lt;/a&gt;. In order to install them on Hardy, add the following lines to your sources.list (replace &lt;b&gt;hardy&lt;/b&gt; with &lt;b&gt;intrepid&lt;/b&gt; or &lt;b&gt;jaunty&lt;/b&gt; to suit your Ubuntu version):&lt;br /&gt;&lt;pre&gt;deb http://ppa.launchpad.net/artfwo/ppa/ubuntu hardy main&lt;br /&gt;deb-src http://ppa.launchpad.net/artfwo/ppa/ubuntu hardy main&lt;/pre&gt;And apt-get install &lt;span style="font-weight: bold;"&gt;supercollider&lt;/span&gt; and &lt;span style="font-weight: bold;"&gt;supercollider-gedit&lt;/span&gt; packages:&lt;br /&gt;&lt;pre&gt;sudo apt-get update &amp;amp;&amp;amp; sudo apt-get install supercollider supercollider-gedit&lt;/pre&gt;--&gt;&lt;br /&gt;&lt;br /&gt;Then start gedit and open Edit-&amp;gt;Preferences. Enable &lt;span style="font-weight: bold;"&gt;Sced&lt;/span&gt; plugin from the Plugins tab:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bp1.blogger.com/_3HE50Du1eV8/SDP1m4JRp3I/AAAAAAAAAnM/xFo0hmxov0w/s1600-h/Screenshot-gedit+Preferences.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5202772042798180210" src="http://bp1.blogger.com/_3HE50Du1eV8/SDP1m4JRp3I/AAAAAAAAAnM/xFo0hmxov0w/s200/Screenshot-gedit+Preferences.png" style="cursor: pointer; display: block; margin: 0px auto 10px; text-align: center;" /&gt;&lt;/a&gt;&lt;br /&gt;Okay, now we can try the interpreter. Select Tools-&amp;gt;SuperCollider Mode from the gedit menu. The SuperCollider output panel will appear with a message that SuperCollider has started. Now type the following code just inside the currently open document:&lt;br /&gt;&lt;pre&gt;"Hello, World!".postln;&lt;/pre&gt;Make sure that the cursor is on the same line and press CTRL+E. You should see "Hello, World" printed two times in the output window. The string is duplicated because "postln" returned the same string as a value, and the output also prints the results of the evaluated expressions.&lt;br /&gt;&lt;br /&gt;If you'd like to get some sound, make sure that JACK is started. If not, start it with qjackctl or the following command:&lt;br /&gt;&lt;pre&gt;jackd -d alsa&lt;/pre&gt;After JACK has started, select SuperCollider-&amp;gt;Start Server from the gedit menu and execute the following code string, just like we did with the "Hello, World" example above:&lt;br /&gt;&lt;pre&gt;{SinOsc.ar}.play;&lt;/pre&gt;You should hear an annoying beep from your left speaker. Not much, huh? Well, press ESC (Stop Sound) inside gedit for now. And append something like the following code to your document (yes, you can do all the work in the same document):&lt;br /&gt;&lt;pre&gt;// This example is a modified patch&lt;br /&gt;// from the SuperCollider book by David Cottle&lt;br /&gt;// You can enable syntax highlighting&lt;br /&gt;// by selecting View-&amp;gt;Highlight Mode-&amp;gt;Others-&amp;gt;SuperCollider&lt;br /&gt;( // press CTRL+E here&lt;br /&gt;{&lt;br /&gt;  RLPF.ar(&lt;br /&gt;    Saw.ar(55),&lt;br /&gt;    LFNoise1.kr([5, 5], mul: 440, add: 880),&lt;br /&gt;    0.1,&lt;br /&gt;    mul: 0.25&lt;br /&gt;  )&lt;br /&gt;}.play;&lt;br /&gt;)&lt;/pre&gt;Note the brackets around the actual code. They're used to group code together into "blocks" and execute SuperCollider instructions simultaneously. In this example you will need to press CTRL+E where indicated to select and run our block. Remember, that you can shutdown the sound anytime with ESC! :)&lt;br /&gt;&lt;br /&gt;As you can see, we have a Saw oscillator, connected to a resonant low-pass filter (RLPF) here and the cutoff frequency is controlled by an interpolated random value (LFNoise1). You can open reference pages for the respective modules (UGens) by positioning the cursor over them and pressing CTRL+U, but make sure that you install &lt;span style="font-weight: bold;"&gt;supercollider-doc&lt;/span&gt; package to get those.&lt;br /&gt;&lt;br /&gt;Well, I hope this tutorial will help you get started with SuperCollider. Make sure you also stop by the SuperCollider &lt;a href="http://supercollider.sourceforge.net/"&gt;website&lt;/a&gt; and the &lt;a href="http://swiki.hfbk-hamburg.de/MusicTechnology/6"&gt;wiki&lt;/a&gt; for more tutorials and examples.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-9089520395173996997?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/9089520395173996997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/05/supercollider-for-human-beings.html#comment-form' title='59 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/9089520395173996997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/9089520395173996997'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/05/supercollider-for-human-beings.html' title='SuperCollider for Human Beings'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_3HE50Du1eV8/SDP1m4JRp3I/AAAAAAAAAnM/xFo0hmxov0w/s72-c/Screenshot-gedit+Preferences.png' height='72' width='72'/><thr:total>59</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-542472943364994641</id><published>2008-05-02T13:58:00.004+07:00</published><updated>2009-01-29T08:28:23.358+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='music'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>aoTuV beta5.5</title><content type='html'>Decided to encode some recently purchased CDs at last, but due to a complete Hardy reinstall last week, I've had to go for some fresh &lt;a href="http://www.geocities.jp/aoyoume/aotuv/"&gt;aoTuV&lt;/a&gt; vorbis sources and to my suprise there has been a new beta available for quite some time already!&lt;br /&gt;&lt;br /&gt;I don't think this version is substantially different from beta5 (aka 4.51), I can't hear any difference between the encoded file and the original at q6 (which is my default quality setting) and both versions produce seemingly identical output to me.&lt;br /&gt;&lt;br /&gt;Nevertheless, I've decided to stick with beta5.5 just because it's the latest :) But I couldn't resist building a patched Ubuntu package besides a static oggenc binary, which I've always compiled for this purposes before (simply to keep the system libraries intact).&lt;br /&gt;&lt;br /&gt;Just in case anyone's interested in trying beta5.5, the updated libvorbis binaries can be found in my &lt;a href="https://launchpad.net/~artfwo/+archive/ppa"&gt;PPA&lt;/a&gt;, but the statically linked oggenc 1.2.0 binary is &lt;a href="http://artfwo.googlepages.com/oggenc-aotuvb5a.bz2"&gt;available&lt;/a&gt; as well.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-542472943364994641?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/542472943364994641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/05/aotuv-beta55.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/542472943364994641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/542472943364994641'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/05/aotuv-beta55.html' title='aoTuV beta5.5'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-8108676277790719144</id><published>2008-04-14T18:40:00.005+07:00</published><updated>2009-01-29T08:29:21.024+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>apturl in conversations</title><content type='html'>I've just put together a little patch, that adds &lt;a href="https://edge.launchpad.net/apturl/"&gt;apturl&lt;/a&gt; support to Pidgin, allowing neat package installation by clicking apturls directly from conversation windows. Here's a screenshot, demonstrating the stuff:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_3HE50Du1eV8/SANDXhcxXAI/AAAAAAAAAec/JeS7GNNMcMY/s1600-h/pidgin-apturl.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_3HE50Du1eV8/SANDXhcxXAI/AAAAAAAAAec/JeS7GNNMcMY/s400/pidgin-apturl.png" alt="" id="BLOGGER_PHOTO_ID_5189065267056040962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The patch itself is here: &lt;a href="https://bugs.launchpad.net/bugs/217611"&gt;https://bugs.launchpad.net/bugs/217611&lt;/a&gt;. Binaries are currently building in the &lt;a href="https://launchpad.net/~artfwo/+archive/ppa"&gt;PPA&lt;/a&gt;. Enjoy :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-8108676277790719144?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/8108676277790719144/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/04/apturl-in-conversations.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8108676277790719144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/8108676277790719144'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/04/apturl-in-conversations.html' title='apturl in conversations'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_3HE50Du1eV8/SANDXhcxXAI/AAAAAAAAAec/JeS7GNNMcMY/s72-c/pidgin-apturl.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-1492807343725405111</id><published>2008-04-11T15:36:00.009+07:00</published><updated>2009-01-29T08:30:31.758+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='supercollider'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>SuperCollider for Hardy!</title><content type='html'>Just a quick notice, that I've updated the SuperCollider binaries for Ubuntu 8.04 (Hardy Heron), that's going to be released later this month. This time, the packages are merged with the original 20060416 version as advised by #ubuntu-motu. Also, the supported architectures are extended to powerpc and lpia.&lt;br /&gt;&lt;br /&gt;APT sources.list entries:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;deb http://ppa.launchpad.net/artfwo/ppa/ubuntu hardy main&lt;br /&gt;deb-src http://ppa.launchpad.net/artfwo/ppa/ubuntu hardy main&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-1492807343725405111?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/1492807343725405111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/04/supercollider-for-hardy.html#comment-form' title='22 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/1492807343725405111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/1492807343725405111'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/04/supercollider-for-hardy.html' title='SuperCollider for Hardy!'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>22</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5783356697092613581.post-2908594478265910344</id><published>2008-01-25T12:26:00.001+06:00</published><updated>2009-01-26T10:44:02.894+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='supercollider'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><title type='text'>Sced 0.3 released today!</title><content type='html'>Okay, the blog is reset, and I have just uploaded the Sced 0.3 tarball to its &lt;a href="http://artfwo.googlepages.com/sced"&gt;usual location&lt;/a&gt;. This release includes awesome contributions by Eckard Riedenklau and requires gedit 2.20 and gtksourceview 2.0 to run. Enjoy!&lt;span style="font-weight: normal;" class="lg"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5783356697092613581-2908594478265910344?l=blog.artfwo.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artfwo.net/feeds/2908594478265910344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artfwo.net/2008/01/sced-03-released-today.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/2908594478265910344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5783356697092613581/posts/default/2908594478265910344'/><link rel='alternate' type='text/html' href='http://blog.artfwo.net/2008/01/sced-03-released-today.html' title='Sced 0.3 released today!'/><author><name>Artem Popov</name><uri>https://profiles.google.com/116117848512514543669</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-smiLD6nmygY/AAAAAAAAAAI/AAAAAAAAAAA/lSqWNl2o2m0/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry></feed>
