Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Ubuntu > 20.04 #3295

Closed
submarcos opened this issue Oct 14, 2022 · 0 comments · Fixed by #4488
Closed

Support Ubuntu > 20.04 #3295

submarcos opened this issue Oct 14, 2022 · 0 comments · Fixed by #4488
Labels

Comments

@submarcos
Copy link
Member

submarcos commented Oct 14, 2022

Il existe aujourd'hui plusieurs façons d'installer Geotrek-admin :

  • avec docker (meme si la documentation et les exemples devraient être étoffés)
  • avec le paquet "debian" pour installation sur ubuntu.

L'installation via le paquet debian, ainsi que d'essayer de maintenir le fonctionnement des nombreuses dépendances de Geotrek-admin avec les différentes versions de python fournies avec les versions d'Ubuntu supportées posent de nombreux problemes.

Nous avons du dernierement arreter les nouvelles installations bionic, et forcer d'utiliser python 3.8 car bionic utilisait python 3.6.

Aujourd'hui, la derniere version d'ubuntu supportée est la 20.04, qui a plus de 4ansElle utilise python 3.8 qui vient d'être à son tour déprécié. 2 autres LTS sont sorties depuis.

Nous avons fait des efforts dernièrement pour être un maximum à jour niveau dépendances. Cet investissement constant permet de diminuer l'effort à faire pour passer d'une version de python (ou de django) à une autre.

Afin de pouvoir faciliter l'installation de Geotrek, il faudrait à mon sens :

  • déprécier officiellement Ubuntu bionic 18.04
  • Uniformiser les versions de python utilisées car il y a trop de dépendances et il devient compliqué
    de garder des fichiers requirements cohérents et installables pour plusieurs versions de python (bcp de changements entre 3.8 et 3.12)
  • Rendre obligatoire (et automatisé via l'install ?) l'utilisation du PPA deadsnake qui permet d'installer les dernières versions de python sur les versions d'ubuntu LTs encore supportées

L'avantage serait pour nous :

  • d'éviter les problèmes engendrés par la dépréciation récente de python 3.8 (il ya deja des dependences qu'on ne plus mettre à jour)
  • simplifier les devs / CI en en testant plus qu'un version de python
  • ajouter le support jammy / noble
  • simplifier le support des futures LTS ubuntu
  • améliorer un peu les perfs car 3.12 est vraiment rapide
  • pourquoi pas, imaginer d'étendre l'installation avec release debian ou autre dépot basés sur debian

Par contre, problème de taille, l'outil qu'on utilise chez heberger le repo APT (reprepro) est trop vieux et ne peut pas supporter les paquets 22.04 et 24.04

il faudrait donc,

  • soit télécharger et installer manuellement les .deb depuis les releases github
  • soit trouver et mettre en place un nouveau repo compatible, comme aptly, mais qui casserait la compat avec l'ancien systeme (il faudra desisntaller et reinstaller geotrek-admin, mais la configuration -dossier /opt/geotrek-admin - serait bien entendue préservée)

Côté compatibilité, les outils annexes screamshotter (capture de cartes) et convertit (conversion de documents) sont d'ore et déjà prêts pour être installés sur des ubuntu 22 et 24.
Il ya quelques dépendences à mettre à jour et quelques lignes de codes à adapter pour tout faire fonctionner.

La question est plus de savoir quelle strategie adopter sur les paquets debian, côté version de python et dépot que de quantité de temps à y investir.

Si on est ok pour forcer l'utilisation de python 3.12 et d'isnatller les .deb depuis les relases github, ç peut aller tres vite.

@submarcos submarcos changed the title Ubuntu 22.04 Jammy support Support Ubuntu > 20.04 Nov 21, 2024
@submarcos submarcos linked a pull request Feb 7, 2025 that will close this issue
11 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant