Universal install script (From Xwiki hangouts meet 8)

As suggested in the meetup on hangouts, rather than having specific installation targets .deb and what not, why do we not generate a oneshot #!/bin/sh script that detects the operating system that is it is on and uses steps to install Xwiki manually but correctly.

It would be exceptionally extendable and easy to use, if we have users on a more obscure operating system, lets see gentoo for example?

It could prompt or report the emerge command necessary or offer to run them its self, or perhaps the installation script detects the environment and creates a Make for that platform with the given options?

For added flexibility we could even base the script on perl, bearing in mind it is both a B and R dep for almost all operating systems and is almost certainly installed.

as you mention “obscure” operating systems:

C:\Users\rbr>/bin/sh
The system can not find the path specified

C:\Users\rbr>perl
“perl” is not recognized as an internal or external command,
operable program or batch file

windows is obviously a bit more specialist but it is possible to install perl via strawberry or activestate perl :slight_smile: I cannot actually think of a solution that will run natively on Linux Windows and BSD without requiring mono on L/B or Perl on windows :frowning:

But it may not be to problematic to keep a powershell psl inline with the unixy install.sh

In theory I agree with you. Still I feel it might be a lot of work to do it right and maintain it. For example it would certainly be much more complex to rewrite that way what we currently have in the deb packages for the Debian based systems family (a lot of stuff are handled for us: package id change, configuration files merge, downloading and checking version of dependencies, etc.). We could make it a bit simpler by installing the jetty+xwiki package instead of integrating it with Tomcat but still a lot of stuff remaining.

Another thing is that the difference between a native package like deb and an sh installer is huge in term of adoption.

Don’t get me wrong, I think it would be great if we had this kind of script, I just guess the complexity will go through the roof very, very fast.

I’m all in favor of creating community documentation (as you mentioned here) and I actually also asked for something like that here:

“…to dedicate a special section for user contributed howtos, where you see very concrete descriptions of installations, like installing “xwiki 9.x on centos 7.x with tomcat 8.x and mysql 5.x”.”

That also would give you an overview what people want to achieve and see what you (or the maintainer of the said script) would have to implement.

it certainly would have to be held in alpha/beta state for a very long time, as for complexity that really would depend on how far we wanted to extend the idea, but I feel if at first we limited it to very simple (common) types of deployments, it would be a worthwhile and not major time expensive adventure.

From that it would be possible to get a feel for just how many people re interested in such an installation method and it does open the door to so many other users. (So yes a simple jetty deployment for starts may be just the ticket)

Absolutely but I believe on some platforms it will soon because the preferred method (having no other choice than manually installing downloading/installing war standalone)

I feel that if we set our sights low and simple for the first we should be able to slowly extend the script at a manageable pace, we could even start the very first one off as with @tmortagne 's suggestion of a simply jetty+xwiki

A sound plan! I am not sure who would be the webadmin/forum admin? so we could perhaps start putting some ground work into such a solution, I am actually hoping to do an experimental first youtube walk through when I figure out howto get my ideal setup Here