Duplicate Email Finder

After importing all my emails from Gmail to my self-hosted IMAP Server (a post about it will follow) with Thunderbird, I’ve noticed that many emails were duplicate.

I’ve searched a bit and I found out that the IMAP implementation of Gmail has the emails catalogued for every label in the respective directory.

As you can imagine every email that had more than one label was copied twice in my IMAP server.

I’ve tried to delete all duplicate messages using the Remove Duplicate Messages Thunderbird add-on, but it didn’t remove all duplicate emails.

I found two identical emails and compared them using a diff tool and the only thing that has different were some headers.

That’s why I decided to build a CLI tool to remove all duplicate emails from the Maildir directory and I built it in PHP, because I’ve more experience in this language.

The project is hosted in GitLab, as I wanted automated testing and GitLab’s CI/CD seems quite easy.

-> You can find it here <-.

There are some features I want to implement, but it worked fine and I managed to delete more than 1000 emails!

Installing Sass on Ubuntu 14.04

Like every web developer I wanted to install Sass on my old Ubuntu 14.04.

When trying to install Sass I got errors, first because I didn’t have a ruby-dev version installed, and then because the ruby version was older than 2.0

So with a little help of this StackOverflow post

$ sudo apt-add-repository ppa:brightbox/ruby-ng
$ sudo apt-get update
$ sudo apt-get install ruby2.4
$ sudo apt-get install ruby2.4-dev

$ ruby -v                         
$ ruby 2.4.3p205 (2017-12-14 revision 61247) [x86_64-linux-gnu]

$ sudo gem install sass
$ sass -v
$ Sass 3.5.5 (Bleeding Edge)

Virtualbox update to 3.2 – A error occurred during the signature verification

In Ubuntu machine I have installed Virtualbox with Windows so I can run software for Windows. Last time I tried to upgrade the machine using the apt package manager of Ubuntu (sudo apt-get update) I got the following error:

A error occurred during the signature verification. The repository is not updated and the previous index files will be used.GPG error: http://download.virtualbox.org karmic Release: Οι παρακάτω υπογραφές ήταν μη έγκυρες: BADSIG 54422A4B98AB5139 Oracle Corporation (VirtualBox archive signing key)

Continue reading Virtualbox update to 3.2 – A error occurred during the signature verification

How to delete certain files using find and piping them to rm in linux

If you need to delete many files with same characteristics like the same name or the same extension then you can use the find command and then rm to remove them.

So here is what I did:

find /home/ -name "*xml.gz" -print0 | xargs -0 rm

Continue reading How to delete certain files using find and piping them to rm in linux

Ubuntu Proftpd very slow: how to speed up

I have installed proftpd in my Ubuntu. When I was downloading it was slow enough to make me searching for some answers… Well I found some. Here they are:

#UseReverseDNS — Toggle rDNS lookups UseReverseDNS off
#IdentLookups — Toggle ident lookups IdentLookups off

Placing these lines at your /etc/proftpd/proftpd.conf you will get more speed at your file transfers.

How to add sound to your videos using mencoder

If you need to add some sound to your videos and you are using Linux, there is a very easy way to add it.
You can for example add your favourite song into your video, or even record your voice and put it in your video.

mencoder source.avi -o destination.avi -ovc copy -oac copy -audiofile /path_to_the_mp3_file/file.mp3

By telling mencoder not to compress the source video nor the audio the hole procedure will take a few seconds.

Enjoy it !!!