BlogoGeek

Mon blog fourre-tout de geekeries, tuto, script, culture, ...

Aucun commentaire

Wormhole est un programme qui permet d'envoyer des fichiers en peer-to-peer (P2P) facilement en ligne de commande.
Magick Wormhole sur GitHub

Installer

sudo apt install magic-wormhole

Envoyer un fichier

wormhole send NOM_DE_FICHIER

Noter le code du type "0-mot1-mot2"

Recevoir le fichier

wormhole receive 0-mot1-mot2

Version android (DL APK)
Dans la configuration :

- RendezVous : par défaut
- Transit : tcp://magic-wormhole-transit.debian.net:4001

Intégration à l'explorateur de fichier Nautilus sur Ubuntu
wormhole-send.sh on GitHub

ln -s wormhole-send.sh ~/.local/share/nautilus/scripts/'Wormhole Send'
nautilus -q

Wormhole Integration to Nautilus file explorer

Aucun commentaire

Article copié/collé depuis sebsauvage, lui même inspiré de Maniac Geek.

En tant que développeur et joueur depuis longtemps (30 ans, hein, quand même), j'ai un problème: Je finis par "voir" ou "ressentir" les mécanismes, la logique de fonctionnement des jeux à force d'y jouer (Et je ne suis probablement pas le seul). J'arrive à imaginer les algos utilisés, je traque instinctivement les glitchs d'affichage ou la cassure visible des polygones sur un objet pas assez tesselated, imagine les algos utilisés pour la génération procédurale et l'IA des ennemis ou devine le découpage des hitbox. Quand je regarde une vidéo, mon cerveau cherche instinctivement les artefacts de compression. C'est plus fort que moi.

Et du coup, à imaginer le travail des développeurs pour traiter tel ou tel point précis, ça casse un peu la magie. C'est ma malédiction.

C'est en partie ce qui fait que je joue moins à Minecraft qu'avant. J'y ai tellement joué et "ressenti" le jeu que la magie des premières explorations est éventée: Les algos - ou du moins leurs résultats - me sont devenus trop visibles. Je me suis même surpris à explorer des réseaux de caverne rien que pour essayer de trouver des formes atypiques, différentes de ce que le générateur procédural produit habituellement. J'en suis à explorer les extrêmes la courbe gaussienne. Doh ! Fichu cerveau.

Oh je ne dis pas: J'apprécie les graphismes d'un nouveau jeu, l'originalité de son gameplay et sa profondeur (ou son absence, le plus souvent). Ça peut passer agréablement le temps. Mais l'illusion ne dure jamais.

Aucun commentaire

Via stevenbenner.com (18 juillet, 2010 )

Je me reconnais complètement dans les types 1, 2 et 5 !
Et un peu dans les 2 autres aussi ^^

The duct tape programmer

The code may not be pretty, but dammit, it works!


This guy is the foundation of your company. When something goes wrong he will fix it fast and in a way that won’t break again. Of course he doesn’t care about how it looks, ease of use, or any of those other trivial concerns, but he will make it happen, without a bunch of talk or time-wasting nonsense. The best way to use this person is to point at a problem and walk away.

The OCD perfectionist programmer

You want to do what to my code?


This guy doesn’t care about your deadlines or budgets, those are insignificant when compared to the art form that is programming. When you do finally receive the finished product you will have no option but submit to the stunning glory and radiant beauty of perfectly formatted, no, perfectly beautiful code, that is so efficient that anything you would want to do to it would do nothing but defame a masterpiece. He is the only one qualified to work on his code.

The anti-programming programmer

I’m a programmer, dammit. I don’t write code.


His world has one simple truth; writing code is bad. If you have to write something then you’re doing it wrong. Someone else has already done the work so just use their code. He will tell you how much faster this development practice is, even though he takes as long or longer than the other programmers. But when you get the project it will only be 20 lines of actual code and will be very easy to read. It may not be very fast, efficient, or forward-compatible, but it will be done with the least effort required.

The half-assed programmer

What do you want? It works doesn’t it?


The guy who couldn’t care less about quality, that’s someone else’s job. He accomplishes the tasks that he’s asked to do, quickly. You may not like his work, the other programmers hate it, but management and the clients love it. As much pain as he will cause you in the future, he is single-handedly keeping your deadlines so you can’t scoff at it (no matter how much you want to).

The theoretical programmer

Well, that’s a possibility, but in practice this might be a better alternative.


This guy is more interested the options than what should be done. He will spend 80% of his time staring blankly at his computer thinking up ways to accomplish a task, 15% of his time complaining about unreasonable deadlines, 4% of his time refining the options, and 1% of his time writing code. When you receive the final work it will always be accompanied by the phrase “if I had more time I could have done this the right way”.

Aucun commentaire

Lu chez Sebsauvage

Personne ne veut du cloud OneDrive de Microsoft. Alors pour forcer la main des utilisateurs, la suite Office - même si elle tourne en local - enregistrera par défaut les fichiers sur OneDrive.
(Ce qui permettra aussi à Microsoft de collecter encore plus d'informations sur vous.)
Je ne sais pas si les gens réalisent bien que désormais, tout ce qui est fait dans Microsoft Office de par le monde va atterrir automatiquement sur des serveurs américains.
PS: Je viens de lire ailleurs que c'est même pire que ça : Les données de récupération des documents en cours de travail sont automatiquement sauvegardées dans OneDrive.
Ce qui veut dire que Microsoft reçoit des copies de vos documents avant même que vous ayez fait le premier CTRL+S pour les sauvegarder.
(Et pendant ce temps là, la CNIL : ????????)

Lu chez Matronix
Source : Microsoft vous observe en jeu pour entraîner Copilot sur Windows : voici comment l’empêcher

La dernière mise à jour de W11, qui envoie simplement chez Microsoft votre écran. Et activé par défaut. Également votre micro.
Bazzite va être installé chez moi plus rapidement qu’escompté.
J’ai viré Microsoft et Windows de mon monde pro depuis bien longtemps, mais le PC de jeux va rejoindre le mouvement. Je ne peux plus blairer Windows.

La même !

Aucun commentaire

Les palindromes de taille finie, s'entend.
Car il est impossible d'en détecter de taille arbitraire, les regex étant des automates à état fini.

\b(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*(?:(\w)[ \t,'"]*\11?[ \t,'"]*\10|\10?)[ \t,'"]*\9|\9?)[ \t,'"]*\8|\8?)[ \t,'"]*\7|\7?)[ \t,'"]*\6|\6?)[ \t,'"]*\5|\5?)[ \t,'"]*\4|\4?)[ \t,'"]*\3|\3?)[ \t,'"]*\2|\2?))?[ \t,'"]*\1\b

Jusqu'à 22 caractères de long.

Magistralement expliquée ici.

Aucun commentaire

1) Créer une paire de clé SSH privée/publique

2) Convertir les clés pour Putty avec PuttyGen
- Load la clé privée
- Save public key
- Save private key

3) Indiquer la clé .ppk dans Putty :
Connection > SSH > Auth
Browse Private key file for authentication

Ne PAS indiquer d'Auto-login username dans Connection > Data, il sera configuré dans SuperPutty

Sauvegarder la session

4) Créer une session dans SuperPutty en spécifiant la session créée dans Putty au point 3) dans PuTTY Session Profile
Inidiquer le username dans Login Username

5) Pour ne pas avoir à entrer la passphrase à chaque connection mais seulement une fois par jour : Stocker la passphrase avec Pageant (source)

Bonus) Couleur à jour : Connection > Data > Terminal-type string : xterm-256color

Aucun commentaire

Je viens de me demander à l'instant, pendant l'update de mes 2 seuls applications installées via Snap sur mon Ubuntu, pourquoi je déteste snap et tente à tout prix d'éviter d'installer quoi que ce soit via cette méthode.
J'ai donc googlé ma question pour savoir si d'autres se la posaient et la 1ère réponse, sur reddit, a confirmé tout le bien que je pensais de ce packager :

The snap back end (snap store) is still proprietary and only controlled by Canonical/Ubuntu.
Canonical has also been forcing snaps instead of regular apt packages on Ubuntu, which is incredibly annoying as snaps have a larger footprint and run slower.

EDIT: Developers keep packaging their apps as snaps because Ubuntu is by far the most popular distro out there.
Their life gets easier if they follow the Ubuntu standards.
Flatpak isn't as popular merely because the distros that enforce it aren't as popular as Ubuntu.

Désinstaller les packages snap
Commencez par listez les packages installé avec

snap list

Supprimez ceux que vous voulez

snap remove --purge PACKAGE

Et si ils font des snapshots :

snap saved
snap forget PACKAGE

Conclusion
Snap : ça pue !


Sources
https://www.reddit.com/r/linux/comments/j3ajnf/whats_wrong_with_snaps_why_so_many_people_hate_it/
https://askubuntu.com/questions/1283423/is-it-safe-to-delete-var-lib-snapd-snapshots

Aucun commentaire

Saloperie de Windows 10 de caque !!!
Qu'est-ce que tu m'installe ça de ton plein gré, déjà ? Alors que j'ai désactivé toutes les MAJ ??
Et pourquoi je ne peux pas le supprimer/désactiver facilement, en pressant Delete ou Uninstall ??

Bref, trêve de ronchonages et supprimons cette merde.

Copiez ce bout de code dans un fichier texte que vous renommerez en QQCH.reg

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{2cc5ca98-6485-489a-920e-b3e88a6ccce3}"=dword:00000001

ou téléchargez directement le fichier ici et executez-le : remove_learn-about-this-picture_win10.reg
Puis redémarrez votre ordinateur.

Attention, chez moi ça a réinitialisé tous les icônes sur le bureau.

Tâchez de sauvegarder leur position si cela vous importe.
Je vous recommande l'exellent logiciel Display Fusion qui propose tout un tas de fonctionnalités super cool, comme justement sauvegarder vos icones dans différents profils (si vous connectez/déconnectez régulièrement un écran par ex), gère les fonds d'écrans multiple, garde un historique de votre presse-papier et propose de redéfinir tout un tas de raccourcis Windows.


Sources
https://www.elevenforum.com/t/add-or-remove-learn-more-about-this-picture-desktop-icon-in-windows-11.7137/

Aucun commentaire

Forum Elbakin

https://www.youtube.com/watch?v=e9qMSthj440&t=1995s
https://www.youtube.com/watch?v=fejb__79G78&t=358s
http://climaginaire.joueb.com/news/damasio-alain
https://www.actusf.com/detail-d-un-article/Interview-2015-Alain-Damasio-pour

Mon analyse viteuf
Ayant lu 2x la Horde j'avais déjà idée que Damasio était hors normes mais j'étais loin du compte.
J'ai dévoré l'analyse avec autant d'ardeur (d'hordeur ?) que le livre qu'il étudie, c'était passionnant !

Je m'intéresse à de nombreux sujets variés mais je suis une bille en philosophie. Je connais de noms les auteurs cité dans l'analyse, ainsi que certains de leur titres majeurs, mais ça s'arrête là.
Le concept du chameau du lion et de l'enfant m'était passé au dessus comme un noob par exemple, et je ne savais pas que le Retour Nietzschéen avait un nom, même si j'avais identifié ce dernier.

J'ai été époustouflé par tous les sujets que touche Damasio et la maestria avec laquelle il a tissé tout ça. Effarant !
Très bon travail d'analyse, de synthèse mais surtout d’exhaustivité dans les exemples qui illustrent les différents concepts. Ça a du être un sacré taf de lecture, relecture et re-re-re-lecture.
(L'auteur confirme : 4 ans de boulot et 18 versions pour arriver au résultat final)

SPOILERS POTENTIEL sur la fin de l'analyse :
Oh ! Et à la toute fin, l'idée que l'Hordre envoie les hordes faire le tour du monde dans le but de sélectionner les sur-hommes m'a complètement retourné le cerveau !

Aucun commentaire

Encore une petite fonction à ajouter au .bashrc

backup()
{
    file="$1"

    if [ ! -f "$file" ]; then
        echo "Erreur: Le fichier $file n'existe pas"
    else
        if [[ "$2" == "-d" || "$2" == "--date" ]]; then
            backup="$file.bkp-$(date +"%Y.%m.%d-%H-%M-%S")"
        else
            backup="$file.bkp"
        fi
        
        echo -e "Backing up $file to $backup"
        cp --archive "$file" "$backup"
    fi
}

Utilisation :

backup fichier # Duplique le fichier avec l'extension ".bkp"
backup fichier -d # Ajoute la date dans le nom du backup
backup fichier --date # idem

Aucun commentaire

Une nouvelle petite fonction pratique à ajouter à votre trousseau virtuel (dans votre .bashrc par exemple)

Regardons la tailles du dossier

ls -alh
total 10.7M
-rwxr-xr-x  1 user user 4.0M May 31 17:10 IMG1.jpg
-rwxr-xr-x  1 user user 2.7M May 31 17:10 IMG2.jpg
-rwxr-xr-x  1 user user 4.0M May 31 17:10 IMG3.jpg

Copiez ce bout de code dans le bashrc

vi ~/.bashrc
resizePictures()
{
    path=${1:-.}
    size=${2:-800x600}
    
    echo -e "Images found in \"$path\" : " $(ls -1 $path/*.jpg $path/*.png $path/*.jpeg 2>/dev/null | wc -l)
    for img in $path/*.{jpg,jpeg,png}; do convert "$img" -resize $size "$img"; done
    
    nautilus $path &
}

N'oubliez pas de le sourcer puis testez la fonction

source ~/.bashrc
resizePictures . 50x50
ls -alh
total 750k
-rwxr-xr-x  1 user user 262K May 31 17:12 IMG1.jpg
-rwxr-xr-x  1 user user 262K May 31 17:12 IMG2.jpg
-rwxr-xr-x  1 user user 262K May 31 17:12 IMG3.jpg

ImageMagick
Pour installer convert, qui fait partie du package ImageMagick, vous pouvez utiliser la commande suivante avec apt :

sudo apt update
sudo apt install imagemagick

Si vous préférez utiliser GraphicsMagick (qui fournit aussi la commande gm convert), utilisez la commande suivante :

sudo apt install graphicsmagick

Aucun commentaire

La commande SSH permet de se connecter à un serveur distant via internet.
SSHRC s'installe comme un wrapper et va copier des fichiers de config à la volée de votre machine locale (où vous exécutez la commande ssh ou sshrc) et le serveur.

Plus précisément, elle va copier le contenu du dossier ~/.sshrc.d de votre machine locale vers le serveur dans /tmp/.VOTRE_NOM_QQCH
Créez donc sur votre machine locale des liens symboliques vers votre .bashrc et autres fichier à synchroniser dans ce dossier, moi j'ai ajouté une config pour docker.
.sshrc.d/

  • .bashrc
  • .docker-config.json

ln -s ~/.bashrc ~/.sshrc.d/.bashrc
ln -s ~/.docker/config.json ~/.sshrc.d/docker-config.json

Une fois connecté à votre serveur le fichier .sshrc sera executé.
On va donc sourcer les fichiers de config et effectuer quelque manip' de sécurité

.sshrc

# Your local .bashrc file has been sent to the server in "/tmp/.$USER.$SOMETHING"
# So we source it from there.
source /tmp/.$USER.sshrc.*/.sshrc.d/.bashrc && \
echo -e "Your custom .bashrc file has been sourced from \"$(echo /tmp/.$USER.sshrc.*/.sshrc.d/.bashrc)\""

# Create a standard home docker config folder
# and copy the config file in it
mkdir -p /home/$USER/.docker/ && \
    cp /tmp/.$USER.sshrc.*/.sshrc.d/docker-config.json /home/$USER/.docker/config.json && \
    echo -e "Your custom docker config file has been copied into \"/home/$USER/.docker/config.json\""

# Show some security reports
echo -e "\n${SUPERRED}***********************************${NC}"
echo -e "${SUPERRED}*${NC} ${RED}    /!\ SECURITY REPORT /!\    ${NC} ${SUPERRED}*${NC}"
echo -e "${SUPERRED}***********************************${NC}\n"

echo -e "\n * LASTLOG : lastlog -b 1 | grep -iv never"
lastlog -b 1 | grep -iv never

echo -e "\n\n * LAST : last -aiF | grep -v $USER"
echo -e "if strange user, run : sudo lastb -adF SUSPICIOUS_USER"
last -aiF | grep -v $USER

echo -e "\n\n * JOURNALCTL : sudo journalctl _SYSTEMD_UNIT=sshd.service | grep error"

i

Bonus : Enjoliver les réponses de Docker

vi /home/$USER/.docker/config.json
{
  "psFormat": "table {{.Names}}\\t{{.Status}}\\t{{.Image}}\t{{.Size}}"
}

i

Aucun commentaire

Voici quelques astuces pour bloquer la majorités des pubs affichables sur smartphone Android sans sacrifier trop de fonctionnalités.

Désactiver le Wi-Fi
Pour les applications où jeux hors-ligne, désactiver le Wi-Fi et la 3G suffit à vous affranchir de toute publicité.
Il est par exemple possible d'utiliser l'excellent RecetteTek en mode offline et profiter de 95% de l'application comme ça. Vous ne devrez ré-activer le Wi-Fi que si vous souhaitez importer une recette depuis le net.

DNS bloqueur de pub
Il est possible de faire sauter cette dernière restriction en utilisant un DNS bloqueur de pub.
Pour cela allez dans les paramètres de votre téléphone, rechercher DNS et sélectionnez DNS privé ou Private DNS dans la catégorie Connection.
Sélectionnez Designated private DNS et entrez

dns.adguard.com

.
Cela vous permettra de lancer les jeux et les applications avec le Wi-Fi activé et de tout de même filtrer les pubs.
Attention, certaines appli mal codées peuvent planter si elle n'arrivent pas à charger la pub.
Et pour les même raison, si vous demander à un jeu d'afficher une pub (pour gagner de l'or par exemple) cela ne va pas fonctionner.



Adblock ou Broswer anti-pub
Utilisez un navigateur bloqueur de pub comme Brave ou installer les plugins "Adblock Plus" et "uBlock Origin" sur votre navigateur, pour autant qu'il soit compatible.

2 commentaires

Installer le serveur Valheim (headless)

Installez SteamCMD

Ouvrez une invite de commande et lancez steamcmd.exe
puis exécutez les commandes suivantes (adaptez le chemin du dossier d'installation) :

force_install_dir C:\valheim_server
login anonymous
app_update 896660 validate
exit

Modifiez C:\valheim_server\start_headless_server.bat

valheim_server -nographics -batchmode -port 2456 -name "Nom de votre Monde" -world "nom-du-fichier-de-sauvegarde" -password "UN BON PASSWORD" -public 0 -preset normal

Lancez le bat :

exec C:\valheim_server\start_headless_server.bat

Source
https://blog.maxds.fr/creer-et-automatiser-un-serveur-steam-cmd/
https://www.rockpapershotgun.com/valheim-how-to-set-up-a-dedicated-server#:~:text=To%20join%20a%20Valheim%20dedicated,Port%2C%20separated%20by%20a%20colon.
Fichier PDF dans C:\valheim_server\Valheim Dedicated Server Manual.pdf

Installer des mods

Commencer par installer BepInEx à la racine du serveur, c'est le gestionnaire de mods.
Puis dézipper les mods dans BepInEx ou BepInEx\plugins (dépend du mod)

Liens
https://github.com/BepInEx/BepInEx.ConfigurationManager/releases/tag/v16.1
https://www.nexusmods.com/valheim/mods/2323?tab=files
https://www.nexusmods.com/valheim/mods/104?tab=files
https://valheim.thunderstore.io/package/QoLTeam/QualityOfLife/

Aucun commentaire

Une promo Migros propose le robot tondeuse Sileno city 600 m² à 600.- au lieu de 1'000.-

Recherches de reviews rapides (environ 8) : notes allant de 3.5 à 4.5 / 5

Un seul résultat sur TopPreise. Un vendeur mal noté le vend à 874.-

Google propose quelques site suisse qui le vendent de 600.- à 1'000.-

Le test avec la moins bonne note donne déjà envie.

At $800, it’s the most affordable model we’ve tested and it did a great job of keeping my lawn looking well manicured in testing.

PROS

  • Reasonably priced
  • Good cutting performance
  • Quiet operation

CONS

  • Lacks GPS and Wi-Fi
  • No remote steering

Un 2ème test positif.

If you always want to keep your garden tidy and well-maintained and are looking for a smart as well as reliable robotic mower, the Gardena Sileno City 600 is the right choice. The robotic mower reliably trims the grass short and offers numerous practical features to program different schedules or areas. In addition, the robot mows impressed me as it worked in a very quiet manner, and was practically inaudible from a distance of 20 meters.

However, when it comes to challenging terrain and obstacles, the robotic mower then has a tendency of getting stuck. It is also too possible to run over small stones or damage other items that are left lying around. It would have been nice if the Gardena Sileno City had an optical obstacle detection system in addition to a more accurate GPS and compass.

EDIT
On l'a acheté Yapluka l'installer.

Aucun commentaire

Voici un petit script (enfin, un cron) qui permet de sauvegarder automatiquement vos bases de données (légères !) dans leur repository github associé.
Le scénario est le suivant : vous avez 3 sites différents dans /var/www/html : site-1, site-2 et site-3
Ils ont chacun leur repo git associé.
Nous allons créer un dossier backup dans chaque repo et créer une tâche récurente (crontab) qui va sauvegarder les bases de données dans le repo, de la manière suivante .

  • Créer un dump de la base du site-1 dans le dossier backup correspondant.
  • Appliquer les droits www-data au dump
  • Commiter le dump

Créez les dossiers de backup

mkdir -p /var/www/html/site-1/backups/
mkdir -p /var/www/html/site-2/backups/
mkdir -p /var/www/html/site-3/backups/
mkdir -p /var/www/html/backups/

Passez en root pour modifier le crontab

sudo su -
crontab -e

Ajoutez chaque site à sauvegarder, modifier l'heure (les 2 premiers paramètre, ici minuit) et le jour (le dernier paramètre, dimanche était le jour 0)

# Site 1 is backuped every Monday
0 0 * * 1       cd /var/www/html/site-1 && git pull && mysqldump --user=site-1-user --password="xxx" site-1-db > /var/www/html/site-1/backups/site-1-db_backup.sql && chown -R www-data:www-data /var/www/html/site-1/backups/ && git add ./backups/site-1-db_backup.sql && git commit -m "automatic backup of site-1" && git push

# Site 2 is backuped every Wednesday
0 0 * * 3       cd /var/www/html/site-2/ && git pull && mysqldump --user=site-2-user --password="yyy" site-2-db > /var/www/html/site-2/backups/site-2-db_backup.sql && chown -R www-data:www-data /var/www/html/site-2/backups/ && git add backups/site-2-db_backup.sql && git commit -m "automatic backup of site-2-db" && git push

# Site 3 is backuped every Tuesday
0 0 * * 2       cd /var/www/html/site-3/ && git pull && mysqldump --user=site-3-user --password="zzz" site-3-db > /var/www/html/site-3/backups/site-3-db_backup.sql && chown -R www-data:www-data /var/www/html/site-3/backups/ && git add backups/site-3-db_backup.sql && git commit -m "automatic backup of site-3-db" && git push

# All sites are backuped every Sunday
0 0 * * 0       cd /var/www/html && git pull && mysqldump --user=root --password="xyz" --all-databases > /var/www/html/backups/root-db_backup.sql && chown -R www-data:www-data /var/www/html/backups && git add /var/www/html/backups/root-db_backup.sql && git commit -m "automatic backup of root-db" && git push

C'est tout. Le crontab n'a pas besoin d'être redémarré, il est immédiatement actif.

Aucun commentaire

Voici une marche à suivre simple pour configurer Apache avec deux noms de domaine et générer deux certificats SSL distincts :

Assurez-vous que la configuration de base d'apache contient le minimum :

vi /etc/apache2/apache.conf
    Include ports.conf # Numéros des ports sur lesquels il écoute (voir commande suivante)
    AccessFileName .htaccess # Active la configuration dossier par dossier avec les fichiers .htaccess
    IncludeOptional conf-enabled/*.conf # Configuration supplémentaire, rien à faire de notre côté
    IncludeOptional sites-enabled/*.conf # Liens symbolique sur les configurations des sites (voir plus bas)

Ecoutez sur le port 80 (HTTP) et 443 (HTTPS)

cat /etc/apache2/ports.conf
    Listen 80
    <IfModule ssl_module>
        	Listen 443
    </IfModule>

Configuration des Certificats SSL :
Utilisez l'outil de génération de certificats SSL, tel que Let's Encrypt, pour créer deux certificats distincts, un pour chaque nom de domaine.
Assurez-vous de spécifier les noms de domaine appropriés lors de la génération des certificats.

sudo certbot certonly -d site-1.ch
sudo certbot certonly -d site-2.ch

Cela va créer les 2 fichiers ssl (fullchain.pem et privkey.pem) dans /etc/letsencrypt/live/site-1.ch/ et site-2.ch.
Ils seront référencés dans les fichiers de configurations plus bas.

Configuration des Fichiers de Sites Virtuels :
Créez 1 fichier de configuration de sites virtuels dans le répertoire `/etc/apache2/sites-available/` (ou votre équivalent) pour chaque nom de domaine que vous souhaitez héberger, ainsi qu'un fichier de configuration de redirection http.
Assurez-vous de spécifier les paramètres appropriés pour chaque site, y compris le chemin vers les fichiers racine, les options de sécurité, etc.

# Redirige tous le traffic HTTP vers HTTPS
sudo vi /etc/apache2/sites-available/000-http-to-https.conf

<VirtualHost *:80>
	ServerAdmin webmaster@site-1.ch

	DocumentRoot /var/www/html

	RewriteEngine on
	RewriteCond %{SERVER_NAME} =site-1.ch
	RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

	RewriteCond %{SERVER_NAME} =site-2.ch
	RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
# Configuration du site principal site-1.ch
sudo vi /etc/apache2/sites-available/000-site-1-ssl.conf

<IfModule mod_ssl.c>
<VirtualHost *:443>

	ServerName site-1.ch
	ServerAlias www.site-1.ch
	ServerAdmin webmaster@site-1.ch
	DocumentRoot /var/www/html

	Include /etc/letsencrypt/options-ssl-apache.conf

	SSLCertificateFile /etc/letsencrypt/live/site-1.ch/fullchain.pem
	SSLCertificateKeyFile /etc/letsencrypt/live/site-1.ch/privkey.pem

	# Any additional directives specific to site-1.ch can go here
</VirtualHost>
</IfModule>
# Configuration du domaine secondaire site-2.ch
sudo vi /etc/apache2/sites-available/000-site-2-ssl.conf

<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerName site-2.ch
        ServerAlias www.site-2.ch
        DocumentRoot /var/www/html

        Include /etc/letsencrypt/options-ssl-apache.conf
        SSLCertificateFile /etc/letsencrypt/live/site-2.ch/fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/site-2.ch/privkey.pem
		
        # Any additional directives specific to site-2.ch can go here
</VirtualHost>
</IfModule>

Activation des Sites Virtuels :
Activez les sites virtuels en créant des liens symboliques vers les fichiers de configuration dans le répertoire `/etc/apache2/sites-enabled/` (ou votre équivalent).

cd /etc/apache2/sites-enabled
sudo ln -s ../sites-available/000-http-to-https.conf
sudo ln -s ../sites-available/000-site-1.conf
sudo ln -s ../sites-available/000-site-2.conf

A la place vous pouvez aussi utiliser la commande `a2ensite` suivie du nom de fichier pour chaque site.

Redémarrage d'Apache :
Une fois que vous avez terminé la configuration, redémarrez le service Apache pour appliquer les modifications.

sudo systemctl restart apache2

Aucun commentaire

Chers adeptes de la série télévisée française Kaamelott,

Si comme moi et mes amis, vous êtes de grands fans de la série Kaamelott et que vous ne pouvez vous empêcher de citer des blagues cultes de la série à tout bout de champ, alors j'ai quelque chose de spécial à vous présenter : KaamelottBot !

KaamelottBot est le compagnon parfait pour votre serveur Discord. Développé avec passion, ce bot vous permet de revivre les moments les plus hilarants de la série en un simple clic. Un grand merci à 2ec0b pour son dévouement à créer une soundbox bien organisée qui a rendu cela possible.

Que fait exactement KaamelottBot ?

Citations Audio de Kaamelott
Avec la commande

/kaamelott-audio [Texte:]

vous pouvez invoquer KaamelottBot pour qu'il cite une réplique culte de votre choix (ou au hasard) dans votre salon audio, où tous vos amis en profiterons.

Par exemple, tapez

/kaamelott-audio [Texte:] révolte

et laissez-vous emporter par le célèbre

Bon ben révolte ! TUUUUUUUUT !!

Gifs Animés de Kaamelott
En plus des citations audio, KaamelottBot peut également ajouter une touche visuelle à vos conversations avec la commande

/kaamelott-gifs

Si vous voulez jouer avec et amuser vos amis, rendez-vous sur mon GitHub où vous trouverez toutes les instructions pour installer le bot sur votre serveur.

Vous pouvez même forker le repo et faire tourner le serveur vous-même pour ne pas dépendre de pumbaa.ch

Vive Kaamelott et vive KaamelottBot !

Pumbaa, gracieusement aidé par ChatGPT.

Aucun commentaire

PUMBAA'S YOUTUBE PLAYLIST

Une liste de mes chaines de vulgarisation / information préférée.

PHYSIQUE

MATHÉMATIQUES / STATISTIQUES

HISTOIRE

PHILOSOPHIE

ASTRONOMIE

SCIENCES GÉNÉRALES

INFORMATIQUE

JEUX VIDÉO

JAPON

CULTURE

LANGUES

Aucun commentaire

Un bloggeur appelé Le Hollandais Volant* à fait une série de post de blog exposant les avantages des hybrides rechargeables (PHEV) et son expérience récente à l'achat d'un de ces véhicule.
Je dois dire que ses arguments sont assez convainquants, je ne m'étais jamais vraiment penché sur l'hybride mais je dois dire que maintenant je serais bien tenté d'essayer.

Quelques idées reçues à propos de la conduite électrique
https://lehollandaisvolant.net/?d=2020/11/27/19/27/03-quelques-idees-recues-a-propos-de-la-conduite-electrique

Est-il écologique de changer de voiture pour une voiture électrique ?
https://lehollandaisvolant.net/?d=2021/10/27/19/55/56-est-il-ecologique-de-changer-de-voiture-pour-une-voiture-electrique

Achat d’une voiture hybride rechargeable : c’est quoi et pourquoi ?
https://lehollandaisvolant.net/?d=2020/05/17/12/47/27-achat-dune-voiture-hybride-rechargeable-1-cest-quoi-et-pourquoi
https://lehollandaisvolant.net/?d=2020/05/24/12/38/26-achat-dune-voiture-hybride-rechargeable-2-la-hyundai-ioniq
https://lehollandaisvolant.net/?d=2020/05/24/12/39/39-achat-dune-voiture-hybride-rechargeable-3-sav-hyundai-clermont-ferrand-coup-de-gueule

* il a plein d'outils en ligne super pratiques (enfin, certains plus que d'autres)