Tips en Trucs 2018

Office 365 Mail, Kalender en Onedrive

Veel bedrijven en scholen stappen langzaam maar zeker over op cloudsystemen. Bij ons op school kozen ze voor Office 365, het commerciële systeem van Microsoft. Deze cloud werkt met Microsoft Exchange, een Microsoft propriëtair systeem. Toch kan je onder Linux de belangrijkste Office 365 onderdelen gebruiken en integreren. Aangezien Office 365 een cloudsysteem is, kan je steeds via een browser werken, maar integratie in uw Linux systeem is ook mogelijk. Vandaag gaan we Office 356 Mail, Kalender en Onedrive in Linux integreren zodat het er schijnbaar deel van gaat uitmaken.

De hieronder gebruikte software wordt actief bijgewerkt, en dat is nodig, want Microsoft sleutelt regelmatig aan Office 365 en daar moeten de ontwikkelaars steeds opnieuw op inspelen.

Office 365 Mail

Office 365 Mail kan je benaderen via de standaarden IMAP en SMTP, m.a.w. elk mail programma kan mail van Office 365 ontvangen en versturen. Ik gebruik graag Mozilla Thunderbird.

Mozilla Thunderbird installeren en Office 365 Mail account configureren

Thunderbird kan je eenvoudig installeren via de standaard softwarebronnen:

Start Menu Toepassingen > Internet > Thunderbird. Thunderbird start met een welkom venster waarmee je een e-mail bij gandi.net kunt toevoegen. Klik op de knop Dit overslaan en mijn bestaande e-mailadres gebruiken..

Vul uw naam, E-mailadres en bijhorende wachtwoord in. Klik op de knop Doorgaan. Thunderbird gaat nu op zoek naar de configuratie van de e-mailprovider. Dit kan een tijd duren. En uiteindelijk wordt deze gevonden.
Thunderbird e-mail account toevoegen
Klik op de knop Gereed om het e-mail account aan Thunderbird toe te voegen.

De mails worden opgehaald en kunnen met behulp van Thunderbird beheerd worden.
Thunderbird mail

Om meerdere e-mail accounts toe te voegen, selecteer je in het linker deelvenster een e-mail account of Lokale mappen. In het centrale deelvenster verschijnen dan koppelingen waarop je klikt om bijvoorbeeld een nieuw E-mail account aan te maken.

Office 365 Kalender

Ook daarvoor gebruik ik Mozilla Thunderbird. Bij Thunderbird kan je de kalender functie uitschakelen of gebruiken (behouden). Klik daarvoor op de knop Keep in de balk onderaan het venster van Thunderbird. Mocht je de Lichtning kalender functie reeds uitgeschakeld hebben, dan kan je deze terug toevoegen via het Thunderbird-menu (knopje met drie strepen) met de Add-ons Manager in het onderdeel Extensies.

Davmail voor Office 365 installeren

Surf naar de SourceForge DavMail download pagina. Open de map met de recentste versie. Download het voor 64-bits Linux systemen geschikte TGZ pakket (vb: davmail-linux-x86_64-4.8.2-2524.tgz).

Pak het gedownloade pakket uit door er rechts op te klikken en in het snelmenu Uitpakken de opdracht Archief hier uitpakken, submap automatisch detecteren uit te voeren.

Kopieer de inhoud van de uitgepakte map (davmail-linux-x86_64-4.8.3-2554) naar de bin map van uw Persoonlijke map.

Om DavMail te starten, klik je op davmail.sh. Dolphin vraagt wat je met dit bestand wilt doen. Activeer de optie Deze vraag niet meer stellen en start DavMail door op de knop Uitvoeren te klikken.

Pas de OWA (Exchange) URL aan, onze school heeft een eigen domein (snt.be) bij Office 365 en de URL wordt dan: https://outlook.office365.com/owa/?realm=snt.be. Daarenboven zijn we enkel geïnteresseerd in de kalender en laten we dus enkel een vinkje staan bij Caldav HTTP port.
DavMail Settings
Klik op de knop Save om de instellingen op te slaan.

DavMail kalender aan Thunderbird toevoegen

Start Thunderbird. Activeer de kalender met de kalender knop (Switch to the calendar tab) bovenaan rechts in het Thunderbird venster. Klik in het onderste linker deel venster met de rechter muisknop en voer de opdracht New Calendar... uit. Selecteer de optie On the Network en klik Volgende. Selecteer de optie CalDAV en gebruik als Locatie http://localhost:1080/users/dany.pinoy@snt.be/calendar waarbij je het e-mailadres aanpast en klik op de knop Volgende. Geef de kalender een naam, een kleur en een bijhorend e-mail adres en klik op Volgende. Als gebruikersnaam geef je nogmaals het bijhorende e-mailadres en bijhorende wachtwoord op. Onder het hoofdvenster moet je het dialoogvenster Create New Calendar nog Voltooien. Het lijkt fout te gaan, maar indien je de aangemaakte kalender in het linker deelvenster selecteert en op de knop Synchronize klikt, verschijnen uw afspraken in het middelste deelvenster.
Thunderbird kalender

DavMail automatisch starten

Je kunt DavMail bij het starten van uw computer automatisch laten opstarten door via het Menu Toepassingen de Systeeminstellingen te starten. Start het onderdeel Opstarten en afsluiten. Activeer de categorie Opstarten. Klik op de knop Programma toevoegen.... Blader naar de bin map in uw Persoonlijke map en open het script davmail.sh. Bevestig het programma met OK. Activeer het tabblad Rechten en schakel de optie Is uitvoerbaar in. Bevestig de aanpassing met de knop OK.
KDE Autostart
Sluit de Systeeminstellingen en herstart de computer.

Onedrive

Cloudopslag is handig, je kunt namelijk steeds via internet aan al uw bestanden. Toch heb ik graag een kopie van de bestanden die ik in de lessen nodig heb op mijn laptop staan. Deze neem in steeds mee naar de les. Soms zijn bestanden namelijk te groot om in de klas te downloaden, is het schoolnetwerk overbelast of werkt het helemaal niet. Ik plaats tijdens de voorbereiding alle bestanden in de Onedrive cloud in de map Lesvoorbereidingen. Als alles klaar staat synchroniseer ik de Onedrive Lesvoorbereidingen map naar mijn laptop.

Daarvoor gebruik ik het programma onedrive van skilion op github. Dit programma is geschreven in de programmeertaal D. Om onedrive te compileren, hebben we de D ontwikkelomgeving nodig. Deze installeer je met de volgende opdracht in Konsole:

dany@pindabook:~> sudo /sbin/OCICLI https://software.opensuse.org/ymp/devel:languages:D/openSUSE_Leap_42.3/dmd.ymp
[sudo] wachtwoord voor root: 
Als u verdergaat, dan worden de volgende installatiebronnen toegevoegd:
        * http://download.opensuse.org/repositories/devel:/languages:/D/openSUSE_Leap_42.3/
Als verdergaat, dan zullen de volgende softwarepakketten worden geïnstalleerd op uw systeem:
        * dmd
Continue? y/N
y
Toevoegen van installatiebronnen...

Daarbij moet je softwarebron van de D programmeertaal vertrouwen door de GnuPG-sleutel aan het installatiesysteem toe te voegen.
GnuPG sleutel vertrouwen

Daarnaast heeft onedrive de volgende softwarepakketten nodig:

dany@pindabook:~> sudo zypper install curl sqlite libcurl-devel sqlite3-devel git libphobos2-0_78 phobos-devel-static
Gegevens van installatiebron laden...
Lezen van geïnstalleerde pakketten...
'libphobos2-0_78' is al geïnstalleerd.
Geen updatekandidaat voor bijwerken van 'libphobos2-0_78-2.078.2-21.1.x86_64'. De hoogst beschikbare versie is al geïnstalleerd.
'curl' is al geïnstalleerd.
Geen updatekandidaat voor bijwerken van 'curl-7.37.0-30.1.x86_64'. De hoogst beschikbare versie is al geïnstalleerd.
'sqlite' is niet gevonden in de pakketnamen. Proberen in eigenschappen.
Pakketafhankelijkheden oplossen...

De volgende 23 NIEUWE pakketten zullen worden geïnstalleerd:
  akonadi-server-sqlite cvs cvsps git git-core git-cvs git-email git-gui gitk git-svn git-web libcurl-devel libserf-1-1
  libsvn_auth_kwallet-1-0 perl-Authen-SASL perl-Error perl-Net-SMTP-SSL phobos-devel-static sqlite3 sqlite3-devel subversion
  subversion-bash-completion subversion-perl

De volgende 8 aanbevolen pakketten zijn automatisch geselecteerd:
  git-cvs git-email git-gui gitk git-svn perl-Authen-SASL perl-Net-SMTP-SSL subversion-bash-completion

De volgende 2 pakketten zijn gesuggereerd, maar zullen niet worden geïnstalleerd:
  git-daemon sqlite3-doc

23 nieuwe te installeren pakketten.
Totale downloadgrootte: 12,3 MiB. Reeds in de cache: 0 B. Na de bewerking zal aanvullend 103,8 MiB worden gebruikt.
Doorgaan? [j/n/...? alle opties tonen] (j): 
pakket phobos-devel-static-2.078.2-21.1.x86_64 wordt opgehaald                                (1/23),   1,9 MiB ( 61,5 MiB uitgepakt)
Ophalen: phobos-devel-static-2.078.2-21.1.x86_64.rpm ........................................................................[gereed]
pakket perl-Authen-SASL-2.16-10.1.noarch wordt opgehaald                                      (2/23),  55,1 KiB (105,1 KiB uitgepakt)
Ophalen: perl-Authen-SASL-2.16-10.1.noarch.rpm ................................................................[gereed (169,4 KiB/s)]
pakket perl-Error-0.17021-6.1.noarch wordt opgehaald                                          (3/23),  28,3 KiB ( 49,8 KiB uitgepakt)
Ophalen: perl-Error-0.17021-6.1.noarch.rpm ..................................................................................[gereed]
pakket perl-Net-SMTP-SSL-1.03-6.1.noarch wordt opgehaald                                      (4/23),   8,2 KiB (  4,7 KiB uitgepakt)
Ophalen: perl-Net-SMTP-SSL-1.03-6.1.noarch.rpm ..............................................................................[gereed]
pakket akonadi-server-sqlite-17.04.2-1.6.x86_64 wordt opgehaald                               (5/23),  49,3 KiB ( 63,7 KiB uitgepakt)
Ophalen: akonadi-server-sqlite-17.04.2-1.6.x86_64.rpm .......................................................................[gereed]
pakket cvsps-2.1-187.1.x86_64 wordt opgehaald                                                 (6/23),  56,1 KiB (120,6 KiB uitgepakt)
Ophalen: cvsps-2.1-187.1.x86_64.rpm .........................................................................................[gereed]
pakket libserf-1-1-1.3.9-1.1.x86_64 wordt opgehaald                                           (7/23),  68,7 KiB (145,5 KiB uitgepakt)
Ophalen: libserf-1-1-1.3.9-1.1.x86_64.rpm .....................................................................[gereed (598,2 KiB/s)]
pakket sqlite3-3.8.10.2-10.2.x86_64 wordt opgehaald                                           (8/23), 427,0 KiB (817,1 KiB uitgepakt)
Ophalen: sqlite3-3.8.10.2-10.2.x86_64.rpm ...................................................................................[gereed]
pakket sqlite3-devel-3.8.10.2-10.2.x86_64 wordt opgehaald                                     (9/23), 139,3 KiB (397,2 KiB uitgepakt)
Ophalen: sqlite3-devel-3.8.10.2-10.2.x86_64.rpm .............................................................................[gereed]
pakket cvs-1.12.12-188.1.x86_64 wordt opgehaald                                              (10/23), 371,5 KiB (902,3 KiB uitgepakt)
Ophalen: cvs-1.12.12-188.1.x86_64.rpm .......................................................................................[gereed]
pakket libcurl-devel-7.37.0-30.1.x86_64 wordt opgehaald                                      (11/23), 226,2 KiB (357,2 KiB uitgepakt)
Ophalen: libcurl-devel-7.37.0-30.1.x86_64.rpm ..................................................................[gereed (86,1 KiB/s)]
pakket git-core-2.13.6-7.1.x86_64 wordt opgehaald                                            (12/23),   3,6 MiB ( 21,2 MiB uitgepakt)
Ophalen: git-core-2.13.6-7.1.x86_64.rpm .........................................................................[gereed (4,4 MiB/s)]
pakket subversion-1.9.7-8.1.x86_64 wordt opgehaald                                           (13/23),   2,6 MiB ( 10,1 MiB uitgepakt)
Ophalen: subversion-1.9.7-8.1.x86_64.rpm ....................................................................................[gereed]
pakket gitk-2.13.6-7.1.x86_64 wordt opgehaald                                                (14/23), 235,7 KiB (735,5 KiB uitgepakt)
Ophalen: gitk-2.13.6-7.1.x86_64.rpm .............................................................................[gereed (5,3 KiB/s)]
pakket git-web-2.13.6-7.1.x86_64 wordt opgehaald                                             (15/23), 184,3 KiB (322,2 KiB uitgepakt)
Ophalen: git-web-2.13.6-7.1.x86_64.rpm ......................................................................................[gereed]
pakket git-gui-2.13.6-7.1.x86_64 wordt opgehaald                                             (16/23), 298,7 KiB (  1,2 MiB uitgepakt)
Ophalen: git-gui-2.13.6-7.1.x86_64.rpm ......................................................................................[gereed]
pakket git-email-2.13.6-7.1.x86_64 wordt opgehaald                                           (17/23), 127,6 KiB ( 57,8 KiB uitgepakt)
Ophalen: git-email-2.13.6-7.1.x86_64.rpm ....................................................................................[gereed]
pakket git-cvs-2.13.6-7.1.x86_64 wordt opgehaald                                             (18/23), 167,6 KiB (215,5 KiB uitgepakt)
Ophalen: git-cvs-2.13.6-7.1.x86_64.rpm ......................................................................................[gereed]
pakket subversion-bash-completion-1.9.7-8.1.noarch wordt opgehaald                           (19/23),  94,9 KiB ( 44,4 KiB uitgepakt)
Ophalen: subversion-bash-completion-1.9.7-8.1.noarch.rpm ....................................................................[gereed]
pakket subversion-perl-1.9.7-8.1.x86_64 wordt opgehaald                                      (20/23), 908,9 KiB (  4,5 MiB uitgepakt)
Ophalen: subversion-perl-1.9.7-8.1.x86_64.rpm ...............................................................................[gereed]
pakket libsvn_auth_kwallet-1-0-1.9.7-8.1.x86_64 wordt opgehaald                              (21/23),  90,1 KiB ( 18,6 KiB uitgepakt)
Ophalen: libsvn_auth_kwallet-1-0-1.9.7-8.1.x86_64.rpm .......................................................................[gereed]
pakket git-svn-2.13.6-7.1.x86_64 wordt opgehaald                                             (22/23), 584,8 KiB (  1,1 MiB uitgepakt)
Ophalen: git-svn-2.13.6-7.1.x86_64.rpm ..........................................................................[gereed (3,1 MiB/s)]
pakket git-2.13.6-7.1.x86_64 wordt opgehaald                                                 (23/23), 107,2 KiB (  2,9 KiB uitgepakt)
Ophalen: git-2.13.6-7.1.x86_64.rpm ..........................................................................................[gereed]
Controleren op conflicten tussen bestanden: .................................................................................[gereed]
( 1/23) Installeren van: phobos-devel-static-2.078.2-21.1.x86_64 ............................................................[gereed]
( 2/23) Installeren van: perl-Authen-SASL-2.16-10.1.noarch ..................................................................[gereed]
( 3/23) Installeren van: perl-Error-0.17021-6.1.noarch ......................................................................[gereed]
( 4/23) Installeren van: perl-Net-SMTP-SSL-1.03-6.1.noarch ..................................................................[gereed]
( 5/23) Installeren van: akonadi-server-sqlite-17.04.2-1.6.x86_64 ...........................................................[gereed]
( 6/23) Installeren van: cvsps-2.1-187.1.x86_64 .............................................................................[gereed]
( 7/23) Installeren van: libserf-1-1-1.3.9-1.1.x86_64 .......................................................................[gereed]
( 8/23) Installeren van: sqlite3-3.8.10.2-10.2.x86_64 .......................................................................[gereed]
( 9/23) Installeren van: sqlite3-devel-3.8.10.2-10.2.x86_64 .................................................................[gereed]
(10/23) Installeren van: cvs-1.12.12-188.1.x86_64 ...........................................................................[gereed]
(11/23) Installeren van: libcurl-devel-7.37.0-30.1.x86_64 ...................................................................[gereed]
(12/23) Installeren van: git-core-2.13.6-7.1.x86_64 .........................................................................[gereed]
(13/23) Installeren van: subversion-1.9.7-8.1.x86_64 ........................................................................[gereed]
Aanvullende rpm-uitvoer:
Updating /etc/sysconfig/svnserve...


(14/23) Installeren van: gitk-2.13.6-7.1.x86_64 .............................................................................[gereed]
(15/23) Installeren van: git-web-2.13.6-7.1.x86_64 ..........................................................................[gereed]
(16/23) Installeren van: git-gui-2.13.6-7.1.x86_64 ..........................................................................[gereed]
(17/23) Installeren van: git-email-2.13.6-7.1.x86_64 ........................................................................[gereed]
(18/23) Installeren van: git-cvs-2.13.6-7.1.x86_64 ..........................................................................[gereed]
(19/23) Installeren van: subversion-bash-completion-1.9.7-8.1.noarch ........................................................[gereed]
(20/23) Installeren van: subversion-perl-1.9.7-8.1.x86_64 ...................................................................[gereed]
(21/23) Installeren van: libsvn_auth_kwallet-1-0-1.9.7-8.1.x86_64 ...........................................................[gereed]
(22/23) Installeren van: git-svn-2.13.6-7.1.x86_64 ..........................................................................[gereed]
(23/23) Installeren van: git-2.13.6-7.1.x86_64 ..............................................................................[gereed]

Nu kunnen we de broncode van de onedrive software downloaden:

dany@pindabook:~> git clone https://github.com/skilion/onedrive.git
Cloning into 'onedrive'...
remote: Counting objects: 951, done.
remote: Total 951 (delta 0), reused 0 (delta 0), pack-reused 951
Receiving objects: 100% (951/951), 275.47 KiB | 876.00 KiB/s, done.
Resolving deltas: 100% (662/662), done.

We open de map met de gedownloade broncode:

dany@pindabook:~> cd onedrive

We maken (compileren) het programma met behulp van de broncode:

dany@pindabook:~/onedrive> make
echo v1.1.1 >version
dmd -g -ofonedrive -O -L-lcurl -L-lsqlite3 -L-ldl -J. src/config.d src/itemdb.d src/log.d src/main.d src/monitor.d src/onedrive.d src/qxor.d src/selective.d src/sqlite.d src/sync.d src/upload.d src/util.d
sed "s|@PREFIX@|/usr/local|g" onedrive.service.in > onedrive.service

En installeren het gecompileerde programma:

dany@pindabook:~/onedrive> sudo make install
install -D onedrive /usr/local/bin/onedrive
install -D -m 644 onedrive.service /usr/lib/systemd/user/onedrive.service

We verlaten de map met de onedrive broncode:

dany@pindabook:~/onedrive> cd

Daar ik enkel de map Lesvoorbereidingen wil synchroniseren, maak in de Persoonlijke map in de verborgen map .config/onedrive/ het bestand sync_list aan met enkel het woord Lesvoorbereidingen. Dit bestand wordt door onedrive gebruikt om na te gaan welke mappen gesynchroniseerd moeten worden. Indien ~/.config/onedrive/sync_list niet bestaat wordt de volledig inhoud van uw Onedrive cloudopslag gesynchroniseerd. Met de volgende opdracht voer je een geforceerde (--resync) uit:

dany@pindabook:~> onedrive --resync
Creating directory Lesvoorbereidingen
Creating directory Lesvoorbereidingen/Oranje
Downloading Lesvoorbereidingen/Oranje/Opgave Tekstverwerking.rtf... done.
Downloading Lesvoorbereidingen/Extra opdrachten Computerkennis.pdf... done.
Downloading Lesvoorbereidingen/Extra opdrachten Computerkennis_backup.pdf... done.
Downloading Lesvoorbereidingen/Oefeningencursus Windows 8.1&10 - versie sep 17.pdf... done.
Downloading Lesvoorbereidingen/Theoriecursus Windows 8.1&10 - versie sep 17.pdf... done.
Downloading Lesvoorbereidingen/beta versie -win 10 update winter 2016.pdf... done.
Creating directory Lesvoorbereidingen/Windows Upgrade
Downloading Lesvoorbereidingen/Windows Upgrade/les 1 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les 1 upgrade laatste blad.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les 2 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les 3 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les 4 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les5 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les6 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les6 upgrade_2.pdf... done.
Creating directory Lesvoorbereidingen/MacOS
Downloading Lesvoorbereidingen/MacOS/MacOS Programma's... done.
Downloading Lesvoorbereidingen/MacOS/MacOS Finder... done.
Downloading Lesvoorbereidingen/MacOS/MacOS Dock... done.
Downloading Lesvoorbereidingen/PCSeniorDeel1-jan18-Win10 Creator.pdf... done.
Downloading Lesvoorbereidingen/Extra opdrachten Computerkennis.odt... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les7 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les8 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les9 upgrade all.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les10 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les11 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les12 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les13 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les14 upgrade.pdf... done.
Downloading Lesvoorbereidingen/Windows Upgrade/les15 upgrade all.pdf... done.

Zonder de optie --resync wordt rekening gehouden met voordien uitgevoerde synchronisaties. Elke uitgevoerde synchronisatie-opdracht wordt namelijk in een database opgeslagen. Zonder de --rsync optie verloopt de synchronisatie sneller, maar kunnen er synchronisatie-opdrachten over het hoofd worden gezien.