Skip to content

Commit

Permalink
Merge branch 'main' into fix__43_find_widgets_by_introspection
Browse files Browse the repository at this point in the history
Resolve merge conflicts
  • Loading branch information
Clément committed Jul 24, 2024
2 parents 5933b9b + a94e569 commit 2a4c9f8
Show file tree
Hide file tree
Showing 22 changed files with 664 additions and 28 deletions.
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ Otherwise, you have to configure the following settings :
- `JFME_DOMAIN` : the domain name of your website, for instance `"https://www.example.com"` (used in sitemap file)
- `JFME_CONTENT_DIRS` : a list of directories where to look for the site content

Other useful settings :
- Default metadata : `JFME_DEFAULT_METADATA_DICT` and `JFME_DEFAULT_METADATA_FILEPATH` allow to set default metadata for pages and posts. The first one is a python dictionary and the second one is a Path to a file having the same format as metadata section in pages.
The order, from less to most priority is : `JFME_DEFAULT_METADATA_DICT` then `JFME_DEFAULT_METADATA_FILEPATH` then page matadata.

### `Dockerfile` :
- In the `# Copy source dir` section, add `COPY <content-dir>/ <content-dir>/` for each content directory in `JFME_CONTENT_DIRS`

Expand Down Expand Up @@ -123,7 +127,9 @@ For each command, the option `-h` give u some help.

`./manage.py distill-local` to make the static website, see [Prod](#prod) for usage

`./manage.py list-widgets` to list all widgets found in content directories
`./manage.py list-widgets` to list all widgets found in content directories. See an example in `EXAMPLES.md`.

`./manage.py format-html <action>` to minify or beautify the html content (`<action>` being `minify` or `beautify`)

## Others

Expand Down
25 changes: 24 additions & 1 deletion content/pages/a_page.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,36 @@
title Page1
slug page1
template_engine jinja2
description
---
{

}

---
{% from "widgets/generic.html" import page_header %}


<h2>Page 1</h2>

<p>Go to <a href="{{ url_for_slug('page2') }}">page 2</a> </p>
<p>Go to <a href="{{ url('page', args=['page2']) }}">page 2</a> </p>

<article>
{% markdown %}
```
This is markdown :
```
test
**test**
`test`
{% endmarkdown %}
</article>


{{ page_header(
markdown('
test
**test**
`test`
')
) }}
22 changes: 22 additions & 0 deletions content/posts/ia.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
title L'IA 🧠 va-t-elle remplacer la recherche web classique ?
date 2024-05-20T15:12:42+00:00
category Technologie
abstract L'intelligence artificielle est partout. Tout le monde en parle ... Cet article vous propose de découvrir un cas intéressant et très puissant.
author Damien ACCORSI
---
{

}
---

{%markdown%}
La question se pose ...

Quelques mots-clé : #veilletechno #googlesearch #ia #notopensource

Cette publication n'a pas vocation a approfondir et à répondre à la question mais plutôt à partager l'existence d'une solution intéressante et qui a été présentée à l'un des suricates comme le futur remplaçant de google search.

![Perplexity va-t-il remplacer Google Search ?](/actualites/images/800x600/image-14219ee739c6a17b76d59f1d55b73776ea8b5e0e.png)

{%endmarkdown%}
69 changes: 69 additions & 0 deletions content/posts/manipuler-pdf.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
---
title Quels logiciels libres pour manipuler des fichiers PDF ?
date 2024-05-03T08:43:47+00:00
category univers du libre
abstract Manipuler des fichiers PDF est chose courante ; il existe une série de logiciels libres qui permet de procéder à la majorité des manipulations que l'on est en droit d'attendre de tels outils.
author Damien ACCORSI
---
{

}
---

{%markdown%}
Nous sommes tous amenés, à un moment ou à un autre, dans notre vie personnelle ou professionnelle, à manipuler des PDF.

Tout le monde connait Acrobat Reader et autres services en ligne tels que Ilovepdf.

Mais existe-t-il des logiciels libres pour procéder aux même opérations ? Si oui quels sont ces outils ?


## Consulter des PDF

**Evince** est un visionneur de documents pour GNOME. Il permet de visualiser des PDFs et de les imprimer

## Modifier et produire des PDF

**Libreoffice** permet d'exporter les documents que l'on rédige en PDF.

Moins connu, **Libreoffice Draw** permet quant à lui d'ouvrir des PDF existant et d'en éditer le contenu.

## Découper, extraire, fusionner des fichiers PDF en masse (en ligne de commande)

PDFtk permet facilement de découper un fichier PDF via la commande `pdftk file.pdf burst`

Il est également possible d'extraire un lot de pages `pdftk file.pdf cat 3-5 output pages-3-to-5.pdf`

Enfin, il est possible de concaténer des fichiers PDF, exemple : `pdftk file1.pdf file2.pdf cat output file1-file2-merged.pdf`

D'autres opérations sont possibles.

Pour un équivalent graphique, je vous renvoie vers PDF Chain qui m'a permis, par exemple, de découvrir qu'on pouvait intégrer des pièces jointes quelconques dans un PDF.


![](/actualites/images/500x500/image-b0158969619b6e2215ff928a68a0cd882228d06a.png)

## Découper, extraire, fusionner des PDFs naturellement

Pour un usage plus grand public, je ne peux que vous conseiller de vous tourner vers PDF Arranger.

Il permet de procéder aux même opérations que les outils précédemment cités, avec l'avantage de travailler sur des éléments visuels car l'interface intègre une prévisualisation des pages, une sélection à la souris et des menus contextuels - bref un ensemble plus intuitif pour les utilisations qui ne sont pas familiers avec la ligne de commande.

![](/actualites/images/500x500/image-3a7f8c0e10a091e5b7d8d5ac1d454ff27f1edf6d.png)

----

Voilà, vous savez désormais quoi utiliser pour :


- 🖨 Imprimer un document PDF
- ⤵ tourner les pages d'un document PDF
- ✂ découper un document PDF page par page
- 🖇 fusionner plusieurs documents PDF
- 🔎 extraire des sections de pages d'un document PDF


Vous n'avez plus aucune excuse pour diffuser des données confidentielles sur des services en ligne "gratuits" ;)


{%endmarkdown%}
71 changes: 71 additions & 0 deletions content/posts/post1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
title R&D et Veille techno - Petit point sur nos projets internes
date 2024-07-11T08:33:06+00:00
category Technologie
abstract Un petit tour d'horizon des projets sur lesquels nos équipes techniques travaillent actuellement ...
author Damien ACCORSI
---
{

}
---

{%markdown%}
L'été est là, le rythme ralentit, c'est l'occasion de parler un peu R&D

Petit tour d'horizon des projets sur lesquels nous travaillons actuellement :

## Tracim

La version 4.10 est sortie début juillet et intègre un paramétrage plus fin des notifications web. C'est la première étape vers une stratégie de notifications optimisée pour être mieux informé tout en étant moins sollicité. Une vidéo de présentation de cette nouvelle version va arriver courant juillet.

## Galae

Une grosse mise à jour a été faite dans la stack technique, la mise en prod arrive début août. On progresse également sur la gestion des migrations depuis les outils Microsoft pour récupérer carnets d'adresses, agendas, etc (qui ne sont pas accessibles via les classiques CardDAV, CalDAV, sinon je n'en parlerais pas ;)

## JSSG & JFME

Clément nous a rejoint le temps d'un stage pour travailler avec Damien sur la future version statique de l'ensemble de nos sites web.

On s'appuie sur le projet libre JSSG qu'on a amicalement forké et qui est en train de devenir JFME (JSSG For Meerkats Engine) et qui permet de gérer/générer des sites statiques avec une stratégie de construction de pages par blocs et factorisation des designs.

## Whatelse ?

Les 2 outils principaux (hors usines logicielles) qu'on utilise en interne sont Dolibarr et Tracim. Une partie de périmètre fonctionnel n'est adressé ni par l'un, ni par l'autre. Du coup on développe un outil interne qui permet d'implémenter toutes les fonctionnalités manquantes : tableaux de bord, préparation de fichiers bancaires, préparation de documents pour les déclarations de TVA, etc.

Lorenzo et Damien travaillent à l'implémentation de nouvelles fonctionnalités

## Connecteur Dolibarr en Python

On utilise dolibarr en interne et on s'y interconnecte via plusieurs applicatifs python. On va probablement transformer le code client de l'API en un module qu'on publiera sur pypi.

## Superset pour construire des tableaux de bord visuel

On teste et expérimente l'utilisation de [superset](https://superset.apache.org/), un outil de la fondation Apache, pour construire des tableaux de bord graphiques.

## Grist pour gérer des données et les enrichir par formulaire

On teste et expériment [grist](https://www.getgrist.com/) pour la gestion de données structurées et la création de formulaires associés.

## Suritech, l'événement veilletechno alpin libriste

La R&D et veilletechno sont des activitées fondamentales pour perdurer.

On a d'ailleurs organisé l'événement hashtag#suritech semaine dernière qui a été un franc succès 🎉 On réfléchit à la manière d'en faire la prochaine itération.

On publiera l'enregistrement des conférences durant l'été.

## Recrutement d'une ingénieure ou d'un ingénieur fullstack

Après moultes rebondissements, on réfléchit à recruter une ingénieure ou un ingénieur fullstack geek & dynamique sur Grenoble pour contribuer à notre projet d'entreprise et nos produits tracim et galae.

Si cela vous intéresse, envoyez-nous votre candidature (CV + quelques lignes qui expliquent pourquoi on devrait miser sur vous / pourquoi cela vous intéresse)

~~~~
On ne s'arrête pas pendant l'été mais on réduit drastiquement notre présence en ligne.
Passez toutes et tous de bonnes vacances 🌅
Rendez-vous début septembre pour de nouvelles aventures libres et souveraines ! 🚀
{%endmarkdown%}
42 changes: 42 additions & 0 deletions content/posts/post2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
title Microsoft deviendrait-il un spyware avec la fonctionnalité Recall ?
date 2024-05-22T12:36:09+00:00
category Technologie
abstract Le 20 mai 2024, Microsoft annonce la fonctionnalité Recall qui va "aider les utilisateurs à trouver leurs informations" en s'appuyant sur l'IA ...
author Damien ACCORSI
---
{

}
---
{% markdown %}
Le 20 mai dernier, Microsoft a annoncé sa nouvelle fonctionnalité #recall, basée sur l'#IA . Son objectif ? Vous aider à retrouver tout ce que vous avez déjà fait sur votre ordinateur. 🤗 Le moyen ? Enregistrer toute votre activité sur votre machine 😳

Tout ce que je tape au clavier ⌨ ? Oui, comme un Spyware 😨

Mais pas seulement ! 😰

Contrairement à ce qu'on imagine, il ne s'agit pas simplement d'enregistrer les frappes au clavier : il est également question de capturer *en permanence* ce qui est affiché à l'écran. Bien sûr, aucune donnée ne sortira de la machine et n'ira sur les serveurs Microsoft. Ouf. De toute façon, les données sont chiffrées et l'histoire est là pour vous rassurer : les clés de chiffrement ne fuitent jamais. 🔐

----

Ce que Wikipedia nous dit d'un spyware : un logiciel espion, un mouchard ou un espiogiciel (de l'anglais spyware) est un logiciel malveillant qui s'installe dans un ordinateur ou autre appareil mobile, dans le but de collecter et transférer des informations sur l'environnement dans lequel il s'est installé, très souvent sans que l'utilisateur en ait connaissance. L'essor de ce type de logiciel est associé à celui d'Internet qui lui sert de moyen de transmission de données.

Je note un point important : *sans que l'utilisateur en ait connaissance*.

France TV Info a publié un article sur l'annonce de la fonctionnalité Recall ; vous trouverez le lien ci-dessous. Maintenant que vous êtes au courant il ne s'agit plus d'un #spyware puisque vous êtes informé(e)s 🎁

----

Si vous préférez ne pas être confronté à ce genre de problématique, utilisez des logiciels libres et souverains comme ceux qu'on déploie, exploite et développe à #algoo :

- 🐧 des poste de travail exploitant une distribution linux renommée telle que Debian, Ubuntu ou Zorin,
- 🏠 des outils auto-hébergés tels que Gitlab, mailtrain, dolibarr, etc,
- 💡 une plateforme de collaboration #tracim déployée en Saas en France sans exploitation des données ou déployée on premise, sur votre infrastructure y compris (et ça fonctionne même sans aucune connexion internet contrairement à d'autres)
- 📨 un service e-mail #galae exclusivement basé sur des logiciels libres et auto-hébergeable, conforme aux standards
- ...

Bref des données dont vous maîtrisez l'hebergement, la localisation ... et l'existence.

Vos données sont VOS données comme dirait l'autre.
{% endmarkdown %}
58 changes: 58 additions & 0 deletions content/posts/post3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
title Venez échanger sur les sujets de collaboration d'équipe et e-mail aux JDLL 2024 !
date 2024-05-20T16:20:03+00:00
category Univers du libre
abstract Algoo sera présente et très active aux JDLL 2024 : stand, ateliers et conférence !
author Damien ACCORSI
---
{

}
---
{%markdown%}
Les 25 et 26 mai 2024 se tiennent les traditionnelles JDLL. Changement de lieu : ça se déroule toujours à Lyon, mais cette année ce sera [sur le site Descartes de l'ENS Lyon](https://jdll.org/contact-and-informations).

## Le stand animé par les suricates Algoo

Comme chaque année, nous serons présents, pour échanger, discuter, démontrer et animer autour de nos 2 thématiques principales :

### 👉 Collaboration d'équipe en mode projet

Venez découvrir la puissance de notre [logiciel Tracim, pensé pour la collaboration en mode projet et la collaboration asynchrone](https://www.tracim.fr)


Nous pourrons vous montrer ses fonctionnalités, mais aussi sa philosophie qui assure le meilleur embarquement des collaobrateurs.

### 👉 Messagerie e-mail libre, éthique, collaborative

Venez découvrir la flexibilité et la puissance de notre [service e-mail galae](https://www.galae.net) à travers les briques qu'il intègrent et une philosophie unique : vous laisser la main sur le paramétrage fin de votre messagerie email.


## Nos conférences et ateliers

Comme chaque année nous participons activement à l'événement. Nous avons proposé une série de conférences et ateliers, tous ont été retenus ! \o/

### 🛠️ Comment collaborer efficacement en mode projet avec Tracim - Samedi 25 mai à 13h (atelier)


Damien animera l'atelier «&nbsp;[Découvrez comment collaborer efficacement en mode projet avec Tracim](https://pretalx.jdll.org/jdll2024/talk/CJPDZZ/)&nbsp;»

### 🛠️ Dotez votre association d'un outil de collaboration auto-hébergée facile à maintenir. - Samedi 25 mai à 15h (atelier)

Philippe animera l'atelier «&nbsp;[Dotez votre association d'un outil de collaboration auto-hébergée facile à maintenir.](https://pretalx.jdll.org/jdll2024/talk/MPGBWT/)&nbsp;»

### 🎤 From zero to Galae : vivez de l'intérieur le lancement de la plateforme e-mail galae - Dimanche 26 mai à 16h (conférence)

Sarah, Philippe et Damien vous relaterons l'aventure (et les mésaventures) du lancement du service e-mail Galae durant la conférence «&nbsp;[From zero to Galae : vivez de l'intérieur le lancement de la plateforme e-mail galae.](https://pretalx.jdll.org/jdll2024/talk/UCQJDZ/)&nbsp;»

## Bonne ambiance, convivialité

Comme d'habitude, cet événement est l'occasion d'échanger, discuter, boire un café ou une bière ... et de venir chiper sur notre stand les classiques stickers #suricate et désormais également les stickers galae :)

Mais l'intérêt de venir aux JDLL est aussi (et surtout) de profiter de l'ensemble des conférences et stands ...

Retrouvez ci-dessous le lien vers le planning complet des conférences et la liste exhaustive des stands et découvertes que vous pourrez faire durant les Journées Du Logiciel Libre !


À très vite pour se rencontrer en chair et en os !
{%endmarkdown%}
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
---
title Hello, world
date 1970-01-01T00:00+00:00
category test
abstract
author Bob
---
{

My first post!
}
---
Hello world
25 changes: 25 additions & 0 deletions content/posts/xs-compromise.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
title La lib de compression Xz compromise ...
date 2024-04-03T13:13:26+00:00
category Technologie
abstract Une porte dérobée introduite dans la lib de compression Xz a été fortuitement découverte par un développeur PostgreSQL ...
author Damien ACCORSI
---
{

}
---

{%markdown%}
La bibliothèque partagée de compression Xz (liblzma) a été compromise par l'un de ses 2 principaux développeurs. Une porte dérobée a été introduite et fortuitement découverte par un développeur du projet PostgreSQL qui [évoque humblement sa découverte sur Mastodon](https://mastodon.social/@AndresFreundTec/112180083704606941) : « I accidentally found a security issue while benchmarking postgres changes »

L'ingéniosité de l'attaque est de passer par un contributeur au long court et par une démarche très ingénieuse ; [Ytterbium décrit en détail l'attaque dans un long journal publié sur LinuxFR](https://linuxfr.org/users/ytterbium/journaux/xz-liblzma-compromis).

Une fois n'est pas coutume : le problème des dépendances "invisibles" (et pour autant stratégiques) se pose ...

![Dépendances](https://imgs.xkcd.com/comics/dependency.png)

(source: https://xkcd.com/2347/ )


{%endmarkdown%}
4 changes: 2 additions & 2 deletions content/templates/jinja2/base.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@


<!DOCTYPE html>
<html lang="{{ object.metadata.lang }}">
<html lang="{{ object.metadata.lang|default("") }}">



Expand All @@ -13,7 +13,7 @@
{% for key, value in object.metadata.items()|filter_opengraph_metadata %}
<meta property="{{ key }}" content="{{ value }}"/>
{% endfor %}
<title>{{ object.title }}</title>
<title>{{ object.title|default("") }}</title>
<link rel="stylesheet" href="{{ static('pygments/monokai.css') }}">
<link rel="icon" type="image/x-icon" href="{{ static('assets/galae.ico') }}"/>
<link href="{{ static('css/styles.css') }}" rel="stylesheet"/>
Expand Down
Loading

0 comments on commit 2a4c9f8

Please sign in to comment.