From 86b2247d227b570bccce8c9a14f9baac5f9964d4 Mon Sep 17 00:00:00 2001 From: Tykayn Date: Tue, 5 Nov 2024 11:17:52 +0100 Subject: [PATCH] rewrite build url --- build_index_gemini.py => build_indexes.py | 55 ++++++++++++++----- converters.sh | 17 +++--- server-configs/cipherbliss.com.caddy | 4 +- server-configs/coussinet.org.caddy | 2 +- server-configs/qzine.fr.caddy | 4 +- .../{tykayn.fr copy.caddy => tykayn.fr.caddy} | 2 +- ...8_installer-owncloud-sur-ubuntu-server.org | 2 +- ...cer-le-dossier-de-donnees-de-nextcloud.org | 6 +- .../dragonfeu_blog/templates/footer_page.org | 3 + .../dragonfeu_blog/templates/header_page.org | 2 + 10 files changed, 65 insertions(+), 32 deletions(-) rename build_index_gemini.py => build_indexes.py (74%) rename server-configs/{tykayn.fr copy.caddy => tykayn.fr.caddy} (84%) create mode 100644 sources/dragonfeu_blog/templates/footer_page.org create mode 100644 sources/dragonfeu_blog/templates/header_page.org diff --git a/build_index_gemini.py b/build_indexes.py similarity index 74% rename from build_index_gemini.py rename to build_indexes.py index 06a7fe88..15ec97be 100755 --- a/build_index_gemini.py +++ b/build_indexes.py @@ -11,7 +11,7 @@ parser.add_argument("title", default="Mon site Web", help="Le titre du site Web. args = parser.parse_args() # Variables personnalisables -DOSSIER_MD = 'sources/'+args.source # Nom du dossier contenant les fichiers Markdown +DOSSIER_SOURCE = 'sources/'+args.source # Nom du dossier contenant les fichiers Markdown FICHIER_INDEX = 'index_'+args.source # Nom du fichier d'index à générer TITRE_INDEX = f" # {args.title} - Articles" source_files_extension="org" @@ -50,10 +50,21 @@ def find_year_and_slug(fichier): print(f"chemin: {annee}/{slug}/") return [date_str, annee,slug] return [None,None,None] + + def enlever_premier_tiret_ou_underscore(chaîne): if chaîne.startswith('-') or chaîne.startswith('_'): chaîne = chaîne[1:] return chaîne + +import shutil + +# création des dossiers intermédiaires s'il y en a +# déplace le fichier dans le dossier spécifié +def create_path_folders_and_move_file(path, file): + os.makedirs(os.path.dirname(path), exist_ok=True) + shutil.move(file, path) + def get_files_list_of_folder(folder_path): # Vérifie si le dossier existe if not os.path.exists(folder_path): @@ -75,16 +86,28 @@ def get_files_list_of_folder(folder_path): # Titre pour le fichier d'index -def generer_index(dossier_md, fichier_index, titre_index): + +def empty_folder_content(path): + # parcours tous les fichiers et sous-dossiers du dossier + for filename in os.listdir(path): + file_path = os.path.join(path, filename) + + # supprime le fichier ou le sous-dossier + if os.path.isfile(file_path): + os.remove(file_path) + else: + shutil.rmtree(file_path) + +def generer_index(dossier_source, fichier_index, titre_index): # Chemin absolu du dossier parent (pour sauver le fichier d'index) dossier_parent = os.path.dirname(os.path.abspath(__file__)) # Chemin complet du dossier contenant les Markdown - chemin_dossier_md = os.path.join(dossier_parent, dossier_md) + chemin_dossier_source = os.path.join(dossier_parent, dossier_source) - files_static = get_files_list_of_folder(chemin_dossier_md+'/') - files_fr = get_files_list_of_folder(chemin_dossier_md+'/lang_fr') - files_en = get_files_list_of_folder(chemin_dossier_md+'/lang_en') + files_static = get_files_list_of_folder(chemin_dossier_source+'/') + files_fr = get_files_list_of_folder(chemin_dossier_source+'/lang_fr') + files_en = get_files_list_of_folder(chemin_dossier_source+'/lang_en') # Chemin complet pour le fichier d'index chemin_fichier_index_gemini = os.path.join(dossier_parent, fichier_index+'.gmi') @@ -110,15 +133,17 @@ def generer_index(dossier_md, fichier_index, titre_index): contenu_index_gmi += f"=> {fichier}\n" link_html = fichier.replace('..gmi','.html') contenu_index_html += f"
{link_html}" - # contenu_index_html += f"
{année} {slug.replace('-', ' ')}" + contenu_index_html += f"
{année} {slug.replace('-', ' ')}" + print(f" on créer le dossier : {new_folder}, et on y copie le fichier {new_file} en le renommant index.html") + # create_path_folders_and_move_file(path, file) - contenu_index_gmi += "\n# Articles in English\n-------------------------\n" - contenu_index_html += "

Articles in English

" - lang_folder="lang_en/" - for fichier in files_en: - contenu_index_gmi += f"=> {fichier}\n" - link_html = fichier.replace('..gmi','.html') - contenu_index_html += f"
{link_html}" + # contenu_index_gmi += "\n# Articles in English\n-------------------------\n" + # contenu_index_html += "

Articles in English

" + # lang_folder="lang_en/" + # for fichier in files_en: + # contenu_index_gmi += f"=> {fichier}\n" + # link_html = fichier.replace('..gmi','.html') + # contenu_index_html += f"
{link_html}" # Écrit le contenu dans le fichier d'index try: @@ -133,4 +158,4 @@ def generer_index(dossier_md, fichier_index, titre_index): print(f"Erreur lors de l'écriture du fichier d'index : {e}") if __name__ == "__main__": - generer_index(DOSSIER_MD, FICHIER_INDEX, TITRE_INDEX) + generer_index(DOSSIER_SOURCE, FICHIER_INDEX, TITRE_INDEX) diff --git a/converters.sh b/converters.sh index 1c7036d9..ad0f99f6 100755 --- a/converters.sh +++ b/converters.sh @@ -40,6 +40,14 @@ convert_sources() { # Transformer en html # echo "to HTML:" # pwd + # TODO assembler la page de footer avec le fichier en entrée + temp_page="temp_page.$source_file_extension" + echo ''> $temp_page + + cat "templates/header_page.$source_file_extension" >> $temp_page + cat "${i}" >> $temp_page + cat "templates/footer_page.$source_file_extension" >> $temp_page + pandoc -f "${source_file_extension}" -t html -s "${i}" -o "converted/${i%.${source_file_extension}}.html" --metadata title="$website_name" # Transformer en gmi # echo "to GMI:" @@ -48,6 +56,7 @@ convert_sources() { pandoc --template $templates_path/../../templates/pandoc/template_gemini.lua -f "${source_file_extension}" -t $templates_path/../../templates/pandoc/gmi.lua -s "${i}" -o "converted/${i%.${source_file_extension}}.gmi" # ajout des footers à chaque article # cat '../../templates/website_pages/footer-articles.md.gmi' >> "${i%.${source_file_extension}}.gmi" + rm $temp_page done } @@ -97,9 +106,6 @@ generate_website() { echo "pages en anglais du site web $website_name converties" - # python3 build_index_gemini.py - # mv index.gmi source/converted - cd .. cd .. cd .. @@ -109,10 +115,7 @@ generate_website() { # prendre les fichiers markdown du dossier md/ , # et créer un index des fichiers situés dedans, rangés par nom de fichier décroissant, # sauver le tout dans un fichier index.gmi - python3 build_index_gemini.py $website_name "$website_name" - # TODO move files with changed name and folders in python script instead of here - mv "index_$website_name.html" "html-websites/$website_name/index.html" - mv "index_$website_name.gmi" "gemini-capsules/$website_name/index.gmi" + python3 build_indexes.py $website_name "$website_name" python3 enrich_html.py html-websites/$website_name -t $website_name --style templates/style_general.css python3 enrich_html.py html-websites/$website_name/lang_fr -t $website_name --style templates/style_general.css diff --git a/server-configs/cipherbliss.com.caddy b/server-configs/cipherbliss.com.caddy index c0d418b8..223020ae 100644 --- a/server-configs/cipherbliss.com.caddy +++ b/server-configs/cipherbliss.com.caddy @@ -4,13 +4,13 @@ cipherbliss.com { www.cipherbliss.com { import generic_headers - root * /var/www/cipherbliss.com + root * /poule/encrypted/www/cipherbliss.com encode zstd gzip file_server browse } portfolio.cipherbliss.com { import generic_headers - root * /var/www/portfolio.cipherbliss.com + root * /poule/encrypted/www/portfolio.cipherbliss.com encode zstd gzip file_server browse } diff --git a/server-configs/coussinet.org.caddy b/server-configs/coussinet.org.caddy index 2b6bdc8a..0417d6ac 100644 --- a/server-configs/coussinet.org.caddy +++ b/server-configs/coussinet.org.caddy @@ -4,7 +4,7 @@ coussinet.org { www.coussinet.org { import generic_headers - root * /var/www/coussinet.org + root * /poule/encrypted/www/coussinet.org encode zstd gzip file_server browse } diff --git a/server-configs/qzine.fr.caddy b/server-configs/qzine.fr.caddy index 2b4f61d9..2eee82b1 100644 --- a/server-configs/qzine.fr.caddy +++ b/server-configs/qzine.fr.caddy @@ -4,14 +4,14 @@ qzine.fr { www.qzine.fr { import generic_headers - root * /var/www/qzine.fr + root * /poule/encrypted/www/qzine.fr encode zstd gzip file_server browse } sondages.qzine.fr { import generic_headers - root * /var/www/sondages.qzine.fr + root * /poule/encrypted/www/sondages.qzine.fr encode zstd gzip file_server browse } diff --git a/server-configs/tykayn.fr copy.caddy b/server-configs/tykayn.fr.caddy similarity index 84% rename from server-configs/tykayn.fr copy.caddy rename to server-configs/tykayn.fr.caddy index 3b5c7b2c..201c7794 100644 --- a/server-configs/tykayn.fr copy.caddy +++ b/server-configs/tykayn.fr.caddy @@ -10,7 +10,7 @@ www.tykayn.fr { tykayn.fr { import generic_headers - root * /var/www/tykayn.fr + root * /poule/encrypted/www/tykayn.fr encode zstd gzip file_server browse } diff --git a/sources/cipherbliss_blog/with_html/20180122113954_cipherbliss_blog_148_installer-owncloud-sur-ubuntu-server.org b/sources/cipherbliss_blog/with_html/20180122113954_cipherbliss_blog_148_installer-owncloud-sur-ubuntu-server.org index c6b2df49..b3c195da 100644 --- a/sources/cipherbliss_blog/with_html/20180122113954_cipherbliss_blog_148_installer-owncloud-sur-ubuntu-server.org +++ b/sources/cipherbliss_blog/with_html/20180122113954_cipherbliss_blog_148_installer-owncloud-sur-ubuntu-server.org @@ -18,7 +18,7 @@ Supposons que vous ayez accès en SSH à votre serveur ubuntu et que vous connaissiez son ip publique. On suppose aussi que vous avez installé mysql en définissant un mot de passe root. utilisez l'installateur web en le téléchargeant via wget sur votre serveur dans un lieu controllé par apache2 afin de pouvoir y accéder via un navigateur: -
cd /var/www/html
+
cd /poule/encrypted/www/html
 wget https://download.owncloud.com/download/community/setup-owncloud.php
Accédez à votre serveur par son ip publique ou son nom de domaine si vous en avez défini un, (genre https://moncloud.amoi.com/setup-owncloud.php ) et vous devriez voir apparaitre la page d'installation de votre serveur owncloud vous invitant à passer à l'étape suivante. diff --git a/sources/cipherbliss_blog/with_html/20181011163735_cipherbliss_blog_179_deplacer-le-dossier-de-donnees-de-nextcloud.org b/sources/cipherbliss_blog/with_html/20181011163735_cipherbliss_blog_179_deplacer-le-dossier-de-donnees-de-nextcloud.org index 01bb03cb..9312ba40 100644 --- a/sources/cipherbliss_blog/with_html/20181011163735_cipherbliss_blog_179_deplacer-le-dossier-de-donnees-de-nextcloud.org +++ b/sources/cipherbliss_blog/with_html/20181011163735_cipherbliss_blog_179_deplacer-le-dossier-de-donnees-de-nextcloud.org @@ -22,7 +22,7 @@ installé sur un serveur Ubuntu 18.4 de 2 téras, je fus fort étonné quand la Je fis donc chauffer le terminal SSH pour déplacer le dossier de data sur mon serveur nextcloud dans une autre partition, qui elle disposerait vraiment de la grande place.
mkdir /home/ailleurs/data
-sudo mv /var/www/html/nextcloud/data /home/ailleurs/data
+sudo mv /poule/encrypted/www/html/nextcloud/data /home/ailleurs/data
et quelques minutes de copie plus tard ça roule. voilà. Allez, à Lundi prochain. @@ -30,12 +30,12 @@ voilà. Allez, à Lundi prochain. ha mais non, en fait c'est pas tout a fait aussi simple., il faut dire à la config de nextcloud où se trouve le nouveau dossier. éditez donc le fichier config.php -
sudo nano /var/www/html/nextcloud/config/config.php
+
sudo nano /poule/encrypted/www/html/nextcloud/config/config.php
et changez le chemin correspondant à datadirectory dans le tableau.
'datadirectory' => '/home/ailleurs/data/',
 
Maintenant y'a plus qu'a mettre à jour la base de données de nextcloud avec ces deux commandes php à lancer dans le bon dossier -
cd /var/www/html/nextcloud/
+
cd /poule/encrypted/www/html/nextcloud/
 sudo -u www-data php console.php files:scan --all
 sudo -u www-data php occ maintenance:repair
 
diff --git a/sources/dragonfeu_blog/templates/footer_page.org b/sources/dragonfeu_blog/templates/footer_page.org new file mode 100644 index 00000000..4a3f94f6 --- /dev/null +++ b/sources/dragonfeu_blog/templates/footer_page.org @@ -0,0 +1,3 @@ +---------------- + Dragonfeu land +---------------- \ No newline at end of file diff --git a/sources/dragonfeu_blog/templates/header_page.org b/sources/dragonfeu_blog/templates/header_page.org new file mode 100644 index 00000000..39a9d630 --- /dev/null +++ b/sources/dragonfeu_blog/templates/header_page.org @@ -0,0 +1,2 @@ +[[Tykayn blog - le vortex à chats][]] +------------ \ No newline at end of file