MAKE G1BILLET & G1PASS

This commit is contained in:
fred 2023-04-20 22:15:18 +02:00
parent a7a214282d
commit 2dba612eae
2 changed files with 74 additions and 50 deletions

View File

@ -97,8 +97,8 @@ then
"$DISCO"
## ADD PLAYER EMAIL
convert -gravity southeast -pointsize 28 -fill black -draw "text 5,3 \"$EMAIL\"" ${MY_PATH}/tmp/fond_qrcode.png ${MY_PATH}/tmp/g1billet/${UNIQID}/${BILLETNAME}.TW.png
convert ${MY_PATH}/tmp/g1billet/${UNIQID}/${BILLETNAME}.TW.png -resize 300 ${MY_PATH}/tmp/g1billet/${UNIQID}/${BILLETNAME}.TW.png
convert -gravity southeast -pointsize 28 -fill black -draw "text 5,3 \"$EMAIL\"" ${MY_PATH}/tmp/fond_qrcode.png ${MY_PATH}/tmp/g1billet/${UNIQID}/${BILLETNAME}.G1PASS.png
convert ${MY_PATH}/tmp/g1billet/${UNIQID}/${BILLETNAME}.G1PASS.png -resize 300 ${MY_PATH}/tmp/g1billet/${UNIQID}/${BILLETNAME}.TW.png
composite -compose Over -gravity SouthWest -geometry +50+50 \
"${MY_PATH}/tmp/g1billet/${UNIQID}/${BILLETNAME}.TW.png" \

120
README.md
View File

@ -23,113 +23,137 @@ Son détenteur peut alors utiliser l'identifiant/mot de passe pour contrôler la
## Utilisation
Pour une utilisation en ligne de commande, adaptez ces quelques lignes
Pour une utilisation en ligne de commande, adaptez ces lignes à votre style ;)
```
Montant=5 # Valeur faciale à indiquer sur le billet
NomFichier="nom_unique_du_pdf" # Correspond au nom du fichier créé dans /tmp/g1billet/
./G1BILLETS.sh "$Montant" "$NomFichier"
montant=0 # Valeur faciale à indiquer sur le billet (0 : indéfini)
style="_" # Style du G1BILLET
secu=7 # Nombre de mots "diceware" (corrélé à la complexité du PASS)
./G1BILLETS.sh "$montant" "$style" "$secu"
```
Pour personnaliser vos G1Billets, modifiez les images dans le répertoire du même nom (en conservant les dimensions)
La fabrication de la planche de G1Billets depuis un site web est possible en mettant le code dans un répertoire servi par un serveur web qui gère PHP...
Personnalisez vos G1Billets, en modifiant les images dans ```images/$style``` (copiez-collez celles d'autres styles pour commencer le votre)
## LANCEMENT MICRO HTTP SERVICE (SANS SERVEUR WEB)
```
./G1BILLETS.sh daemon
```
Une fois lancé de cette façon, la création de G1BILLETS se commande depuis un navigateur
```
PLANCHE : http://g1billet.localhost:33101
TICKET : http://g1billet.localhost:33101/?montant=10&style=ticket
ASTRO TW : http://g1billet.localhost:33101/?montant=0&style=astro24887@yopmail.com
G1PASS "avec dedicace" : http://g1billet.localhost:33101/?montant=0&style=astro24887@yopmail.com
```
Avec une adresse email, vous reliez un TW Multimedia à votre G1BILLET
Vous recevez les détails de sa fabrication dans votre boite email ;)
Indiquez une adresse email pour dédicacer votre G1PASS
## Pré-requis Installation
## Installation
Pour Linux le seul système d'opération qui respecte votre liberté
Ma recommandation: [Linux Mint](https://www.linuxmint.com/) ou [TwisterOS](https://twisteros.com/)
Pour Linux DEBIAN, Ubuntu, recommandé: [Linux Mint](https://www.linuxmint.com/)
```
# Installer git
sudo apt install git
```
# INSTALLATION (**Only Linux (systemd)**)
```
# Cloner le code de G1BILLET
mkdir -p $HOME/bin/
cd $HOME/bin/
git clone https://git.p2p.legal/qo-op/G1BILLET.git
cd G1BILLET
# INSTALL G1BILLET SERVICE : http://g1billet.localhost:33101"
mkdir -p ~/.zen/G1BILLET
if [[ ! -d ~/.zen/G1BILLET ]]; then
cd ~/.zen
git clone https://git.p2p.legal/qo-op/G1BILLET.git
cd G1BILLET && ./setup_systemd.sh
cd -
fi
```
Installation
```
./install.sh
./setup_systemd.sh
# TESTS
## g1billet service is running ?
```
sudo systemctl status g1billet
● g1billet.service - G1BILLET API
Loaded: loaded (/etc/systemd/system/g1billet.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2023-04-20 21:11:39 CEST; 46min ago
Main PID: 3250895 (G1BILLETS.sh)
Tasks: 3 (limit: 18381)
Memory: 9.4M
CGroup: /system.slice/g1billet.service
├─3250895 /bin/bash /home/fred/workspace/G1BILLET/G1BILLETS.sh daemon
├─3253436 /bin/bash /home/fred/workspace/G1BILLET/G1BILLETS.sh daemon
└─3253438 nc -l -p 33101 -q 1
```
Test Crypto
## Crypto is working ?
```
./keygen 'toto' 'toto'
EA7Dsw39ShZg4SpURsrgMaMqrweJPUFPYHwZA8e92e3D
```
Test Graphic
## Graphics are OK ?
```
## CHANGE VARIABLES TO TEST YOUR STYLE ;)
SALT=toto; PEPPER=toto;
SECRET=toto; MONTANT=___;
BILLETPUBKEY=EA7Dsw39ShZg4SpURsrgMaMqrweJPUFPYHwZA8e92e3D;
UNIQID=toto; STYLE=astro
UNIQID=toto; STYLE=xastro
ASTRONAUTENS=k51qzi5uqu5dl1zsbaala0bi26zpl5cfi7mogjwl9cg76d8awfc1d0iv738kak
EMAIL=toto@yopmail.com
BILLETNAME=$(echo $SALT | sed 's/ /_/g')
./MAKE_G1BILLET.sh "${SALT}" "${SECRET}" "${MONTANT}" "${BILLETPUBKEY}" "${UNIQID}" "${STYLE}" "${ASTRONAUTENS}" "${EMAIL}"
xdg-open tmp/g1billet/toto/toto.BILLET.jpg
xdg-open tmp/g1billet/$UNIQID/$BILLETNAME.BILLET.jpg
```
NB: Si une erreur du type "not autorized" apparait, vous devez autoriser la création de pdf en editant /etc/ImageMagick-6/policy.xml pour commenter la ligne:
```
<!-- <policy domain="coder" rights="none" pattern="PDF" /> -->
```
* NB: Si une erreur du type "not autorized" apparait,
vous devez autoriser la création de pdf en editant /etc/ImageMagick-6/policy.xml pour commenter la ligne.
log monitoring
ou lancer ce script :
```
tail -f tmp/G1BILLETS.log
echo "######### CORRECT IMAGEMAGICK PDF ############"
if [[ $(cat /etc/ImageMagick-6/policy.xml | grep PDF) ]]; then
cat /etc/ImageMagick-6/policy.xml | grep -Ev PDF > /tmp/policy.xml
sudo cp /tmp/policy.xml /etc/ImageMagick-6/policy.xml
fi
```
## Support
## LOG monitoring
```
tail -f ~/.zen/G1BILLET/tmp/G1BILLETS.log
```
# Support
En créant ces G1Billets, vous devenez tiers de confiance...
Réalisé et offert dans l'espoir que la(/les) monnaie(s) libre(s) deviennent réalité pour tous.
IMPORTANT!! Invitez celles et ceux à qui vous offrez ces G1 Billets à ouvrir un compte sur [GCHANGE](https://gchange.fr) et à proposer leurs services, objets et créations.
Le saviez-vous ?
Vous pouvez ouvrir un compte sur [GCHANGE](https://gchange.fr) avec les identifiants de votre G1BILLET/G1PASS.
Il s'agit également d'un portefeuille en vous inscrivant sur Cesium.
Merci pour vos encouragements et/ou vos dons
* [JUNE](https://demo.cesium.app/#/app/wot/DsEx1pS33vzYZg4MroyBV9hCw98j1gtHEhwiZ5tK7ech/Fred)
* [UNL](https://opencollective.com/monnaie-libre)
* [PAYPAL](https://www.paypal.com/paypalme/QWANTIC)
ATTENTION. N'utilisez pas ce compte pour devenir membre forgeron !
Ou bien créez un G1PASS de haute sécurité que vous n'utiliserez que sur Cesium dans ce cas précis.
Vous avez des questions? Contactez [notre support](mailto:support@qo-op.com)
Merci pour vos encouragements et vos dons en JUNE
* [Fred](https://demo.cesium.app/#/app/wot/DsEx1pS33vzYZg4MroyBV9hCw98j1gtHEhwiZ5tK7ech/Fred)
Ce code est une production du [G1FabLab / G1SMS](https://g1sms.fr)
Des questions? Contactez [notre support](mailto:support@qo-op.com)
---
[G1SMS](https://g1sms.fr)
# Vous avez bien 2€ à offrir...
[OpenCollective](https://opencollective.com/monnaie-libre)
Les logiciels libres ne sont pas payant, et malgré tous nos effot, nous n'arrivons toujours pas à les faire gratuitement (en UNL €)