23.11.14~ynh1 - Major update
Hi all,
In a matter of hours, an upgrade to version 23.11.14~ynh1 of the Streams package will appear in the YunoHost admin interface. It is a major update as many things will change from there. I'll try to sum it up for you.
Switch to a git based code management
Until 23.11.11~ynh1, the application code was fetched downloading *.tar.gz archives from the Streams repository. For every new version of the repo, the YunoHost package had to be updated, in order to download a new archive to replace the previous one.
As there are frequent version updates of the repository, the package had to be adapted quite often. Too often, when you think that those using a standalone install simply have to run util/udall to get the latest code. That's what we'll be having now.
After upgrading to 23.11.14-ynh1, the install folder of your (streams) website will also be a local git repository, using the Streams repository as its source for the code. And the code will be upgradable using the util/udall command. Yay!
Automatic code update
The switch to git code management will allow a great change in the way you'll handle the updates. You won't need to care about them any more! They will be performed automatically every night. For those who are using or have used the easyinstall/autoinstall scripts, it's a very similar mechanism.
Basically, while you'll have less maintenance to do, your code will be more up-to-date than ever. How cool is that? If you wonder if it is somehow risky to handle things that way, just know that the 'release' branch of the repo is used by default, so it should be rather safe.
Dev, but let's not go crazy
In the YunoHost admin, for every (streams) install you have, you can find a config panel. Until now you could just adjust PHP-FPM stuff there (You don't know what it is? Don't touch it!). After this update, you'll have a Developer Mode option which will allow you to switch your website code to the 'dev' branch.
If you don't now what it means, best thing is just to keep things the way they are. The 'release' branch is stable enough to be considered usable for the general public, switching to 'dev' means using code that is still testing material. As a wise man once said "
This option should only be used if you're either a professional software developer or a certified lunatic (or both)". Remember that.
Anyhow, if you decide to use the 'dev' branch, note that automatic updates are enabled only for 'release' (which keeps being updated). Also, you will be able to switch back to 'release' only when its code is ahead of your local 'dev' branch. Some will find this annoying, but it's for you own good, people.
Q&A
With all these big changes, is it really safe to upgrade my server?Should be. There was some testing. Like a lot. I already did the switch on my own server. Anyway it's free software, so you'll always get more than what you paid for.
What will be the difference for my users or my daily use?There will be none. (streams) will keep getting better as time passes by, but that has nothing to do with the YunoHost Streams package.
Will the YunoHost package still be updated?Yes, but less often, i.e. if the (streams) installation/upgrade process evolves and/or requires new components, or if new options are added in the config panel of the app in the YunoHost admin.
It read that I can now run util/udall in my install folder, but can I run any command there? Like git something or any script in the util/ folder?You can. But only as app user, with the following command:
$ sudo yunohost app shell streams
(replace 'streams' with 'streams__X' if you have multiple (streams) sites installed, replacing 'X' with the relevant number).
You will then be in /var/www/streams and can run the commands you need.
What if I want to change the hour for the daily updates or disable them?If you ask, you should know how to handle this. Have a look at /etc/cron.d/streams and at /home/yunohost.app/streams and change what you must.
Can I switch to 'dev' and have daily updates anyway?Yes you can. But if you ask, you should know how to do it by yourself.
Help! I switched to 'dev' in the config panel just to have a quick look and now I'm stuck. How can I switch back to 'release'?Two options:
- Wait patiently until 'release' is ahead of 'dev', then make the switch in the config panel,
- Connect through ssh to do the switch as the app user:
$ sudo yunohost app shell streams$ git checkout release(replace 'streams' with 'streams__X' if you have multiple (streams) sites installed, replacing 'X' with the relevant number).
Using git is a bad idea, you should have stuck to downloading the archive. Tarball FTW!That's not a question.
With so little code to write, how come your code is so ugly/messy/dirty/inefficient?I'm in my forties, have 4 demanding kids, and never learned how to code. You think you can do better for this package? Send merge requests!
Thank you so much for your work. How can I ever thank you?You can probably start by thanking the man behind the
Streams repository (aka @
Mike Macgirvin 🖥️).
You can also spread the word and inform you friends and relatives about (streams), invite them to open an account on your server, help them setup their very own. If you have other social media accounts don't fear to use them to promote (streams). If you really feel like doing something significant, maybe make a donation to the FSF, La Quadrature du Net, Amnesty International, support peace all across the world, or do anything than can make the world a better place.
As for me, a simple thank you will do.