<?xml version="1.0" encoding="utf-8" ?>

<rss version="0.91" >
<channel>
<title>Shadowmaster’s Blog</title>
<link>http://shadowm.rewound.net/blog/</link>
<description>A light in the darkness, where everything is possible...</description>
<language>en</language>


<item>
    <title>Wesnoth add-on tests and sanity checking</title>
    <link>http://shadowm.rewound.net/blog/archives/224-Wesnoth-add-on-tests-and-sanity-checking.html</link>

    <description>
        &lt;p&gt;Maintaining Wesnoth add-ons of the size of &lt;cite&gt;Invasion from the Unknown&lt;/cite&gt; and &lt;cite&gt;After the Storm&lt;/cite&gt; isn’t a small task by any means. Over the years, I have had to rely on user feedback to detect critical problems in a release, because testing becomes cumbersome and tedious as the scenario count increases.&lt;/p&gt;

&lt;p&gt;My usual release procedure simply involves—at least since I acquired the habit of testing before releasing—running the game, starting each episode of the campaign with the medium difficulty level and making sure the WML preprocessor and parser don’t throw any warnings or errors. Before Wesnoth 1.9.x, the preprocessor didn’t abort when encountering a missing macro or file during a brace substitution, so I had to pay close attention to stderr to ensure nothing is wrong.&lt;/p&gt;

&lt;p&gt;The WML preprocessor in Wesnoth 1.10 became more strict, aborting on the aforementioned situations. It was also exposed for command-line usage (for testing or debugging) through the &lt;code&gt;-p&lt;/code&gt; or &lt;code&gt;--preprocess&lt;/code&gt; switch, also explained in detail under &lt;a href=&quot;http://wiki.wesnoth.org/PreprocessorRef#Command-line_preprocessor&quot;&gt;PreprocessorRef&lt;/a&gt; in the wiki.&lt;/p&gt;

&lt;p&gt;At first I thought that wasn’t very useful beyond diagnosing complicated preprocessor issues, but today I realized I can also do this:&lt;/p&gt;

&lt;div class=&quot;scrollable center&quot;&gt;
  &lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/ats-preprocessor-test.png&quot; alt=&quot;&quot; /&gt;
&lt;/div&gt;

&lt;p&gt;This can be easily accomplished with a simple shell script (&lt;a href=&quot;http://wesnoth-umc-dev.svn.sourceforge.net/viewvc/wesnoth-umc-dev/trunk/After_the_Storm/Makefile?r1=13131&amp;amp;r2=13130&amp;amp;pathrev=13131&quot;&gt;here embedded in the AtS Makefile&lt;/a&gt;). &lt;strike&gt;The only major shortcoming is that it doesn’t cover every possible problem because it’s merely running the WML preprocessor, which doesn’t consume and produce WML — all it sees is plain text mixed with some preprocessor directives. The task of reading actual WML (which is &lt;em&gt;potentially&lt;/em&gt; found in the preprocessor’s output) is left to the WML parser proper, which creates internal objects in memory corresponding to the internal representation of WML handled by Wesnoth (&lt;tt&gt;config&lt;/tt&gt; class objects).&lt;/strike&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UPDATE:&lt;/strong&gt; After investigating the issue further with timotei (who exposed this functionality through &lt;code&gt;--preprocess&lt;/code&gt; in the first place), it turns out the preprocessor output with &lt;code&gt;--preprocess&lt;/code&gt; is indeed parsed — the real problem is that the preprocessor and parser use different logging facilities, and the former doesn’t even throw errors directly, so a preprocessor-only failure will make the game exit successfully (exit status of zero), while a parser error (potentially induced by a previous preprocessor error) causes a more appropriate non-zero exit status. This and other jarring inconsistencies make add-on test automation rather difficult, to say the least, so &lt;a href=&quot;http://wesnoth-umc-dev.svn.sourceforge.net/viewvc/wesnoth-umc-dev?view=revision&amp;amp;revision=13144&quot;&gt;things have been simplified&lt;/a&gt; in the Makefile as a result.&lt;/p&gt;

&lt;p&gt;&lt;strike&gt;It would be nice to be able to run the parser unit on the &lt;code&gt;--preprocess&lt;/code&gt; output to detect syntax issues like missing end tags or unterminated string literals in the future, as part of a fully automated test suite.&lt;/strike&gt; For now, it seems I’ll have to stick to my primitive and inelegant manual method before making new AtS releases, plus the unbelievably clumsy &lt;tt&gt;wmllint&lt;/tt&gt;.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>With great code comes great responsibility</title>
    <link>http://shadowm.rewound.net/blog/archives/222-With-great-code-comes-great-responsibility.html</link>

    <description>
        &lt;p&gt;I think I rarely discuss the more subjective/emotional aspects of working with the &lt;strike&gt;crazy&lt;/strike&gt; folks at the Battle for Wesnoth Project, so this might be a good opportunity to do so given we are currently on the threshold of the first release in the new stable series, 1.10.&lt;/p&gt;

&lt;p&gt;Since a while after joining the project, I’ve been wanting to make deeper changes to the add-ons server software (&lt;tt&gt;campaignd&lt;/tt&gt;, by legacy). Some of those desired changes would benefit me directly as a user-made add-ons maintainer myself (previously &lt;cite&gt;Invasion from the Unknown&lt;/cite&gt;, now &lt;cite&gt;After the Storm&lt;/cite&gt;); other changes simply seem very convenient to have, such as some kind of authentication support and the ability to ban people without dirty system admin hacks.&lt;/p&gt;

&lt;p&gt;Yesterday, I unveiled aspects of my not-so-modest proposal to replace &lt;tt&gt;campaignd&lt;/tt&gt; with new code. You can find the pastebin link within &lt;a href=&quot;https://mail.gna.org/public/wesnoth-dev/2012-01/msg00015.html&quot;&gt;my post to the developers mailing list&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Even though I have some of the basic ideas and I’m still collecting previous information (such as &lt;a href=&quot;http://wiki.wesnoth.org/User:SkeletonCrew#Addon_server&quot;&gt;Mordante’s proposal&lt;/a&gt;), I am terribly hesitant to proceed with the larger project because it will take time and dedication I cannot really promise at this point. But why?&lt;/p&gt;

&lt;p&gt;Part of my worries stem from previous experience working on one-man projects. &lt;cite&gt;After the Storm&lt;/cite&gt; is no small example — started in 2008, finished in early 2012 after many long breaks, &lt;em&gt;and still ongoing&lt;/em&gt;. I don’t consider myself to be the most adequate person to work on large tasks alone, because of motivational issues. If I feel no-one is really using or approving of my work, I’ll quickly feel frustrated and seek new projects with different goals to distract myself for any amount of time. (In AtS’ case, the most significant one was &lt;a href=&quot;/projects/frogatto-levels.php&quot;&gt;Frogatto’s level design&lt;/a&gt;, which is partly why I ended up trading helping with Frogatto for finishing AtS.)&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;campaignd&lt;/tt&gt; (or its potential replacement, &lt;tt&gt;umcd&lt;/tt&gt;) is a particularly dangerous target for me because of the inherently minuscule audience to which I’ll have to cater: the Wesnoth.org system administrators. But not only is this audience composed of approximately four people (including myself), but it’s also a &lt;em&gt;very&lt;/em&gt; exigent one at that.&lt;/p&gt;
 
&lt;p&gt;The client-side audience is larger, but just as exigent, if not even more. You can’t really just throw half-baked changes at them and call it a day—and that wouldn’t be polite, in either case—and since these things have to be done within the project’s development cycle to ensure excellent compatibility and proper migration paths, I don’t really have a choice of schedule — it simply &lt;em&gt;has&lt;/em&gt; to be completely done before the next stable series if it is to be done at all.&lt;/p&gt;

&lt;p&gt;It could be said it all boils down to a personal sense of competence. I’m pretty sure I’m not the most competent people for this task, but the people who are don’t have the time to do it either, so unless someone comes forward, we’ll be stuck with the same stagnating piece of old crap forever. That isn’t to say there haven’t been any candidates before — I have previously mentioned Ilor was working on an add-ons server replacement, but &lt;acronym title=&quot;Real Life&quot;&gt;RL&lt;/acronym&gt; ultimately claimed its bill and the branch in SVN is currently abandoned.&lt;/p&gt;

&lt;p&gt;Taking over this project would also get me stuck forever with it, unable to move on to more interesting things, &lt;em&gt;especially&lt;/em&gt; if the worst case scenario presents itself before the end of the development cycle. I most certainly don’t want to be permanently required to answer every single question or implement every single approved idea for the server software. I’m pretty sure I can still be more useful doing UI usability assurance work or making more Wesnoth campaigns not-for-mainline. I know from other development areas that this “only competent authority” concept appears quite often, to the point of actually frustrating the targeted people.&lt;/p&gt;

&lt;p&gt;For this reason, I really doubt I’ll actually undertake the server replacement, and just concentrate on the very specific points presented in my mailing list post. For better or for worse, people will have to bear with less significant changes until someone more capable and more willing appears.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>After the Storm 0.7.0: Mission Complete!</title>
    <link>http://shadowm.rewound.net/blog/archives/221-After-the-Storm-0.7.0-Mission-Complete!.html</link>

    <description>
        &lt;p&gt;&lt;cite&gt;After the Storm&lt;/cite&gt;’s development began in 2008, some time after the completion of &lt;cite&gt;Invasion from the Unknown&lt;/cite&gt;. Since then, the campaign’s development was repeatedly and severely hindered by multiple planning issues, partially caused by (borderline pathological) perfectionism on my part; plus many other personal problems.&lt;/p&gt;

&lt;p&gt;During most of 2011, development was unofficially halted, with a half-baked &lt;acronym title=&quot;Episode 1 Scenario 9 Part 1&quot;&gt;E1S9.2&lt;/acronym&gt; lingering around in the Wesnoth-UMC-Dev SVN trunk for months. &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/201-After-the-Storm-0.4.0.html&quot;&gt;Version 0.4.0&lt;/a&gt; was released near the end of September, and from that point onwards, I decided to not stop working on the campaign ever again, until it reached completion.&lt;/p&gt;

&lt;p&gt;That day, sadly, arrived sooner than I expected. &lt;strong&gt;Version 0.7.0&lt;/strong&gt; is here, presenting a &lt;strong&gt;complete&lt;/strong&gt; Episode II with 12 scenarios, adding E2S8 through E2S12 to the line-up found in version 0.6.1.&lt;/p&gt;

&lt;p&gt;AtS was always planned to have only two episodes, so &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/205-After-the-Storm-0.5.0.html&quot;&gt;as previously said&lt;/a&gt; I consider it to be &lt;strong&gt;100% complete&lt;/strong&gt; in terms of scenario count right now. The third episode (&lt;cite&gt;After the Storm: Final&lt;/cite&gt;) is still in the planning stage and it will most likely be developed in parallel with the balancing, clean-ups and touch-ups leading to version 1.0.0, making it a target for version 2.0.0 instead.&lt;/p&gt;

&lt;p&gt;Right now, AtS is in &lt;strong&gt;urgent need of portrait art&lt;/strong&gt; for the new characters introduced throughout E1 and E2, at least two new unit baseframes for use in E1S9.2 and E2S11, plus a third baseframe for E3. While portrait art isn’t a version 1.0.0 target per se, I would really welcome any help at any time, as long as the art style stays consistent with &lt;cite&gt;Invasion from the Unknown&lt;/cite&gt;. It’s very likely the missing baseframes will be provided by myself in the meantime.&lt;/p&gt;

&lt;p&gt;Later, I’ll publish a more complete to-do list with the tasks remaining to be done for version 1.0.0, and I’ll try to make a more exhaustive art to-do list as well.&lt;/p&gt;

&lt;p&gt;The changelog for this version follows:&lt;/p&gt;

&lt;pre&gt;
Version 0.7.0:
--------------
* Graphics:
  * New or updated unit graphics: Dusk Faerie, Shaxthal Worm, Shaxthal
    Rayblade, Shaxthal Assault Drone, Shaxthal Protector Drone, Shaxthal War
    Drone, Shaxthal Runner Drone.
  * New or updated terrain graphics: Dark Hive Floor (transitions).

* Scenarios:
  * E1S5 - Bay of Tirigaz:
    * Rewrote shipwreck generator code so the message strings can actually
      be translated.
  * E1S8 - Fear:
    * Updated to use a Wesnoth 1.9.10 terrain.
  * E2S1 - By the Moonlight:
    * Updated to use a Wesnoth 1.9.10 terrain.
  * E2S2 - The Heart Forest:
    * Updated to use a Wesnoth 1.9.10 terrain.
  * E2S4 - Shifting Allegiances:
    * Fixed a local variable leak.
  * E2S6 - The Voyage Home:
    * Updated to use a Wesnoth 1.9.10 terrain.
  * E2S7 - Proximus:
    * Added a hint regarding the enemy leader&#039;s chance-to-hit override to
      objectives.
    * Fixed animation glitches.
  * E2S8 - And then there was Chaos:
    * New scenario.
  * E2S9 - New Hive:
    * New scenario.
  * E2S10 - The Betrayal:
    * New scenario.
  * E2S11 - A Final Confrontation:
    * New scenario.
  * E2S12 - Fate:
    * New cutscene scenario.

* Units:
  * New unit: Shaxthal Worm (replaces the Shaxthal Wyrm).
  * Balancing:
    * Reduced Nightshade Fire&#039;s ranged arcane attack strength from 12-3 to 10-3.
    * Reduced Nightshade Fire&#039;s ranged cold attack strength from 13-2 to 11-2.
    * Reduced Night Nymph&#039;s ranged arcane attack strength from 9-3 to 8-3.
    * Increased Errant Soul&#039;s ranged attack strength from 2-1 to 2-2.
    * Reduced Chaos Headhunter&#039;s ranged attack strength from 6-3 to 5-3.
    * Reduced Chaos Marauder&#039;s axe attack strength from 10-2 to 8-2.
    * Reduced Chaos Marauder&#039;s ranged attack strength from 7-3 to 6-3.
    * Reduced Chaos Soulhunter&#039;s axe attack strength from 13-2 to 12-2.
    * Reduced Chaos Soulhunter&#039;s ranged attack strength from 10-3 to 9-3.
  * Revised Shaxthal unit descriptions.
  * Shaxthal Runner Drones can no longer advance to Assault Drones.
  * Added a custom teleport animation for Nightshade Fire.
  * Added unit type descriptions for Night Nymph and Nightshade Fire.
  * Removed conflicting markup from the Sylvan Warden unit type description.
&lt;/pre&gt;

&lt;p&gt;Just like the previous release, AtS 0.7.0 requires Wesnoth 1.9.10 or later. The presence of the Rotten Bridge terrain in several scenarios (mentioned in the changelog) really enforces this requirement in this opportunity.&lt;/p&gt;

&lt;p&gt;So... yeah, the campaign is complete now. Go forth and play.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Wow</title>
    <link>http://shadowm.rewound.net/blog/archives/220-Wow.html</link>

    <description>
        &lt;pre&gt;commit 9f6bd04ec405d3987a513ae490fcfef7fad6a034
Author: shikadilord &amp;lt;shikadilord@87cc232e-6748-0410-ac04-a3fa75566414&amp;gt;
Date:   Mon Jan 16 03:22:28 2012 +0000

    AtS E2S12: completed epilogue scenario
    
    This makes After the Storm 100% complete in terms of scenario count.
    
    git-svn-id: https://wesnoth-umc-dev.svn.sourceforge.net/svnroot/wesnoth-umc-dev/trunk/After_the_Storm@12917 87cc232e-6748-0410-ac04-a3fa75566414
&lt;/pre&gt;

&lt;p&gt;I never thought this day would come.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>About After the Storm 0.7.0...</title>
    <link>http://shadowm.rewound.net/blog/archives/219-About-After-the-Storm-0.7.0....html</link>

    <description>
        &lt;p&gt;Before anyone asks, yes, I have been working on &lt;acronym title=&quot;After the Storm&quot;&gt;AtS&lt;/acronym&gt; 0.7.0 all this time since the last release (0.6.1). It will include the last five scenarios of Episode II, that is, &lt;span style=&quot;color:green;&quot;&gt;E2S8&lt;/span&gt;, &lt;span style=&quot;color:green;&quot;&gt;E2S9&lt;/span&gt;, &lt;span style=&quot;color:green;&quot;&gt;E2S10&lt;/span&gt;, &lt;span style=&quot;color:olive;&quot;&gt;E2S11&lt;/span&gt; and E2S12.&lt;/p&gt;

&lt;p&gt;Determining what the colors stand for is left as a proposed exercise for the reader.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Wesnoth 1.10 Release Candidate 1, oh my!</title>
    <link>http://shadowm.rewound.net/blog/archives/217-Wesnoth-1.10-Release-Candidate-1,-oh-my!.html</link>

    <description>
        &lt;p&gt;Hi! I’m shadowmaster. You might remember me from such type of campaigns as &lt;a href=&quot;/projects/wesnoth-umc.php#iftu&quot;&gt;&lt;cite&gt;Invasion from the Unknown&lt;/cite&gt;&lt;/a&gt;, &lt;a href=&quot;/projects/wesnoth-umc.php#ats&quot;&gt;&lt;cite&gt;After the Storm&lt;/cite&gt;&lt;/a&gt; and &lt;cite&gt;Flesh and Steel&lt;/cite&gt; (tentative name). As some of you may have heard, Wesnoth 1.10 &lt;acronym title=&quot;Release Candidate&quot;&gt;RC&lt;/acronym&gt; 1 has been tagged in the mainline Subversion repository today, marking the start of the final stretch before the final (but by no means definitive) release of Wesnoth 1.10, the new stable series for this year.&lt;/p&gt;

&lt;p&gt;If you are interested in the changelogs, they can be found at the following two locations:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://svn.gna.org/viewcvs/*checkout*/wesnoth/tags/1.9.14/players_changelog&quot;&gt;Players changelog&lt;/a&gt; (shorter, always incomplete)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://svn.gna.org/viewcvs/*checkout*/wesnoth/tags/1.9.14/changelog&quot;&gt;Full changelog&lt;/a&gt; (longer, harder to read, less incomplete)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In general, after a development (odd &lt;tt&gt;Y&lt;/tt&gt; number in &lt;tt&gt;X.Y.Z&lt;/tt&gt;) release is tagged in SVN, 24 hours must pass before it is announced, in case the primary packagers (Pandora, Windows, Mac OS X and Debian) detect critical bugs that could require immediate fixing, and to give them time to catch up since not all of them have a lot of time in their hands or enough resources — at one point, a packager was constantly running out of hard disk space thanks to Wesnoth’s sheer volume.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you are tech-savvy enough&lt;/strong&gt; to be able to determine which package is the one that corresponds to your platform—or you just prefer to compile from source—you can &lt;strong&gt;skip the wait for the announcement&lt;/strong&gt; and head directly to the SF.net project files and locate your download. For example, &lt;a href=&quot;http://sourceforge.net/projects/wesnoth/files/wesnoth/wesnoth-1.9.14/&quot;&gt;these are the Wesnoth 1.10 RC 1 files&lt;/a&gt;; at first there’s only the source code tarball, but more files will appear as the primary packagers finish their work. Of course, during the first few hours, not all SF.net mirrors will be able to provide the files. Again, Wesnoth is very large and takes a while to transfer over the net.&lt;/p&gt;

&lt;p class=&quot;italic&quot;&gt;(Wesnoth 1.10 RC 1 internally calls itself 1.9.14. This is intentional.)&lt;/p&gt;

&lt;p&gt;With the first &lt;em&gt;Release Candidate&lt;/em&gt; for 1.10 tagged and later announced, all commits in SVN trunk from now on will be only fixes for bugs reported in the &lt;a href=&quot;http://bugs.wesnoth.org/&quot;&gt;bug tracker&lt;/a&gt; following our &lt;a href=&quot;http://wiki.wesnoth.org/ReportingBugs&quot;&gt;instructions&lt;/a&gt;, and translation updates, until 1.10.0 is ready. If too many major and complicated bugs come up, 1.10 RC 2 will be released before 1.10, but that seems unlikely right now since the release manager has a &lt;a href=&quot;https://mail.gna.org/public/wesnoth-dev/2012-01/msg00008.html&quot;&gt;plan&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I have an announcement to make in the forums tomorrow that is strongly related to Wesnoth 1.10 and may upset the Crazy MP People a bit since I’ll be &lt;strike&gt;encouraging&lt;/strike&gt; &lt;strong&gt;forcing&lt;/strong&gt; them to test 1.10 RC 1 like the Crazy MP People they are. We shall see.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Wesnoth 1.10 RC 1 released, and some rationale behind the accounts purge</title>
    <link>http://shadowm.rewound.net/blog/archives/218-Wesnoth-1.10-RC-1-released,-and-some-rationale-behind-the-accounts-purge.html</link>

    <description>
        &lt;p&gt;&lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?f=5&amp;amp;t=35849&quot;&gt;Wesnoth 1.10 RC 1 was released&lt;/a&gt;. Go test it, kids. You really must help us.&lt;/p&gt;

&lt;p&gt;Besides that, I said in my &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/217-Wesnoth-1.10-Release-Candidate-1,-oh-my!.html&quot;&gt;previous post&lt;/a&gt; that I’d be releasing a separate announcement for the Crazy MP People. &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?f=5&amp;amp;t=35850&quot;&gt;I wasn’t joking&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It might seem weird to perform such a purge of old forum accounts, and it might even confuse some MP users. A few times I’ve had to provide support to players who, despite having gone through the process of registering a new account—&lt;em&gt;requiring them to visit the forums, no less&lt;/em&gt;—they had not fully realized that the forum and MP servers share the same user accounts database!&lt;/p&gt;

&lt;p&gt;The truth is, the purge has become—in part—a marketing ploy I devised in order to have people try the last 1.9.x version before 1.10 becomes the current stable. If this angers you because you have been avoiding the new series like the plague, then think again. Give 1.10 an opportunity, because 1.8 is going the way of the dodo. 1.10 is much better, has better features and terrains, and even if you dislike some of the changes (i.e. the feral trait), I’m sure you will eventually find it worth of your time once you grow past the &lt;a href=&quot;http://tvtropes.org/pmwiki/pmwiki.php/Main/TheyChangedItNowItSucks&quot;&gt;&lt;em&gt;They Changed it, now it Sucks/Ruined FOREVER&lt;/em&gt;&lt;/a&gt; stage.&lt;/p&gt;

&lt;p&gt;Regardless of that, the plan of purging unused accounts came to me much earlier while dealing with a major flaw in the &lt;tt&gt;wesnothd&lt;/tt&gt; (the MP server software) forum user handler code. It seemed worth it to try to keep the database tidy by removing old, &lt;em&gt;entirely unused&lt;/em&gt; cruft from it, and unconfirmed, 0-post accounts that have never been on the MP server since the introduction of forum accounts integration count as overly unused cruft.&lt;/p&gt;

&lt;p&gt;A purge like this isn’t a new thing either. The previous forum administrator performed a larger purge of unused accounts right when the aforementioned integration was introduced, but it was never announced or discussed anywhere.&lt;/p&gt;

&lt;p&gt;Purge.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>2011 Wrap-up</title>
    <link>http://shadowm.rewound.net/blog/archives/216-2011-Wrap-up.html</link>

    <description>
        &lt;p&gt;At long last, 2011 is coming to an end. In a few hours, we’ll have to dump our old calendars to replace them with new ones bearing the number 2012 in a big font size. Then the people who believe 2012 will be the end of life on Earth will begin to panic as we approach December again. Those nutcases.&lt;/p&gt;

&lt;p&gt;This was a relatively calm and monotone year in what pertains to my personal life, so I’m not going to delve into details in this opportunity. However, I made some &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/148-Resolutions!.html&quot;&gt;resolutions&lt;/a&gt; last New Year and it might be worth it to review them and check why I didn’t accomplish all of my goals.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Learning Japanese: I got severely sidetracked after a while. I may still try again in the future, just because.&lt;/li&gt;
  &lt;li&gt;Losing weight: I may have gained &lt;strike&gt;some&lt;/strike&gt; a lot of weight during the course of the year. Oops. I did, however, stop drinking coffee, because my stomach started to reject (read: try to vomit) it after a while for some reason.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/projects/wesnoth-tc.php&quot;&gt;Wesnoth RCX&lt;/a&gt;: Still halted. Frankly, there doesn’t seem to be enough interest amongst the Wesnoth community nowadays for this kind of tool, and for my own purposes &lt;a href=&quot;/projects/wesnoth-tc.php&quot;&gt;Wesnoth-TC&lt;/a&gt; serves well as it is.&lt;/li&gt;
  &lt;li&gt;Relearning C♯: Also sidetracked. It doesn’t seem worth it, in hindsight.&lt;/li&gt;
  &lt;li&gt;Learning Lua: Accomplished according to certain definitions. I haven’t really learned more about the language than necessary, but I have indeed committed some Lua code to mainline Wesnoth, and several tasks of varying difficulty are accomplished with custom Lua-backed WML tags in &lt;cite&gt;After the Storm&lt;/cite&gt; and &lt;cite&gt;Invasion from the Unknown&lt;/cite&gt; as of this writing.&lt;/li&gt;
  &lt;li&gt;Rei 2 IRC Bot: Stalled, due to lack of interest. There are also seem to be a few Irssi-specific problems with Perl 5.14, which is in the operating system I’m using at the moment, Debian wheezy.&lt;/li&gt;
  &lt;li&gt;Website: &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/168-Dorset6-codename-Air.html&quot;&gt;Accomplished&lt;/a&gt;. In fact, in a few hours I’ll deploy a few minor changes to the code to optimize the blog template processing a bit.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One particular resolution deserves separate analysis, though:&lt;/p&gt;

  &lt;blockquote&gt;Then there’s Wesnoth. I intend to finish the Second Act™ of &lt;cite&gt;After the Storm&lt;/cite&gt; Episode I as soon as I may, even through the means of placeholders — I’m willing to do &lt;em&gt;anything&lt;/em&gt; to rescue AtS out of Development Hell before the end of 2011.&lt;/blockquote&gt;

&lt;p&gt;I didn’t resort to unlawful methods to accomplish this goal as I originally feared, but it still happened! Granted, rather late.&lt;/p&gt;

&lt;p&gt;During September and October I had a rather unexpected creativity and productivity spurt which culminated with the release of &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/205-After-the-Storm-0.5.0.html&quot;&gt;AtS version 0.5.0&lt;/a&gt; with &lt;cite&gt;Episode I: Fear&lt;/cite&gt; complete with 13 scenarios. More recently in December, we reached &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/214-After-the-Storm-0.6.1.html&quot;&gt;version 0.6.1&lt;/a&gt; with 7 complete scenarios for &lt;cite&gt;Episode II: Fate&lt;/cite&gt;. As of this writing, E2S8 and E2S9 are also complete in SVN trunk in Wesnoth-UMC-Dev, although it’s been suggested that the latter could use some spicing up. E2S10 is a work in progress since yesterday, and part of E2S12 was written already back in October, just not committed.&lt;/p&gt;

&lt;p&gt;Thus, it could be said that after many difficulties, &lt;cite&gt;After the Storm&lt;/cite&gt; broke out of Development Hell. Whether I’ll consider &lt;cite&gt;Episode III: Final&lt;/cite&gt; (expected to be shorter, around 6 scenarios) part of the required line-up for version 1.0.0 is a matter I haven’t settled yet.&lt;/p&gt;

&lt;p&gt;Once &lt;cite&gt;After the Storm&lt;/cite&gt; is finished, I plan to take a rather long break from campaign development. That isn’t to say I’m out of ideas, since there is one character I want to explore in further detail in her own campaign. However, I may have my Wesnoth time taken up by mainline work after 1.10 is released depending on the situation then, since there’s a rather large technology gap in Wesnoth that needs to be solved.&lt;/p&gt;

&lt;p&gt;Other than that, I haven’t really decided on any resolutions for 2012, so I’ll leave you with the one resolution of the moment:&lt;/p&gt;

&lt;pre&gt;
...
screen #0:
  dimensions:    1280x800 pixels (338x211 millimeters)
  resolution:    96x96 dots per inch
...
&lt;/pre&gt;

&lt;p class=&quot;italic&quot;&gt;(This information is utterly wrong. &lt;tt&gt;xdpyinfo&lt;/tt&gt; reported the same screen dimensions on bluecore last year in spite of its screen being glaringly larger than reicore’s by a few milimeters.)&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Sabayon Linux likes to play dirty</title>
    <link>http://shadowm.rewound.net/blog/archives/215-Sabayon-Linux-likes-to-play-dirty.html</link>

    <description>
        &lt;p&gt;My friend just mentioned on IRC a rather unusual banner displayed during the installation of Sabayon Linux, somehow involving Debian. I didn’t pay much attention to his claims at first, but then he uploaded a screenshot he’s kindly authorized me to repost:&lt;/p&gt;

&lt;div class=&quot;center scrollable&quot;&gt;&lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/snapshot1.png&quot; title=&quot;Click to enlarge&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/snapshot1small.png&quot; alt=&quot;Screenshot&quot; /&gt;&lt;/a&gt;&lt;/div&gt;

&lt;p&gt;Isn’t it nice to know there are Linux distributions resorting to over-simplified, uneducated statements to promote themselves? And the banner design itself is ugly as well. I think this merits no further analysis.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>After the Storm 0.6.1</title>
    <link>http://shadowm.rewound.net/blog/archives/214-After-the-Storm-0.6.1.html</link>

    <description>
        &lt;p&gt;A little more than two weeks after the &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/211-After-the-Storm-0.6.0.html&quot;&gt;release&lt;/a&gt; of version 0.6.0, &lt;strong&gt;After the Storm 0.6.1 is out!&lt;/strong&gt; And just in time for Christmas Eve in Chile, too.&lt;/p&gt;

&lt;p&gt;The last couple of weeks have been particularly productive, as I’ve continued to work on AtS Episode II with the help of my loyal assistants &lt;strong&gt;vultraz&lt;/strong&gt; and &lt;strong&gt;Espreon&lt;/strong&gt;, who have been a valuable help providing early feedback, play-testing, and proofreading. In order to keep people busy for a while, this release includes &lt;strong&gt;scenarios 4 through 7&lt;/strong&gt;, and &lt;strong&gt;one&lt;/strong&gt; cutscene-only scenario, adding up to &lt;strong&gt;five new scenarios&lt;/strong&gt; in this version.&lt;/p&gt;

&lt;p&gt;Version 0.6.1 was scheduled for this date immediately after 0.6.0’s release, but it was only intended to contain the finished scenario 4, which landed on SVN trunk on December 15th. Since I was left with plenty of time before the original deadline, I decided to continue working on as many scenarios as possible. E2S7 landed on the 22nd, 22:01 UTC. I would have continued working on E2S8 immediately, but since it requires one new unit baseframe, I decided to postpone it and aim for introducing all the final four scenarios in version 0.7.0 when it’s done (most likely by early to mid-January 2012).&lt;/p&gt;

&lt;p&gt;For this version, I decided to increase the Wesnoth version requirement from 1.9.7 to &lt;strong&gt;1.9.10&lt;/strong&gt;, which was already recommended in the campaign description. While there’s no WML code or maps enforcing the version requirement yet, I’ll simply &lt;strong&gt;ignore&lt;/strong&gt; bug reports against AtS 0.6.1 on 1.9.9 and earlier versions since the engine behavior changed a lot between 1.9.8 and 1.9.10 in some areas — it’s simply impossible to keep supporting old development versions now that mainline is releasing 1.9.10 and later as betas for the upcoming stable 1.10. Besides, as a mainline developer I must also encourage people to test the game and report bugs before 1.10!&lt;/p&gt;

&lt;p&gt;Should this inconvenience you, I may be able to provide support on a case-by-case basis given a good reason to do so. My general recommendation if your Internet service isn’t good enough to download the bi-weekly Wesnoth 1.10 betas is to just download the latest one and keep it around until 1.10 final is released. By the looks of things, odds are this won’t happen until January.&lt;/p&gt;

&lt;p&gt;The changelog for this version of the campaign is unusually long, even though I deliberately omitted some specific additions in the art department — &lt;strong&gt;six&lt;/strong&gt; new baseframes, all made by myself and awaiting revisions in the near future — and unit WML. Since those are tied to the new scenarios, I decided to not spoil it in the changelog.&lt;/p&gt;

&lt;pre&gt;Version 0.6.1:
--------------
* Increased minimum Wesnoth version requirement from 1.9.7 to 1.9.10.

* Graphics:
  * New or updated unit graphics: Sylvan Warden (chained).

* Scenarios:
  * Various prose grammar fixes.
  * E1S3 - Civil War in the North:
    * Removed deprecated flower terrain.
  * E1S5 - Bay of Tirigaz:
    * Removed deprecated flower terrain.
  * E1S6.2 - Elves of a Different Land:
    * Fixed a dialog line wrapped in double parentheses.
  * E1S9.1 - The Triad (part 1):
    * Don&#039;t set Elynia&#039;s initial status to slowed.
    * Fixed animation glitches.
  * E1S9.3 - The Triad (part 3):
    * Fixed animation glitches.
  * E2S2 - The Heart Forest:
    * Increased turn limit.
    * Reduced initial gold amounts for enemy sides.
    * Set initial gold amount for the player.
  * E2S3.2 - Revelations:
    * Corrected unit facings.
  * E2S4 - Shifting Allegiances:
    * New scenario.
  * E2S5 - The Eastern Front:
    * New scenario.
  * E2S5 C - The Eastern Front cutscene:
    * New scenario.
  * E2S6 - The Voyage Home:
    * New scenario.
  * E2S7 - Proximus:
    * New scenario.

* Units:
  * Increased Dryad&#039;s HP from 43 to 46.
  * Increased Forest Spirit&#039;s HP from 37 to 40.
  * Simplified Sylvan Warden&#039;s animations WML, making her less of a resource
    hog.
  * Removed Kri&#039;tan.
&lt;/pre&gt;

&lt;p&gt;Have fun, and happy holidays!&lt;/p&gt; 
    </description>
</item>
<item>
    <title>WML is like XML, all right...</title>
    <link>http://shadowm.rewound.net/blog/archives/213-WML-is-like-XML,-all-right....html</link>

    <description>
        &lt;p&gt;Since people keep saying WML is like XML, I decided to provide an example of what a standard WML snippet would look like if it had to be translated to XML.&lt;/p&gt;

&lt;p class=&quot;bold&quot;&gt;WML:&lt;/p&gt;
&lt;pre&gt;[event]
    name=last breath
    [filter]
        id=shadowm
    [/filter]
    [message]
        speaker=shadowm
        message= _ &quot;NO!&quot;
    [/message]
[/event]
&lt;/pre&gt;

&lt;p class=&quot;bold&quot;&gt;XML:&lt;/p&gt;
&lt;pre&gt;&amp;lt;event name=&quot;last breath&quot;&amp;gt;
    &amp;lt;filter id=&quot;shadowm&quot; /&amp;gt;
    &amp;lt;message speaker=&quot;shadowm&quot; message:gettext=&quot;NO!&quot; /&amp;gt;
&amp;lt;/event&amp;gt;
&lt;/pre&gt;

&lt;p&gt;My knowledge of XML doesn’t go far enough, but I don’t think I’ve ever heard of translatable strings being an integral part of the syntax, hence the funky-looking XML attribute name for event.message.message above.&lt;/p&gt;

&lt;p&gt;This example only covers the basic WML syntax (i.e. no preprocessor directives, +nodes or embedded Lua) on purpose.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Miscellaneous Wesnoth loading tricks on Linux</title>
    <link>http://shadowm.rewound.net/blog/archives/212-Miscellaneous-Wesnoth-loading-tricks-on-Linux.html</link>

    <description>
        &lt;p&gt;People using development versions or SVN trunk might find it excessively cumbersome to install Wesnoth’s binaries and data files whenever a new version is released (or commit made, for trunk). Since long ago (probably 1.3.x) Wesnoth supports overriding the data directory by providing its path as the last command line argument and, since 1.9.0, it’s also possible to use to use the &lt;code&gt;--data-dir&lt;/code&gt; switch to avoid ambiguity with other switches taking path arguments.&lt;/p&gt;

&lt;p&gt;Since version 1.5.4 (more specifically, &lt;a href=&quot;http://svn.gna.org/viewcvs/wesnoth?view=rev&amp;amp;rev=28934&quot;&gt;r28934&lt;/a&gt;), Wesnoth will also try to locate a usable data directory by itself, by trying to locate &lt;tt&gt;data/_main.cfg&lt;/tt&gt; in the parent dir of the executable file, which is resolved in Linux by making use of the &lt;tt&gt;/proc/self/exe&lt;/tt&gt; symbolic link.&lt;/p&gt;

&lt;p&gt;Until today, it had not occurred to me that this makes it possible to link to the Wesnoth binary from &lt;strong&gt;any&lt;/strong&gt; directory, not just one containing the aforementioned WML file. The &lt;tt&gt;/proc/self/exe&lt;/tt&gt; link points towards the final target if the process image is a symbolic link, so you can have a layout like this work as desired provided &lt;tt&gt;~/bin&lt;/tt&gt; is in PATH:&lt;/p&gt;

&lt;pre&gt;
shadowm@reicore:~$ ls -l bin/wesnoth*
lrwxrwxrwx 1 shadowm shadowm  33 Dec 10 21:09 bin/wesnoth -&amp;gt; /home/shadowm/src/wesnoth/wesnoth
lrwxrwxrwx 1 shadowm shadowm  37 Dec 10 21:10 bin/wesnoth-1.8 -&amp;gt; /home/shadowm/src/wesnoth-1.8/wesnoth
lrwxrwxrwx 1 shadowm shadowm  40 Dec 10 21:10 bin/wesnoth-1.9.12 -&amp;gt; /home/shadowm/src/wesnoth-1.9.12/wesnoth
&lt;/pre&gt;

&lt;p&gt;The Wesnoth 1.8 binary in this case is compiled with the scons &lt;tt&gt;prefsdir&lt;/tt&gt; option set to &lt;tt&gt;.wesnoth-1.8&lt;/tt&gt; so conflicts with the development versions can’t occur — those use the custom &lt;tt&gt;.wesnoth-1.9&lt;/tt&gt; dir instead. Nowadays things seem to be a little more complicated in that regard, as seemingly the game will opt for an &lt;a href=&quot;http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html&quot;&gt;XDG layout&lt;/a&gt; if there’s no compiled-in preferences dir path on non-Mac, non-Windows builds. According to the &lt;a href=&quot;http://wiki.wesnoth.org/EditingWesnoth#Linux_2&quot;&gt;EditingWesnoth&lt;/a&gt; article on the wiki, 1.8 builds default to &lt;tt&gt;.wesnoth1.8&lt;/tt&gt;. Why the default doesn’t include a hyphen is beyond me.&lt;/p&gt;

&lt;p&gt;With things set up like this, I can start Wesnoth from any directory without having to provide my own command line arguments. Of course, you could say this is a rather archaic approach as it’s also possible to create desktop/panel shortcuts instead, depending on the desktop environment. Since I spend more time looking at a terminal emulator with my hands on the keyboard than staring at the wallpaper and desktop icons with the mouse in hand, my own approach turns out to be more efficient for my purposes.&lt;/p&gt;

&lt;p&gt;Finally, there’s an even less known feature introduced in &lt;a href=&quot;http://svn.gna.org/viewcvs/wesnoth?view=rev&amp;amp;rev=31261&quot;&gt;r31261&lt;/a&gt; (before 1.5.7) that also makes it possible to omit the &lt;code&gt;--editor&lt;/code&gt; or &lt;code&gt;-e&lt;/code&gt; switch to start the map editor if the game executable file contains “editor” in its name. This was added as a replacement for the old &lt;tt&gt;wesnoth_editor&lt;/tt&gt; binary that provided the map editor before it was replaced with the built-in version (“editor2”) as part of GSoC 2008.&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>After the Storm 0.6.0</title>
    <link>http://shadowm.rewound.net/blog/archives/211-After-the-Storm-0.6.0.html</link>

    <description>
        &lt;p&gt;&lt;cite&gt;After the Storm&lt;/cite&gt; 0.6.0 has just been released, despite the original deadline I set for myself &lt;a href=&quot;https://twitter.com/#!/shikadilord/status/143946192890499072&quot;&gt;just a few days ago&lt;/a&gt; being Christmas Eve. As a consequence, that day will be the deadline for AtS version 0.6.1 instead, which should include a working scenario E2S4 (i.e. fourth scenario of the second episode). Of course, if a major bug arises in the meantime, that tentative version number will have to change.&lt;/p&gt;

&lt;p&gt;Apparently, I work faster when I feel the need to deliver within a specific time frame. In this case, the need stems from fear of public humiliation. Probably.&lt;/p&gt;

&lt;p&gt;The changelog for this version follows:&lt;/p&gt;

&lt;pre&gt;Version 0.6.0:
--------------
* Increased minimum Wesnoth version requirement from 1.9.5 to 1.9.7.

* Scenarios:
  * Reworked character recall logic.
  * Episode 2 (Fate):
    * Scenarios 1 and 2 completed.
    * Scenario 3 completed, consisting of two cutscenes.

* Units:
  * Reduced Sprite&#039;s required XP to advance from 70 to 40.
  * Reduced Fire Faerie&#039;s required XP to advance from 100 to 70.
&lt;/pre&gt;

&lt;p&gt;Regarding the version requirement increase, it’s not so much because of changes in WML syntax but rather because of a new terrain added in 1.9.7 that’s used in E2S2.&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>The Tantalizing Trinket</title>
    <link>http://shadowm.rewound.net/blog/archives/210-The-Tantalizing-Trinket.html</link>

    <description>
        &lt;p&gt;&lt;a href=&quot;http://thelettervsixtim.es/&quot;&gt;VVVVVV&lt;/a&gt; is a fun retro platformer which features gravity flipping instead of jumping, and some ridiculously hard rooms (the hardest ones are &lt;em&gt;usually&lt;/em&gt; optional). It was part of the &lt;a href=&quot;http://www.humblebundle.com/&quot;&gt;Humble Indie Bundle&lt;/a&gt; #3 earlier this year.&lt;/p&gt;

&lt;p&gt;For a good while I&#039;ve been trying to get the optional trinket in “Doing Things The Hard Way”, and apparently I got the hang of it at last. This is the first time I succeed in this little side-quest after something around 1000 attempts. Two (unexpectedly) failed attempts are also featured in this footage:&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
    &lt;iframe width=&quot;420&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/6rXUU0kG9Jw&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;

&lt;p&gt;Sadly, &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/200-Crucial-flaw,-Part-II.html&quot;&gt;for technical reasons&lt;/a&gt; I couldn’t record any sound, hence I decided to keep it unlisted in my account. The chiptune music and sound effects are, in my not-so-humble opinion, an &lt;strong&gt;essential&lt;/strong&gt; aspect of the game and they may well be the only reason I accepted the challenge and completed all the main levels (back in August, granted, but there &lt;em&gt;is&lt;/em&gt; replay value).&lt;/p&gt; 
    </description>
</item>
<item>
    <title>New TV</title>
    <link>http://shadowm.rewound.net/blog/archives/209-New-TV.html</link>

    <description>
        &lt;p&gt;Years ago, I donated my TV to someone else at home who needed it, just so we didn’t have to buy a new one and give up on buying the laptop that came to be Bluecore. More recently, everyone at home decided to buy new TVs for their own use to replace the old CRTs we’d been using for the last decade — so I was finally left as the one TV-less denizen of this fortress of insanity.&lt;/p&gt;

&lt;p&gt;That’s no longer the case.&lt;/p&gt;

&lt;p&gt;I have a TV of my own again, decidedly cheap as we didn’t buy it for ourselves, and it works — not that I couldn’t watch TV when I wanted already, since my desktop computer (Blackcore) does have an analog TV capture card that works nicely on Windows (Linux, namely X.org, on VIA &lt;acronym title=&quot;Integrated Graphics Processor&quot;&gt;IGP&lt;/acronym&gt;s is an atrocious disaster). Most notably, this is the only TV that came with VGA and audio cords, so I can also connect my laptops (or my desktop) to it, although I can only wonder why there’s no HDMI cord when that appears to be what cool kids use nowadays.&lt;/p&gt;

&lt;p&gt;It’s not too useful either way, for the maximum resolution such a setup can handle is &lt;strong&gt;1360x768&lt;/strong&gt; (albeit the manual claims 136&lt;strong&gt;6&lt;/strong&gt;x768) — compare against Reicore and Bluecore’s native LCD panel resolution of &lt;strong&gt;1280x800&lt;/strong&gt;. I don’t care much about its purportedly &lt;em&gt;actual&lt;/em&gt; function of serving as an entertainment device since local TV kind of died for me circa 2006, when it stopped broadcasting anything of my interest. I spend more time on computers doing work than watching videos or movies anyway.&lt;/p&gt;

&lt;p&gt;As an aside note, it appears KDE SC 4.6.5 or X.org server 1.11 (in Debian wheezy right now) don’t handle display output switching very gracefully in regards to window geometries, and windows tend to become 0x0 (when plugging in the TV) or get tossed offscreen (when unplugging the TV). I won’t claim KDE’s window manager is perfect, but in my experience X.org is not the best piece of software found in current general-purpose Linux distributions and it could as well be literally made of explosives and still do its job in the most basic configurations.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>GUI2: Editor Settings, Starting Positions and Uninstall Add-ons</title>
    <link>http://shadowm.rewound.net/blog/archives/208-GUI2-Editor-Settings,-Starting-Positions-and-Uninstall-Add-ons.html</link>

    <description>
        &lt;p&gt;After completing the first episode of &lt;cite&gt;After the Storm&lt;/cite&gt;, a short vacation was a logical option so I could return to work later with fresh ideas and more energy. By ‘vacation’ I don’t mean a traditional &lt;em&gt;Wesbreak&lt;/em&gt; as most people do, though — quite the contrary, in fact.&lt;/p&gt;

&lt;p&gt;For a long time I’ve been bothered by the haphazard-looking design of the Editor Settings dialog. This (already GUI2) dialog’s main focus is a bunch of lighting options intended for map or terrain authors to test what their creations look like under different Time of Day lighting presents, or even custom lighting, which is also useful for campaign designers trying to come up with an atmospheric feel within Wesnoth’s rendering engine limitations.&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
  &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/gui2-editorsettings-before.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_gui2-editorsettings-before.png&quot; border=&quot;0&quot; alt=&quot;Before&quot; /&gt;&lt;/a&gt; &lt;strong&gt;→&lt;/strong&gt; &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/gui2-editorsettings-after.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_gui2-editorsettings-after.png&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;I don’t claim to be a UI design expert — I’m fairly certain I’m not — but I feel my vision of the dialog is better than the original author’s, and for this reason I recently committed to trunk these changes along with a couple of fixes for related long-standing bugs that were definitely not introduced by me. I think. I hope.&lt;/p&gt;

&lt;p&gt;I am not keen on having Title Case on checkboxes, either, but for some reason &lt;a href=&quot;http://wiki.wesnoth.org/UI_Style_Guide&quot;&gt;the wiki&lt;/a&gt; says it’s what we should use, so I’m going to stick to that for 1.10 as it’s already used in most places anyway. I hope we can clear that up during the 1.11.x development cycle since even GNOME’s Human Interface Guidelines &lt;a href=&quot;http://developer.gnome.org/hig-book/3.2/design-text-labels.html.en#layout-capitalization&quot;&gt;recommend sentence case&lt;/a&gt; for such elements.&lt;/p&gt;

&lt;p class=&quot;italic&quot;&gt;(Note to self: rephrase the MDI option label again since “allow having” doesn’t sound proper at all.)&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
  &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/gui2-playerloc-before.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_gui2-playerloc-before.png&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;strong&gt;→&lt;/strong&gt; &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/gui2-playerloc-after.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_gui2-playerloc-after.png&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;The item selection menu triggered by the Starting Position tool in the editor was a generic GUI1 dialog, until now. I decided to tackle this conversion task and add a feature in the process: existing starting locations are shown in the second column of the player list, in the form of map coordinates. This is not too helpful since we already had keyboard shortcuts to reach starting locations in the map editor (1-9 number keys), but in my opinion looks nice. The giant help tip in the dialog description had to go though, but don’t worry, for the tooltip on the editor palette already provided the exact same information in a more consistent fashion with regard to the other editing tools.&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
  &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/gui2-addon-singleremove.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_gui2-addon-singleremove.png&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;strong&gt;→&lt;/strong&gt; &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/gui2-addon-multiremove.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_gui2-addon-multiremove.png&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;And finally, something more useful for the large majority of the userbase: removing multiple add-ons at once without having to return to the Uninstall Add-ons menu. I have not committed this to trunk yet, though, and I’m not even sure I’ll be able to merge it before the feature freeze in preparation for the final lap towards 1.10 comes into effect.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Giving Debian Wheezy another whirl, and an unpleasant surprise from Reicore</title>
    <link>http://shadowm.rewound.net/blog/archives/206-Giving-Debian-Wheezy-another-whirl,-and-an-unpleasant-surprise-from-Reicore.html</link>

    <description>
        &lt;p&gt;The &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/175-Gone-Horribly-Wrong.html&quot;&gt;last time&lt;/a&gt; I tried to switch from Debian stable to testing I was hit by a disease known as X.org Server 1.10, and more specifically, fd.o &lt;a href=&quot;https://bugs.freedesktop.org/show_bug.cgi?id=31017&quot;&gt;bug #31017&lt;/a&gt;, which made my KDE experience less than worthwhile, to say the last. The &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/176-Status-Quo-Is-God.html&quot;&gt;solution&lt;/a&gt; I devised was not particularly productive either.&lt;/p&gt;

&lt;p&gt;However, X.org Server 1.11.1 hit Testing a while ago, and it’s what I am using right now — I successfully switched to “wheezy” again, today, and this time it would seem a massive rollback won’t be required, since the aforementioned bug is finally fixed.&lt;/p&gt;

&lt;p&gt;I don’t think I can claim the upgrade was smooth, though.&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/206-Giving-Debian-Wheezy-another-whirl,-and-an-unpleasant-surprise-from-Reicore.html#extended&quot;&gt;Continue reading &quot;Giving Debian Wheezy another whirl, and an unpleasant surprise from Reicore&quot;&lt;/a&gt;
    </description>
</item>
<item>
    <title>More on the imminent hard disk crash</title>
    <link>http://shadowm.rewound.net/blog/archives/207-More-on-the-imminent-hard-disk-crash.html</link>

    <description>
        &lt;p&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/206-Giving-Debian-Wheezy-another-whirl,-and-an-unpleasant-surprise-from-Reicore.html&quot;&gt;As I previously reported&lt;/a&gt;, reicore’s hard disk might be dying. This is not surprising in the least, since I have been hearing loud noises from the drive during high activity since a long while — playing vanilla Minecraft is apparently the most straining task for it for some reason. Considering reicore didn’t present any such issues at the beginning, it’s possible the person who gave her to me when &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/155-Bluecores-status.html&quot;&gt;bluecore croaked&lt;/a&gt; did something bad to her while I wasn’t looking. He’s unlikely to confirm such a thing, though.&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
  &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/reicore-hdd-status.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_reicore-hdd-status.png&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;A short drive self-test last night revealed that one of the bad blocks is currently part of the very root filesystem. Since I started to consistently hit a bad block while logging into KDE, I decided to run &lt;tt&gt;e2fsck -c&lt;/tt&gt; on all partitions from a &lt;a href=&quot;http://grml.org/&quot;&gt;Grml&lt;/a&gt; live CD system (also Debian-based).&lt;/p&gt;

&lt;p class=&quot;italic&quot;&gt;(Yes, I just realized I inadvertently left the swap partition out of the emergency check procedure. I just ran &lt;tt&gt;badblocks&lt;/tt&gt; on it in read-only mode and it appears to be clean.)&lt;/p&gt;

&lt;p&gt;Scanning a 466 GiB hard disk for bad sectors isn’t a quick task, but it took just as long as it did with the 1.18 GiB disk on my first computer back in 1998 — about two hours and some minutes — and here are the good news: there are only two damaged sectors, both of them within the root filesystem, and only one file was lost: &lt;tt&gt;/usr/lib/libQtDesigner.so.4.7.3&lt;/tt&gt;, provided by the &lt;tt&gt;libqt4-designer&lt;/tt&gt; package in Debian wheezy.&lt;/p&gt;

&lt;p&gt;Why the dynamic linker felt it necessary to access this file while launching Akregator and KMail during the login process is beyond me, but it’s good that nothing was lost, as I promptly reinstalled the package. Either way, I had a fresh pre-upgrade backup in my external 2 TiB hard disk drive ready just in case.&lt;/p&gt;

&lt;p&gt;I’ll certainly have to get used to making backups more often than my previous, sloppy &lt;strike&gt;biweekly&lt;/strike&gt; &lt;em&gt;n-weekly&lt;/em&gt; schedule. Thanks goodness for &lt;tt&gt;rsnapshot&lt;/tt&gt;!&lt;/p&gt; 
    </description>
</item>
<item>
    <title>After the Storm 0.5.0</title>
    <link>http://shadowm.rewound.net/blog/archives/205-After-the-Storm-0.5.0.html</link>

    <description>
        &lt;p&gt;The idea of continuing and developing the &lt;cite&gt;Invasion from the Unknown&lt;/cite&gt; storyline further was in my mind from the beginning, and I apparently started to work on a sequel on May 2008, if the &lt;a href=&quot;http://wesnoth-umc-dev.ai0867.net/umcreg/index.cgi&quot;&gt;Wesnoth-UMC-Dev Registry&lt;/a&gt; is anything to go by.&lt;/p&gt;

&lt;p&gt;&lt;cite&gt;After the Storm’s&lt;/cite&gt; development has been repeatedly impacted and put at risk by various “real life” issues.&lt;/p&gt;

&lt;p&gt;Earlier this year, I decided to go back to work on the campaign after a long hiatus — so long I don’t remember how long anymore — but my attempt ultimately failed anyway. &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/158-After-the-Storm-release-schedule-update.html&quot;&gt;I promised a delivery&lt;/a&gt;, but the delivery did not happen.&lt;/p&gt;

&lt;p&gt;Until I rediscovered the &lt;em&gt;fun&lt;/em&gt; in video games with VVVVVV, &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/192-Mining-your-way-to-victory.html&quot;&gt;Minecraft&lt;/a&gt; and &lt;a href=&quot;https://twitter.com/#!/shikadilord/status/114864200723070976&quot;&gt;Portal&lt;/a&gt;. Then, &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/201-After-the-Storm-0.4.0.html&quot;&gt;magic ensued&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/202-After-the-Storm-0.4.1a.html&quot;&gt;I said&lt;/a&gt; I would try to finish the first episode of the campaign before December. I am glad to say that mission has just been accomplished. &lt;strong&gt;After the Storm 0.5.0 is out in the Wesnoth 1.9.x add-ons server, with the first episode (that’s 13 scenarios) complete!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For those who’d rather read a terse piece of text with no emotive speech in it, the changelog for this version follows:&lt;/p&gt;

&lt;pre&gt;
Version 0.5.0:
--------------
* Scenarios:
  * 09 - The Triad (part 3):
    * Fixed problems with the final cutscene on Wesnoth 1.9.8 and earlier.
  * 11 - Return to Wesmere (part 2):
    * New scenario.
  * Completed episode I.
* Units:
  * Removed Skirmisher ability from Elynia.
  * Spawners have a small chance of deactivating themselves after spawning a
    unit.
&lt;/pre&gt;

&lt;p&gt;I have tried to make sure AtS remains playable on Wesnoth 1.9.8, but my primary development target is still 1.9.9 and support for 1.9.5, 1.9.6 and 1.9.7 is mainly theoretical at the moment. If you encounter any “Invalid WML errors” or such, and you are using Wesnoth 1.9.7 or earlier, try with Wesnoth 1.9.8 or 1.9.9 instead if you can, and give me some feedback in the &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?t=32091&quot;&gt;forum thread&lt;/a&gt; so I can address any such issues as soon as I may.&lt;/p&gt;

&lt;p&gt;I take this opportunity to remind you that you can also find and follow me on Twitter as @ShikadiLord or join my personal channel &lt;tt&gt;##shadowm&lt;/tt&gt; in the freenode IRC network.&lt;/p&gt;

&lt;p&gt;Have a lot of fun!&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Wesnoth.org DNS issues</title>
    <link>http://shadowm.rewound.net/blog/archives/204-Wesnoth.org-DNS-issues.html</link>

    <description>
        &lt;p&gt;Wesnoth.org appears to have DNS issues at the moment, resulting in the site’s address being impossible to resolve to a numeric address (IP) for most people. We are doing everything that’s possible at the moment to restore it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UPDATE:&lt;/strong&gt; &lt;strike&gt;Apparently, it’s been solved already. However, the new records could still take some time for some people to have an effect due to DNS caching.&lt;/strike&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UPDATE 2:&lt;/strong&gt; &lt;strike&gt;My own evidence indicates that it’s &lt;strong&gt;not&lt;/strong&gt; solved yet.&lt;/strike&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UPDATE 3 (Oct. 3rd):&lt;/strong&gt; It’s solved now. Some DNS servers could still claim wesnoth.org doesn’t exist, so just give them a few more hours.&lt;/p&gt;

&lt;p&gt;If you trust me (since I’m the forum administrator and all), you can follow these simple instructions to fix your access to Wesnoth.org’s services in the meantime. If you don’t feel comfortable editing system files or don’t have admin access, you can try connecting directly to Wesnoth.org’s current IP, 65.18.193.12, but this will not work correctly with the wiki and forums which use the wiki. and forums. subdomains.&lt;/p&gt;

&lt;p&gt;Do note that what I describe should be considered a temporary workaround. If Wesnoth.org’s IP changes in the future, you’ll need to remove any hosts file entries you added.&lt;/p&gt;

&lt;h3&gt;Linux, BSD derivatives&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; make sure to backup your &lt;tt&gt;/etc/hosts&lt;/tt&gt; file first in case you accidentally delete its previous contents, which could cause some applications to behave incorrectly.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Edit the file &lt;tt&gt;/etc/hosts&lt;/tt&gt; with a plain text editor such as gnome-editor, Kwrite/Kate, vi/vim, Emacs, and such.&lt;/li&gt;
  &lt;li&gt;Add the following line to it and save:
  &lt;pre&gt;
65.18.193.12 wesnoth.org www.wesnoth.org forums.wesnoth.org wiki.wesnoth.org add-ons.wesnoth.org server.wesnoth.org coc.wesnoth.org replays.wesnoth.org bugs.wesnoth.org
&lt;/pre&gt;&lt;/li&gt;
  &lt;li&gt;Done!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;An alternative is just issuing the following command as administrator. Notice that it uses &amp;gt;&amp;gt; instead of the usual &amp;gt; in order to append rather than replace the file!&lt;/p&gt;

&lt;pre&gt;# echo &quot;65.18.193.12 wesnoth.org www.wesnoth.org forums.wesnoth.org wiki.wesnoth.org add-ons.wesnoth.org server.wesnoth.org coc.wesnoth.org replays.wesnoth.org bugs.wesnoth.org&quot; &amp;gt;&amp;gt; /etc/hosts
&lt;/pre&gt;

&lt;h3&gt;Windows&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;Login with an account with administrator access.&lt;/li&gt;
  &lt;li&gt;Edit or create the file &lt;tt&gt;C:\WINDOWS\System32\Drivers\etc\hosts&lt;/tt&gt; with a plain text editor such as Notepad (replace &lt;tt&gt;C:\WINDOWS&lt;/tt&gt; with the correct installation path of your OS if necessary.&lt;/li&gt;
  &lt;li&gt;Add the following line to it and save:
  &lt;pre&gt;
65.18.193.12 wesnoth.org www.wesnoth.org forums.wesnoth.org wiki.wesnoth.org add-ons.wesnoth.org server.wesnoth.org coc.wesnoth.org replays.wesnoth.org bugs.wesnoth.org
&lt;/pre&gt;&lt;/li&gt;
  &lt;li&gt;Done!&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Other&lt;/h3&gt;

&lt;p&gt;Unfortunately, I have no idea about Mac OS X since I’ve never had an Apple computer. If anyone knows more than I do, feel free to post a comment explaining the steps.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>After the Storm 0.4.2</title>
    <link>http://shadowm.rewound.net/blog/archives/203-After-the-Storm-0.4.2.html</link>

    <description>
        &lt;p&gt;In good &lt;a href=&quot;http://en.wikipedia.org/wiki/Release_early,_release_often&quot;&gt;RERO&lt;/a&gt; tradition, &lt;cite&gt;After the Storm&lt;/cite&gt; 0.4.2 is now available in the Wesnoth 1.9.x add-ons server addressing a few bugs reported today.&lt;/p&gt;

&lt;p&gt;Unless something major arises again, 0.4.3 will feature the eleventh scenario in Episode I, whose map I have already finished.&lt;/p&gt;

&lt;p&gt;The changelog for this version follows:&lt;/p&gt;

&lt;pre&gt;
Version 0.4.2:
--------------
* Scenarios:
  * Removed player income in scenario 6 and 7 cutscenes.
  * 06 - Quenoth Isle/Elves of a Different Land:
    * Fixed gold carryover for scenario 07.
  * 07 - The Search for the Past:
    * Remove poison/slowed/ambush status from units at the end to avoid recall
      issues in later scenarios.
  * 07 - Resolutions:
    * Fixed gold carryover for scenario 08.
  * 09 - The Triad (part 1):
    * Fixed undead and faerie units in the recall list being killed in turn 2.
&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;UPDATE:&lt;/strong&gt; version 0.4.3 is on its way to the server due to a severe case of savegame corruption as a consequence of my half-assed fix for the poisoned recalls issues. Since I seem to be producing new releases faster than I can announce them, I’ll only be posting about major releases (such as the future 0.5.0) in here. For now, use the forum topic and the add-ons server to keep track of updates.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>After the Storm 0.4.1a</title>
    <link>http://shadowm.rewound.net/blog/archives/202-After-the-Storm-0.4.1a.html</link>

    <description>
        &lt;p&gt;&lt;cite&gt;After the Storm&lt;/cite&gt; version 0.4.1a is now available in the Wesnoth 1.9.x add-ons server. This version adds the tenth scenario to the first episode.&lt;/p&gt;

&lt;p&gt;The current plan is to have 0.5.0 out with the first episode finished before December. I am not going to make any promises this time since I didn’t have much luck with the original schedule that required 0.4.0 to be released in &lt;em&gt;April of this year&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Behold the changelog:&lt;/p&gt;

&lt;pre&gt;
Version 0.4.1:
--------------
* Scenarios:
  * Added custom flag styles for various AI sides.
  * Minor wording changes, some of them contributed by tr0ll.
  * 10 - Tears:
    * New scenario.
* Units:
  * Renamed Chaos Lore to Chaos Lorekeeper.
&lt;/pre&gt;

&lt;p&gt;As for the “a” suffix in the version number, it’s because I originally tagged version 0.4.1 in SVN and then realized the scenario count in the campaign description still read 9/13 instead of 10/13.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>After the Storm 0.4.0</title>
    <link>http://shadowm.rewound.net/blog/archives/201-After-the-Storm-0.4.0.html</link>

    <description>
        &lt;p&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/158-After-the-Storm-release-schedule-update.html&quot;&gt;What should have occurred last March or April&lt;/a&gt; occurred now, instead.&lt;/p&gt;

&lt;p&gt;After a record break of &lt;em&gt;6 months&lt;/em&gt; I got back to work on scenario 9 of &lt;cite&gt;After the Storm&lt;/cite&gt; and completed it, in a fairly different fashion than I originally planed. Still, it’s another step towards completion of Episode I. &lt;strong&gt;Version 0.4.0&lt;/strong&gt; is available for download &lt;strong&gt;now&lt;/strong&gt; in the 1.9.x add-ons server and SourceForge.net.&lt;/p&gt;

&lt;p&gt;I think I have avoided to spread many spoilers about AtS’ plot since day zero; there were, of course, some early storyboards circulating around the forums and IRC at the beginning, but as I’ve been saying for quite a while, they are no longer canon and I am departing from the original plan on purpose.&lt;/p&gt;

&lt;p&gt;I am fully aware that some people will not like my choices in 0.4.0, and they may even seem blasphemous, but the truth is I scattered enough foreshadowing everywhere to prepare them for the time being. What are these choices I speak of, anyway? Too bad, you’ll have to play the campaign to find out!&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>Crucial flaw, Part II</title>
    <link>http://shadowm.rewound.net/blog/archives/200-Crucial-flaw,-Part-II.html</link>

    <description>
        &lt;p&gt;I figured that fixing the &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/199-Crucial-flaw,-or-Why-You-Should-Stick-To-Windows.html&quot;&gt;recordMyDesktop breakage&lt;/a&gt; in my Debian installation would be worth the extra effort after all, so I made a complete backup of my system and switched all installed packages I could to their &lt;a href=&quot;http://www.debian-multimedia.org/&quot;&gt;debian-multimedia.org&lt;/a&gt; counterparts. That is not to say that this road is covered with rainbows and populated by puppies; dm.o’s version of the &lt;tt&gt;mplayer&lt;/tt&gt; package conflicts with Debian’s &lt;tt&gt;mplayer-gui&lt;/tt&gt; package because of one icon file provided by both, so I had to remove &lt;tt&gt;mplayer-gui&lt;/tt&gt; to complete the “upgrade”.&lt;/p&gt;

&lt;p&gt;Based on what I’ve heard about dm.o this is par for the course, though.&lt;/p&gt;

&lt;p&gt;This repository does not provide custom versions of rMD or its Gtk+ GUI, so I had to stick to the Ubuntu 11.04 (Natty) version of &lt;tt&gt;gtk-recordmydesktop&lt;/tt&gt; (&lt;a href=&quot;http://packages.ubuntu.com/natty/gtk-recordmydesktop&quot;&gt;link&lt;/a&gt;) to be able to do some configuration again.&lt;/p&gt;

&lt;p&gt;The outcome? Success. recordMyDesktop’s videos finally work with both YouTube &lt;em&gt;and&lt;/em&gt; ffmpeg, which I had to use anyway to reduce the output’s size from about 250 MiB to 50 MiB so it wouldn’t take hours or days to upload:&lt;/p&gt;

&lt;pre&gt;$ ffmpeg -map 0.1 -b 2000000 -i Videos/capture/achievement.ogv Videos/capture/achievement-trans-2000.ogv&lt;/pre&gt;

&lt;p&gt;All just in time for a little personal milestone:&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
  &lt;iframe width=&quot;560&quot; height=&quot;345&quot; src=&quot;http://www.youtube.com/embed/e8QkZSRXqYQ&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;

&lt;p&gt;The video is silent, though, for a reason:&lt;/p&gt;

&lt;p&gt;It turns out that ALSA doesn’t expose a hardware loopback capture control for me for some reason and that is exactly what I need to be able to capture audio from ALSA applications! I haven’t figured out whether it’s possible to intercept the crap sent to the sound card in software so I’ll just settle for silent captures for now. I &lt;em&gt;could&lt;/em&gt; use the laptop’s builtin microphone if I wanted, but I tend to be in really noisy environments where &lt;a href=&quot;http://tvtropes.org/pmwiki/pmwiki.php/Main/FunnyBackgroundEvent&quot;&gt;anything can happen in the background while I’m recording&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It’s a real shame that ALSA can’t detect (or reicore’s onboard sound controller doesn’t expose) a loopback control. If anyone knows any method to do the aforementioned interception without using PulseAudio (or Jack, which Minecraft/LWJGL does not support), I’d really love to hear about it.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Crucial flaw, or “Why You Should Stick To Windows”</title>
    <link>http://shadowm.rewound.net/blog/archives/199-Crucial-flaw,-or-Why-You-Should-Stick-To-Windows.html</link>

    <description>
        &lt;p&gt;Recording screen captures/screencasts in Debian GNU/Linux (and as far as I know, Ubuntu as well) is not trivial.&lt;/p&gt;

&lt;p&gt;It’s really frustrating that even though Linux enthusiasts generally place special emphasis on the ecosystem’s vast array of choices for various software application classes, a simple and ubiquitous field like screen recording applications appears to be mostly empty, only populated by a few rare specimens that attest to fundamental flaws in Linux architecture which seal its place as a non-mainstream operating system that’s not suitable for the average Joe.&lt;/p&gt;

&lt;p&gt;Proprietary solutions to this seemingly trivial problem appear to be scarce. There’s &lt;strong&gt;&lt;a href=&quot;http://www.debugmode.com/wink/&quot;&gt;Wink&lt;/a&gt;&lt;/strong&gt;, but it doesn’t produce actual videos in any of the most popular &lt;em&gt;video&lt;/em&gt; container formats, so it’s useless for capturing clips to upload to &lt;a href=&quot;http://www.youtube.com/&quot;&gt;everyone’s favorite “lols” repository&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The free/open-source solutions can be divided in two major camps:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Horribly complicated command-line applications or clever tricks, such as convoluted &lt;strong&gt;ffmpeg&lt;/strong&gt; options.&lt;/li&gt;
  &lt;li&gt;Featureless GUI front-ends like &lt;a href=&quot;http://recordmydesktop.sourceforge.net/&quot;&gt;&lt;strong&gt;recordMyDesktop&lt;/strong&gt;&lt;/a&gt; or &lt;a href=&quot;http://www.videolan.org/vlc/&quot;&gt;&lt;strong&gt;VLC&lt;/strong&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As a mobile broadband user with a very restrictive monthly transfer quota (6 GiB download + upload) I am not really keen on videos as a medium, but there are cases where they really are the only format that makes sense in situations like sharing gameplay footage. Multiple times I have tried to use recordMyDesktop to capture some bug-hunting action in games like SuperTuxKart or Frogatto to no avail; the application itself won’t produce output in any format but Ogg/Theora/Vorbis (&lt;a href=&quot;http://recordmydesktop.sourceforge.net/faq.php#Will_you_add_support_for_format%28audio/video_encoding%29_X_or_Y?&quot;&gt;presumably by design&lt;/a&gt;), and in Debian squeeze in particular, it is affected by two bugs:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;The Advanced dialog won’t come up (&lt;a href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=630664&quot;&gt;bug #630664&lt;/a&gt;, solution is either to take the risk and use the Ubuntu 11.04 &lt;tt&gt;gtk-recordmydesktop&lt;/tt&gt; package, or have someone figure out what patch needs to be applied to fix it in Debian (not sure if I can be bothered to work on that since I’m not really happy with rMD either way, see further below)).&lt;/li&gt;
  &lt;li&gt;Sound capture doesn’t work by default because of a case-sensitivity issue regarding the device name (thanks Gambit for noticing this), that can only be fixed by changing the audio device name in Advanced preferences (see above) or hand-editing the config file in &lt;tt&gt;~/.gtk-recordmydesktop&lt;/tt&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There’s another two or three bugs affecting me that are apparently &lt;em&gt;not&lt;/em&gt; recordMyDesktop’s responsibility:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;YouTube won’t recognize the Theora videos produced by rMD for some reason, apparently due to some library/backend bug that still affects Debian squeeze (but apparently not &lt;a href=&quot;http://www.webupd8.org/2010/10/gtk-recordmydesktop-videos-now-work.html&quot;&gt;recent Ubuntu versions&lt;/a&gt;). The result is a static green picture in most cases.&lt;/li&gt;
  &lt;li&gt;Similarly to the above, ffmpeg is unable to recode rMD’s output correctly regardless of the target format (even Theora to Theora), producing unreadable garbled videos.&lt;/li&gt;
  &lt;li&gt;VLC and ffmpeg can see an unidentifiable “zeroth stream” with no valid associated codecs in rMD’s output.&lt;/li&gt;
  &lt;li&gt;Linux’s audio architecture is fucked up.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Regarding the last “bug”, all I know is that I’m unable to capture audio from ALSA applications’ output as opposed to a real physical capture device like my laptop’s built-in microphone or an external microphone. I would not be surprised if I’m missing something in my mixer configuration that I need to make it work — given the huge amount of chipset or manufacturer-dependent options that can be seen below:&lt;/p&gt;

&lt;div class=&quot;center scrollable&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/lotsandlotsofcontrols.png&quot; alt=&quot;&quot; /&gt;&lt;/div&gt;

&lt;p&gt;All this is using Linux 2.6.39.3 and the HDA Intel (&lt;tt&gt;snd_hda_intel&lt;/tt&gt;) driver on some onboard controller identified as “&lt;tt&gt;00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)&lt;/tt&gt;” in &lt;tt&gt;lspci&lt;/tt&gt;’s output.&lt;/p&gt;

&lt;p&gt;The closest thing I get to actual internal audio capture is a lot of random, stuttering noises mixed with application sounds that definitely doesn’t come from the built-in mic.&lt;/p&gt;

&lt;p&gt;I personally can’t be bothered to research much about using ffmpeg tricks to capture footage of my awesome Minecraft world since, after all, I only want to capture footage of my awesome Minecraft world rather than learn a lot of crap that no sane average desktop/laptop user should ever need to touch. Furthermore, I’m using a graphical desktop environment for a reason!&lt;/p&gt;

&lt;p&gt;So the only viable solution for me, at this moment, turns out to be rMD. Without sound. And with a &lt;a href=&quot;http://www.webupd8.org/2010/08/how-to-fix-gtk-recordmydesktop-videos.html&quot;&gt;very messy workaround&lt;/a&gt; for that mysterious library bug that causes ffmpeg and YouTube to choke on my videos.&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
  &lt;iframe width=&quot;560&quot; height=&quot;345&quot; src=&quot;http://www.youtube.com/embed/FyToosePP3s&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;

&lt;p&gt;I really think that, as a graphical desktop environment user I deserve a working solution out of the box, not a crapload of hacks working around some developers’ lack of interest on usability matters. I’m currently hoping that things won’t look so utterly grim after I switch to Debian wheezy (current Testing), once &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/190-Gone-Horribly-Wrong,-Part-II.html&quot;&gt;certain major bugs&lt;/a&gt; are addressed upstream or downstream.&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>The Double-posting Dilemma</title>
    <link>http://shadowm.rewound.net/blog/archives/198-The-Double-posting-Dilemma.html</link>

    <description>
        &lt;p&gt;When I prepared the final draft of the October 2010 revision of the Wesnoth.org Forums &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?t=24277&quot;&gt;Posting Guidelines&lt;/a&gt;, I deliberately skipped clarifying a specific point regarding posting rate conducts, more specifically, &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?t=24277#w0spam&quot;&gt;point 1f&lt;/a&gt;, in order to see what the community would make out of it.&lt;/p&gt;

&lt;p&gt;That’s not to say I didn’t alter it in any way whatsoever since the previous revision, which was basically a left-over of Turuk’s administration:&lt;/p&gt;

&lt;div class=&quot;float_left col2_layout&quot;&gt;&lt;strong&gt;Before:&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&gt;
  &lt;strong&gt;Think and Read.&lt;/strong&gt;&lt;br /&gt;
  Read the entire thread before you post. And when you post, explain your reasons. Nonsense may be deleted without warning, especially in a working topic. Posting the same thing after it has been deleted will get you a warning. Doing it again will get you a ban.&lt;br /&gt;
  &lt;br /&gt;
  &lt;strong&gt;No Spamming.&lt;/strong&gt;&lt;br /&gt;
  Post a single idea/question/comment in only one forum. Do not double post, edit your previous post if you have something new to add but no one has posted yet.
&lt;/blockquote&gt;
&lt;/div&gt;

&lt;div class=&quot;float_right col2_layout&quot;&gt;&lt;strong&gt;After:&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&gt;
  &lt;strong&gt;No spamming — think and read&lt;/strong&gt;&lt;br /&gt;
  Post a single idea/question/comment in only one forum. Do not double post, &lt;ins&gt;and instead&lt;/ins&gt; edit your previous post if you have something new to add and no one has posted yet. &lt;ins class=&quot;bold&quot;&gt;Technical support requests may be bumped after a while in case they have been forgotten and sink past the first forum view page.&lt;/ins&gt; Read the entire thread before replying to it. Nonsense may be deleted without warning, especially in a working topic.
&lt;/blockquote&gt;
&lt;/div&gt;

&lt;div class=&quot;float_reset&quot;&gt;&lt;/div&gt;

&lt;p&gt;I introduced the support requests bit with the intention of giving users in the support forums (Technical Support, Release Announcements, Compiling &amp;amp; Installation; WML Workshop, Coder’s Corner, Lua Labs, Scenario &amp;amp; Campaign Development) special protection as bumping topics in there is usually a legitimate and reasonable course of action. But in reality, there are other cases where bumping by means of double-posting should be allowed. Those are not described or explained in the Guidelines because I felt that elaborating on a specific point would derail the whole post.&lt;/p&gt;

&lt;p&gt;One of those cases applies to campaign development topics, where the OP may post the announcement for a new version of the campaign and only a few hours later find himself or herself in need of another announcement because of a quick update fixing some important bug.&lt;/p&gt;

&lt;p&gt;Another case, more technical than practical, is the maximum number of attachments per post, which exists to discourage and limit senseless spamming of unwanted content by automated and non-automated agents, and encourage use of compressed containers like tarballs, zip files and rar archives to keep our overall disk usage relatively low. Users exceeding the attachment limit will need to continue posting their content in consecutive posts.&lt;/p&gt;

&lt;p&gt;Generally speaking, users reporting double/multiple posting according to &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?t=24277#w0reporting&quot;&gt;section 5&lt;/a&gt; of the Guidelines have enough common sense to understand that sometimes exceptions need to be granted and that this is one of the reasons we don’t call them the “Forum Rules”. Rent-a-modders occasionally lack this common sense, however, and they make their intentions evident through this mechanism. I imagine one can never be too anvilicious while reminding them &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/98-Rent-a-Mod.html&quot;&gt;what this entails.&lt;/a&gt;&lt;/p&gt; 
    </description>
</item>
<item>
    <title>The Rise of Wesnoth for Android</title>
    <link>http://shadowm.rewound.net/blog/archives/197-The-Rise-of-Wesnoth-for-Android.html</link>

    <description>
        &lt;p&gt;Apparently, Battle for Wesnoth is already out in the Android Market! There’s no official announcement about it right now, but I got these tasty links (posted in Twitter as &lt;a href=&quot;https://twitter.com/WesnothOrg/status/109176717456850944&quot;&gt;@WesnothOrg&lt;/a&gt; as well) a few minutes ago from the maintainer, cjhopman in the forums and IRC!&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://market.android.com/details?id=com.androthsoft.battlefree&quot;&gt;Demo version (free)&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://market.android.com/details?id=com.androthsoft.battle&quot;&gt;Full version&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This really makes me want to get an Android-based smartphone now! If only such a thing could fit in my budget…&lt;/p&gt; 
    </description>
</item>
<item>
    <title>The Fall of Wesnoth for iOS</title>
    <link>http://shadowm.rewound.net/blog/archives/195-The-Fall-of-Wesnoth-for-iOS.html</link>

    <description>
        &lt;p&gt;July 2009 — work on the first iPhone port of the Battle for Wesnoth is &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?f=6&amp;amp;t=26193&quot;&gt;announced&lt;/a&gt; in the official forums by Kyle Poole.&lt;/p&gt;

&lt;p&gt;August 2011 — the iPhone and iPad ports of the Battle for Wesnoth have stagnated for half a year and support requests in the dedicated topics (&lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?f=6&amp;amp;t=28777&quot;&gt;iPhone&lt;/a&gt;, &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?f=6&amp;amp;t=29343&quot;&gt;iPad&lt;/a&gt;) in the official forums are not being answered by Kyle, who last logged in on May 25th 2011, having posted for the last time on December 19th of the previous year, some time after &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?f=6&amp;amp;t=32367&quot;&gt;announcing the release of a Palm Pre port&lt;/a&gt;. The &lt;a href=&quot;http://wesnoth.kylepoole.com/&quot;&gt;SVN repository&lt;/a&gt; doesn’t display recent activity either. Meanwhile, Apple’s money-making platform marches on.&lt;/p&gt;

&lt;p&gt;The truth is, after teasing the user base for a while with announcements of a forthcoming Android port, and invisible “progress”, Kyle seems to have moved on to “better” projects.&lt;/p&gt;

&lt;p&gt;Case in point: &lt;a href=&quot;http://www.shadowera.com/&quot;&gt;Shadow Era&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The last thing I saw from him in his blog was the announcement of this new game from his company and frankly stopped paying attention afterwards since according to Dave he stated he’d be coming back to Wesnoth “soon”. That was back in May this year. &lt;a href=&quot;http://www.kylepoole.com/&quot;&gt;His site&lt;/a&gt; is now suspiciously blank.&lt;/p&gt;

&lt;p&gt;This lack of communication on his part while apparently having more success with his new release leads me to think he’s possibly not coming back to Wesnoth and we may have to start telling people in the forums to send their inquiries to his personal email address instead — which isn’t too hard to find in the web as Gambit discovered, mind you.&lt;/p&gt;

&lt;p&gt;But what’s the legacy of this apparently abandoned port?&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/195-The-Fall-of-Wesnoth-for-iOS.html#extended&quot;&gt;Continue reading &quot;The Fall of Wesnoth for iOS&quot;&lt;/a&gt;
    </description>
</item>
<item>
    <title>Automatic rebasing of master for Frogatto Git</title>
    <link>http://shadowm.rewound.net/blog/archives/196-Automatic-rebasing-of-master-for-Frogatto-Git.html</link>

    <description>
        &lt;p&gt;Since &lt;a href=&quot;http://www.frogatto.com/?p=568&quot;&gt;Frogatto &amp;amp; Friends moved&lt;/a&gt; from its own SVN repository to a Git one on Github, some people have got confused by the appearance of true merge commits in history due to them working on their master branch directly, pulling from upstream and pushing again. I don’t personally think that this is the best workflow, but for former SVN users it appears to be the most suitable transitional option.&lt;/p&gt;

&lt;p&gt;But Git isn’t a 1:1 equivalent solution — and I won’t get too deep into that subject, so I’ll explain instead what the method that works best for Frogatto (without merge commits!) at the moment is.&lt;/p&gt;

&lt;pre&gt;$ git config branch.master.rebase true
$ git config rebase.stat true
&lt;/pre&gt;

&lt;p&gt;The &lt;strong&gt;first&lt;/strong&gt; line sets a configuration option that tells Git to try &lt;em&gt;rebasing&lt;/em&gt; our local &lt;tt&gt;master&lt;/tt&gt; against upstream after using &lt;tt&gt;git pull&lt;/tt&gt; on it. The result of a rebase operation is that local commits not merged upstream are temporarily removed from history, the branch is reset to its previous diversion point, fast-forwarded to the new upstream HEAD, and the local commits are then rewritten on top, giving the user the choice to solve conflicts by hand as they appear, should they appear at all. The &lt;strong&gt;second&lt;/strong&gt; line makes automatic and manual rebase operations to display a summary and stat display of changes merged in the fast-forward operation. I’m not entirely sure why this is not the default; normal fast-forwards and true merges (controlled by the &lt;tt&gt;merge.stat&lt;/tt&gt; option) on &lt;tt&gt;git pull&lt;/tt&gt; and &lt;tt&gt;git merge&lt;/tt&gt; already do this.&lt;/p&gt;

&lt;p&gt;See also &lt;a href=&quot;http://www.kernel.org/pub/software/scm/git/docs/git-rebase.html&quot;&gt;git-rebase(1)&lt;/a&gt; for further information on what the rebasing procedure entails.&lt;/p&gt;

&lt;p&gt;Once the configuration is adjusted with those two lines, it’s safe to &lt;tt&gt;git pull&lt;/tt&gt; right away and later &lt;tt&gt;git push&lt;/tt&gt; once everything is ready for committing to the Github repository for everyone to see.&lt;/p&gt;

&lt;p&gt;For Frogatto’s SVN-inspired linear approach to history this means that merge commits won’t be generated and they won’t pollute history and confuse people who are not used to distributed version control systems.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Heaps and heaps of Ideas</title>
    <link>http://shadowm.rewound.net/blog/archives/193-Heaps-and-heaps-of-Ideas.html</link>

    <description>
        &lt;p&gt;The Ideas section in the &lt;a href=&quot;http://forums.wesnoth.org/&quot;&gt;Battle for Wesnoth forums&lt;/a&gt; is in very bad shape right now, and despite the efforts of my trusty moderators, the root of the problem lies far beyond our ability to lock topics.&lt;/p&gt;

&lt;p&gt;I won’t mention any names for obvious reasons, but a major behind-the-scenes administrative role in the Battle for Wesnoth Project (hint: it’s not Noy, it’s not Dave, it’s not me) once described several board sections including the aforementioned as “a place where all the noise can go to so that it does not hinder us too much”. This is not just one individual’s opinion and it shows; even when I was a user back in 2006 I always felt Ideas tended to be left aside by the development team.&lt;/p&gt;

&lt;p&gt;Yeah, &lt;a href=&quot;http://wiki.wesnoth.org/FAQ#Why_doesn.27t_Wesnoth_have_my_favorite_feature.3F&quot;&gt;I know&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;span class=&quot;bold&quot;&gt;Q: Why doesn’t Wesnoth have my favorite feature?&lt;/span&gt;&lt;br /&gt;
  &lt;span&gt;Because we are building this game for ourselves, to suit our own preferences. We’re not building the game for you, in large part because this is our hobby, not our job; whether you like it or not is immaterial to us. You may wonder, then, what the point is of soliciting ideas, as we do on the forum. We, the developers, have certainly come up with many good ideas on our own, but our players often do as well, and generally ones we don’t think of ourselves. If a player comes up with an idea we like, we might implement it. Not because they asked for it, but because of its own merits as an addition to our game. […]&lt;/span&gt;
&lt;/blockquote&gt;

&lt;p&gt;Of course, the extent to which a bunch of key developers can come up with ideas when they don’t even regularly play the game proper is debatable. The other side of the coin shows that users don’t really come up with good ideas most of the time. Most Ideas topics fall into one of the following categories:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Frequently Proposed Ideas (FPIs) — which go in the opposite direction of Wesnoth’s development&lt;/li&gt;
  &lt;li&gt;Good ideas that can’t be immediately implemented (BWH, from “been suggested before, we think it’s a good idea, hope to add it eventually”)&lt;/li&gt;
  &lt;li&gt;User interface ideas (usually overlaps with BWH)&lt;/li&gt;
  &lt;li&gt;Add-on and multiplayer server ideas (ditto)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;FPIs can be easily handled by moderators following a few simple guidelines and the bulk of locked threads in Ideas correspond to these. The problem is that BWH entries are not correctly classified anywhere — not even Feature Requests in &lt;a href=&quot;http://bugs.wesnoth.org/&quot;&gt;the Gna.org bug tracker&lt;/a&gt; are properly monitored and occasionally completely ridiculous entries get added there; others are forgotten and implemented by other people on their own without referencing the existing open issue(s), and there’s also a swamp of outdated issues that may no longer apply to trunk.&lt;/p&gt;

&lt;p&gt;BWHs are also quite sad to handle because, let’s accept it, most game players have no coding skills and won’t mess with the source to contribute C++ or Lua code back to the game, no matter how prominently advertised the open source nature of Wesnoth might be. The Forum Moderators are deliberately picked up from the non-technical bunch so they don’t get overloaded with responsibilities, something that’s happened before and has resulted in a degradation of the forums’ service quality.&lt;/p&gt;

&lt;p&gt;User interface ideas are an even worse terrain because Wesnoth’s GUI development has been largely stuck since 2008 with Mordante/SkeletonCrew’s new internal toolkit, GUI2. Pretty much no groundbreaking changes can be done until GUI2 is mature enough to support all the old features. It’s not very hard to create a campaign scenario with an absurdly long Objectives entry and watch the ensuing rendering mess — that’s just one example of how GUI2 is still inferior to the less flexible old toolkit in some ways.&lt;/p&gt;

&lt;p&gt;GUI is also a tough matter because it’s easy for a single user or Wesnoth developer to propose an interface for some task, implement it, and later find out that most of the other users or developers don’t “get it” — this is an issue inherent to user interface design, of course.&lt;/p&gt;

&lt;p&gt;Add-on and multiplayer server ideas are very hard to implement because they tend to require not just changes to the server and client code to suit our needs, but they also often involve new GUI elements, resulting in an overlap with both the GUI category, which in turn overlaps with BWH.&lt;/p&gt;

&lt;p&gt;Gambit and I tried for a while to make people use topic icons in Ideas to mark BWH entries and the rare issues that get finally solved in trunk. This doesn’t work very well because other developers either don’t watch Ideas thanks to the predominance of posts in any of the categories described above, or don’t watch the forums at all.&lt;/p&gt;

&lt;p&gt;I usually try to be optimistic about things, but I really feel like we core developers are alienating our own user base with this apparent lack of interest for &lt;em&gt;communication&lt;/em&gt;. Don’t even get me started on the “new lobby” fiasco in version 1.8.0.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Mining your way to victory</title>
    <link>http://shadowm.rewound.net/blog/archives/192-Mining-your-way-to-victory.html</link>

    <description>
        &lt;p&gt;Thanks to a Wesnoth user (you know who you are!) who bought an order of the &lt;a href=&quot;http://www.humblebundle.com/&quot;&gt;Humble Indie Bundle #3&lt;/a&gt; for me last Tuesday, I finally had the chance to try the popular in-development &lt;a href=&quot;http://minecraft.net/&quot;&gt;Minecraft&lt;/a&gt;, thanks to the included trial that lasts until this Sunday 14th.&lt;/p&gt;

&lt;p&gt;My thorough review of this game follows.&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/192-Mining-your-way-to-victory.html#extended&quot;&gt;Continue reading &quot;Mining your way to victory&quot;&lt;/a&gt;
    </description>
</item>
<item>
    <title>Firefox is dead, long live Firefox</title>
    <link>http://shadowm.rewound.net/blog/archives/191-Firefox-is-dead,-long-live-Firefox.html</link>

    <description>
        &lt;p&gt;&lt;a href=&quot;http://hacks.mozilla.org/2011/07/announcing-boot-to-gecko-b2g-booting-to-the-web/&quot;&gt;You finally, really did it.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It’s not &lt;em&gt;entirely&lt;/em&gt; unexpected for me, but it’s the kind of news one hopes to never find in his front door, like a car-bomb if you will. If this goes ahead I can imagine that less and less time and human and economic resources will be spent on the Mozilla Firefox proper for the PC, once B2G catches the OEMs’ attention.&lt;/p&gt;

&lt;p&gt;I guess it’s time for me to accept (&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/181-Firefox-5.html&quot;&gt;again&lt;/a&gt;) that Firefox has ultimately become the open-source Internet Explorer.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Gone Horribly Wrong, Part II</title>
    <link>http://shadowm.rewound.net/blog/archives/190-Gone-Horribly-Wrong,-Part-II.html</link>

    <description>
        &lt;p&gt;Previously I discovered that KDE SC 4.6 and X.org server 1.10 in Debian Wheezy are not a happy couple for &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/175-Gone-Horribly-Wrong.html&quot;&gt;various&lt;/a&gt; &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/176-Status-Quo-Is-God.html&quot;&gt;reasons&lt;/a&gt;. One of them is the garbage appearing behind new windows even on non-compositing window managers regardless of the DDX in use.&lt;/p&gt;

&lt;p&gt;The issue appears to be tracked, in fact, as &lt;a href=&quot;https://bugs.freedesktop.org/show_bug.cgi?id=31017&quot;&gt;bug #31017&lt;/a&gt; in freedesktop.org’s Bugzilla. Unfortunately, it’s classified as being of medium/normal importance, it’s been sitting there for some time while other entries get marked as duplicates and I hear rumors that X.org server 1.11.0 is coming out soon.&lt;/p&gt;

&lt;p&gt;I guess I can only hope later versions of the 1.11 branch integrate a fix of some sort. I’m starting to doubt I’ll be able to stick to Debian Stable for much long, especially if I buy a new laptop this year — right now I’m compiling GCC 4.6.1, that’s not a good sign.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>The dilemma of the Linux laptop buyer</title>
    <link>http://shadowm.rewound.net/blog/archives/189-The-dilemma-of-the-Linux-laptop-buyer.html</link>

    <description>
        &lt;p&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/167-Bluecores-back.html&quot;&gt;Bluecore is back&lt;/a&gt;, but this wasn’t necessarily good news for me. The current situation is a bit complicated, but it can be summed up like this: my father (who supposedly &lt;em&gt;gave&lt;/em&gt; me rather than lent Reicore) wants a laptop again, and so do I. He doesn’t need graphics or CPU power, but I do. Right now, Reicore barely fits the bill even if it works better than Bluecore in practice thanks to the extra 100 Hz of clock frequency and not suffering from Bluecore’s mysteriously subnormal I/O performance.&lt;/p&gt;

&lt;p&gt;The most optimal solution for us is that we buy a new laptop for &lt;em&gt;me&lt;/em&gt; and I return Reicore to its original owner. The only problem with this is that I have even more special needs: I have to run Linux.&lt;/p&gt;

&lt;p&gt;And I have a goal: I want to own a piece of NVIDIA hardware.&lt;/p&gt;

&lt;p&gt;While I could easily buy the components to build a new desktop machine with the same money, this would not be a good investment now that I’m primarily a laptop user. My poor desktop machine, Blackcore is suspected of having an unstable &lt;acronym title=&quot;Power Supply Unit&quot;&gt;PSU &lt;/acronym&gt; and may have more internal components damaged than it’s healthy for an expensive graphics card — until now Blackcore has been running with its utterly shitty (even on Windows) VIA Unichrome Pro &lt;acronym title=&quot;Integrated Graphics Processor&quot;&gt;IGP&lt;/acronym&gt;.&lt;/p&gt;

&lt;p&gt;For the purpose of saving electric power while on batteries (or not, global warming and all that crap) computer hardware engineers have come up with hybrid configurations in which there’s a low-power IGP serving as front-end for a beefier discrete &lt;acronym title=&quot;Graphics Processing Unit&quot;&gt;GPU&lt;/acronym&gt; that activates whenever it’s deemed to be required for heavy tasks. NVIDIA calls this “Optimus.”&lt;/p&gt;

&lt;p&gt;NVIDIA Optimus is not officially supported in Linux, &lt;a href=&quot;http://www.nvnews.net/vbulletin/showthread.php?p=2183477#post2183477&quot;&gt;and won’t be&lt;/a&gt;, at least for a while.&lt;/p&gt;

&lt;p&gt;Whether GPUs in Optimus configurations can be made to work on Linux without resorting to unsupported mechanisms &lt;a href=&quot;http://www.nvnews.net/vbulletin/showthread.php?p=2291824#post2291824&quot;&gt;appears to depend quite a bit on the computer model&lt;/a&gt; — for the larger unfortunate crowd there’s &lt;a href=&quot;https://github.com/MrMEEE/bumblebee&quot;&gt;Bumblebee&lt;/a&gt;, which may have achieved memetic status due to an &lt;a href=&quot;https://github.com/MrMEEE/bumblebee/commit/a047be85247755cdbe0acce6f1dafc8beb84f2ac&quot;&gt;unfortunate typo in the installation script&lt;/a&gt; (not even the software proper!).&lt;/p&gt;

&lt;p&gt;Unsupported solutions with NVIDIA sound very risky to me (temporary &lt;tt&gt;/usr&lt;/tt&gt; bomb aside) after &lt;a href=&quot;http://shadowm.rewound.net/blog/archives/68-ATI-mayhem,-part-X-including-a-trip-to-Wonderland.html&quot;&gt;witnessing the possibilities of &lt;em&gt;supported&lt;/em&gt; ones with AMD/ATI.&lt;/a&gt; Besides, it seems that &lt;a href=&quot;http://www.martin-juhl.dk/2011/05/optimus-on-linux-problem-solved/&quot;&gt;to get Optimus to work with Bumblebee&lt;/a&gt; it’s necessary to use a wrapper for pretty much every application one wants to use. That isn’t bad per se, however I’m not sure I’ll be able to boast about running Linux and Windows/Wine games like &lt;em&gt;that&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;NVIDIA’s official statement on the matter makes me think of their leaders as vile and smug sadists who look down on poor mobile Linux users who pay for their shit. I personally don’t feel so keen on purchasing hardware made by people like that, but it’s a well known fact that NVIDIA basically owns the consumer graphics market nowadays, truly rivaled only by AMD.&lt;/p&gt;

&lt;p&gt;Yet, I’m not sure I want to buy laptops with AMD ATI GPUs again after all that I went through with Bluecore’s Radeon HD 3200 on Linux.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>So, Google+</title>
    <link>http://shadowm.rewound.net/blog/archives/188-So,-Google+.html</link>

    <description>
        &lt;p&gt;Where do I start?&lt;/p&gt;

&lt;div class=&quot;center scrollable&quot;&gt;
  &lt;a href=&quot;http://xkcd.com/918/&quot;&gt;&lt;img src=&quot;http://imgs.xkcd.com/comics/googleplus.png&quot; alt=&quot;Google+&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
  &lt;span class=&quot;bold&quot;&gt;Sometimes it’s easier to let Randall unwittingly do the talking for us.&lt;/span&gt;
&lt;/div&gt;

&lt;p&gt;To be honest, I’ve never really been into social networks unless &lt;a href=&quot;http://twitter.com/shikadilord&quot;&gt;Twitter&lt;/a&gt; counts — your mileage may vary in that regard. I don’t have many close er, “friends” and I don’t know most of my relatives. Facebook is pretty much useless for me for that purpose, and so is Google+ or any other such service.&lt;/p&gt;

&lt;p&gt;Facebook… oh gods, where do I start with Facebook? It’s always been a shadow lurking behind me, trying to catch me off-guard, sending me shady blackmail messages to my Gmail account. For some reason some people thought I’d be interested in Facebook invites back in the day so I got spammed with them multiple times. I joined last year to stalk one single person (one who is perfectly aware of the situation, mind you) and still I have not had much use for it.&lt;/p&gt;

&lt;p&gt;It is outrageous, however, that I must receive (by default, anyway) stupid reminders telling me to come back to Facebook when I’ve not logged into the main web proper for a week or so.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Hi Ignacio,&lt;/p&gt;
  &lt;p&gt;You haven&#039;t been back to Facebook recently. Here are some people you may know on Facebook. Connect with friends, family, classmates, and co-workers to see their updates, pictures, and more.&lt;/p&gt;
  &lt;p class=&quot;center italic&quot;&gt;[Partial list of people whom I don’t even remotely know.]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;… Oh wait, this is post is not about Facebook. Alright, then! Sorry for veering off-topic.&lt;/p&gt;

&lt;p&gt;So, Google+ looks better in a few senses, but it’s still vastly unexplored territory for me right now because I have even less contacts whose email address I (still) know or who I want to implicitly invite. I got one of my former minions from the Wesnoth-UMC-Dev Project users to add and invite me so I could check it out before my fellow countrymen get the chance.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Google+ lets me add people to different &lt;strong&gt;circles&lt;/strong&gt; and doesn’t force the “friend” misnomer upon me. I can have proper friends, relatives, acquaintances, or any other kind of contacts I want.&lt;/li&gt;
  &lt;li&gt;I don’t need to add people who add me and I don’t need to be added by people who I add to my own circles; this is nice and reminds me a bit of Twitter&lt;/li&gt;
  &lt;li&gt;&lt;strike&gt;It’s a Google product.&lt;/strike&gt;&lt;/li&gt;
  &lt;li&gt;It’s not Facebook.&lt;/li&gt;
  &lt;li&gt;It doesn’t look like shit.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That said, if someone from my &lt;strike&gt;microscopic&lt;/strike&gt; set of readers wants a Google+ invite, I may consider adding them depending on my mood that day at that time.&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>Firefox 6 beta</title>
    <link>http://shadowm.rewound.net/blog/archives/187-Firefox-6-beta.html</link>

    <description>
        &lt;p&gt;&lt;a href=&quot;http://blog.mozilla.com/futurereleases/2011/07/08/firefoxbeta6-0-2/&quot;&gt;And here it is, at last.&lt;/a&gt; Just like the last time, the new version migrates from Aurora to Beta on Tuesday but it isn’t offered via the update channels until the next Friday, while the newer ex-Nightly is published in Aurora in the meantime.&lt;/p&gt;

&lt;p&gt;I still think this is unnecessarily awkward for users who are interested in one specific Firefox version, or who want to avoid disabling incompatible add-ons as much as possible.&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>Firefox 7 in Aurora channel, however...</title>
    <link>http://shadowm.rewound.net/blog/archives/186-Firefox-7-in-Aurora-channel,-however....html</link>

    <description>
        &lt;p&gt;… Where’s Firefox 6 beta?&lt;/p&gt;

&lt;p&gt;Supposedly, &lt;a href=&quot;https://wiki.mozilla.org/Features/Release_Tracking#Firefox_6&quot;&gt;Firefox 6 entered the beta channel&lt;/a&gt; on July 5, yet there’s no signs of it in the Mozilla FTP server or in the website proper.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://blog.mozilla.com/futurereleases/2011/07/07/firefoxaurora7/&quot;&gt;With Firefox 7 entering Aurora now&lt;/a&gt;, I’m in a slightly uncomfortable position because I hoped to continue tracking version 6 once it moved to beta — now I’m using an old version 6 snapshot from Aurora hoping that the beta will be packaged and announced &lt;em&gt;soon&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;It seems somewhat inconsistent from my standpoint to let Aurora be replaced by a newer version before the previous Aurora is properly promoted to Beta.&lt;/p&gt;

&lt;p&gt;Interestingly, the same situation appears to have occurred with the announcement of Firefox 5 beta in May, the difference being that I didn’t particularly mind because it was in preparation for the first official release after Firefox 4 and the decision to &lt;a href=&quot;http://blog.mozilla.com/blog/2011/04/13/new-channels-for-firefox-rapid-releases/&quot;&gt;switch to a rapid release schedule&lt;/a&gt;, so a little schedule slip was to be expected for an initial deployment.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Wesnoth-UMC-Dev: A Retrospective</title>
    <link>http://shadowm.rewound.net/blog/archives/185-Wesnoth-UMC-Dev-A-Retrospective.html</link>

    <description>
        &lt;p&gt;Today, after the &lt;a href=&quot;http://wesnoth-umc-dev.sourceforge.net/&quot;&gt;Wesnoth-&lt;acronym title=&quot;User Made Content&quot;&gt;UMC&lt;/acronym&gt;-Dev&lt;/a&gt; reached its most important milestone, I have decided to step down from the project administrator position to leave the decision making and user support tasks to Espreon and AI0867, who have done an undeniably good job in my absence the last year while I was busy working on other projects.&lt;/p&gt;

&lt;p&gt;This does not mean that I’m completely breaking my ties with this exciting platform for add-on development which ESR and I founded. I’ll continue to take care of infrastructure matters such as the website design, content and coding, the Registry tools and miscellaneous utilities whenever I have time; I’m not going to abandon &lt;cite&gt;After the Storm&lt;/cite&gt; either, since I continue to be a &lt;em&gt;user&lt;/em&gt; of the project either way.&lt;/p&gt;

&lt;p&gt;I mentioned that I’d be following up the official r10000 announcement with the history of the Wesnoth-UMC-Dev Project. Most of the content below is taken from an interview I recently had with &lt;a href=&quot;http://forums.wesnoth.org/memberlist.php?mode=viewprofile&amp;amp;u=124142&quot;&gt;BfWEthnographer&lt;/a&gt; which eventually touched this subject.&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/185-Wesnoth-UMC-Dev-A-Retrospective.html#extended&quot;&gt;Continue reading &quot;Wesnoth-UMC-Dev: A Retrospective&quot;&lt;/a&gt;
    </description>
</item>
<item>
    <title>Wesnoth-UMC-Dev: r10000</title>
    <link>http://shadowm.rewound.net/blog/archives/184-Wesnoth-UMC-Dev-r10000.html</link>

    <description>
        &lt;p&gt;The &lt;cite&gt;Coordinated Wesnoth User Made Content Development Project&lt;/cite&gt;, better known as &lt;strong&gt;Wesnoth-UMC-Dev&lt;/strong&gt;, has today reached SVN revision 10,000.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://wesnoth-umc-dev.ai0867.net/blog/index.cgi/staff/happy_10000th_commit.html&quot;&gt;Here’s the official announcement.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’ll soon post details about the project’s history here.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Campaign unit names</title>
    <link>http://shadowm.rewound.net/blog/archives/183-Campaign-unit-names.html</link>

    <description>
        &lt;p&gt;While searching for examples of translated generic unit names from &lt;tt&gt;data/core/macros/names.cfg&lt;/tt&gt; in Wesnoth (much to my disappointment, the Japanese translation uses the source strings verbatim for this), I discovered an oddly familiar name amongst the female Elvish names for the markovian generator.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Anylindë&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Back in 2007/2008, I was pretty much &lt;em&gt;forced&lt;/em&gt; by Syntax_Error/Blarumyrran to change the name of one of the main characters in &lt;cite&gt;Invasion from the Unknown&lt;/cite&gt;. Why? Because her name was &lt;em&gt;&lt;strong&gt;Anal&lt;/strong&gt;ia&lt;/em&gt; — never mind that female human units named “Bra” occur quite often in the game thanks to the RNG’s influence over the name generation algorithm.&lt;/p&gt;

&lt;p&gt;So I consulted ESR, who came up with &lt;em&gt;Anlindë&lt;/em&gt; as a possible replacement. I never noticed before that it was just one letter away from being a generic unit name. Then again, &lt;em&gt;Galas&lt;/em&gt; and &lt;em&gt;Elynia&lt;/em&gt; were my own design choice and they are, indeed, part of the name generator sources — I had gotten so frustrated at the design phase that I took a random generic name for Galas and the first feminine-sounding name starting with ‘E’ for Elynia.&lt;/p&gt;

&lt;p&gt;Furthermore, I also took &lt;em&gt;Analia&lt;/em&gt; from &lt;tt&gt;names.cfg&lt;/tt&gt; and it’s still there. No overzealous purists have complained so far.&lt;/p&gt;

&lt;p&gt;Would IftU have been a better campaign if I had used custom names for these three characters? Maybe, by a marginal difference. On the other hand, the one time a recruited elf with the name &lt;em&gt;Elynia&lt;/em&gt; appeared during gameplay (that one Sprite I got in IftU doesn’t count), I protected her until &lt;strike&gt;the end&lt;/strike&gt; the second-to-last scenario of HttT — by then she was a veteran Elvish Shyde.&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>GUI2: New Folder, File Chooser dialogs</title>
    <link>http://shadowm.rewound.net/blog/archives/182-GUI2-New-Folder,-File-Chooser-dialogs.html</link>

    <description>
        &lt;p&gt;Since I’ve not felt particularly inspired to finish the last two parts of my review of the &lt;cite&gt;Under the Burning Suns&lt;/cite&gt; campaign’s post-quartex (1.3.x - 1.9.x) development history, I suppose I may as well bother my loyal readers with yet another useless report on GUI2 dialog conversions in Wesnoth trunk.&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
  &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/gui2-file-dialog-proto.png&quot;&gt;
    &lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_gui2-file-dialog-proto.png&quot; border=&quot;0&quot; alt=&quot;gui2-file-dialog branch screenshot&quot; /&gt;
  &lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;Okay. I lied. The screenshot above does not come from Wesnoth trunk, but from its fork in a private branch in my local git-svn repository. The component in question is evidently the File Chooser dialog, which is used in the map editor for locating files to open or save, and in the Preferences dialog (and more rarely in the MP menu) for finding the &lt;tt&gt;wesnothd&lt;/tt&gt; or &lt;tt&gt;wesnothd.exe&lt;/tt&gt; MP server binary used to host LAN games.&lt;/p&gt;

&lt;p&gt;I figured that converting the File Chooser to GUI2 will help stomp a few bugs with files whose names look like the obsolete, so-called “WML markup”, and generally make it easier for people to improve it. Once I have reimplemented the current functionality I may look into adding some kind of bookmarks system, or at the very least shortcuts for jumping to directories that are commonly used by both mainline developers and &lt;acronym title=&quot;User Made Content&quot;&gt;UMC&lt;/acronym&gt; authors.&lt;/p&gt;

&lt;p&gt;All this rewriting may also introduce new bugs, of course; hence I’ve not pushed these changes to trunk, even though they are already guarded by the &lt;code&gt;--new-widgets&lt;/code&gt; command line switch. I have not pushed them to a public SVN branch either because local Git branches make it much easier to rebase commits against trunk as time goes on.&lt;/p&gt;

&lt;p&gt;In the process I found myself in need of converting the New Folder dialog to GUI2 for consistency. Given &lt;a href=&quot;http://svn.gna.org/viewcvs/wesnoth?view=rev&amp;amp;revision=50076&quot;&gt;the sheer size of the C++ code added in the process&lt;/a&gt;, I am pretty sure this won’t inconvenience anybody for now — hence I pushed this changeset directly to trunk instead.&lt;/p&gt;

&lt;p class=&quot;italic&quot;&gt;(And yes, it should be “New Directory”. I am going to hate myself for the rest of my life for keeping the legacy “user-friendly” terminology that was already in place.)&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Firefox 5</title>
    <link>http://shadowm.rewound.net/blog/archives/181-Firefox-5.html</link>

    <description>
        &lt;p&gt;The announcement that Mozilla was switching to a &lt;a href=&quot;http://blog.mozilla.com/blog/2011/04/13/new-channels-for-firefox-rapid-releases/&quot;&gt;“rapid” release cycle&lt;/a&gt; did not entirely catch me by surprise back in the day. With the advent of Google Chrome to rekindle the fire of the Browser Wars a couple of years ago and its significant contribution to the general adoption of HTML5, I knew Mozilla Firefox 4.0 would have little to offer that wasn’t already the standard in Chrome.&lt;/p&gt;

&lt;p&gt;Now that version numbers are meaningless for Firefox users, &lt;a href=&quot;http://blog.mozilla.com/blog/2011/06/21/mozilla-delivers-new-version-of-firefox-first-web-browser-to-support-do-not-track-on-multiple-platforms/&quot;&gt;Mozilla refers to their latest milestone&lt;/a&gt; simply as &lt;em&gt;new version&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;It’s kind of sad to see those who were once pioneers in open-source web technologies development — in no small part thanks to Microsoft Internet Explorer and the death of the formerly glorious Netscape Navigator — now relegated to following in the footsteps of the youngest actor in the market, an actor which really just took Apple’s Webkit library as a building foundation and released the resultant project under one (if not &lt;em&gt;the one&lt;/em&gt;) of the most recognizable brands of the Internet.&lt;/p&gt;

&lt;p&gt;As far as I understand the &lt;a href=&quot;https://wiki.mozilla.org/Features/Release_Tracking&quot;&gt;roadmap for Firefox 6 and 7&lt;/a&gt;, there’s very little in terms of user-visible features ahead this year, and most improvements are either bug-fixes (like in good old point releases), HTML5 crap or minor polishing. That is not to say that I don’t welcome any performance improvements, but I think that the Mozilla folks need to come up with something really new and &lt;em&gt;unique&lt;/em&gt; if they don’t want to see their market share drop to dangerous levels and lose the war to Google’s over-pretentious product.&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>A Matter of Personal Preferences</title>
    <link>http://shadowm.rewound.net/blog/archives/180-A-Matter-of-Personal-Preferences.html</link>

    <description>
        &lt;p&gt;Now that &lt;a href=&quot;http://svn.gna.org/viewcvs/wesnoth?view=rev&amp;amp;revision=49435&quot;&gt;Battle for Wesnoth 1.9.6 has been tagged&lt;/a&gt;, we can once again focus on the future!&lt;/p&gt;

&lt;p&gt;I’m not exactly the resident usability expert in the Wesnoth development team (multiple people have claimed that title under dubious circumstances before) but I believe I can recognize a design issue when it’s in front of me.&lt;/p&gt;

&lt;p&gt;The issue in question is the game’s &lt;strong&gt;Preferences&lt;/strong&gt; dialog. Over time it has accumulated needless cruft in the form of options that no-one should ever need to use, which are nevertheless offered to the player under the Advanced Preferences section. Funnily enough, the programmatic design of this area lends itself to random developers and patch contributors senselessly throwing crap into it; this is the only piece of user-visible configuration that can be defined almost entirely in WML, requiring only a couple of accessor functions in the C++ side for whatever module needs to query or set those options at runtime. In the “best” case, just a single getter suffices.&lt;/p&gt;

&lt;p&gt;Of course, Preferences is built upon the previous Wesnothian GUI toolkit jokingly referred to as “GUI1”. Despite what &lt;a href=&quot;http://forums.wesnoth.org/memberlist.php?mode=viewprofile&amp;amp;un=silene&quot;&gt;some people&lt;/a&gt; may say, it’s far from ideal to work with hardcoded widget locations and an inflexible rendering scheme. As new options have been added to the game, developers have preferred to do things the lazy way and abuse Advanced, leading to arguably essential entries getting clobbered in middle of the rubble.&lt;/p&gt;

&lt;p&gt;Naturally, &lt;a href=&quot;https://mail.gna.org/public/wesnoth-dev/2011-06/msg00001.html&quot;&gt;I tried to tell people about this problem&lt;/a&gt;.  But since it’s been nearly a week and I’ve not gotten reactions of any kind, I decided to start chopping trees.&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
&lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/wesnoth-prefs-display-197.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_wesnoth-prefs-display-197.png&quot; alt=&quot;Display preferences (1.9.7)&quot; /&gt;&lt;/a&gt; &lt;strong&gt;→&lt;/strong&gt; &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/wesnoth-prefs-display-198.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_wesnoth-prefs-display-198.png&quot; alt=&quot;Display preferences (1.9.7+svn)&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;The main thing here is that the &lt;em&gt;Enable scroll tracking of unit actions&lt;/em&gt; and &lt;em&gt;Reverse Time Graphics&lt;/em&gt; options were moved to Advanced, and in their stead I brought &lt;em&gt;Show Unit Standing Animations&lt;/em&gt; and &lt;em&gt;Animate Map&lt;/em&gt;, and messed around with some spacing.&lt;/p&gt;

&lt;p&gt;With Wesnoth 1.9/1.10 boasting a plethora of standing unit animations and animated terrains, a performance drop is to be expected on low-end machines — or even high-end as well, depending on what other processes are running in the background and local factors such as map size, amount of visible units and possible targets during AI turns. Increasing the visibility of performance impacting options makes a lot of sense if it will result in less complaints. &lt;img src=&quot;/dorset6/img/smilies/wink.gif&quot; alt=&quot;;)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;/p&gt;

&lt;div class=&quot;center&quot;&gt;
&lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/wesnoth-prefs-sound-197.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_wesnoth-prefs-sound-197.png&quot; alt=&quot;Sound preferences (1.9.7)&quot; /&gt;&lt;/a&gt; &lt;strong&gt;→&lt;/strong&gt; &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/wesnoth-prefs-sound-198.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/th_wesnoth-prefs-sound-198.png&quot; alt=&quot;Sound preferences (1.9.7+svn)&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;If one looks hard enough, it’s always possible to find other details to nitpick. A little patch went into 1.9.7 to add some indentation and change font sizes for slider labels in Preferences that were associated to checkboxes, but I preferred to leave the follow-up for 1.9.8 — the Sound tab sliders had some overly verbose labels that truly only served to give translators three extra strings to manage.&lt;/p&gt;

&lt;p&gt;That said, Preferences still glitches at the bottom on the minimum resolution of 800x480 pixels. The effect can be seen &lt;a href=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/wesnoth-prefs-minres-1.png&quot;&gt;here&lt;/a&gt; on the Close button itself. I don’t think I’m able or particularly interested to tame this beast, however, so fixing it may have to wait for the GUI2 redo of the dialog. Meanwhile, &lt;a href=&quot;http://www.openpandora.org/&quot;&gt;OpenPandora&lt;/a&gt; users will have to do with this minor inconvenience.&lt;/p&gt;

&lt;p class=&quot;center&quot;&gt;• • •&lt;/p&gt;

&lt;p&gt;I should note that my original plan was to completely scrap the &lt;em&gt;Reverse Time Graphics&lt;/em&gt; option. After doing some research, I discovered that &lt;a href=&quot;http://svn.gna.org/viewcvs/wesnoth?view=rev&amp;amp;rev=18828&quot;&gt;ESR did it once&lt;/a&gt;, and that it got reverted the next day by &lt;a href=&quot;http://svn.gna.org/viewcvs/wesnoth?view=rev&amp;amp;rev=18845&quot;&gt;alink&lt;/a&gt;. The rationale? I’m not sure, &lt;a href=&quot;/files/the-reverse-time-graphics-talk.log&quot;&gt;but the IRC logs are quite entertaining.&lt;/a&gt;&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Talking about Debian Sid</title>
    <link>http://shadowm.rewound.net/blog/archives/179-Talking-about-Debian-Sid.html</link>

    <description>
        &lt;p&gt;While I had read Rhonda’s post on the matter of Debian Sid’s status as “not for end-users” back in the day, I was not aware that it was just one side of the coin. Now that the puzzle is complete, I thought I’d share a couple of links with my &lt;a href=&quot;http://tvtropes.org/pmwiki/pmwiki.php/Main/BlatantLies&quot;&gt;vast, intelligent audience&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://raphaelhertzog.com/2010/12/20/5-reasons-why-debian-unstable-does-not-deserve-its-name/&quot;&gt;5 Reasons why Debian Unstable does Not deserve its Name&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://rhonda.deb.at/blog/debian/5-reasons-why-unstable-is-not-for-everyone.html&quot;&gt;5 Reasons why Debian Unstable is Not for End-Users&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pay attention to the post dates, and don’t forget that both authors are Debian Developers.&lt;/p&gt;

&lt;p&gt;Incidentally, at the time I read the last post (i.e. the same day it was published) I was already using Debian Sid, although in middle of Squeeze’s feature freeze. I didn’t pay much attention to the comments after it popped up in my feed reader, so I kind of missed the context.&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Re: a Public Service Announcement</title>
    <link>http://shadowm.rewound.net/blog/archives/178-Re-a-Public-Service-Announcement.html</link>

    <description>
        &lt;p&gt;Some broken forum or email client software have the nasty habit of prepending “&lt;a href=&quot;http://en.wikipedia.org/wiki/List_of_Latin_phrases:_R#re&quot;&gt;Re:&lt;/a&gt;” to the subject field of messages that are intended as a response to previous ones, without checking whether this prefix is already in place, which is the case when you are replying to another user’s response to the thread.&lt;/p&gt;

&lt;p&gt;If you have one of those broken messaging clients, replace it. If you are using one of those broken forum boards, you have two options:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;The &lt;strong&gt;user&lt;/strong&gt; option: fix your subject field by hand and bug the administrator about it, whom I encourage to take:&lt;/li&gt;
  &lt;li&gt;The &lt;strong&gt;admin&lt;/strong&gt; option: check whether there’s a fix for the software you run in your site; bug the developers to release a patch fixing this behavior, or (in the worst case) switch to a better solution.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can avoid making yourself look like an idiot if you follow these few simple steps! Please! No-one wants to read a message with a title full of ReReReReReRes, or visit a site filled with such posts! It’s up to you to save the Internet from this horrendous disease!&lt;/p&gt; 
    </description>
</item>
<item>
    <title>The End Of The World As We Know It</title>
    <link>http://shadowm.rewound.net/blog/archives/177-The-End-Of-The-World-As-We-Know-It.html</link>

    <description>
        &lt;p&gt;Duke Nukem Forever is being released at last, and some parts of the world already got it. U.S.A. will have to wait till next Tuesday.&lt;/p&gt;

&lt;p&gt;I just want to say that I always knew it’d happen. I never used DNF as a measure of project completion probability, not even &lt;em&gt;once&lt;/em&gt;. Nonetheless, I thought I’d note that, in no particular order, all the following things did not happen before DNF’s release:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;World domination by me&lt;/li&gt;
&lt;li&gt;The Year of the Linux Desktop&lt;/li&gt;
&lt;li&gt;GNU/Hurd 1.0 (you’ve got to give them credit for &lt;a href=&quot;http://www.gnu.org/software/hurd/news/2011-04-01.html&quot;&gt;admitting their defeat&lt;/a&gt;, though)&lt;/li&gt;
&lt;li&gt;The release of Microsoft Windows’ core frameworks as open source software&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;/projects/wesnoth-umc.php#ats&quot;&gt;&lt;cite&gt;After the Storm&lt;/cite&gt;&lt;/a&gt; version 1.0&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Commander Keen: The Universe Is Toast&lt;/strike&gt; Screw that, &lt;a href=&quot;http://www.shikadi.net/keenwiki/The_Universe_Is_Toast_%28MOD_Trilogy%29&quot;&gt;Ceilick and his team did manage to complete an awesome unofficial trilogy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;/projects/wesnoth-umc.php#iftu&quot;&gt;&lt;cite&gt;Invasion from the Unknown&lt;/cite&gt;&lt;/a&gt; version 2.0&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.wesnoth.org/&quot;&gt;Battle for Wesnoth&lt;/a&gt; 2.0&lt;/li&gt;
&lt;li&gt;Ubuntu Linux 17.04 “Zany Zebra”&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;/projects/rei2.php&quot;&gt;Rei 2 IRC Bot&lt;/a&gt; 1.0&lt;/li&gt;
&lt;li&gt;Mesiga 1.0&lt;/li&gt;
&lt;li&gt;The end of Microsoft&lt;/li&gt;
&lt;li&gt;2012 (no, not the movie)&lt;/li&gt;
&lt;li&gt;Google Chrome 69.0&lt;/li&gt;
&lt;li&gt;World domination by Linus&lt;/li&gt;
&lt;li&gt;Waldo being found for good&lt;/li&gt;
&lt;li&gt;Reicore Mk. II&lt;/li&gt;
&lt;li&gt;Linux kernel 3.0 (&lt;a href=&quot;http://www.phoronix.com/scan.php?page=news_item&amp;amp;px=OTUwMg&quot;&gt;the RCs don’t count!&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Irssi 1.0&lt;/li&gt;
&lt;li&gt;Rapture&lt;/li&gt;
&lt;li&gt;Evangelion 3.0&lt;/li&gt;
&lt;li&gt;Evangelion: Final&lt;/li&gt;
&lt;li&gt;Complete OpenGL 3.0 support in Mesa DRI/DRI2 drivers&lt;/li&gt;
&lt;li&gt;World domination by &lt;a href=&quot;http://tvtropes.org/&quot;&gt;TV Tropes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;cite&gt;Invasion from the Unknown&lt;/cite&gt; being merged into mainline Wesnoth&lt;/li&gt;
&lt;li&gt;The completion of the current &lt;a href=&quot;http://www.giantitp.com/comics/oots.html&quot;&gt;Order of the Stick&lt;/a&gt; story arc (strips #673 - ???)&lt;/li&gt;
&lt;li&gt;The GNU General Public License version 4&lt;/li&gt;
&lt;li&gt;The end of the freenode IRC network&lt;/li&gt;
&lt;li&gt;phpBB 3.1&lt;/li&gt;
&lt;li&gt;World domination by &lt;a href=&quot;http://en.wikipedia.org/&quot;&gt;Wikipedia&lt;/a&gt; (that’s no moon…)&lt;/li&gt;
&lt;li&gt;Debian GNU/Linux 20.0&lt;/li&gt;
&lt;li&gt;Contact with extraterrestrial intelligence (&lt;a href=&quot;http://tvtropes.org/pmwiki/pmwiki.php/Main/OrIsIt&quot;&gt;or&lt;/a&gt; &lt;a href=&quot;http://tvtropes.org/pmwiki/pmwiki.php/Main/EpilepticTrees&quot;&gt;did&lt;/a&gt; &lt;a href=&quot;http://tvtropes.org/pmwiki/pmwiki.php/WMG/RealLife&quot;&gt;it&lt;/a&gt;?)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.frogatto.com/&quot;&gt;Frogatto&lt;/a&gt; 2.0&lt;/li&gt;
&lt;li&gt;World domination by Lady Gaga&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wesnoth-umc-dev.ai0867.net/&quot;&gt;Wesnoth-&lt;acronym title=&quot;User Made Content&quot;&gt;UMC&lt;/acronym&gt;-Dev&lt;/a&gt; SVN commit r10000&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Reiser4&quot;&gt;Reiser4&lt;/a&gt; being merged into mainline Linux&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.reactos.org/&quot;&gt;ReactOS&lt;/a&gt; 1.0&lt;/li&gt;
&lt;li&gt;SuperTux 1.0&lt;/li&gt;
&lt;li&gt;Microsoft Windows &lt;strike&gt;13&lt;/strike&gt; 14&lt;/li&gt;
&lt;li&gt;World domination by Tommy Wiseau&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;… and many, many other things that would be totally cool to have now.&lt;/p&gt;

 
    </description>
</item>
<item>
    <title>Status Quo Is God</title>
    <link>http://shadowm.rewound.net/blog/archives/176-Status-Quo-Is-God.html</link>

    <description>
        &lt;p&gt;&lt;a href=&quot;http://shadowm.rewound.net/blog/archives/175-Gone-Horribly-Wrong.html&quot;&gt;After playing around with Debian “wheezy”&lt;/a&gt; and getting fed up with X.org 1.10.x, I decided to go back to Debian stable — but not without trying downgrading to X.org server 1.9.2 from Debian Experimental 2010-11-31 first!&lt;/p&gt;

&lt;p&gt;It turns out that yes, most of the slowness and pre-paint garbage were caused by the X.org server alone. Sadly, the intermittent shadow glitches are seemingly inherent to KDE SC 4.6 and not to the graphics server.&lt;/p&gt;

&lt;p&gt;Annoyed and without the required willpower to file bugs and wait for things to be magically fixed in a few months, I burned a &lt;a href=&quot;http://grml.org/&quot;&gt;Grml&lt;/a&gt; live CD from an ISO I downloaded for no particular reason at all about a week ago (!) and embarked on a journey to wipe out my root file system and restore Squeeze from the pre-ugprade backup in my external hard disk.&lt;/p&gt;

&lt;p&gt;It was a successful mision, barring the ensuing breakage caused by the inconsistent versions of GRUB found in &lt;tt&gt;/boot&lt;/tt&gt; and the disk’s MBR.&lt;/p&gt;

&lt;p&gt;Whoops.&lt;/p&gt;

&lt;p&gt;One &lt;tt&gt;chroot&lt;/tt&gt; and &lt;tt&gt;grub-install&lt;/tt&gt; and &lt;tt&gt;update-grub&lt;/tt&gt; later, Reicore was running Debian GNU/Linux 6.0.1 again, at last. In total, I spent around an hour on the restoration procedure. Cheap.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://tvtropes.org/pmwiki/pmwiki.php/Main/LetUsNeverSpeakOfThisAgain&quot;&gt;Let us never speak of this again.&lt;/a&gt;&lt;/p&gt; 
    </description>
</item>
<item>
    <title>Wesnoth: the Spanish Translation</title>
    <link>http://shadowm.rewound.net/blog/archives/174-Wesnoth-the-Spanish-Translation.html</link>

    <description>
        &lt;p&gt;It seems that after Roberto Romero abandoned the maintenance of the Wesnoth &lt;a href=&quot;http://wiki.wesnoth.org/SpanishTranslation&quot;&gt;Spanish Translation team&lt;/a&gt; in 2007, it’s all gone downhill.&lt;/p&gt;

&lt;p class=&quot;italic&quot;&gt;(Fun fact: it was under his leadership that I contributed my first translations for mainline Wesnoth — my first involvement with a &lt;acronym title=&quot;Free/Open-Source Software&quot;&gt;FOSS&lt;/acronym&gt; project &lt;em&gt;ever&lt;/em&gt;.)&lt;/p&gt;

&lt;p&gt;Some time after he left the team (apparently without previous notice to Ivanovic or Torangan), the translation was taken over by a significantly less competent group that did a very lousy job (read: no quality control) before abandoning it again. Around the end of 2008, I took it over and quickly, with the help of an Argentinian guy who joined me later, brought it to completion in time for the first release of the 1.6 series.&lt;/p&gt;

&lt;p&gt;In the process I realized how hard it &lt;em&gt;really&lt;/em&gt; is to maintain a complete translation of a large game like Wesnoth.&lt;/p&gt;

&lt;p&gt;Due to a series of &lt;acronym title=&quot;Real Life&quot;&gt;RL&lt;/acronym&gt; complications, I had to abandon the Spanish translation shortly after Wesnoth 1.6 was released (March 2009). The translation was not taken over by anyone in time for Wesnoth 1.8 (April 2010). Much later in November, though, a new fellow became maintainer and got some work done along with other new collaborators.&lt;/p&gt;

&lt;p&gt;Things were starting to look unusually bright because, for the first time in years there was more than one active translator. However, this world full of rainbows and pink unicorns did not last, and it ultimately fell into oblivion following the departure of this last maintainer from the community. No-one took over the team afterwards, and now the Spanish translation is in its natural state once again. The last update in mainline trunk took place in January 2011.&lt;/p&gt;

&lt;p&gt;You can have a look at the current situation in &lt;a href=&quot;http://gettext.wesnoth.org/&quot;&gt;gettext.wesnoth.org&lt;/a&gt;, our translations statistics website.&lt;/p&gt;

&lt;p&gt;It seems that Battle for Wesnoth just doesn’t manage to appeal to many Spanish-speaking people from the FOSS users community to attract new individuals with the knowledge, patience and time required to resurrect an abandoned translation, and the sense of leadership required to coordinate work and keep certain quality standards to attract and, most importantly, &lt;em&gt;keep&lt;/em&gt; new translators.&lt;/p&gt;

&lt;p&gt;Of course, Wesnoth is a huge undertaking of its own with over one dozen of thousands of strings in mainline and its distinctive approach to storytelling — I know for sure I do not want to work on translating campaigns again, at least, &lt;em&gt;not alone&lt;/em&gt;. Still, there are people far more capable than I am for this kind of work, and I do believe our game could really use more publicity among Spanish and Latinamerican players and their contacts.&lt;/p&gt;

&lt;p&gt;All the technical fluff relevant for starting to work on an existing or new translation can be found &lt;a href=&quot;http://wiki.wesnoth.org/WesnothTranslations&quot;&gt;in the wiki&lt;/a&gt;, after all.&lt;/p&gt;
 
    </description>
</item>
<item>
    <title>Long Live the Wesnoth.org Favicon!</title>
    <link>http://shadowm.rewound.net/blog/archives/173-Long-Live-the-Wesnoth.org-Favicon!.html</link>

    <description>
        &lt;div class=&quot;thumbnail float_right&quot;&gt;
  &lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/wesnoth-favicon-trans-1.png&quot; alt=&quot;Favicon comparison&quot; /&gt;
&lt;/div&gt;

&lt;p&gt;Today, May 26th, a few minutes past 06:00 AM UTC, after 6 or 7 years of history, the Wesnoth.org favicon &lt;a href=&quot;http://forums.wesnoth.org/viewtopic.php?f=9&amp;amp;t=33586&quot;&gt;has finally been replaced&lt;/a&gt; by command of the Art Director on the live website and in SVN trunk, &lt;a href=&quot;http://svn.gna.org/viewcvs/wesnoth?view=rev&amp;amp;rev=49655&quot;&gt;revision 49655&lt;/a&gt;, meaning this change is also effective in mainline starting with version 1.9.7 (not yet released).&lt;/p&gt;

&lt;p&gt;The differences between both versions are &lt;em&gt;far&lt;/em&gt; from subtle, as you can see to the right.&lt;/p&gt;

&lt;p&gt;I for one mourn the loss of this significant piece of history that reflects an older, more cartoony art style that was slowly abandoned towards Wesnoth 1.0 and beyond. Until now, this icon also accompanied the owned village counter in the game’s top bar, and served as an indicator overlay for moves affecting village ownership since version 1.4 onwards. Finally, it served for a long time as the village terrain category icon in the Map Editor.&lt;/p&gt;

&lt;p&gt;In case anyone requires the old icon for the sake of nostalgia, it’ll be preserved here for your own use under the conditions of the GNU General Public License version 2.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;/files/wesnoth-old-favicon.png&quot;&gt;PNG format&lt;/a&gt; (468 bytes)&lt;/li&gt;
&lt;/ul&gt;

 
    </description>
</item>
<item>
    <title>Choosing an email client with Firefox</title>
    <link>http://shadowm.rewound.net/blog/archives/172-Choosing-an-email-client-with-Firefox.html</link>

    <description>
        &lt;p&gt;Whatever rules Mozilla Firefox follows to determine the user’s default email client don’t seem to work properly on Debian, at least not when GNOME is not the desktop environment originally installed. For whatever reason, what Firefox tries to do with &lt;tt&gt;mailto&lt;/tt&gt; links and the Send Link context menu option is to open the Evolution mail client, which is not installed with the KDE or LXDE desktop environments.&lt;/p&gt;

&lt;p&gt;Fixing this is supposed to be trivial, and it is, but the relevant option is hidden in the worst possible place in Preferences.&lt;/p&gt;

&lt;div class=&quot;center scrollable&quot;&gt;&lt;img src=&quot;http://i144.photobucket.com/albums/r176/shadowm2006/screenshots/mailclientconf.png&quot; alt=&quot;Application Preferences&quot; /&gt;&lt;/div&gt;

&lt;p&gt;Chromium/Google Chrome does not have a user-accessible setting for this, but somehow still appears to get the right idea from the desktop environment.&lt;/p&gt; 
    </description>
</item>

</channel>
</rss>

