This thread is to speak about be-BOP, our free libre opensource all-in-one monetization software solution.
More informations on our website: https://be-bop.io/
Exemple of be-BOP use:
A website, e-shop and POS manager for stands for a publishing company: https://pvh-editions.com/
Selling tickets for an event: pvh-editions[point]com/vernissage-nuit-nimraokhen
Crowdfunding campaign (finished): pvh-editions[point]com/crowdfunding-stach
Watchmakers United (website, physical shop in Geneva, nomad selling tool and e-shop): watchmakersunited[point]com
Kivéclair Donations in RDC: bebop.kiveclair[point]com
Conferences ticketing and website Le Paradigme Bitcoin: leparadigmebitcoin[point]ch
2 Likes
Ada
13 September 2024 12:20
2
Hi @Ludomire and welcome here!
Cool that you’re building such a FLOSS solution. Just to check if I understand well: do be-BOP intend to integrate TALER as a payment method?
Thank you!
//edit:
1 Like
Yes that’s a possibility. We already integrate other payment method and we plan to integrate more in the futur. TALER should be one.
1 Like
@Ada @how Pour la demande NLnet, j’aurais besoin de savoir pour quand vous avez besoin de be-BOP en instance. J’aimerais connaître votre calendrier sur votre propre projet.
Car là , nous allons partir sur une demande d’intégration de Taler à be-BOP pour le 1er octobre. Réponse pour la fin de l’année à priori, intégration en janvier-février.
Ensuite, si j’ai bien compris, les appels sont tous les 4 mois (1er février, 1er juin, 1er octobre ?), ça signifierait que le développement de be-BOP sous un format “Instance” ne pourrait être proposé que pour le 1er juin (difficile de réussir à entrer dans l’appel du 1er février), avec les trois mois pour la décision, ça signifierait un développement à la rentrée 2025.
Dans un tel cas, on aurait déjà un be-BOP Petites Singularités pour juin et l’instance pour octobre-novembre 2025 ?
Ca correspond Ă votre calendrier ?
Si c’est trop long, il faudrait que j’intègre directement le développement du be-BOP Instance dans la demande du 1er octobre 2024. Ca pourrait signifier : l’intégration de Taler pour février mars 2025, développement de l’instance pour mai-juin. Mais clairement, ça fait un gros gros morceau, une demande à 50’000 €.
Qu’en pensez-vous ?
1 Like
Ada
23 September 2024 11:13
5
Hello !
Toute la timeline du projet NGI TALER, dans laquelle s’insère notre Taler Bookseller pour Juin 2025, se trouve ici : NGI TALER Roadmap
Les Open Calls sont ouverts tous les 2 mois par contre, donc ça permet d’autres options !
1 Like
Très bien,
Dans ce cas, on pourrait partir sur une demande en deux étapes :
Intégration de Taler
Demande pour le 1er octobre, décision pour la fin de l’année.
Développement sur janvier et février 2025
On peut installer les premiers be-BOP X Taler autohébergés pendant le printemps.
Développement be-BOP multi-tenant
Demande pour le 1er avril, décision pour juin 2025
Développement pendant l’été 2025
Installation de la première instance be-BOP X Taler par Petites Singularités pendant l’automne.
2 Likes
Ada
23 September 2024 12:45
7
Ludomire:
Développement be-BOP multi-tenant
Demande pour le 1er avril, décision pour juin 2025
Développement pendant l’été 2025
Installation de la première instance be-BOP X Taler par Petites Singularités pendant l’automne.
Pourquoi pas envisager la demande pour le 1er février plutôt ? Faute de temps ?
Je ne comprends pas trop pourquoi on ne pourrait pas commencer à utiliser votre intégration pour vendre nos propres bouquins à ce moment-là du coup ? L’option multi-tenant pourrait toujours être utile ensuite pour ajouter d’autres éditaires si je comprends bien non ?
2 Likes
Parce qu’il n’est pas possible déposer une demande si la première n’a pas encore été accomplie à 100%, c’est dans les règles que j’ai épluchées. Et j’ai peur qu’avec une réponse fin d’année, on n’ait pas réussi à accomplir toutes les milestones avant le 1er février. Je prends donc une marge de sécurité pour ne pas avoir de mauvaise surprise.
Mais c’est clair que l’idéal serait de pourvoir enchaîner avec une demande le 1er février. Ca signifierait que l’instance pourrait être lancée pour juin.
Oui tout à fait. En réalité, Petites singularités peut déjà lancer son be-BOP dès à présent. C’est juste que l’intégration Taler ne sera développée que début 2025, je parlais juste des premières boutiques be-BOP avec le paiement Taler n’existeraient de fait qu’à partir de là . Mais évidemment l’adoption peut être préparée en avance et une simple mise à jour ajouterait Taler dans la liste des moyens de paiement.
2 Likes
Ada
23 September 2024 13:04
9
Ah oui ! Bien vu. On en discutera à notre prochaine réunion
1 Like
Sinon, ça pourrait tellement bien coller. Vous avez l’info en primeur (je prépare une annonce), mais il y aura autour du 8-10 juillet 2025 des “Assises” de l’art libre à Neuchâtel (Suisse). Je vais l’organiser sous l’égide de PVH éditions en collaboration avec le Neuchâtel International Fantastique Film Festival (https://nifff.ch/ ).
Avoir une instance pour onboarder des gens/projets à ce moment là , ce serait très fort. Sans compter l’impact médiatique !!!
2 Likes
Ada
23 September 2024 13:27
11
magnifique ! Tu pourras compter sur notre présence alors
2 Likes
how
24 September 2024 06:25
12
Carrément. Nous allons mettre en place be-BOP.io dès que possible et envisager une démo aux Assises de l’art libre en juillet 2025, c’est parfait comme calendrier.
J’ai mis en place une catégorie be-BOP avec le groupe qui va avec @i.be-bop . J’ai filé la description de la catégorie à @Tirodem pour qu’il la peaufine comme il préfère : attention à la première ligne, elle sert dans la liste des intégrations (TALER Integrations ), pour les descriptions de catégories, se référer aux autres…
Je bouge cette discussion dans be-BOP . Lorsque la catégorie sera prête nous pourrons la rendre publique.
1 Like
Après discussion avec @Tirodem , on essayer de faire une intégration finalisée sur le mois de janvier (on va se concentrer exclusivement là -dessus), comme ça on peut déposer une demande pour 1er février pour développer le be-BOP multi-tenant.
Dans ce cas, il sera possible d’avoir une instance be-BOP pour fin juin.
1 Like
how
24 September 2024 09:40
14
De toute manière nous allons mettre en place une VM pour be-BOP dans le courant d’octobre pour commencer à tester. D’ici la fin de l’année nous pourrons l’utiliser publiquement. Nous intégrerons vos développements au fur et à mesure.
2 Likes
how
4 October 2024 17:03
15
Salut @tirodem , @Ludomire m’a dit que tu avais un script d’installation qui pourrait me faciliter la tâche. Peux-tu me le passer par un moyen ou un autre ?
Comme il est en congé, je vais transmettre le script et les instructions que j’ai récupéré :
apt install openssh-server
apt install sudo -y
apt install net-tools -y
apt update
apt install curl -y
apt install wget -y
apt install dnf -y
apt install unzip -y
apt install bash -y
apt install ufw -y
apt install git-all -y
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash
apt install git-lfs -y
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh |bash
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s"${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
nvm install 20
nvm alias default 20
corepack enable
corepack use pnpm@8.3.1
npm install pm2 -g
apt-get update
apt-get install ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
rm -rf /var/www/html/*
apt autoremove --purge apache2*
apt autoremove -Y
apt install iptables-persistent -n
systemctl stop apache2
apt install nginx -y
rm /etc/nginx/sites-enabled/default
puis écrire ceci dans /etc/nginx/sites-available/node :
server {
server_name {website_url};
location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_pass "http://127.0.0.1:3000";
}
}
server {
server_name {minio_subdomain_or_url};
# Allow special characters in headers
ignore_invalid_headers off;
# Allow any size file to be uploaded.
# Set to a value such as 1000m; to restrict file size to a specific value
client_max_body_size 0;
# Disable buffering
proxy_buffering off;
proxy_request_buffering off;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_connect_timeout 300;
# Default is HTTP/1, keepalive is only enabled in HTTP/1.1
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_pass "http://127.0.0.1:9000";
}
}
une fois que le DNS est set pour le site et pour minio :
rm -rf /etc/nginx/sites-enabled/node
ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
systemctl restart nginx
ufw allow 22
ufw allow 80
ufw allow 443
ufw default deny incoming
ufw enable
wget https://github.com/ACINQ/phoenixd/releases/download/v0.1.4/phoenix-0.1.4-linux-x64.zip
unzip -j phoenix-0.1.4-linux-x64.zip
./phoenixd
#accepter les conditions d'util:isation puis couper
nano ~/.phoenix/seed.dat
#relever la seed qui sera Ă transmettre au client
nano ~/.phoenix/phoenix.conf
#relever le http password qui sera Ă utiliser dans l'UI admin be-BOP
pm2 save
pm2 startup
git clone https://github.com/B2Bitcoin/beBOP.git
cd beBOP
echo "S3_KEY_ID=$(openssl rand -base64 63 | tr -d '\n')" >> .env.local
echo "S3_KEY_SECRET=$(openssl rand -base64 63 | tr -d '\n')" >> .env.local
echo "ORIGIN={website_url}" >> .env.local
echo "PUBLIC_S3_ENDPOINT_URL={minio_subdomain_or_url}" >> .env.local*
echo "ADDRESS_HEADER=X-Forwarded-For" >> .env.local*
echo "XFF_DEPTH=1" >> .env.local*
apt install snapd -y
snap install core
snap install --classic certbot
ln -s /snap/bin/certbot /usr/bin/certbot
#on lance be-BOP puis certbot pour SSL
docker compose pull
docker compose --env-file .env.local up --build -d
certbot --nginx
#pour le site
certbot --nginx
#pour le S3 minio
systemctl restart nginx
une fois que c’est fait votre be-BOP est up avec docker compose, phoenixd up, un S3 local et un mongo local normalement
1 Like
Ca fait tout moche. Je te l’envoie par e-mail.
Ada
7 October 2024 20:45
18
Cool, merci pour ces instructions !
Ludomire:
Ca fait tout moche
Je me suis permise de mettre les balises de code dans ton message pour améliorer le rendu (pour info, tu peux accéder à ces balises en cliquant sur ce picto depuis l’éditeur de message :
2 Likes
how
7 October 2024 23:57
19
Merci pour le script ! Voici mes premières impressions pour @Tirodem quand il revient de vacances
Je pense que cela pourrait ĂŞtre une seule ligne :
apt update && apt install -y openssh-server sudo net-tools curl wget dnf unzip bash ufw git-all
Qu’Est-ce qui est requis dans la version 3.5.7 qui n’est pas disponible dans la version stable de Debian (v3.3.0) ?
Je pense que la nouvelle approche serait plutĂ´t :
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker.gpg
chmod 0644 $_
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker.gpg] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
tee /etc/apt/sources.list.d/docker.list > /dev/null
Cette commande me semble inutile : elle sert à s’assurer que le package Apache2 n’est pas installé afin de ne pas avoir de conflit sur les ports 80/443 avec nginx, mais sur un système nouveau il ne sera pas installé, tandis que sur un système existant elle peut détruire une installation web fonctionnelle.
Ici øn peut utiliser sed et tee pour écrire depuis le script… Je vais faire quelques tests et revenir avec un script complet.
Pourquoi utiliser snapd pour obtenir certbot, alors que le paquet existe dans Debian ?
PlutĂ´t :
apt install certbot python3-certbot-nginx
1 Like
Hello @how , merci pour les retours.
La réponse à certaines de tes remarques est simplement de l’approximation et du tâtonnage de ma part, d’autant plus que le script était initialement destiné à une distro debian sur une machine physique.
Néanmoins, quelques réponses précises ici et là :
j’ai tenté de forcer le clean d’apache car il est installé par défaut sur les VPS OVH et nous avons tendance à privilégier NGinx, du coup, pour certains de nos pilotes, j’ai ajouté cela pour faire un bon cleaning, car les debian 12 sur VPS OVH (on a benché l’offre Starter pour raisons de perf) ne sont pas tout à fait “distro from scratch” (idem chez d’autres providers)
tout à fait pour passer les commandes d’install en une ligne : pour l’instant, je suis un peu ancien électronicien bruteforce qui fait ligne par ligne pour cleaner son fichier de travail, mais on va pouvoir optimiser ça rapidement avec ta proposition
Je vais demander à Eliott pour l’histoire de la 3.5.7 sur git-lfs vs la v3.3.0 la semaine prochaine (on est un peu charette cette semaine)
pour l’install de docker-compose, c’est très récent (on a fini d’essuyer les plâtres sur un premier pilote MyNymBox puis OVH VPS Starter il y a une dizaine de jours) donc je vais tester ta version lors de l’installation du prochain, j’ai l’impression que sur chaque VPS, l’installation de docker-compose a nécessité un parcours différent (le apt-get install docker-compose-plugin a fonctionné… une fois, pas plus, à ma grande déception)
j’ai testé quelques commandes pour écrire le fichier /etc/nginx/sites-available/node, mais nous allons à terme créer un install manager, pour ça, pour l’instant, j’ai simplement proposé un template à c/c via nano ou autre ; je suis néanmoins preneur de toute suggestion
pour certbot, probable ignorance de ma part, j’ai suivi ce tuto : Certbot Instructions | Certbot , je n’ai donc pas osé autrement jusqu’ici. De plus, j’ai des très mauvais souvenirs de pip (c’est subjectif, hein), et comme notre app est principalement NodeJS, je n’avais pas trop envie d’introduire de dépendances python pour une simple brique pour générer les certificats SSL, snapd me paraissait plus pertinent du coup. J’y pensais également pour, à terme, en cas de version hardware type be-BOP Box, d’utiliser snapd pour installer des packages supplémentaires (type ddclient). Mais je rest ouvert à toute proposition, n’étant pas unix scripteur moi-même (je prototype, trial & error jusqu’à avoir des retours concrets pour voir avec notre lead dev, Eliott, avant d’industrialiser cela plus proprement, donc on vous a communiqué la version vraiment beta, voire alpha)
A dispo et merci pour les retours !
Tirodem
2 Likes