YunoHost 4.2 release / Sortie de YunoHost 4.2

:uk: English version

We are glad to announce the release of YunoHost 4.2 :partying_face: !

This release includes the following major changes :

  • :sunflower: Rewrite of the webadmin with Vue.js: The webadmin was entirely rewrote using a modern framework, allowing for miscellanous improvement, better experience and opening the door for more cool things in the future! (Kudos to Axolotle for the outstanding amount of work that went into this!)

  • :three: Python 2 → Python 3: YunoHost finally transitioned to Python 3 as the internal programming language, considering Python 2 is deprecated for quite some time now! This should be transparent for all users, but is an important change for us and paves the way for the transition to Bullseye, the next Debian version coming this summer. This work was supported by Code Lutin!

  • :black_joker: Improved update strategy for nohost.me / noho.st / ynh.fr dyndns domains: if you’re using these domains, you probably noticed a bunch of emails related to failed updates, or that the update commands would pile up and induce slowness. Various fixes and tweaks have been done to have a more clever, efficient workflow.

  • :key: SFTP and SSH permissions. SFTP / SSH access can now be managed as a regular permission just like Email and XMPP. This also comes with a small rework of the SSH configuration. :warning: Note that, by design, you can’t grant this permission to all users. You must grant it to individual users, or create a group and grant the permission to this group. We also recommend to be careful and not grant this permission to people you don’t really trust.

  • :ambulance: Many improvements on system backups, including a significant rework of the actual content of system backups which should now be more sensible and prevent inconsistencies.

  • :sparkles: Misc internal improvements and cleanup: behind the scene we’re simplifying the internals of the postinstall, adding new packaging helpers and consolidating the existing ones, cleaning/refactoring various pieces of codes.

Thanks to all contributors :heart: ! (Axolotle, Bram, C. Wehrli., C. Mercier, cyxae, D. Vasilev, Daniel, Dave, Deja la vida volar, Dominik B., Éric G., FĂ©lix P., Flavio C., grenagit, JosuĂ©, Kay0u, Krzysztof N., Lapineige, ljf, Manu Bu, Mathieu M., MiloĆĄ K., MrMorals, Nils V.Z., panomaki, penguin321, ppr, QuentĂ­, Radek S., Scapharnaum, SĂ©bastien M., Tom_, T. Valiiev, xaloc33, yalh76, Yasss Gurl, Yifei D., 
 and all the testers that provided feedback!)

:gift: Changelog

Major changes

Show/hide

Misc fixes / enhancement

Show/hide

App packaging

Show/hide
  • [enh] helpers, refactoring: Helpers for nginx, php-fpm, systemd and fail2ban now use ynh_add_config internally to handle conf files (YunoHost#1118)
  • [enh] helpers: Sane default permissions for files added using ynh_add_config and ynh_setup_source (YunoHost#1188)
  • [enh] helpers: Add composer helpers (YunoHost#1090)
  • [enh] helpers: Add multimedia helpers and hooks (YunoHost#1129, 47420c62)
  • [enh] helpers: Add --keep option to ynh_setup_source to help with keeping files that would get overwritten during upgrade (YunoHost#1200)
  • [enh] helpers: Upgrade n to v7.1.0 (YunoHost#1178, YunoHost#1197)
  • [enh] helpers: ynh_port_available: also check ports used by other apps in settings.yml (381f789f)
  • [mod] helpers: Define YNH_APP_BASEDIR to be able to properly point to conf folder depending on the context the app script is running in (YunoHost#1172)
  • [fix] ynh_systemd_action: Fix case where service is already stopped (#1222)
  • [fix] helpers, doc: Update template for the auto-generated helper doc (now that the official doc is using Grav) (YunoHost#1167, YunoHost#1168, 59d3e387)
  • [mod] helpers, refactoring: Use jq / output-as json to get info from yunohost commands instead of scraping with grep (YunoHost#1160)
  • [fix] helpers: Misc fixes/enh (b85d959d, db93b82b, ce04570b, 07f8d6d7)

:warning: Notes for advanced users and packagers

Show/hide
  • If you manually modified the SSH configurations, please be warned that there’s a significant and important update of /etc/ssh/sshd_config and you should make sure to apply it. Not doing so leaves a security risk. The diagnosis should warn you about it after the upgrade.
  • There’s a new setting named security.ssh.port. We recommend using it instead of manually modifying the SSH and fail2ban’s configurations.
  • There’s a new setting named ssowat.panel_overlay.enabled to disable the SSOwat’s panel overlay instead of manually tweaking nginx’s conf.
  • yunohost user group update is now splitted into group add and group remove (to add/remove users to/from a group)
  • Options --add and --remove of yunohost user permission update were removed, check permission add and permission remove to grant/deny permissions to user or groups.
  • yunohot dyndns installcron / removecron is deprecated / not relevant anymore.
  • yunohost tools update / upgrade should now be used like this : yunohost tools update apps system (instead of --apps or --system)
  • yunohost diagnosis ignore --add/remove-filter is now splitted into yunohost diagnosis ignore/unignore
  • Logs can now be shared with yunohost log share <log_id> (instead of yunohost log display <log_id> --share)
  • Commands yunohost user ssh allow/disallow were removed, granting/denying SSH access is now done with the regular permission system.
  • Many routes were changed in the web API to be more RESTful and consistent. Though we expect that only Yunohost’s webadmin actually use the web API, but in case you did write a custom piece of software relying on the web API, be sure to check the changes.

Packagers

  • Check the ‘App packaging’ detailed changelog
  • It is strongly encouraged to use ynh_add_config instead of manual cp and gazillions of ynh_replace_string (not doing so is likely to trigger linter warnings in the future)
  • It is strongly encouraged to check that you add proper permissions to the install dir ($final_path), and in particular to chown o-rwx $final_path
  • Composer and multimedia helpers are now official

:arrow_up: How to upgrade

From the web admin

  • Go to “Update system”
  • Then hit the “Update” button in the “System” section.
  • This may take a few minutes, grab your favorite beverage. You will need to re-log into the webadmin once it’s done.
  • Make sure to force-refresh the browser cache (Ctrl+Shift+R in Firefox)
  • Make sure that everything went well (green check :white_check_mark:) in Tools > Logs
  • Make sure to upgrade my_webapp et borgserver if you’re using these apps

Or from the command line

$ sudo yunohost tools update
$ sudo yunohost tools upgrade --system
  • Make sure to upgrade my_webapp et borgserver if you’re using these apps

:scroll: Other project news

The epic app packaging community keeps doing a stunning amount of work with again 30~40 new apps since the 4.1 release, while maintaining all the other apps!

On the core side, as explained in the release note, the transition to Python 3 and the rewrite of the webadmin in VueJs is quite important for the dev team. The next big priority of the project is to prepare the transition to Bullseye, the next Debian version expected to be released early this summer - thereby catching up with our historic ~1 year delay with respect to the Debian cycle :stuck_out_tongue_winking_eye: !


:fr: Version française

Nous sommes heureux d’annoncer la sortie de la version 4.2 :partying_face: !

Voici les points clefs de cette version :

  • :sunflower: RĂ©Ă©criture de la webadmin en Vue.js: L’interface d’administration a Ă©tĂ© entiĂšrement rĂ©Ă©crite Ă  partir d’un framework web moderne, permettant diverses amĂ©liorations et une meilleur expĂ©rience, et nous ouvre la porte Ă  d’autres trucs cool pour le futur ! (Chapeau Ă  Axolotle pour l’énorme quantitĂ© de travail que cette rĂ©Ă©criture reprĂ©sente!)

  • :three: Python 2 → Python 3: YunoHost est finalement passĂ© en Python 3 comme language de programmation interne, Ă©tant donnĂ© que Python 2 Ă©tait dĂ©prĂ©ciĂ© depuis un moment dĂ©jĂ  ! Ce changement devrait ĂȘtre transparent pour les utilisateurs, mais reste un changement important sous le capot. Cela prĂ©pare aussi le terrain pour la transition Ă  Bullseye, la prochaine version de Debian attendue au dĂ©but de l’étĂ©. Ce travail a Ă©tĂ© soutenu par Code Lutin!

  • :black_joker: Meilleure stratĂ©gie de mise Ă  jour pour les domaines nohost.me / noho.st / ynh.fr: si vous utilisez l’un de ces domaines, vous avez probablement dĂ©jĂ  remarquĂ© certains emails Ă  propos d’échecs de mise Ă  jour automatique du dyndns, ou bien que les commandes correspondantes peuvent s’empiler et crĂ©er des ralentissement. Plusieurs correctifs et ajustements on Ă©tĂ© fait pour avoir un systĂšme plus intelligent et efficace.

  • :key: Permissions pour SSH et SFTP. L’accĂšs SFTP/SSH peut maintenant ĂȘtre gĂ©rĂ© comme une permission standard comme c’est le cas pour l’email et XMPP. Ce changement implique aussi une mise Ă  jour de la configuration SSH. :warning: À noter que, volontairement, cette permission ne peut pas ĂȘtre donnĂ©e au groupe “Tous les utilisateurs”. Il faut forcĂ©ment donner cette permissions Ă  des utilisateurs individuels, ou Ă  un groupe prĂ©cis. Nous recommendons Ă©galement d’ĂȘtre prudent et de ne pas donner cette permission Ă  des personnes en qui vous n’avez pas rĂ©ellement confiance.

  • :ambulance: Des amĂ©liorations sur les backups du systĂšme, en particulier du contenu effectif des backups du systĂšme qui devraient maintenant avoir plus de sens et prĂ©venir certaines incohĂ©rences.

  • :sparkles: Diverses amĂ©liorations et nettoyage: derriĂšre les rideaux, nous avons simplifier le fonctionnement interne de la postinstall, il y a des nouveaux helpers pour les packageurs d’application, ainsi que des consolidations des helpers existants, et nous avons nettoyĂ©/refactorisĂ© diverses parties du code.

Merci Ă  toutes les contributeurices :heart: ! (Axolotle, Bram, C. Wehrli., C. Mercier, cyxae, D. Vasilev, Daniel, Dave, Deja la vida volar, Dominik B., Éric G., FĂ©lix P., Flavio C., grenagit, JosuĂ©, Kay0u, Krzysztof N., Lapineige, ljf, Manu Bu, Mathieu M., MiloĆĄ K., MrMorals, Nils V.Z., panomaki, penguin321, ppr, QuentĂ­, Radek S., Scapharnaum, SĂ©bastien M., Tom_, T. Valiiev, xaloc33, yalh76, Yasss Gurl, Yifei D., 
 et tous les testeurs qui ont donnĂ© des retours!)

:gift: Changelog

(voir la version anglaise)

:warning: Notes pour les utilisateurs avancés et packageurs

(voir la version anglaise)

:arrow_up: Comment mettre Ă  niveau

Depuis la webadmin

  • Aller dans “Mettre Ă  jour le systĂšme”
  • Puis cliquez sur “Mettre Ă  jour” dans la section “SystĂšme”.
  • La mise Ă  jour peut prendre quelques minutes. Il vous faudra ensuite vous re-logger Ă  la webadmin une fois terminĂ©e.
  • Forcez le raffraichissement du cache navigateur (Ctrl+Shift+R in Firefox)
  • Assurez-vous que tout s’est bien passĂ© (petite coche verte :white_check_mark:) dans Outils > Journaux
  • Assurez-vous de mettre Ă  jour my_webapp et borgserver si vous utilisez ces apps

Ou Ă  partir de la ligne de commande

$ sudo yunohost tools update
$ sudo yunohost tools upgrade --system
  • Assurez-vous de mettre Ă  jour my_webapp et borgserver si vous utilisez ces apps

:scroll: Autres nouvelles du projet

La communautĂ© des packageurs d’app continue d’effectuer un travail stuppĂ©fiant, avec entre 30 et 40 nouvelles apps depuis la sortie de la 4.1, tout en continuant de maintenir les autres apps !

Du cĂŽtĂ© du core, comme expliquĂ© dans les notes prĂ©cĂ©dentes, la transition Ă  Python 3 et la rĂ©Ă©criture de la webadmin en VueJs sont d’une grande importance pour l’équipe de developpement. La prioritĂ© suivante est de prĂ©parer la transition vers Bullseye, la prochaine version de Debian attendue au dĂ©but de l’étĂ© - et ainsi rattraper notre retard historique de ~1 an par rapport au cycle de Debian :stuck_out_tongue_winking_eye: !

43 Likes

Mise à jour effectuée sans problÚme ! Merci infiniment pour votre super travail !!!

2 Likes

Yeah, merci pour tout le travail

1 Like

Migration rĂ©alisĂ©e, l’interface est propre. Merci pour votre travail.

1 Like

Bonjour,
Super boulot félicitation pour la nouvelle interface et tout le travail réalisé en interne.
Merci.
:+1: :crazy_face: :heart: :100:

1 Like

Bonsoir,
J’ai fais la mise Ă  jour avec le webadmin sur mon serveur hĂ©bergĂ© par online.net. En essayant de me connecter Ă  mon interface webadmin, j’ai ce message d’erreur. J’ai toujours accĂšs en ssh en root au serveur. Pourriez-vous m’aider? En vous remerciant.

1 Like

Oui j’ai eu le mĂȘme problĂšme, il suffit de faire en ssh un sudo yunohost service restart yunohost-api et le tour est jouĂ©

1 Like

Merci Ă  l’équipe pour cette excellente mise Ă  jour, comme d’habitude !
Je suis bluffĂ© par le nouveau look du webadmin (et ses couleurs plus prononcĂ©es). J’aime beaucoup la possibilitĂ© de suivre l’historique des derniĂšres actions !

Tout s’est passĂ© dans la plus grande facilitĂ©, merci :star_struck:

Same issue with the API. Restarting it seemed to not work for me:

sudo yunohost service restart yunohost-api
/usr/lib/python3.7/importlib/_bootstrap.py:219: RuntimeWarning: greenlet.greenlet size changed, may indicate binary incompatibility. Expected 152, got 144
  return f(*args, **kwds)
/usr/lib/python3.7/importlib/_bootstrap.py:219: RuntimeWarning: greenlet.greenlet size changed, may indicate binary incompatibility. Expected 152, got 144
  return f(*args, **kwds)
/usr/lib/python3.7/importlib/_bootstrap.py:219: RuntimeWarning: greenlet.greenlet size changed, may indicate binary incompatibility. Expected 152, got 144
  return f(*args, **kwds)
/usr/lib/python3.7/importlib/_bootstrap.py:219: RuntimeWarning: greenlet.greenlet size changed, may indicate binary incompatibility. Expected 152, got 144
  return f(*args, **kwds)
/usr/lib/python3.7/importlib/_bootstrap.py:219: RuntimeWarning: greenlet.greenlet size changed, may indicate binary incompatibility. Expected 152, got 144
  return f(*args, **kwds)
Success! Service 'yunohost-api' restarted

Whaaa!
La vitesse et toutes ces belles couleurs dans le diagnostic !
Merci !!

2 Likes

Merci effectivement c’est bon pour moi, bonne soirĂ©e.

Mise Ă  jour sans accroc.
Merci pour tout ce boulot !

1 Like

merci, tout fonctionne nickel !

Salut a toute l’equipe!

je viens de faire la MAJ (Raspberry Pi 4 Buster, depuis 4.1.8) et j’ai eu a redemarrer yunohost-api via systemctl. Mis a part cela, tout semble tres bien fonctionner, la nouvelle webadmin est un regal de vitesse, grandiose!

Merci aussi pour le diagnostic SSH, j’ai pu mettre a jour ma config sans heurts via la suggestion avec --dry-run --with-diffs

Un grand merci pour tout votre travail, Yunohost est vraiment une superbe plateforme :+1: :sunglasses: :partying_face:

2 Likes

Encore de belles Ă©volutions, merci et fĂ©licitations, le travail est Ă©norme! j’ai Ă©tĂ© surpris par la fluiditĂ© de la Webadmin, trĂšs trĂšs rapide avec cette rĂ©Ă©criture.
Mise à jour passée sans encombre une fois de plus, Yunohost est trÚs fiable me concernant.

1 Like

Merci Ă  l’équipe pour le travail sur cette mise Ă  jour !

Elle s’est dĂ©roulĂ©e sans soucis Ă©galement de mon cotĂ©, seulement je n’arrivais plus Ă  me connecter Ă  la Web Admin. Je pense que c’est dĂ» Ă  la prĂ©sence d’un accent dans mon mot de passe. J’ai d’abord tentĂ© de relancer l’api (mais ça n’a rien changĂ©) puis de changer mon mot de passe en SSH avec yunohost tools adminpw j’ai retirĂ© l’accent et cette fois j’ai pu me connecter.

1 Like

Salut,
Un bug bizarre de mon cĂŽtĂ© : aprĂšs mĂ j, sur l’interface admin, il me disait “mot de passe incorrect”. En ssh, j’arrivais Ă  me connecter sans problĂšme. AprĂšs quelques tests, c’est le symbole “€” dans mon mot de passe qui n’est pas acceptĂ© dans l’interface admin, alors qu’il l’était avant. En changeant le mot de passe en ligne de commande en supprimant le €, tout marche normalement.
Merci !

1 Like

Merci Ă  vous pour cette nouvelle mise Ă  jour !
Tout ce boulot pour nous permettre d’avoir facilement un serveur qui bouffe quelques milliwatts Ă  la maison (RPi plugged), bien loin de la gourmandise de ces gĂ©ants du web, gloutons de nos donnĂ©es


Merci pour le taf ! Et la simplification des tĂąches d’admin :slight_smile: (un sacrĂ© gain de temps quand on en n’a plus Ă  consacrer Ă  ce type de taf!)

1 Like

Bonjour Ă  toutes et tous,

Mise Ă  jour ce matin, et je rejoins les commentaires ci-dessus : tout s’est parfaitement dĂ©roulĂ© (il a juste Ă©tĂ© nĂ©cessaire de relancer yunohost-api) et surtout, quelle rapiditĂ© ! :heart_eyes:

Bref, c’est un travail trĂšs intĂ©ressant et pertinent, Ă  mon sens, qui vient d’ĂȘtre rĂ©alisĂ©. Bravo ! :+1:

Question complémentaire : avez-vous audité un peu en interne cette nouvelle interface en terme de sécurité ?

Sangokuss