atelier multi outils

This commit is contained in:
fred 2023-08-15 23:01:47 +02:00
parent 5f7748c1ea
commit c6e668c548
6 changed files with 300 additions and 4 deletions

134
321_DU.md Normal file
View File

@ -0,0 +1,134 @@
# 3 2 1 DU
Comment utiliser le DU pour gérer et construire le commun?
*en cours de rédaction...*
# INTRO
L'aventure se déroule à la frontière entre l'ancien (UNL) et le nouveau monde (ML).
C'est un jeu de société qui s'adresse aux personnes qui possèdent un lieu et souhaitent l'ouvrir à une gestion aggradative démocratique.
Un lieu a pour fonction d'assurer gîte et couvert à ses visiteurs et résidents. Il acceuillera des ateliers de construction où seront transmis les savoir-faire.
# REGLES DU JEU
Il s'agit d'un jeu qui permet de réduire sa dépendance à l'UNL (Euro), il se base sur le réseau de confiance de la JUNE et active une dynamique de maintien et progrès.
Ici, "Le Lieu" possède un portefeuille et fait partie du jeu. Les paramètres du Jeu peuvent être adaptées selon la balance (UNL/ML) pour permettre à la partie de se dérouler.
Les règles du jeu sont Libres et "Open Source", elles décrivent la façon que nous avons mis en pratique lors du "Geconomicus Terraformation Forêt Jardin" il s'adaptera à un lieu collectif orienté vers l'autoconstruction, composé de 6 à 20 personnes. https://ipfs.asycn.io/ipfs/QmUtGpGeMZvwp47ftqebVmoFWCmvroy5wEtWsKvWvDWJpR/Foret%20Enchant%C3%A9e%20-%20PROJET%20ASTROPORT.pdf
### PARTICIPATION AUX FRAIS
Avant de démarrer le jeu, listez les frais de fonctionnement en UNL du Lieu. En fonction de la capacité d'accueil, définissez une estimation de la PAF / jour / pers.
Ce montant sert de balise. Il s'agira lors des cycles de réflexion du jeu de le réduire. Il définit les échanges à la frontière monétaire du Lieu.
En effet, un première règle du Lieu est qu'il n'existe aucun moyen de breveter ni faire valoir la propriété intellectuelle sur une idée, ou un processus la mettant en pratique (SOLUTIONS DIY ONLY).
https://www.levif.be/belgique/richard-stallman-la-propriete-intellectuelle-est-un-terme-de-propagande/
### PARTICIPANTS
Sur place, la Monnaie Libre est utilisée. Chaque joueur créé 1 DU par jour qui s'ajoute au jeu. On pourra selon la communauté souhaitant participer démarrer un nouveau DU ou accepter le DU d'autres monnaies libres (cf. TRM)
Afin de créer une dynamique entre le Lieu et ses visiteurs ou résidents, il est convenu que chaque participant doit verser dans une caisse propre au Lieu un certain nombre de DU.
#### NIVEAUX
Le barême du montant versé quotidiennement au Lieu par chaque participant est établi selon le "niveau" atteint par le joueur:
* Visiteur. 3 DU
* Acteur. 2 DU
* Batisseur. 1 DU
* Ordonateur. 0 DU
**Ordonateur** est le niveau du "Organisateur du Jeu", celui qui assure le bon respect des règles par les autres et/ou celui qui a ouvert sa propriété au Jeu.
**Batisseur** est le niveau atteint après avoir participé à un chantier participatif sur un des Lieux du Jeu et obtenu un Niveau de Confiance. Ces toiles de confiance seront normalisées et affinées au fur et à mesure du déroulement du Jeu.
**Acteur** désigne le niveau de base. Il s'appliquer à tous les individus qui participent à réaliser les Actions du Lieu.
**Visiteur** n'implique aucune participation aux actions, ni aux ateliers du Lieu, mais permet de profiter de l'accueil et des activités proposées sur place.
Les G1 échangées dans la blockchain permettent de dessiner de nouvelles toiles de confiances. En analysant les transactions portant certains commentaires à égalité comptable (jugement & aquitement).
Par exemple : https://forum.duniter.org/t/il-manque-une-tdc-a-notre-tdc/10500/22?u=frederic_renault (principe à fixer et normaliser)
## INITIALISATION
Pour commencer une partie.
Chaque joeur ajoute 30 DU répartis sur 10 jetons (max 12 DU, min 1 DU, moy 3 DU) dans une "**boite à gratitude**" dans laquelle ceux qui réalisent une action vont pouvoir piocher...
NB: Le montant ajouté par chacun correspond à "10 jours de tourisme", on pourra modifier les chiffres en conséquence du montant choisi pour ce niveau.
### ACTIONS
L'organisateur et les participants établissent la liste des actions à réaliser pour maintenir le lieu en bon état. ex: Ménage, vaisselle, ramassage de bois, collecte, rangement, etc...
Faire figurer la liste sur un tableau afin que tous puissent la voir (et éventuellement la modifier)
Le fait de réaliser une action fait passer le joeur du niveau Touriste au niveau "Coopérateur" et lui permet de tirer une "gratitude" (cf. G1Ronds ```/ipns/k51qzi5uqu5dmdjma9ew6vqrbqp3hrzh3aen1c37ahq4tm9tt738cpd19r86e4```).
A ce niveau, chaque joueur gagne en moyenne 1 DU par jour. On peut réaliser plusieurs actions par jour et les suivantes rapportent 3 DU en moyenne ;)
#### LIMITE
Afin de ne pas laisser se vider la boite à gratitude, on limite le nombre de DU que chacun peut gagner en réalisant des Actions à 12 DU. Une fois ce montant atteint, le joueur devra investir ses DU sur-numéraires dans les CrowdFunding du Lieu.
### VOEUX
Chaque joueur du niveau Acteur peut émettre un Voeu, et proposer un atelier pour ajouter une amélioration au Lieu.
ex: chambre en plus, nouvelles toilettes, système de chauffage, garage, etc ...
Les Voeux sont établis entre le Lieu et le Joeur et apparaissent dans le Jeu.
Chaque participant pourra verser ML ou UNL aux Voeux qu'il souhaite voir se réaliser.
#### VOTE QUADRATIQUE
Chaque joueur peut (doit) verser 1 DU / jour à au moins un Voeu qu'il souhaite se voir réaliser... Le Lieu publie la liste de ses "Voeux" qui voit monter leur financement avec le temps.
Lorsque qu'un joueur verse plusieurs DU à un Voeu, seule la racine carré du montant y est attribué. La différence est répartie à l'ensemble des autres voeux en fonction de leur niveau de DU respectivement atteint.
Exemple : https://www.wtfisqf.com/
https://ipfs.copylaradio.com/ipns/k51qzi5uqu5dgobi9ozzzvdftqfd3hd7a1488nzymky1edz8j779jov7sbemc0#Discussion%20avec%20ChatGPT%20au%20sujet%20de%20la%20G1%20et%20du%20vote%20quadratique
### CHANTIERS COLLECTIFS
https://forum.monnaie-libre.fr/t/les-explorateurs-du-libre-rencontre-et-partage-des-constructeurs-du-monde-libre/24040?u=qoop
Le Lieu possède un "Agenda". A certaines période il acceuille l'organisation d'ateliers pour réaliser certains des Voeux dont le niveau de crowdfunding motive la réalisation.
A chaque réalisation d'un Voeu (chantier collectif), les G1 de la cagnote sont distribuées aux participants.
On pensera à ajouter en commentaire des transactions :MIZ:NomDuVoeu:OK nous pourrons nous servir de ces informations pour construire des toiles de confiance qualitatives.
**Le Jeu établit une gestion démocratique de prise de décision collective.**
# Annexe
## Calcul du forfait "inter opérateur monétaire"
Le Lieu produit des valeurs qui sont mise à disposition selon 3 forfaits.
Le PAF correspond au prix pratiqué en UNL sur le marché UNL. Le PIF est le nombre de DU souhaité par unité.
Voici comment sont calculé les "Forfaits" :
* Le Forfait Cool : payer le PAF, et recevoir le PIF
* Le Forfait Juste : payer le 1/2 PAF + le PIF
* Le Forfait Carré : payer le 1/4 PAF + le PIF²
CALCULATEUR DE FORFAIT (PIF "ML" / PAF "UNL")
http://ipfs.asycn.io/ipfs/QmRm1NXy5DZS8ftxeTjHrWgFGuMzouzTJrjEHE4uuUbPX2
> Pour plus d'info, et si vous souhaitez lancer le Jeu chez vous, contactez support@qo-op.com

77
ASTROBOT/N1Monit.sh Executable file
View File

@ -0,0 +1,77 @@
#!/bin/bash
########################################################################
# Version: 0.5
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
########################################################################
# PAD COCODING : https://pad.p2p.legal/s/G1Monit
# KODI SERVICE : Publish and Merge Friends Monit Movies into RSS Stream
########################################################################
########################################################################
MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
ME="${0##*/}"
. "${MY_PATH}/../tools/my.sh"
echo "$ME RUNNING"
########################################################################
## SCAN FOR PAYMENT HISTORY
## BUILD python NetworkX script
## SEND MESSAGE TO SOURCEG1PUB
########################################################################
## THIS SCRIPT IS RUN WHEN A WALLET RECEIVED A TRANSACTION WITH COMMENT STARTING WITH N1Monit
########################################################################
INDEX="$1"
[[ ! ${INDEX} ]] && INDEX="$HOME/.zen/game/players/.current/ipfs/moa/index.html"
[[ ! -s ${INDEX} ]] && echo "ERROR - Please provide path to source TW index.html" && exit 1
[[ ! -s ${INDEX} ]] && echo "ERROR - Fichier TW absent. ${INDEX}" && exit 1
PLAYER="$2"
[[ ! ${PLAYER} ]] && PLAYER="$(cat ~/.zen/game/players/.current/.player 2>/dev/null)"
[[ ! ${PLAYER} ]] && echo "ERROR - Please provide PLAYER" && exit 1
ASTRONAUTENS=$(ipfs key list -l | grep -w ${PLAYER} | cut -d ' ' -f1)
[[ ! ${ASTRONAUTENS} ]] && echo "ERROR - Clef IPNS ${PLAYER} introuvable!" && exit 1
G1PUB=$(cat ~/.zen/game/players/${PLAYER}/.g1pub)
[[ ! $G1PUB ]] && echo "ERROR - G1PUB ${PLAYER} VIDE" && exit 1
# Extract tag=tube from TW
MOATS="$3"
[[ ! ${MOATS} ]] && MOATS=$(date -u +"%Y%m%d%H%M%S%4N")
IPUBKEY="$4"
[[ ! ${IPUBKEY} ]] && echo "ERROR - MISSING COMMAND ISSUER !" && exit 1
TH="$5"
[[ ! ${TH} ]] && echo "ERROR - MISSING COMMAND TITLE HASH ADDRESS !" && exit 1
echo "${PLAYER} : ${IPUBKEY} SEEKING FOR ${TH}
${ASTRONAUTENS} ${G1PUB} "
#~ ###################################################################
#~ ## CREATE APP NODE PLAYER PUBLICATION DIRECTORY
#~ ###################################################################
mkdir -p $HOME/.zen/tmp/${MOATS} && echo $HOME/.zen/tmp/${MOATS}
## EXERCICE ### TODO ###
## USE https://networkx.org/documentation/stable/tutorial.html#
## EXTRACT HISTORY WITH jaklis
## CREATE A PYTHON SCRIPT CREATING the 1st level of TX
echo "import networkx as nx
import matplotlib.pyplot as plt
G = nx.Graph()
...
G.add_node(SRCPUB)
G.add_node(DSTPUB)
G.edges[SRCPUB, DSTPUB]['g1'] = AMOUNT
...
nx.draw(G, with_labels=True, font_weight='bold')
plt.show()
"
## EXTEND N1Script WITH MORE FUNCTIONS... exemples ...
## N1Vote: permet de pratiquer le Vote Quadratique
## N1Conf: permet de signifier la Confiance
## ...
exit 0

View File

@ -0,0 +1,52 @@
version: '3.6'
services:
duniter:
environment:
#- DEBUG_ENTRYPOINT=${DUNITER_DEBUG_ENTRYPOINT:-${DEBUG_ENTRYPOINT:-${DEBUG:-}}}
- DUNITER_AUTO_SYNC=true
- DUNITER_SYNC_HOST=${DUNITER_SYNC_HOST:-duniter.g1.1000i100.fr:443}
- DUNITER_BMA_ENABLED=true
- DUNITER_BMA_IP4=${DUNITER_BMA_IP4:-0.0.0.0}
- DUNITER_BMA_REMOTE_HOST=${DUNITER_BMA_REMOTE_HOST:-duniter.localhost}
- DUNITER_BMA_REMOTE_PORT=${DUNITER_BMA_REMOTE:-443}
- DUNITER_GVA_ENABLED=true
- DUNITER_GVA_PATH=gva
- DUNITER_GVA_PORT=30901
- DUNITER_GVA_REMOTE_PATH=gva
- DUNITER_GVA_REMOTE_PORT=443
- DUNITER_GVA_REMOTE_HOST=${DUNITER_GVA_REMOTE_HOST:-duniter.localhost}
- DUNITER_GVA_SUBSCRIPTIONS_PATH=gva-sub
- DUNITER_GVA_WHITELIST=${DUNITER_GVA_WHITELIST:-127.0.0.1,::1}
- DUNITER_START_OPTS=${DUNITER_START_OPTS:-direct_webstart}
- DUNITER_SYNC_OPTS=${DUNITER_SYNC_OPTS:-}
- DUNITER_WS2P_HOST=${DUNITER_WS2P_HOST:-0.0.0.0}
- DUNITER_WS2P_PORT=${DUNITER_W2SP_PORT:-20901}
- DUNITER_WS2P_PUBLIC=${DUNITER_W2SP_PUBLIC:-true}
- DUNITER_WS2P_REMOTE_HOST=${DUNITER_WS2P_REMOTE_HOST:-duniter.localhost}
- DUNITER_WS2P_REMOTE_PATH=${DUNITER_WS2P_REMOTE_PATH:-ws2p}
- DUNITER_WS2P_REMOTE_PORT=${DUNITER_WS2P_REMOTE_PORT:-443}
- DUNITER_POW_CPU=0.5
- DUNITER_POW_NBCORES=1
image: pinidh/duniter:dev
networks:
- private
ports:
- 0.0.0.0:10901:10901
- 0.0.0.0:20901:20901
- 0.0.0.0:30901:30901
- 0.0.0.0:9220:9220
restart: unless-stopped
volumes:
- data:/var/lib/duniter
- etc:/etc/duniter
networks:
private:
name: ${DOCKER_NETWORK_PRIVATE:-duniter}
public:
name: ${DOCKER_NETWORK_PUBLIC:-host}
volumes:
data:
etc:

File diff suppressed because one or more lines are too long

View File

@ -102,7 +102,7 @@ fi
################################################################################
TWMODEL="/ipfs/bafybeihcc7nwz4e3ewphqasghrsktxuwouba5kidb5rmfhjexuauymbzjq"
TWMODEL="/ipfs/bafybeiadeyzme4pl7zm52mldlpgf5azjsnq4gg6aufjtgnkngvsqf3yexy"
# ipfs cat $TWMODEL > templates/twdefault.html
##################################################### # NEW PLAYER ###############
################################################################################

View File

@ -0,0 +1,33 @@
#!#/bin/bash
CESIUM="https://g1.data.le-sou.org"
[[ $1 == "" ]] \
&& ( echo "Entrez PubKey"; read DESTRIB ) \
|| DESTRIB="$1"
curl -sk ${CESIUM}/user/profile/${DESTRIB} -o /tmp/profile.json
LON=$(cat /tmp/profile.json | jq '._source.geoPoint.lon')
LAT=$(cat /tmp/profile.json | jq '._source.geoPoint.lat')
if [[ "$LON" != "null" ]]; then
curl -sk -XPOST 'https://data.gchange.fr/market/record/_search?pretty&_source=title' -d '
{
"size": 100,
"query": {
"bool": {
"filter": [{
"geo_distance": {
"distance": "100km",
"geoPoint": {
"lat": '$LAT',
"lon": '$LON'
}
}
}]
}
}
}' | jq
else
echo "Aucune coordonnées geoPoint pour $DESTRIB"
fi