YunoHost 4.2 testing

Hello everyone!

We just released a new testing version for YunoHost and would be happy to receive feedback before releasing it as a stable version :yum:

For now, this release essentially 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 improvements and opening the door for more cool things in the future! As it is quite an important change, we are looking for feedback on the various UI/UX aspects of the interface to polish it before going stable.
  • :three: Python 2 → Python 3: YunoHost is 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 tweaks have been done to have a more clever workflow.
  • :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
  • :radio: Stay tuned ! We have a bunch of other things planned for this release, to be added in the coming days / weeks :stuck_out_tongue_winking_eye:

Thanks to all contributors :heart: ! (Axolotle, Bram, C. Wehrli., C. Mercier, Daniel, Dave, Éric G., FĂ©lix P., Flavio C., Kay0u, Krzysztof N., 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.)

:hammer_and_wrench: Detailed changelog

Major changes

Misc fixes / enhancement

Show/hide
  • [mod] refactoring, security: Drop legacy-way of passing arguments in hook_exec, prevent exposing secrets in command line args (YunoHost#1096)
  • [mod] refactoring: simpler and more consistent logging initialization (YunoHost#1119, Moulinette#263)
  • [mod] code-quality: add CI job to auto-format code, fix linter errors, cleanups (YunoHost#1142, YunoHost#1161, YunoHost#1162, Moulinette#268)
  • [mod] misc: Prevent the installation of apache2 
 (YunoHost#1148)
  • [mod] misc: Drop old cache rules for .ms files, not relevant anymore (YunoHost#1150)
  • [fix] misc: Abort postinstall if /etc/yunohost/apps ain’t empty (YunoHost#1147)
  • [mod] cli/api: Misc command and routes renaming / aliasing (YunoHost#1146)
  • [enh] cli: Add a new “yunohost app search” command (YunoHost#1070)
  • [enh] cli: Add ‘–remove-apps’ (and ‘–force’) options to “yunohost domain remove” (YunoHost#1125)
  • [enh] diagnosis: Report low total space for rootfs (YunoHost#1145)
  • [fix] upnp: Handle port closing (YunoHost#1154)

App packaging

Show/hide
  • [enh] helpers: Normalize conf template handling for nginx, php-fpm, systemd and fail2ban using ynh_add_config (YunoHost#1118) (N.B. : packagers are also encouraged to use ynh_add_config instead of gazillion number of ynh_replace_string)
  • [enh] helpers: Add composer helpers (YunoHost#1090)
  • [enh] helpers: Add multimedia helpers and hooks (YunoHost#1129, 47420c62)
  • [enh] helpers: Upgrade n to v7.0.2 (YunoHost#1178)
  • [enh] helpers: Define YNH_APP_BASEDIR to be able to properly point to conf folder depending on the app script we’re running (YunoHost#1172)
  • [fix] helpers, doc: Update template for the new doc (grav) (YunoHost#1167, YunoHost#1168, 59d3e387)
  • [enh] helpers: 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)

How to participate to the beta-testing :construction_worker_woman: :construction_worker_man:

:warning: DO NOT do this on a critical production server!

From the command line, you can launch the following command to switch to testing:

curl https://install.yunohost.org/switchToTesting | bash

(If you are familiar with bash scripting, you might want to read what this does before blindly running the command)

You should then be running YunoHost 4.2.x. Before using the webadmin, please make sure to force-refresh the cache of your browser.

What to test? :space_invader: :telescope:

Here are some specific items which are important to check to validate the current work:

  • Browse the new webadmin and report any bug or thing that you think should be polished
  • If you’re using a nohost.me / noho.st / ynh.fr domain with a dynamic IP, check that the domain still gets indeed updated.
  • Possibly, we’re trying to revive the UPnP (an automatic mecanism to forward port from the router). If you’re interested in doing a bunch of tests, please contact us on the dev chatroom.
24 Likes

Installation de la 4.2 parfaitement dĂ©roulĂ©e (vps x86), l’interface est maintenant plus rĂ©active et plus jolie .
Une proposition concernant la position des boutons sur la page d’une app :
aligner sur la droite le bouton «gĂ©rer les groupes et les utilisateurs» pour l’aligner avec les boutons sauvegarder.
Et pourquoi pas la mĂȘme chose pour des boutons «dĂ©finir par dĂ©faut» et «supprimer»

En tout cas trĂšs beau travail.

3 Likes

I finally installed the 4.2. The admin looks very nice.
The overall interaction seems slower.

  • In Applications, for the installed app list to generate it takes 9~10 secondes (on a VPS).
    EDIT: I have tried 4.2 with Raspberry Pi and the app list is generated in 1~2 seconds
 :thinking:

  • In Applications/app This panel is confusing, for example I don’t know what is Permission principle and why it is next to the label fields
    Capture d’écran 1

  • I cannot use the navigation buttons ← → on Firefox to go back to the previous page. EDIT: seems to work now and then it doesn’t


  • In Sauvegarde / local / CrĂ©er une sauvegarde check box are intriguing, they don’t look like check buttons


It is a very nice upgrade. good work team!

1 Like

We may want to unify Applications/appname layout to the one on the left (from utilisateurs/john/Éditer le compte de john) which is clearer.

We could also simplify the layout and keep the logic from other panels:

from this

to this

This panel is displayed during diagnosis action.
Nothing moves for quite long time (30 to 40 seconds) I thought something went wrong, which wasn’t the case.

  • Maybe we should replace The server is processing the action
 by something that shows a progression (bar
) or a little rotating icon in front of the process being executed.
  • The blue dot with diagnosis > run (cĂ©Ă©r/exĂ©cuter) seems to come from a console output and doesn’t make much sense.

1 Like

This link: configuré mes DNS correctement, should open a new window and not replace the admin page.
Capture d’écran 6

Do we need two buttons to share the logs?

2 Likes

I understand the red and yellow color to warn of poor quality app, but do we need purple?

1 Like

I tried to install the 4.2. testing version on a new VPS. After running the install command I get the weird error:

ls: cannot access '/etc/apt/sources.list.d/*': No such file or directory

Full log:

curl https://install.yunohost.org/switchToTesting | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   462  100   462    0     0   3208      0 --:--:-- --:--:-- --:--:--  3208
----
Patching sources.list to enable testing repository...
----
ls: cannot access '/etc/apt/sources.list.d/*': No such file or directory
----
Running 'apt-get update'
----
Hit:1 http://security.debian.org/debian-security buster/updates InRelease
Hit:2 http://deb.debian.org/debian buster InRelease
Hit:3 http://deb.debian.org/debian buster-updates InRelease
Reading package lists... Done
----
Running 'apt-get dist-upgrade'
----
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

The switchToTesting command is meant to be applied on an existing yunohost installation

If you want to install yunohost testing directly (which is as well an interesting test to check postinstall and everything :+1: ) you may want to :

curl https://install.yunohost.org | bash -s -- -a -d testing
1 Like

Yeah that’s the whole thing about “high quality apps”. Personally I’m skeptical about it, the concept never really took off, only 4 apps are “high quality”, and the “good quality” badge is confusing. I would just drop this special rule, and maybe instead add a small gold star for apps level 8+ (instead of purple badges for level 9 apps)

Only weird thing is that maybe gold star’s color may be not-distinct-enought from the yellow-warning of bad quality apps

3 Likes

Hi there,

I swicthed to testing and went for the upgrade. Everything went smoothly :slight_smile:

So far, nothing to declare. The admin panels open faster, and it is prettier for me.

2 Likes

Bonjour tout le monde,

J’ai fait une mise à jour hier soir, notamment sur la 4.2 et je n’accùde plus à la page admin:

API Yunohost ne répond pas
Vraiment désolé de cela.
Vous devez chercher de l’aide sur le forum ou le chat pour corriger la situation, ou signaler le bug sur le bugtracker.
Les informations suivantes peuvent ĂȘtre utiles Ă  la personne qui vous aide :
Erreur: “502” Bad Gateway
Action: “GET” /yunohost/api/installed?locale=fr
Message d’erreur : L’API YunoHost ne rĂ©pond pas. Peut-ĂȘtre que ‘yunohost-api’ est en panne ou a Ă©tĂ© redĂ©marrĂ© ?

Avez vous une idée ? Merci ^^

systemctl restart yunohost-api

??

Merci :sweat_smile:

I made a fresh install and everything worked out of the box. The new web-admin is extremly fast, reacts instantly, really impressive. Nice new windows showing the progress logs during installing an app or running a system update.

One thing I noticed: During the installation process I was not asked if Yunohost should administer the root account.

A wish: Is it possible to re-add the date of the most recent update of any app in the app catalogue? This was removed a few months ago. I found the date useful to check for new apps and to check if slightly outdated apps have been “revived”

EDIT: I upgraded from 4.1 to 4.2 and this worked well also. The only thing that happened was the error message that the yunohost-api stopped responding. After the standard command systemctl restart yunohost-api everything was fine

1 Like

Faut bien la garder sous la main celle-ci :pray:

I got this window while trying to remove Movim. I find the layout a bit confusing. Also the link cliquant ici does not work.