Avatar
Linux, textfiler & minimalism
15 April 2015

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? :)

Conky E-post

Återkoppling

Min blogg består av 100% statisk HTML-kod och saknar därför ett kommentarssystem. Om du vill lämna återkoppling, diskutera eller fråga något går det bra att göra det via e-post, XMPP och Mastodon.