• # Code un peu vieillissant

    Posté par  . Évalué à 5. Dernière modification le 03 octobre 2021 à 10:49.

    Lorsque je suis tombé sur ce projet, je cherchais un moyen simple de partager directement un fichier avec un ami.
    J'avais deux besoins:
    - pas d'intermédiaire. Donc exit les mega, dropbox, upload sur un VPS, etc. En effet, maintenant que j'ai la fibre, un upload décent et qu'ipv6 existe, pourquoi s'embêter ?
    - simple pour celui qui reçoit: aucun prérequis, juste un lien. Il clique, ça télécharge, fini.

    Bien sûr, je ne voulais pas avoir à installer une usine à gaz pour faire quelque chose d'aussi trivial…
    Il existe bien sûr le simple serveur http python, mais il faut le lancer à chaque fois où il faut, et tout le dossier est forcément partagé.

    Je suis donc tombé sur les technos "WebRTC", dont Peertransfer est un exemple d'utilisation. C'est l'exemple le plus simple et compréhensible que j'ai trouvé, même si le dernier commit date un peu (Mars 2020).

    Si vous connaissez une alternative intéressante, n'hésitez pas à partager !

    • [^] # Re: Code un peu vieillissant

      Posté par  (site web personnel) . Évalué à 1.

      "Thus the file will only be available for download as long as the sender keeps his browser tab open.", c'est peut-être acceptable pour toi mais perso je ne vois pas l'interêt à part exception…

      pas d'intermédiaire.

      Juste un serveur avec un nom de domaine. Comme pour dropbox ou un VPS (juste petit avantage de pas avoir besoin de place sur ce VPS).
      Tu as un intermédiaire qui peut te bloquer le lien que tu fournis avec cette solution.

      • [^] # Re: Code un peu vieillissant

        Posté par  . Évalué à 2. Dernière modification le 03 octobre 2021 à 23:21.

        Juste un serveur avec un nom de domaine.

        Euh, non. Le serveur, c'est mon propre PC. Le nom de domaine, c'est le mien, mais j'ai aussi une ipv6 globale donc utilisable directement.

        EDIT: je réalise que tu ne voyais peut-être pas que je visais l'auto-hébergement; dans ce cas je comprends ta remarque.

        • [^] # Re: Code un peu vieillissant

          Posté par  (site web personnel) . Évalué à -2.

          Ce que je voulais souligner est que fondamentalement la phrase "pas d'intermédiaire" est fausse, ou du moins identique entre la méthode du lien et du classique dropbox like : 1 intermédiaire partout.
          Ensuite, tu peux choisir que cet intermédiaire est toi, dans les 2 cas.
          Donc en pratique ce n'est pas un avantage de te découverte.

          Je ne vois pas d'avantage intrinsèque à cette solution technique (mais des inconvénients comme la tab à garder ouverte) par rapport par exemple à un daemon (dans tous les cas tu as un truc qui doit tourner pour gérer l'URL) qui gérerait l'upload à la dropbox mais sur le fichier original si le daemon est sur ta machine, les mêmes avantages que la solution que tu proposes sont possibles mais avec un avantage en plus (se passer de garder la tab ouverte).

          Et non, je n'ai pas de nom à donner pour la partie réalisation, perso WeTransfer et compagnie suffisent à mes besoins très ponctuels et le libre n'a pas vraiment d'importance pour moi pour ce point, mais je ne doute pas que ça doit exister car pas si compliqué.

          • [^] # Re: Code un peu vieillissant

            Posté par  . Évalué à 3.

            Ce que je voulais souligner est que fondamentalement la phrase "pas d'intermédiaire" est fausse, ou du moins identique entre la méthode du lien et du classique dropbox like : 1 intermédiaire partout.

            Depuis quand dropbox et consorts font du p2p ?

            Donc si, il y a bien un intermédiaire en plus dans le cadre du transfert de fichier quand tu travailles avec dropbox. C'est le cas aussi pour l'établissement du canal si il auto héberge.

            Maintenant, tu peux pinailler sur la quantité de routeurs par lesquels les données passeront, mais je doute très fort que tu puisses trouver un cas où il y en a moins en passant par une solution comme dropbox.

  • # croc

    Posté par  (site web personnel) . Évalué à 9.

    Pour ce besoin j'utilise croc : https://schollz.com/software/croc/

    Il est facile à installer (un binaire) et à utiliser sur n'importe quelle plateforme. Il permet un transfert sécurisé de pair à pair et peut reprendre les transferts interrompus.

    • [^] # Re: croc

      Posté par  . Évalué à 3.

      Sympa mais il a l'air d'imposer le relay. C'est dommage.

      Je lis ici:

      magic-wormhole has most everything […] but it requires installing lots of the Python ecosystem

      Je lis beaucoup ça à propos de Python mais c'est largement faux. PyInstaller permet d'encapsuler l'interpréteur les dépendances dans un exe. C'est assez simple à mettre en oeuvre.

      webwormhole est écrit en Go et donc répond aussi à ce besoin avec en plus la cross-compilation.

  • # webwormhole

    Posté par  . Évalué à 9.

    J'utilise webwormhole qui s'occupe de la mise en relation. Le transfert se fait en pair à pair, sauf si il ne parvient pas à traverser un double NAT. Et directement dans le navigateur, avec du webrtc.

    Ça l'auto-héberge très facilement. Il y a une CLI.

  • # Bitwarden

    Posté par  . Évalué à 3.

    Pour ça, j’utilise bitwarden qui contient un service send depuis quelques temps. Pour ne dépendre que de moi, je l’utilise sur un yunohost… il y a un intermédiaire qui me permet de fermer mon navigateur, mais je maîtrise l’intermédiaire :-p

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.