Some updates, and a little “open sermon”

  • I’m in the unusual position of being inside, yet rugged up with a jacket and scarf with what feels like a cold. I can’t say I’m happy about it.
  • Upgraded WordPress here to 2.7.1 (Fedora 11 RPM rebuilt for F10) without too many hassles. It kept retrying the database upgrade(!) but disabling the plugins and a little bit of tinkering (clean cookies, rebuild config, even restarted memcached / set SELinux to Permissive) got it working. I suspect clearing memcached was the trick.
  • Sorry to my Planet readers for some cruft in the RSS, the Related Posts plugin needed to be *ahem* disciplined. It should be fixed now.
  • Loving the Leonidas release – the adventure during upgrade (died partway, restarted, left behind most of F10 for some reason) seems to have cleared out a lot of stuff I didn’t need or use and the rest is a definite improvement. Well done to all concerned!
  • Disappointed that our local news sources are running the front pages with soft non-news pap, when there’s rioting and apparent vote fraud in Iran. Their people are suffering and getting shafted, and you’re running crap about actresses doing nude scenes to get ahead…

To our dear Fedora users:  Please don’t attribute  malicious intent where it’s not warranted. I’ve had one comment here and just responded to a thread on fedora-list from users making some frankly melodramatic claims around how / why decisions are made and features disabled/changed/not kept up to date.

A large chunk of us are not on the Red Hat payroll,  we’re volunteers. Why do we do this? Because we enjoy what we do and are passionate about it. These users should remember that we use it too (“eating our own dogfood”) and want to deliver a top quality distribution.

However you can’t please all of the people all of the time – but just because a feature / change doesn’t suit you, doesn’t mean that the developer / packager  is out to get you

The distinct advantage of an open community is just that: it’s an open community.

If you don’t like a feature, suggest/contribute changes and/or send a patch. If the documentation is lacking, why not write up a how-to and publish it, help update the wiki or the distro documentation? Likewise if the art isn’t to your taste,  I’m sure the Art team welcome volunteers. If you’re fairly knowledgeable, share it with other users on the lists / IRC / forums.

A “This is broken, you guys suck and out to get us” attitude is not helpful, please let such attitudes die off.

Cheers,

A user, packager, infrastructure hacker and occasional developer (since Red Hat 5.1)

That Fleming Gent Meets Leonidas

My long-running repository at ThatFlemingGent (or “Enlartenment” for those who haven’t caught up) is live and ready for use.

As releases have progressed the list I offer has become smaller, as many have been pulled into Fedora proper (either by me or other Fedora contributors), died upstream or just dropped due to lack of my/visitor interest

There’s only 58 packages this time – long gone are the old (pre-)Extras days when I had 140+ 🙂

Highlights: well, there’s um… the GNOME Internode Applet![1]. yet another webserver in Hiawatha! (Think lighttpd with a security focus) – the AIM and MSN Python Jabber/XMPP Transports… A bunch of WordPress plugins (oh how I’m jonesing for a 2.7/2.8 package for F10!) and other small but useful tools, especially for random hackers and systems people.

There’s a couple of non-starters that I’m still working on – namely the Courier suite (authlib won’t build at the moment, I’m trying to work out why) and the MySQL-memcache UDF functions (memcached_functions_mysql in F9/F10). They’ll be added as soon as they build correctly.

Enjoy, and feel free to drop me a line if you have a suggestion / problem 🙂

[1] Internode is my ISP, one of the highest regarded in Australia and for good reason, they’re stable -and it’s owner/CEO Simon isn’t averse to being pranked either:

http://www.youtube.com/watch?v=B3w3R0FkkVQ

Experiences in both success and failure

I did my bit:

I really do like where things are headed and I’m sure the good work will continue 🙂 There’s been some lively debates on the mailing lists of late, but it’s worked out smoothly and courteously in this humble hacker’s opinion.

All the tested LiveCDs and pre-releases of F11 I’ve tried have been painless which bodes well, as the certainty of me finding something broken / failing / misbehaving with a freshly distribution-upgraded system is often close to 1 🙂

Speaking of breakage on the other hand…

I tried to convert my home ejabberd server from the standard mnesia backend to MySQL. using “ejabberdctl convert2odbc” to output the data to flat SQL scripts which you can then import into almost any server (ah, simple, standard transactional SQL, how I love thee :-))

This went really well until I found that I had no MySQL driver for Ejabberd/Erlang installed, and there’s none packaged (ProcessOne has one in their ejabberd-modules Subversion repository, but finding out after the fact is of little comfort, *sigh* )

Oops. Might have to fix that little oversight before retrying. Mea Maxima Culpa

Fortunately I took a backup of the mnesia database before all this (when in doubt, take a backup; when you’re certain – still take a backup!) and I needed it as even after reverting my configuration changes and restarting ejabberd it still wanted to connect to the MySQL service (there were references still in the spool/ on-disk database to it). The restore fixed it in minutes though, fortunately.

I’m planning to release an updated PyICQ transport once Leonidas is out and things have settled (and I have time to test a local scratch build). I also had a look at the python-based Yahoo! Transport, which isn’t very good in my opinion and I already have the MSN Transport packaged here; it’s good and works with the current MSN servers with a little patch. It’s upstream development is slow/”undead”, however which makes me a little hesitant to push it to Fedora proper.

Twitter Fail: Even mentioning Yahoo! tongue in cheek / in passing gets you retweeted by the Yahoo! News bot. Really, if you’re going to let loose any form of artificial intelligence (I use the term loosely) the “intelligence” part is important, yknow. 🙂

(On a slight tangent I’m fairly certain a Markov/MegaHAL style bot, if set loose on Twitter, will post more interesting content than most “celebrities” using it to pimp themselves, Stephen Fry being an exception)

I’d advise folks interested in signal to try an open, laconi.ca based solution (like Identi.ca) instead 🙂

PS. Yes, I thought about PostgreSQL as the driver is there. Alas WordPress is tied to MySQL only

PPS. Laconica seems very fail-whale free 🙂

Scale and speed and spam

Obligatory Laugh-and-head-shake digression: I’ve been fighting email spam for 12 years plus, and I still see stupid spammers – pardon the tautology – indiscriminately junkmailing abuse@  role addresses. Idiots. Why not just offer crack to a cop?

With that thought out of the way…

Mike McGrath’s memcached plug prompted me to give it a go here, for well, two reasons.

a) I’ve had some (good) experiences in the workplace with it – it’s a boon for database intensive web apps especially and b) because I can and it’s there (which is always a good reason in my ever humble view)

Memcached itself is always a fairly simple install for Fedora – Install via yum (including memcached-selinux if you’re running SELinux – and if you aren’t why not! :-)), give it some options via /etc/sysconfig/memcached eg. CACHESIZE=”64″ (at home, usually “1024” at work because their app is a lot heavier) start it up and point clients at it.

WordPress was a touch trickier – there isn’t an “official” WordPress plugin, with a client available buried in WordPress Plugins version control (http://plugins.trac.wordpress.org/browser/memcached/trunk/) – which has worked well – if you’re reading this it’s not killed my blog.

To install, grab the above file(s) and drop the object-cache.php file in /usr/share/wordpress/wp-content, set “WP_CACHE” to “true” in wp-config.php and you’re most of the way there.

On the server side, memcached-tool’s “stats” command should start seeing increases in cache hits/misses and cached object numbers.

Adding Andy Skelton’s batcache plugin can help to fine-tune what and how it caches – it’s functional but not as “click-and-drool” as many WP plugins, but how much tweaking do you need to do really?

Drupal was a similar adventure I’ll go into elsewhere; there’s a reasonably simple to install plugin from drupal.org – download, drop into /etc/drupal/all/modules, configure and enable –  and the results just as good.

I was surprised to find related Perl packages not in the main repository (Other major languages are covered – my workplace couldn’t survive without the Python bindings :-)) so I whipped up a package of Cache::Memcached 1.26 (also for RHEL/CentOS) on my own repository, plus I’ll be uploading it for review for Fedora proper[2] as a Perl-using systems admin it’s just too useful not to have (monitoring / stats-gathering scripts for a start :-))

In my continued masquerade as a web developer/SEO maven (which isn’t fooling anyone, I know!) I’ve spent too much time looking at analytics to the point of my poor old eyes turning square and developing line graphs burnt in to my retinas.

At least that’s been a little successful. I have one sticking point in the development side, which is avoiding / dumping web form spam. I could use CAPTCHA but I forsee a lot of visitors finding it off-putting, which is undesirable (it’s for my girlfriend’s business venture). I could use Akismet but that seems more suited to blogging, alas (and I’d need to package the PHP PEAR apps for it anyway).

I’m welcome to other suggestions as always.

[1] well, if you’re not reading Planet Fedora via an aggregator anyway..
[2]  Update at 9:07pm AEST: Bug #504403 if someone is keen.

Result may be fit, social with an open messaging standard on top.

Techie Happenings:

I’ve been tinkering with more XMPP (Jabber to you oldies) messaging in general, as it happens. I’ve had a look at the python Yahoo transport and found it a little lacking – it’s config is a little too different to the python MSN / ICQ / AIM transports than I’d personally like, which I’m already packaging and running plus it tends to die/misbehave at unusual times. It has been worth a look though and if enough people would want it, I’ll make the RPM available – but be warned it’s not really to my usual standard.

Speaking of which, there’s a persistent room for chatting around the packages generally – just as an experiment and because I can – at thatfleminggent-rpm@conference.thatfleminggent.com.

I’m still tinkering / debugging my publish-subscribe nodes for thatfleminggent.com (Ejabberd for those interested). I’m sure I’ve configured it right with PEP (Personal Eventing) but I wonder how strong support is client side? Gajim does some PEP (Mood/Activity/Tune for instance) but it updates sporadically if at all.

(Which leads me to wonder how widespread support for that and Service Discovery protocol are client-side, as aside Gajim/PSI it seems sparse and many XMPP goodies are unseen without it. I’d be keen to know more from those in the know)

I’ve signed up on identi.ca (as “thatfleminggent“) and liking it – there’s less noise and spambot followers than Twitter and some very nice XMPP/OpenID integration too.

Better support from the Windows clients would be nice (twhirl does but it’s in the minority, and I’ve preferred TweetDeck or TwitterFox when on a Win desktop) but the Linux clients have been fabulous, especially the current Gwibber version in Fedora.

While there’s been a few “oh no, a slip!” comments being bandied around the tubes regarding the Leonidas release, it’s being done for good reasons. Your august poster here has seen his share of *ahem* “Gold” releases from commercial vendors (no, not just Microsoft but I’ve seen lots of theirs over the years) that many FOSS devs would regard as paper-bag. There’s nothing worse than that corner case bug that inevitably bites us (because Murphy loves a systems tech) so it’s good to delay and get it right than get it out quick and brace for a mess.

Oh, and a protip for those converting local shell accounts to LDAP (or similar) – be prepared to get some uid/gid mismatches unless you’ve been REALLY careful :-). I just did and thought I had consistent ID’s before, but no such luck. It’s trivial to reorganize though.

Life In General:

My girlfriend, bless her heart is a fitness buff and that means that of course yours truly will be convinced to give her current “hey here’s an idea to improve our health” ideas a go.

Thursday’s “let’s go for a good walk” turned out to be a marathon, possibly literally. I’m not sure if I covered a complete 25miles (~42km for those of us on the metric system) on Thursday but it felt like it. This was followed by Friday’s “just a bit of a jog up some stairs” – a 30 degree incline and a 200m stretch! (colloquially known as “The Hill” at Teneriffe in Brisbane) a half dozen times with minimal rest..

Of course I can’t feel anything but lactic acid from the knees down now (I’m not in possession of a runner’s build – I was a weightlifter / shotputter in my youth)

My better half is of course as good as gold 😀

Went to see Angels and Demons (the inner UNIX geek keeps wanting to write it as “Daemons”) on Wednesday night. Not as good as The DaVinci Code, but still better than a lot of the fluff in my local cinemas at the moment. It also helps my local cinema is licensed; a bottle of wine helps get through some poorly chosen movies..

I’m headed back to the office on Monday – feeling better after a break, knowing nothing’s gone amiss in my absence, with a few ideas on how to improve things (equals “make my job easier”) in the back of my mind 🙂

Murphy is my co-pilot.

After moving what seems to be several mountains at the workplace over the last few weeks, I’m finally on holiday. Additionally, my girlfriend is back from interstate, which makes me even happier.

Alas, nature doesn’t like us and lo, as soon as she stepped off the plane it started raining – and it hasn’t stopped. It knows when I’m trying to chill, I tell you, it’s some sort of celestial conspiracy.

Aside from pottering about my apartment while it pours and she rests I’ve whipped up a couple of quick packages for the WordPresss user: WP-Syntax and an updated WP-Supercache (the latter is a bit experimental) – they’re in the repositories for all versions / arches I support. I’m using the former here so you should be able to put code snippets in comments (and I in posts) now.

(Fedora contribs: These plugins are very easy to package; I’m happy to contribute a spec template to rpmdev or even submit them for review if there’s sufficient interest)

I’m also having a crack at gluster – It builds on Fedora OK sans Apache/Lighttpd module support, merely needs a bit of init-script massaging. I’m happy to provide an eat-your-brane build for the keen/brave.

New courier-imap packages

Sam released 4.5.0 today (and maildrop 2.1.0, which I’m trying to package up now and having an interesting time tracking a compile problem with the db/gdbm stuff) – I’ve updated my packages for CentOS/RHEL and Fedora in the usual places

In fact I’ve installed the new package for F9 on my server already without a hitch (yet, touch wood) – in fact I’ve never had a problem since moving from qmail-pop3d in Ye Olden Dayes (there’s still a few large places here in .au using qmail-pop3d; I’ve often wondered why..)

On a tangentially related topic – is it just the onset of madness or is my repoview index going somewhat random? For about a week or more the main index is been VERY out of order for all repos (cf here for example ). The repository data looks fine and the RSS feed data is in perfect shape. I’m wondering if I’m alone here or this is a “bug”? I’d prefer not to waste too much of Konstantin’s time if it’s just me 🙂

So don’t be alarmed regarding the latter (as a user) – I’ve not stopped.

(UPDATE: maildrop 2.1.0 builds, but without db4 support. Happy to release it if people don’t mind using gdbm. Curse you, BezerkleyDB! :-))

This should be obvious, but..

If it’s not notifications / oddly explained failures to build from gcc itself (hello davfs2 on CentOS/RHEL5, where did that fail? Insights welcomed as the build.log is charmingly opaque. Cheers) or flex & bison (Hello vulcan on F10/x86_64, whaddaya mean you can’t parse and move the .yy files? Jebus on a razor scooter every other distro version and arch did it happily except the one I actually run!) it’s another thing.

Am I also the only person who sees “advice” like this “fix” for a library error and let out a Charlie Brown-esque “AUGH!” (Two good ways to fix this, microbrew to the commenter who posts the most elegant one first ;-))

I’ve had much success installing Fedora Directory Server and Cobbler over the last couple of days (home and the workplace respectively) but remind those attempting it that “with great power, comes a great responsibility to read the supplied documentation carefully before issuing a ‘service <foo> start'” .

These two are an example of packages that are insanely great, very powerful and can do everything but bring about world peace. Conversely the configuration items and possibilities are legion, ergo consider what you want to achieve and what you’re working with before you open your text editor.

Doing it the other way around is of course an excellent way of creating a timesink. 😀

Sensible defaults are good and common, but not always ideal. Just because it starts doesn’t mean it will suit your needs. Approach with a plan and you’ll be much happier and more successful.

(The same reasoning applies to “live” server installs. “It boots” doesn’t mean “It works” or “It’s secure” – especially the latter, having seen a few folk learn the hard way ;-))

De-stressing

Hey Yaakov, make that four users once I’ve set it up, I certainly do like the looks of it. A good tool that makes any job easier is a winner in my book, and that looks like a good one indeed.

This weekend was a long one in my neck of the woods, being the Labour Day holiday.

Saturday was mostly a relax-around-the-house day, with a fairly quick and painless upgrade of my old doorstop-server (an old PII 233 that graced an ex-employer’s datacentre as it’s first backup server) – I’ve had mainly good experiences doing a  “yum upgrade” between Fedora releases (9 to 10 in this case) and this was even cleaner than last time (just remember to relabel if using SELinux per my last post, mkay? :-P)

The Drupal update for dotprofileconsulting.com went very smoothly too – but some attempts to streamline WordPress for thatfleminggent.com weren’t quite so grand, some of the themes I’d tried didn’t seem to like the 2.6.5 install (any chance of 2.7 for F9/F10?) so I stuck with the tried-and-true, even if it is a little “busy”

It was also the Buddha’s Birthday celebration here, so a stroll down to South Brisbane to see the sangha and what was on offer was in order. I admit not getting to the Zen talks this year but took in the opportunity for some zazen (sitting meditation), some much needed kinhin (walking meditation) as the old legs were a bit too stiff for the full lotus and even a bit of tai-chi (which I’m unused to as part of my practice but can certainly see the benefits of)

It’s a practice worth considering if you’re in a high-stress position (developers and systems people, I’m looking at you..) – even just sitting quietly, counting the breath and letting whatever thoughts come and go is a good start – and not complicated; you “just sit”. Sit often enough and the rest takes care of itself. 🙂

My friends and colleagues are still a bit mystified by a “taught to walk by a bald nun” (the kinhin practice mentioned above) Facebook update but I’ll let them ponder a bit more 🙂

Quick head-scratcher avoidance tip

When upgrading versions of Fedora, it’s almost never a bad idea to force a SELinux relabel on reboot (or via fixfiles if it’s a little too late ;-))

I yum-upgraded my doorstop-cum-network box without doing so, then had a momentary headscratcher relating to why Dovecot failed to start or OpenSSH wouldn’t use my pubkey. Whoops.

This public service announcement brought to you by the What The Heck Happened There Avoidance League