Oct 09 2015

Amavisd fails to start due to BerkeleyDB, libdb, and db.h

Yet again, I had troubles with restarting amavisd after some package updates. You can see about the other problems that I’ve had with the application in these two previous blog posts: missing SpamAssassin rules causing amavis to fail and start-up failures due to a missing Perl IPv6 module.

This time, the problem was related to the backend database used for Bayes filtering within SpamAssassin, although it wasn’t readily clear what the problem was. After updating SpamAssassin, I saw the following message from Portage (Gentoo‘s package manager):

* You need to configure your database to be able to use Bayes filter
* with database backend, otherwise it will still use (and need) the
* Berkeley DB support.
* Look at the sql/README.bayes file in the documentation directory
* for how to configure it.

At first, I thought that there was a problem with my MariaDB installation, but then I remembered that I’m currently still using BerkeleyDB (BDB) for SpamAssassin.

After trying to stop and restart amavisd, zapping the configuration (which was a problem mentioned in one of my previous posts), manually killing the running amavisd processes, and a few other things, I was still left with a configuration that would cause amavisd to fail on startup:

* Starting amavisd-new ...
Problem in Amavis::DB or Amavis::DB::SNMP code:
BerkeleyDB needs compatible versions of libdb & db.h
you have db.h version 6.0.30 and libdb version 6.0.35
Compilation failed in require at (eval 93) line 20.
BEGIN failed--compilation aborted at (eval 93) line 20. [ !! ]
* ERROR: amavisd failed to start

Out of sheer desperation, I attempted what seemed to be an unlikely fix by recompiling BerkleyDB (via emerge -v dev-perl/BerkeleyDB). Lo and behold, amavis decided to start after that recompilation! It’s a bit strange to me that the standard tools like revdep-rebuild and emerge @preserved-rebuild didn’t catch this problem.

In any case, third time is a charm with amavisd. Hopefully there won’t be any further problems when attempting to reload or restart it.


Sep 30 2015

The Iron Giant: Signature Edition experience in theatres

Tonight was an outstanding evening for me, as I got to experience The Iron Giant in the theatre again, just like I did 16 years ago in 1999. The film has been enhanced, and it was brought back to theatres across the United States by Fathom Events for one night only: 30 September 2015 starting at 19:00 local time.

The Iron Giant Signature Edition ticket stub
The Iron Giant: Signature Edition ticket stub

If you haven’t had the honour of seeing Brad Bird’s (Animator of The Fox and the Hound, and writer/director of some greats like The Incredibles, and Ratatouille), then please do yourself a favour, and find a copy (either an older version to buy, or even stream it). It’s a truly remarkable film that spoke to me when I first saw it as an adolescent years and years ago.

Back in 1999 and for some years to come, I couldn’t get enough of The Iron Giant because I loved the hand-animated artwork, the incredible story, and some of the great one-liners and comedic scenes. Thereafter, it slipped to the back of my mind, but was never really forgotten. Then, several years ago, I got the joy of reliving it and experiencing it with a really great kid. It took on a completely new meaning to me when I saw the remarkable lessons that it taught—love conquering fear, being who you are, and doing everything within your power to help people.

The Iron Giant Signature Edition ticket stub
The Iron Giant and Hogarth Hughes
(Click to enlarge)

This time around, I got to see it (and introduce it) to my best friend in the world. She also enjoyed it (but, of course, I knew that she would). :-) Before the film started, they were showing various trivia questions about it (like in the screenshot above). I knew most of them, but this one in particular was really cool. By the way, the answer was Ted Hughes, which made Hogarth’s name even more significant. All in all, I can’t think of a better way to spend an evening than with a great friend, a fantastic film, and a hefty dose of nostalgia.


Sep 03 2015

Is this what humanity has become?: A brief look at the Syrian Refugees

If you’ve been watching the news over the past days and weeks, you’ve certainly seen information regarding the thousands of people fleeing Syria (and other nations in the Middle East [such as Afghanistan] and northern Africa [such as Eritrea]). Natives of these countries have been trying to escape due to the vast political and ethical injustices amidst their war-torn homes.

I had read all the numbers regarding the immigrants, and how the sheer amount of people trying to get into the EU (and possibly seek asylum) was crippling transportation systems, and could be damaging to the economy. A quick recap shows that approximately 350,000 people have migrated into the EU since the start of 2015, and that nearly 100,000 of them hailed from Syria (for a full look at the numbers, and an overview of the situation, please see the “Why is EU struggling with migrants and asylum?” article at BBC News). Looking at the numbers and reading about the conflicts and struggles, though, does not really illuminate the tragedy associated with the events. Though I generally don’t like the hype and drama that several media outlets try to foster, I think that in situations like this one, seeing evidence of the pain and suffering can bring the abominable nature to light.

One such story has been about a Syrian toddler named Aylan Kurdi. A photo of him and his older brother, Galip, can be seen below.

3-year-old Aylan Kurdi with his brother Galip

He and his family were trying to flee their hometown of Kobani, Syria and seek asylum in the EU. They, like many others, were trying to get away from the conflict, the war, and the brutality running rampant in their home. Unfortunately for little Aylan, he would never get to see this new life in the EU. Instead, he drowned, and his body was found washed up on the shore near the town of Bodrum, Turkey.

Body of drowned Syrian toddler Aylan Kurdi

He was trying to survive when the boat that his family was on capsized on its way to the Greek island of Kos. It goes without say that his family (including his father, Abdullah, who survived the sinking) is trying to endure the unimaginable despair that comes with the loss of a child. The pain extends much further, though. For instance, the downcast and devastated look on the face of the Turkish paramilitary officer who found the body speaks volumes.

Turkish officer carrying the body of Syrian toddler Aylan Kurdi

What was the reason for the loss of this little one? To briefly cover it—which unfortunately detracts from the severity of it—the people of Syria started anti-government protests back in 2011. The protests turned violent as supporters of President Bashar al-Assad and those who opposed his rule started fearing for their safety. The full-on civil war became drastically worse in August of 2013 when chemical weapons were fired into suburban and rural areas surrounding the capital city of Damascus. The principal causes of the conflict were political and religious in nature (fighting for democracy against a tyrannical ruler, and going against the Islamic State).

So, due to strongly-held political and religious beliefs, thousands of people have lost their lives whilst myriad others have had their dignity stripped from them. Even with involvement from outside nations, the conflict in Syria has not been adequately resolved, and may not be for many years to come. British Member of Parliament, Nadhim Zahawi posted on his Twitter feed a personal apology to Aylan Kurdi:

Twitter post by British MP Nadhim Zahawi about failing Syria

More important than the particular apology were the words that started his tweet, and the acronym with which he closed it. He opens with “We r [sic] nothing without compassion.” When we get so tangled up in our beliefs (political, religious, or otherwise) that we forget to love one another, we have lost sight of our own humanity. He then closes with “RIP,” which, at first glance, doesn’t sound of out the ordinary. However, it struck me because it stands for “rest in peace.” At a mere three years of age, why wasn’t little Aylan allowed to “LIVE in peace?” Matter of fact, why is anyone disallowed the opportunity to “live in peace” instead of “resting in peace” after death?

In my opinion, the particular causes for the rift in Syria are not where we should be focusing our attention. Instead, we need to remember what the true cost is: the loss of human life, livelihood, and personal freedoms. Again in my opinion, we as people should not hold beliefs of any kind so strongly that we forget about the dignity of others. Protesting to uphold our beliefs, struggling to preserve our ways of life, and pushing to uphold personal freedoms are all noble causes, but they should never supplant our fundamental responsibility of treating other people with respect and love. That is my main point. So, I applaud the media outlets for making the Syrian conflict “real” by showing photos that truly represent the devastating effects of war, instead of just spewing numbers that abstract us from the reality of it. However, they still seemed to miss the key point that nothing warrants the loss of human life.

I realise that this post is difficult to read and view, especially because of the horrific images, but the improper treatment of people is a topic about which I feel very strongly. I would like to end the post with something a little more positive regarding the migrants, though, and show an image that indicates it isn’t all terrible. The photo below is of a Bavarian officer who managed to get a young refugee boy to smile as he entered the capital city of Munich.

Bavarian soldier makes a young Syrian refugee boy smile as he enters Munich
Click to enlarge

Please remember that, no matter how passionately you hold your beliefs, nothing is worth hurting another person. Buddha taught that there is an unalterable law that “Hatred does not cease through hatred at any time. Hatred ceases through love.” Love one another, and only then will these types of inhumanities stop.



Hatred does not cease through hatred at any time. Hatred ceases through love. This is an unalterable law. –Buddha

Older posts «