Auto-update Windows Xibo player

Most modern software automatically updates, so I would like to see the same for Xibo player, especially on Windows.

Ideally, this would be done like in Google Chrome. For Chrome, there is a program called Chrome (the browser itself) and a program called GoogleUpdater. GoogleUpdater is run by a scheduled task that runs as SYSTEM (to ensure it can update without admin rights). It has two triggers: logon of any user and a daily time.

When GoogleUpdate updates Chrome, it actually installs the new version into a new directory so there are always 2 versions of Chrome installed. Once Chrome is restarted, it “switches” to the new directory. This works because no config files are stored with the Chrome binaries. This also allows you to revert to the previous (and presumably working) version of Chrome assuming things are not going well with the new version. (This is rarely needed, though.)

Ideally, we could control client updates from the Xibo CMS:

Automatic Windows Client Updates: Yes/No/Unmanaged
Yes: enable the scheduled task
No: disable the scheduled task
Unmanaged: leave the status of the scheduled task alone and never configure whether it is enabled or not; this is so admins who have another tool to manage the scheduled task can do so without interference from the Xibo CMS

Update Deferral: 0 days through 60 days
The amount of time after a new release to wait to install new Xibo players. 0 days means to install immediately; 60 days means to wait 60 days after release to do the installation.

Update Installation Time/Day:
Two options:
A. Daily Installation:
Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and/or Saturday: which day(s) you of the week
Time: the time of day on which you want the install to occur

B. Monthly Installation:
First, Second, Third, or Fourth: which week of every month
Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday: which day of every month
Time: the time of day on which you want the install to occur

2 Likes

I can’t speak for the developers, but it would be definitely faster for you to create a update service yourself, or even a managed batch you can use task scheduler in windows to run every once in a while. You can use wget to pull the new installer down if you version logic dictates.

Understood, but from a purely commercial and compliance standpoint, that’s a competitive weakness for Xibo.

Very often nowadays, automatic updates are a checkbox when purchasing software and services – as in, some enterprise customers would not move forward with a purchase without this functionality. When you tell an enterprise customer that they need to create something on their own to meet their compliance requirements, I can assure you that isn’t a great place to be.

Their paid products definitely support updating via the CMS automatically, like the Android or Smart TV versions. The xibo customer (you and me etc.) needs to download the update and upload it to our own servers manually, then the cms handles distributing and installation

The Windows player is open source, so you compile your own version and manage it’s features and versioning yourself was all I was trying to say. You could use SCCM or Intune to handle deploying it with your image without having to do any coding. Auto updating without testing the crap out of it isn’t a great idea in any environment, and in a large deployments it’s almost unheard of. Imagine having to roll back a couple thousand machines because some auto update broke a feature that your particular deployment uses, but was phased out in a newer version. To each their own though.

You don’t need to worry about purchasing it on windows platform since you can do it all essentially for free!!

All I can tell you is that competitors and other software support auto updating out of the box without customers having to (a) compile anything whatsoever, (b) deploy anything via Intune other than the initial installation, and (c) hesitate to immediately deploy updates. This is done by other products today, so it isn’t like this is an insurmountable goal.

Imagine having to tell Chrome users “well, if you want automatic updates, you’ll need to go compile it yourself!” Or “better be careful before you update Chrome! Things might break!” Chrome sometimes updates multiple times per week and rarely has issues. Users of Chrome do not even know that updates are occurring, and that is a great place to be. Not being able to do that today is a team-process issue, not an unsolved computer-science problem. It takes planning.

There’s nothing wrong with expecting more from your software. That’s why we are paying for it – in hopes that investment results in more time being spent taking care of these basics.

There’s not even an option to buy the windows player from xibo is there ? For the sake of not having to continue this discussion I really hope they put the auto updates in for you.

If I had auto-update a few years ago with windows client, 50 windows clients that are scattered around the country would go dark because of intel cpu which has a bug with cef-sharp.

Test your apps with your own hardware before pushing a big update. what if your custom config is not working anymore because of auto update.

There is a reason why they don’t build in auto update, if it works, don’t touch it.

1 Like

That really shouldn’t be the case anymore. We don’t live in a “don’t touch it if it isn’t broke” world anymore. That mentality is how vulnerabilities don’t get patched in a timely manner. Yes, even your signage can have vulnerabilities, and they should be promptly patched. No software is exempt.

In addition, enterprises and governments have compliance regulations they have to follow, so it doesn’t even matter how they feel about it. They must promptly patch, come hell or high water, because their regulatory bodies say so. Yes, that can be done using third-party tools, but I am telling you first-hand that many enterprises dislike that. They prefer an all-inclusive package that takes care of itself.

What’s amazing to me is that, judging by the responses so far in this thread, having an autoupdater is controversial. Reading these types of responses makes me and other enterprise users of Xibo wonder if maybe Xibo isn’t for enterprise – not even the paid hosted version. Maybe Xibo is relegated to a hobbyist or small-business niche, since having an auto updater is apparently considered hearsay opposite the values of the goals of Xibo.

In enterprise (especially in the F500 category), I can assure that automatic patching is considered a minimum. When potential enterprise customers read that auto updates are not only not on the radar but are actively disliked by the community, there is not much hope for Xibo becoming an enterprise-grade solution.

Any auto update feature can have manual option or scheduled option to push updates.

IMO this would be an incredible feature to have. Next best thing would be a working Linux Player so as not have to use Windows at all :smile:

2 Likes

Hello @loosus

The people who replied do not work for Xibo.
Let the Xibo employees answer and I’m sure they’ll find your feature request interesting.

I also had this thought about auto updating Windows players but :

  1. Windows players are free
  2. Most of the time, I change the windows player by Android or Samsung/LG (many advantages to change)
  3. Automatic updates are not an ideal solution. You need a period of testing and validation before deployment.

However, I hope that this functionality will be added.

Regarding your comments:

I can confirm that Xibo is up and running in very large companies.

Unfortunately, it’s not very popular because it’s opensource. Lot of companies think that by paying, they’ll get a more advanced solution, which is not true!

1 Like

In my industry (U.S. government agency), there are some features that Xibo doesn’t support that prevents it from being popular. We have some minimums, and Xibo doesn’t meet them. My agency is considered low-risk so I could get an exception, but most cannot.

What would help:
Common Alert Protocol support
Automatic updates for clients
SOC 2 or ISO 270001 certification (for Xibo’s hosted solution)

I would have thought data sovereignty laws would restrict your allowed use of xibo as the cloud providers are in, but also outside of the USA.

Not for a signage service. (There are certain countries like Iran that are banned across the board but not somewhere like the U.K.)

The threat model:
Xibo data breach: low risk
Reputational damage: medium risk
Lateral movement to internal signage devices: medium risk

Always good to see a lively conversation - hopefully everyone managed to see each others points of view in the end.

To come at this from an “official” standpoint, we have no objection to supporting automatic updates on Windows, provided those are controlled by the CMS in some way, so that they can be opt-in and out of hours. The same mechanism offered for Android/Samsung/LG/etc would be ideal.

The reason it has not been done is simply down to time and priorities. It is possible to auto update via group policy or scheduled tasks, so while there is a partial solution it hasn’t had attention. The squeaky wheel gets the grease.

We’ve started work on CAP support - our biggest challenge in development is finding good CAP feeds/partners to work with. Any suggestions welcome here.

Automatic updates for clients

Windows is the only platform we do not support automatic updates; see above.

SOC 2 or ISO 270001 certification (for Xibo’s hosted solution)

I hear you!

Xibo as a commercial organisation already operates in a way which means we would not need vast changes to adopt ISO27001. It is something we will look at closely in the coming months.

If you choose US as your region all of your data remains inside the US from a data sovereignty standpoint.

Hopefully this provides useful context - I hope everyone have a lovely weekend!

3 Likes

I also think auto-update isn’t a must, because of its risks, BUT some sort of update through the CMS is. Like in webOS where we can upload a (white lable) Build to our CMS Server and push it to one, many or all clients out there at the same time.

I reply here because our company faces the problem right now, that we maybe are forced to update ~250 v3 Windows Clients to v4 around the country (as I described here), so I feel the need and want to write such a post myself ;).

There is third party software that you can use to push updates, however I would recommend extended testing first. Nothing like driving out to remote locations on a weekend because you bricked a client.