EN FR | Sortie de YunoHost 2.6 - Aaron Swartz | YunoHost 2.6 release - Aaron Swartz

FRANÇAIS (english below)

Bonjour tout le monde,

C’est avec beaucoup de plaisir que nous vous annonçons la sortie d’une nouvelle version de YunoHost :tada: ! Un grand merci aux différents contributeurs ayant participé aux développements, aux tests et à la traduction :two_hearts: ! Nous avons décidé de dédier cette nouvelle version à Aaron Swartz, en hommage à son combat pour la culture libre et les communs.

Ci-dessous, vous trouverez la liste des nouveautés de cette version, et plus largement du projet YunoHost depuis la version 2.5 sortie le 24 janvier dernier.

Comment faire la mise à jour ? :arrow_up:

:warning: Rappel: YunoHost 2.x n’est pas compatible avec la nouvelle version de Debian (Stretch) (voir Debian Stretch | YunoHost is NOT YET compatible | YunoHost N'EST PAS ENCORE compatible). Avant de faire cette mise à jour, vous devriez :

Ensuite, la mise à jour est simple : utilisez l’interface d’administration pour faire la mise à jour, ou bien via la ligne de commande :

$ yunohost tools update 
$ yunohost tools upgrade --ignore-apps

SI vous souhaitez bénéficier de certaines optimisations pendant la restauration de vos backups, vous pouvez également installer le paquet archivemount :

$ apt-get install archivemount

Nouveautés pour les utilisateur·ices :busts_in_silhouette:

Gestion des listes d’application depuis l’interface web :

Il était déjà possible de gérer les listes d’applications via la ligne de commande : c’est désormais possible également dans l’interface web. Les listes d’applications permettent de lister les applications installables et de mettre à jour plus facilement les applications installées.

Par défaut, seule la liste d’applications officielle est présente, mais vous pouvez ajouter celle des applications communautaires ou celle du projet La Brique Internet.

Interface pour gérer les listes d'applications

Textes d’aide lors d’installation d’applications

À mesure que les apps seront mises à jour, des textes d’aides devraient apparaître lors de leur installation, permettant de mieux comprendre les informations demandées. Ci-dessous, un exemple est visible (avec des faux-textes pour les tests) :

Exemples de textes d'aide pendant l'installation d'une app

Changer l’url d’une application

Une nouvelle action a été introduite pour les applications, permettant (en ligne de commande pour l’instant) de changer l’adresse à laquelle elles sont installées. Par exemple :

$ yunohost app change-url strut -d exemple.com -p /strut

La disponibilité de cette action est spécifique à chaque application. Pour le moment, aucune application ne supporte cette action, mais elle deviendra disponible au fur et à mesure que les packageurs intègrent cette fonctionnalité dans les applications.

Optimisation du système de sauvegarde

La gestion de l’espace disque a été fortement améliorée lors du processus de sauvegarde. Idem pour le processus de restauration. Afin de bénéficier au mieux des améliorations nous vous conseillons d’installer archivemount si votre système supporte fuse.

Il devient également possible de restaurer une archive sans le fichier info.json associé.

De nombreuses autres améliorations ont été faites, et le terrain est préparé pour l’intégration de borg-backup.

Renforcement du chiffrement HTTPS

La liste des algorithmes de chiffrement utilisés pour HTTPS a été légèrement renforcée. Le fait que beaucoup de téléphones Android soient encore sous une version antérieur à la version 5 nous a contraint à implémenter la recommandation « intermédiaire » de Mozilla plutôt que la recommandation “moderne”. Cette recommandation “intermédiaire” permet le support des logiciels suivants:

Firefox 1, Chrome 1, IE 7, Opera 5, Safari 1, Windows XP IE8, Android 2.3, Java 7

Un nouveau système de gestion des paramètres ayant été inclus dans YunoHost, nous prévoyons de l’utiliser bientôt pour permettre à ceux qui le peuvent de passer à la configuration “moderne” proposée par Mozilla.

Redéfinir le mot de passe administrateur devient facile

Un script a été intégré afin de pouvoir redéfinir le mot de passe administrateur facilement (il est stocké dans l’annuaire LDAP), dans le cas où ce mot de passe aurait été perdu mais que l’on dispose tout de même d’un accès root à la machine.

Exemple d’utilisation:

$ yunohost-reset-ldap-password

Divers correctifs

Cette nouvelle version a aussi été l’occasion pour nous de corriger un nombre conséquent de bugs, concernant la gestion des DNS, l’affichage des tuiles d’applications dans l’interface utilisateur, le système de régénération de configuration et bien d’autres.

Tous les détails sont disponibles dans la feuille de route 2.6 sur Redmine, dans les notes de versions (yunohost, yunohost-admin, moulinette, SSOwat) et dans le jalon GitHub.

Nouveautés pour les empaqueteurs d’applications :package:

Cette version apporte de nombreux changement dans la façon dont sont gérées les applications. Aussi si vous adoptez ces changements dans vos scripts, n’oubliez pas de mettre à jour dans le manifeste la dépendance à yunohost 2.6.4.

Le script d’action “change_url”

Nous avons présenté la nouvelle fonctionnalité “Changer l’url d’une application”, pour que les utilisateurs de votre application puissent en bénéficier, vous devez créer le script contenant les modifications (de nginx, de votre base de donnée, etc.). L’application multi_webapp donne un exemple d’utilisation (ainsi que cette PR en cours de validation).

Exécution des scripts avec l’utilisateur root

Cette nouvelle version exécute les scripts des applications en tant qu’utilisateur root. Vous n’êtes donc plus obligé d’indiquer sudo devant chaque commande nécessitant d’être super-utilisateur. (Toutefois, si vous souhaitez que votre paquet reste compatible avec les version antérieures, vous devrez tout de même préfixer vos commandes avec sudo.)

Utiliser « _common.sh » dans les scripts de restauration

Il est désormais possible d’intégrer des scripts supplémentaires dans le scripts de restauration. Par convention, ces scripts génériques sont appelés « _common.sh », pour y parvenir il faut le faire de cette façon :

source ../settings/scripts/_common.sh

Nouveaux helpers

Enfin, de nombreux helpers ont été ajouté ou modifié dans cette version. Notamment, les helpers concernant le backup (ynh_backup, ynh_restore et ynh_restore_file) ont été introduits ou modifier pour simplifier grandement l’écriture des scripts de backup et restauration. En attendant la mise à jour de la documentation à ce sujet, vous pouvez lire la documentation des helpers directement dans les fichiers bash où ils sont définis.

Liste des nouveaux helpers :

  • ynh_restore et ynh_restore_file (#275)
  • ynh_secure_remove (#281)
  • ynh_setup_source (#282)
  • ynh_webpath_available et ynh_webpath_register (#235) (remplace la commande yunohost app checkurl, désormais dépréciée)
  • ynh_mysql_generate_db et ynh_mysql_remove_db (#236)
  • ynh_store_file_checksum et ynh_backup_if_checksum_is_different (#286)
  • ynh_replace_string (#280)
  • ynh_local_curl (#288)
  • ynh_normalize_url_path (#234)
  • ynh_abort_if_errors (#245)
  • ynh_install_app_dependencies et ynh_remove_app_dependencies (avec equivs) (#247)
  • ynh_use_logrotate et ynh_remove_logrotate (#248)
  • ynh_no_log (#230)
  • ynh_clean_setup (#245)
  • ynh_system_user_create et ynh_system_user_delete (#237)
  • ynh_find_port (#233)

Liste des helpers modifiés:

Quelque chose ne marche pas :bug: ?

Si vous rencontrez des problèmes pendant la mise à jour, n’hésitez pas à rapporter un bug sur le bugtracker (nécessite un compte) ou a demander de l’aide sur le chat de support ou sur le forum !

Et maintenant ? :space_invader: :telescope:

À moyen terme, nous allons bien entendu continuer de corriger les bugs pour améliorer la stabilité de YunoHost, et de travailler sur la documentation et l’internationalisation. Nous prévoyons de travailler sur le support et la migration vers Debian Stretch et de poursuivre l’intégration de borg-backup au sein de YunoHost pour arriver à un système de backup bien plus efficace !

Venez contribuer ! :construction_worker:

Si vous aimez YunoHost, n’hésitez pas à filer un coup de main ! Il n’est pas nécessaire de coder ni même de s’investir sur le long terme pour contribuer : le simple fait de parler du projet est une contribution en soi. Vous pouvez partager votre expérience en documentant, aidant les autres ou en rapportant des bugs. Vous pouvez également participer à la traduction !

Pour ceux plus proches de la technique, n’hésitez pas à regarder comment packager des applications ou développer et contribuer sur le cœur de Yunohost. Nous recherchons en particulier des développeurs python et/ou des personnes familières avec les paquets Debian.


ENGLISH

Hi everybody,

It is with great pleasure that we are releasing a new version of YunoHost :tada:! A big thank you to all contributors who participated in all aspects of its development, tests and translation :two_hearts:! We chose to dedicate this new release to Aaron Swartz in honour of his fight to support free culture and commons.

Here you’ll find a description of the new features packed in this new version, and some more general news regarding the YunoHost project since version 2.5 out on 24 January.

How to upgrade? :arrow_up:

:warning: Remember: YunoHost 2.x is not compatible with the new Debian release (Stretch) (see Debian Stretch | YunoHost is NOT YET compatible | YunoHost N'EST PAS ENCORE compatible). Before updating, you should:

Afterwards, the upgrade is simple: use the admin interface or the following command line:

$ yunohost tools update 
$ yunohost tools upgrade --ignore-apps

If you would like to benefit from some optimisations when restoring backups, you can also install the archivemount package:

$ apt-get install archivemount

New features for users :busts_in_silhouette:

Management of the list of applications from the web interface:

It was already possible to manage application lists via the command line, it is now also possible via the web interface. Application lists help to show available apps ready for installation and to upgrade installed applications more easily.

By default, only the official application list is available, but you can add the community list or the Internet Cube list.

Interface to manage application lists

Help texts while installing applications

As apps are being updated, help texts should appear during installation. This will help you better understand what information is needed when filling the form.

Help text while installing an app

Changing the application URL

A new action has been introduced for applications, enabling to change the address where they are installed. This is only enabled in command line for now. As an example:

$ yunohost app change-url strut -d exemple.com -p /strut

Availability of this action is dependent on each application. For the moment, no application supports this action, but it will gradually be made available as packagers integrate this feature.

Optimization for the backup system

Disk usage has been extensively improved during the backup and restore processes. In order to fully enjoy these improvements we recommend installing archivemount if your system supports fuse.

It is also now possible to restore an archive without any info.json.

Many other improvements are included, and everything is in place to integrate borg-backup.

Strengthening of HTTPS encryption

The encryption cyphers used for HTTPS has been slightly improved. Because of many Android phones still being prior to Android 5, we are forced to implement the Mozilla “intermediate” recommendation rather than the “modern” one. This “intermediate” recommandation enables support for:

Firefox 1, Chrome 1, IE 7, Opera 5, Safari 1, Windows XP IE8, Android 2.3, Java 7

A new system for managing parameters has been included in YunoHost. We intend to use it soon to help those who are able to make use of the “modern” configuration proposed by Mozilla.

Resetting the admin password is now made easy

A script has been integrated to easily reset the admin password (it is stored in the LDAP directory) in case it is lost, while you still need to have root access to the machine.

Usage:

$ yunohost-reset-ldap-password

Misc fixes and improvements

This new release was the opportunity to fix numerous bugs, related to DNS management, application tiling display in user interface, configuration regeneration system and much more.

Every details are available on Redmine in the 2.6 roadmap, in release notes (yunohost, yunohost-admin, moulinette, SSOwat) and in the GitHub Milestone.

New features for application packagers :package:

This version provides many new features in the way applications are managed. Thus, if you adopt these changes in your scripts, don’t forget to update in the manifest dependencies to yunohost 2.6.4.

The “change_url” action script

We have presented the new “Change application URL” feature; in order for the users of your application to enjoy this new feature, you must create the script including these modifications (for nginx, for the database, etc.). The multi_webapp application provides a practical example (also see this PR pending validation).

Executing scripts with root

This new version is running application scripts as root. You don’t have to write sudo ahead of each command that needs to be run as root. (However, if you wish your package to be backward compatible, you’ll still have to prefix your commands with sudo.)

Using « _common.sh » in your restore scripts

It is now possible to include additionnal scripts in the restore script. By convention, these scripts are nammed “_common.sh”, to do so:

source ../settings/scripts/_common.sh

New helpers

Finally, many helpers have been added or modified in this version. In particular, helpers related to backup (ynh_backup, ynh_restore andynh_restore_file) have been introduced or changed to greatly simplify scripting for backups and restores. While awaiting the update of the documentation in this regard, you may read the documentation for helpers directly in the bash files where they are defined.

New helpers:

  • ynh_restore and ynh_restore_file (#275)
  • ynh_secure_remove (#281)
  • ynh_setup_source (#282)
  • ynh_webpath_available and ynh_webpath_register (#235) (replaces the yunohost app checkurl command, which is now deprecated)
  • ynh_mysql_generate_db and ynh_mysql_remove_db (#236)
  • ynh_store_file_checksum and ynh_backup_if_checksum_is_different (#286)
  • ynh_replace_string (#280)
  • ynh_local_curl (#288)
  • ynh_normalize_url_path (#234)
  • ynh_abort_if_errors (#245)
  • ynh_install_app_dependencies and ynh_remove_app_dependencies (with equivs) (#247)
  • ynh_use_logrotate and ynh_remove_logrotate (#248)
  • ynh_no_log (#230)
  • ynh_clean_setup (#245)
  • ynh_system_user_create and ynh_system_user_delete (#237)
  • ynh_find_port (#233)

Changed helpers:

Something’s broken? :bug:

If you’re facing issues after upgrading, feel free to report a bug on our bugtracker (an account is needed) or ask for help on our support channel or on the forum!

Now what? :space_invader: :telescope:

In the medium term, we’ll continue to solve bugs to increase YunoHost’s stability, and to work on documentation and internationalization. We plan to work on supporting and migrating to Debian Stretch and to continue the borg-backup inclusion into YunoHost to achieve a much more efficient backup!

Get involved! :construction_worker:

If you like YunoHost, don’t hesitate to contribute! It’s not necessary to code or to invest on the long term to get involved: simply spreading the word is a contribution in itself. You can share your experience by documenting, helping others or by reporting bugs. You can also participate to the translation!

For those closer to the technical side of things, don’t hesitate to have a look at how to package apps or develop and contribute to YunoHost core. We are especially looking for Python developers and/or people familiar with Debian packaging.

10 Likes