Skip to content

Latest commit

 

History

History
196 lines (149 loc) · 8.5 KB

File metadata and controls

196 lines (149 loc) · 8.5 KB

GoFileEncoder

🇬🇧 Do you speak English ? Open README.md in English.

Introduction

GoFileEncoder est un petit encodeur de fichiers qui utilise l'encryption XOR (EN). Il est codé en Golang, et est compilé pour plusieurs OS (Windows®, Linux®,et bientôt macOS®).

Je ne suis pas un pro en Go, donc si vous trouvez un bug, ou simplement voulez faire une suggestion, je suis totalement ouvert aux issues (EN), pull requests (EN) et à la discussion (EN).


Sommaire


Construction

Clonage

git clone https://github.com/eliotttak/GoFileEncoder
cd GoFileEncoder

Arbre des dépendances du package

GoFileEncoder (ce projet)
|
+-- github.com/sqweek/dialog (pour les popups des fichiers)
|   |
|    \_ github.com/TheTitanrain/w32 (indirect)
|
+-- golang.org/x/term (pour la demande de mot de passe)
|   |
|    \_ golang.org/x/sys (indirect)
|
 \_ github.com/christianhujer/isheadless (pour vérifier s'il y a une GUI)

Se réferer au fichier go.mod pour plus de détails.

🛈 Dans go.mod, il peut y avoir une directive d'import pour github.com/abdfnx/gosh. Elle a été utilisée uniquement pour mon assistant d'installation, et vous ne devriez pas en avoir besoin. Elle va disparaître si vous exécutez go mod tidy.

Dépendances de construction

  • github.com/go-bindata/go-bindata/go-bindata/... (pour créer le fichier d'assets) Seulement pour Windows®:
  • svg_to_ico (Ortham/svg_to_ico) doit être dans $PATH ou %PATH% (pour convertir l'icône SVG en ICO)
  • resourcehacker (www.angusj.com/resourcehacker/#download) doit être dans $PATH ou %PATH% (pour intégrer l'icône à l'exécutable)

Installation des dépendances

go mod tidy
go install github.com/go-bindata/go-bindata/go-bindata/...
go get

Vous allez aussi devoir installer manuellement Resource Hacker et svg_to_ico

Compilation et création du package d'assets

En Bash

# Vous allez peut-être devoir exécuter 'chmod 744 build.sh'
./build.sh # Vous pouvez ajouter une valeur de GOOS et une de GOARCH, par ex. './build.sh linux amd64'

En Batch

rem Vous pouvez ajouter une valeur de GOOS et une de GOARCH, par ex. 'build.bat windows amd64'
build.bat

Exécution

En Bash

./bin/portables/GoFileEncoder_portable_linux_amd64 # Vous pouvez écrire une autre OS ou architecture.

En Batch

.\bin\portables\GoFileEncoder_portable_windows_amd64.exe
rem Vous pouvez écrire une autre OS ou architecture.

Traductions

Installer une langue

Téléchargez un fichier de traduction (par ex. translate-fr-FR.json) et placez-le dans le même dossier que l'exécutable.

Définir la langue à utiliser

Le choix de la langue à utiliser est en partie automatisé. Voici les détails :

1. Aucun fichier de traduction installé

Dans cette configuration, la langue utilisée sera l'angais britanique (en-GB).

2. Un seul fichier de traduction installé

Dans cette configuration, le fichier de traduction installé sera utilisé.

3. Plusieurs (2 ou plus) fichiers de configuration installés

Dans cette configuration, à chaque lancement du programme, les langues disponibles seront listées, et vous serez invité à en choisir une.

Créer un fichier de traduction

Nom du fichier

Le nom du fichier doit être au format translate-ab-CD.json, par ex. translate-fr-FR.json.

Contenu du fichier

Le fichier est au format JSON.

Le fichier est composé de cinq grandes parties :

  • General contient les traductions qui seront utilisées par au moins 2 packages différents.
  • Intro contient les traductions utilisées uniquement par le package main.
  • CommonThings contient les traductions utilisées uniquement par le package commonThings.
  • Encoding contient les traductions utilisées uniquement par le package encoder.
  • Decoding contient les traductions utilisées uniquement par le package decoder.

Chaque paire "clé": "valeur" correspond à une phrase ou groupe de mots qui sera affiché par le programme.

Vous pouvez vous inspirer d'un fichier déjà existant.


Utilisation

1. Encoder ou décoder ?

En premier, lancez le programme. Celui-ci va vous demander si vous souhaitez encoder ou décoder un fichier :

Que voulez-vous faire ?
 - Encoder un fichier (e)
 - Décoder un fichier (d)
(e/d)>>>

Si vous voulez encoder un fichier, entrez e, sinon, entrez d. Dans tous les cas, validez avec Entrée.

2. Sélectionnez un fichier

Ensuite, il va vous demander d'appuyez sur Entrée pour sélectionner un fichier. Faites-le, et un popup va apparaître. Sélectionnez votre fichier, puis validez.

🛈 Si vous annulez, le popup va réapparaître 2 fois, puis à la 3ème, le message "Trop de tentatives échouées" va s'afficher puis le programme va se fermer.

🛈 Si votre configuration ne comprends pas d'interface graphique, vous allez devoir entrer manuellement le chemin absolu vers vorte fichier.

3. Entrez le mot de passe

Après cela, un mot de passe vous sera demandé. Entrez-le puis validez avec Entrée.

⚠ Si vous avez choisi Décoder un fichier, faîtes attention à bien écrire le mot de passe. Si vous vous trompez ne serait-ce que d'un caractère, le fichier sera corrompu et ne sera plus utilisable.

🛈 Pour garantir la confidentialité de votre mot de passe, celui-ci ne s'affichera pas sur votre écran.

4. Choisissez le fichier de destination

Ensuite, le programme va vous demander d'appuyez sur Entrée pour choisir le fichier de destination. Faites-le, et un popup va apparaître. Sélectionnez le fichier à créer, puis validez.

🛈 Si vous annulez, le popup va réapparaître 2 fois, puis à la 3ème, le message "Trop de tentatives échouées" va s'afficher puis le programme va se fermer.

🛈 Si votre configuration ne comprends pas d'interface graphique, vous allez devoir entrer manuellement le chemin absolu vers vorte fichier.

5. Attendez...

Le fichier est en train d'être encodé. Ne fermez pas le programme.

6. Terminé !

Au bout de quelques secondes, le fichier est encodé ou décodé. Le programme se ferme automatiquement.

License

Ce logiciel est distribué sous la license GNU GENERAL PUBLIC LICENSE version 3 (GNU GPL v3).

Voir la license (EN)