Qui ne s’est pas déjà retrouvé bête avec deux périphériques ultra‐connectés (ordiphone, PC…) dans les mains sans pouvoir transférer un fichier de l’un à l’autre, rapidement et simplement (sans sortir ses outils en console ou faire appel à un Nuage), dans le cas où un des périphériques n’a pas le Bluetooth ?
Cette dépêche présente brièvement deux outils pour répondre à ce besoin : woof et ShareViaHttp.
Prérequis
- les deux périphériques doivent être accessibles dans un même réseau (généralement, le besoin, c’est dans le réseau local, mais ça marche sur Internet) ;
- au moins un des périphériques doit tourner sous Android ou GNU/Linux ;
- côté GNU/Linux, l’intégration a été réalisée et testée avec Thunar, mais elle doit pouvoir s’adapter facilement à d’autres gestionnaires de fichiers ;
- principales dépendances : Python et Zenity (facultatif).
Les outils
woof fournit un serveur Web minimal pour servir un fichier que vous passez en argument. Le projet n’a pas l’air très vivant, mais le code fourni répond au besoin et il existe un paquet Debian.
Share via HTTP est une appli pour Android, libre et disponible sur le marché libre F-Droid. Elle permet de la même manière de servir rapidement un fichier présent sur un périphérique Android.
Configuration
- côté Android : rien à faire, l’option de partage « Share via HTTP » apparaît automatiquement dans les navigateurs de fichiers lorsque vous sélectionnez un ou plusieurs fichiers ;
- côté GNU/Linux : woof étant un script Python, un petit script d’habillage permet de faciliter son utilisation en l’intégrant dans Thunar :
#!/bin/sh
# partage d’un fichier avec Woof et affichage d’un popup rappelant l’adresse d’accès.
PORT=9999
MON_IP_PRIVE=`ip addr | awk '/inet / {sub(/\/.*/, "", $2); print $2}' |grep 192`
MON_IP_PUB=`wget -qO- http://ipecho.net/plain`
FICHIER=$1
echo "Partage de « $FICHIER » avec Woof."
woof -p $PORT $FICHIER &
CODE_SORTIE=$?
echo "Code de sortie : $CODESORTIE"
#Affichage de la fenêtre
zenity --title="Partage d’un fichier" --info --text="Fichier « $FICHIER » disponible via http://$MON_IP_PRIVE:$PORT ou http://$MON_IP_PUB:$PORT."&
Maintenant, on peut faire le lien dans Thunar de manière à pouvoir appeler le script par un clic droit sur le fichier à partager. Pour cela, il faut passer par Édition > Configurer les actions personnalisées… > Ajouter une nouvelle action personnalisée.
Indiquer dans la commande le chemin d’accès au script et vérifier dans l’onglet Conditions d’apparition que tous les types de fichiers sont bien cochés.
Utilisation
Une fois que tout est configuré, il suffit de partager d’un côté, puis de se connecter avec votre navigateur (voire wget) sur l’adresse IP et le port indiqué par ShareViaHTTP ou woof.
Aperçu du partage avec woof et le script d’habillage utilisé dans Thunar
Aperçu du partage côté Android avec ShareViaHTTP
Nota :
- ShareViaHTTP permet de partager plusieurs fichiers en même temps en créant une archive ZIP ;
- si vous avez besoin de transférer un fichier depuis chez votre amie Michue ayant un périphérique utilisant Windows par exemple, il est possible d’utiliser woof en mode upload ;
- le port par défaut est 9999, ce qui est facile à retenir.
Aller plus loin
- woof (438 clics)
- Share via HTTP (491 clics)
# Python
Posté par jtremesay (site web personnel) . Évalué à 10.
Solution qui marche « Out of The Box » sur la plus part des systèmes Linux (à part Linux void, quelle distribution n'a pas python en standard ?) :
python3 -m http.server 8000
Ou pour les vieux systèmes (coucou RHEL6) :
python2 -m SimpleHTTPServer 8000
Et pouf ! Un webserver qui sert le dossier courant sur le port 8000 !
[^] # Re: Python
Posté par jujun . Évalué à 0.
@killruana le monde est petit hein ;)
[^] # Re: Python
Posté par jtremesay (site web personnel) . Évalué à 0.
Surtout pour des pythonistes linuxiens ;)
Qu'est-ce que tu deviens, camarade ?
# Autorisations
Posté par Arkem . Évalué à 5.
J'ai voulu installer "Share via HTTP" sur mon smartphone, et il m'a demandé l'accès à mes contact… ça lui sert à quoi ?
Personnellement, j'utilise "Wifi File Transfer" qui ne nécessite aucune manip côté ordi et ne me demande rien de bizarre, mais ce n'est sans doute pas libre…
[^] # Re: Autorisations
Posté par anubis . Évalué à 1.
Le partage de contacts, à la demande de l'utilisateur, fait partie des fonctionnalités de « Share via HTTP » (cf la politique de vie privée accessible dans le menu de l'appli pour les précisions).
aussi sur le salon xmpp:linuxfr@chat.jabberfr.org?join
[^] # Re: Autorisations
Posté par le_poney (Mastodon) . Évalué à 1.
L'avantage des applications sur F-droid c'est que tu as accès au code source :)
Du coup tu peux:
# KDE Connect
Posté par gUI (Mastodon) . Évalué à 10.
Pour ceux qui tournent sous KDE (et pour les autres je suppose, au prix de se tirer un bon paquet de dépendances), il y a KDE connect. On installe un client Android sur son téléphone, et dès que le téléphone est sur le réseau local, on profite de qques gadgets fort pratiques :
- notifications qui apparaissent sur l'ordi
- copier/coller
- affichage du niveau de batterie
- faire sonner à distance
- et bien sûr partage de fichiers
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: KDE Connect
Posté par Boa Treize (site web personnel) . Évalué à 7.
Et aussi :
- mise en pause musique/vidéo PC sur appel entrant
- télécommande du PC depuis le client Android (notamment télécommande musique/vidéo)
- réponse aux SMS depuis le PC
Le PC peut être associé à plusieurs Android en même temps, et le client Android peut facilement passer d'un PC à un autre.
Vraiment très bon, une des applications phare de KDE.
# DUKTO !
Posté par Toto_Linux . Évalué à 5.
http://www.msec.it/blog/?p=746
Dukto.deb
Le choix du ppa.
Pour rappel, Dukto permet le partage sur un même réseau, quelque soit l'appareil et quelque soit le système d'exploitation.
Un simple glisser/déposer du fichier/dossier sur l'icône du périphérique avec lequel échanger est suffisant.
[^] # Re: DUKTO !
Posté par Maderios . Évalué à 3.
Dukto est également disponible dans Arch (Aur)
# Amaze
Posté par Davidbrcz . Évalué à 1.
Amaze (navigateur de fichier Android dispo sur F-droid) propose aussi le lancement d'un serveur FTP en local sur le téléphone. Ensuite, n'importe quel client FTP marchera pour envoyer les fichiers
[^] # Re: Amaze
Posté par linette . Évalué à 1.
Merci pour cette information qui correspond tout a fait à mes besoins :)
# Primitive ftpd (FTP + SFTP)
Posté par tao popus . Évalué à 1.
Il y a aussi Primitive ftpd sur F-droid, qui fait FTP (pour les cas extrême), mais surtout SFTP (le SFTP de SSH, pas FTPS)
# son
Posté par Benjamin Henrion (site web personnel) . Évalué à 3.
un transfer de fichiers via le son, est-ce possible?
[^] # Re: son
Posté par Donk . Évalué à 5.
Oui, avec un modem 56k
[^] # Re: son
Posté par FantastIX . Évalué à 2.
Tout dépend si on considère les doux cris d'agonie du modem comme du "son" ou du "bruit"… Sinon il reste encore la stéganophonie avec une œuvre musicale comme "Stairway to Heaven". Je dis ça et je dis rien…
[^] # Re: son
Posté par Selso (site web personnel) . Évalué à 1.
Classiquement avec un signal contenant une porteuse modulé en fréquence. Mais si on reste dans le spectre de l'audible ( 20 Hz - 20 kHz ) je ne suis pas sur que l'on puisse émettre à un débit satisfaisant, d'après quelques notes 20 kbits / seconde … même en zippant ton archive ça sera long pour transférer les vidéos de la journée !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.