Visa oläsa mail i Conky via IMAP och SSL
Det går väldigt enkelt att visa olästa mail via Conky. Conky har till och med stöd för IMAP som standard, dock inte SSL. Detta är dock enkelt ordnat med en litet skript som jag hittade på Arch wiki. [Länk]
Skriptet ser ut såhär:
#!/usr/bin/perl
# gimap.pl by gxmsgx
# description: get the count of unread messages on imap
use strict;
use Mail::IMAPClient;
use IO::Socket::SSL;
my $username = 'example.username';
my $password = 'password123';
my $socket = IO::Socket::SSL->new(
PeerAddr => 'imap.server',
PeerPort => 993
)
or die "socket(): $@";
my $client = Mail::IMAPClient->new(
Socket => $socket,
User => $username,
Password => $password,
)
or die "new(): $@";
if ($client->IsAuthenticated()) {
my $msgct;
$client->select("INBOX");
$msgct = $client->unseen_count||'0';
print "$msgct\n";
}
$client->logout();
Jag ändrade kontouppgifter och adress. Och eftersom filen innehåller mitt lösenord såg jag till att bara min användare kan läsa filen med “chmod 600”.
Man behöver även installera paketen “perl-mail-imapclient” och “perl-io-socket-ssl” som det stod på Wikin. Sedan la jag bara till den här raden i min konfiguration för Conky:
${execpi 300 ~/.conky/imap.pl}
Jag satte dock tiden på 900 (15 min). Osäker på om leverantören blir sur om man kollar mailen för ofta? :)