Gnome-Nextcloud

Et autres intégrations

Gnome est notamment l’environnement de bureau par défaut des distributions Linux professionnelles (RHEL, SLED). Nous allons voir ici le fonctionnement  de son éco-système adossé à Nextcloud. En se servant (ou pas) de son groupware par défaut Evolution.

Testé sous CentOS 7

A travers les acomptes en ligne :

Une fois votre  acompte en ligne Nextcloud paramétré dans Gnome, vous pourrez profiter :

  • De vos calendriers et vos tâches dans son calendrier et dans Evolution
  • De vos contats Nextcloud dans ses contacts et dans Evolution
  • Du montage webdav de vos fichiers Nextcloud…
  • De la prise en compte de vos Documents Nextcloud dans son application Documents.
  • De plus si vous avez un compte sip et installé Ekiga, vous pouvez envoyer vos appels d’un click depuis vos contacts Nextcloud….


Par contre… Pas d’extension filelink pour Evolution « à la Thunderbird » qui permette de lier des fichiers distants volumineux hébergés sur notre Nextcloud…

Quoique, avec un peu d’imagination…

Nous allons utiliser ici pyocclient, une libraire python qui implémente l’api de Nextcloud côté client, dont nous allons nous servir dans un script Nautilus (le navigateur de fichiers de Gnome).

Allons y !

Il va nous falloir installer quelques packages supplémentaires

# yum install python-pip tkinter

# pip install pyocclient

Et c’est parti :

On commence par écrire notre script : Filelink for Nextcloud

#!/usr/bin/env python
# Filelink for Nextcloud
# Author : Jerome Bourgeois <jerome@xlinfo.fr>
# Version: 1.0
# License : GPL

import os
import webbrowser
import owncloud
import urllib2
import Tkinter
import tkMessageBox
import sys

#message d attente
root = Tkinter.Tk()
root.title("Filelink for Nextcloud")
w = Tkinter.Label(root,padx = 50,pady = 25,text="Veuillez patienter...")
w.pack()
root.update()
try:
	oc = owncloud.Client('https://cloud.domaine.tld') #adresse de votre Nextcloud
	oc.login('login', 'password') #vos identifiants Nextcloud
	directory= "Mail-attachments" #repertoire distant : Mail-attachments correspond au repertoire du filelink de Thunderbird

	selecteds= os.environ.get('NAUTILUS_SCRIPT_SELECTED_URIS').splitlines()
	body="\n\n"
	i=0
	for f in selecteds:
		selected=urllib2.unquote(f)
		local= selected.replace("file://","")
		remote= selected.split("/")[-1]

		#on envoie le fichier dans Nextcloud
		try:
			oc.put_file(directory+'/'+remote, local)
		except Exception, e:
			tkMessageBox.showinfo("Filelink for Nextcloud", str(e))
			continue
		#on recupere le nom du partage 
		link_info = oc.share_file_with_link('Mail-attachments/'+remote)
		#on le met dans le corps du message du mail
		body += link_info.get_link() +"\n\n"
		i=i+1

		if i == 0:
			sys.exit(1)
		elif i == 1:
			subject="Ci-joint 1 fichier"
		else:
			subject="Ci-joint "+str(i)+" fichiers"
	#on ouvre Evolution
	webbrowser.open("mailto:?subject="+ subject +"&body="+body)
except:
	tkMessageBox.showinfo("Filelink for Nextcloud", "Impossible de se connecter a Nextcloud !")
	sys.exit(2)
	

Je ne sais pas s’il est vraiment utile que je détaille plus ce que fait ce script… Ni que je précise qu’il a été fait sur un coin de table ! Mais je suis sûr que certains se feront un plaisir de l’améliorer !

Il ne nous reste plus qu’à le rendre exécutable et en lecture pour nous seul (il contient notre mot de passe) :
chmod 700 Filelink\ for\ Nextcloud
Et à le déplacer dans le répertoire de scripts de Nautilus
mv Filelink\ for\ Nextcloud .local/share/nautilus/scripts/

Et voilà, il nous suffira maintenant de cliquer du droit sur le (les) fichier(s) que l’on voudra partager par l’intermédiaire de Nextcloud et de choisir FIlelink pour Nextcloud dans le menu scripts.

A travers nextcloud-client et nextcloud-client-nautilus

On peut par contre préférer synchroniser nos fichiers nextcloud, et en avoir une copie locale, plutôt que de devoir s’y connecter par webdav…

Il nous faudra alors installer nextcloud-client (le client de synchronisation)… En désactivant de préférence dans les acomptes en ligne de Gnome la prise en compte par Nextcloud des fichiers et documents… Et en rajoutant, le cas échéant, notre dossier local Nextcloud aux répertoires indexés par Gnome-Documents (Dans paramètres -> Rechercher -> Documents…)

On pourra également installer nextcloud-nautilus-client qui remplacera alors avantageusement mon petit script, en permettant de partager nos documents hébergés sur nextcloud directement depuis le répertoire synchronisé localement…

Fusion de Documents et publipostage avec LibreOffice

Pour fusionner des documents types en se servant des contacts de nextcloud, il va nous falloir par contre tâter un peu de la ligne de commande, car de la même manière qu’avec Thunderbird, LibreOffice ne prend pas en compte ici non plus les carnets d’adresses distants.

/usr/libexec/evolution-data-server/addressbook-export -l
nous donne la liste des carnets d’adresses.
Par exemple, chez moi :
"system-address-book","Personnel",0
"1506932346.2108.1@localhost.localdomain","contacts",229

On voit ici que je n’utilise pas le carnet d’adresses local (0)
Il suffit maintenant de noter le bon carnet d’adresses pour l’exporter :
/usr/libexec/evolution-data-server/addressbook-export 1506932346.2108.1@localhost.localdomain --format=csv > contacts.csv

Ensuite, du côté de LibreOffice, il nous faut choisir comme source de données d’adresses dans l’assistant de LIbreOffice le type texte, et la virgule comme séparateur… Pour les manipulations, voir ici

Les sauvegarde avec Deja-dup

Eh oui, le logiciel Deja-dup a récemment décidé de ne plus proposer les géants du cloud comme Amazon, Google pour le stockage de vos sauvegardes et de travailler dorénavant avec les acomptes en ligne de Gnome… En offrant en outre de travailler avec Nextcloud…

Dommage que la version de Deja-dup présent sur les dépôts de Centos7 ne soit pas encore à jour… Mais rassurez-vous, sous Ubuntu, c’est bon !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *