ronivay / XenOrchestraInstallerUpdater

Xen Orchestra install/update script
GNU General Public License v3.0
1.21k stars 190 forks source link

update packages needed for install #159

Closed XSpielinbox closed 1 year ago

XSpielinbox commented 1 year ago

The official documentation lists for Debian/Ubuntu python3-minimal instead of python[2]-minimal. As Python 2 is long EOL now. It also does not list nfs-common, ntfs-3g and libxml2-utils. What are these dependencies for?

Similarly, for Fedora/CentOS libvhdi-utils and automake are listed as required instead of openssl-devel, python3, nfs-utils, ntfs-3g and libxml2.

It also states one should always use the latest NodeJS LTS. This should be updated to Version 18 too then.

Installing and using Xen-Orchestra with NodeJS 18 and python3-minimal without nfs-common, ntfs-3g and libxml2-utils works fine on Debian 11.

ronivay commented 1 year ago

The official documentation lists for Debian/Ubuntu python3-minimal instead of python[2]-minimal. As Python 2 is long EOL now. It also does not list nfs-common, ntfs-3g and libxml2-utils. What are these dependencies for?

nfs-common is required if you want to mount any NFS remotes to XO. nfts-3g is required if you wish to do any file level restore from backups containing a disk with NTFS filesystem in it. libxml2-utils comes from https://github.com/ronivay/XenOrchestraInstallerUpdater/issues/118 and it might not be needed anymore

Python requirement used to be python-minimal but is nowadays python3-minimal. This sure could be updated from python2-minimal to python3-minimal on supported OS versions.

Similarly, for Fedora/CentOS libvhdi-utils and automake are listed as required instead of openssl-devel, python3, nfs-utils, ntfs-3g and libxml2.

To my knowledge, XO isn't really tested on CentOS (or other RHEL based variants) at all so i wouldn't trust solely to the official documentation either. Required packages might obviously be different depending on flavor of distro used which might or might have some required package out of the box. Packages used here are proven to work across many different distros and versions.

What comes to nfs-utils, ntfs-3g, libxml2, i answered above already.

It also states one should always use the latest NodeJS LTS. This should be updated to Version 18 too then.

This is true and script should be updated to use latest LTS version.

Installing and using Xen-Orchestra with NodeJS 18 and python3-minimal without nfs-common, ntfs-3g and libxml2-utils works fine on Debian 11.

nfs-common and ntfs-3g aren't hard requirements, you'll only stumble to issues if you try to use features i mentioned above. Python3 is probably already there so it just works.

XSpielinbox commented 1 year ago

Ah, thanks for the explanation. Perhaps this should be stated in a comment to make it less confusing and understandable in the future.

What the upgrade to Python 3 and Node.js 18 LTS are concerned: Do you just change it or shall I open a pull request?

And then perhaps one should raise an issue that there documentation should be updated according to what is needed for compilation and support of all features?

ronivay commented 1 year ago

Ah, thanks for the explanation. Perhaps this should be stated in a comment to make it less confusing and understandable in the future.

I feel like it might get a bit overwhelming to document the purpose of each package separately.

What the upgrade to Python 3 and Node.js 18 LTS are concerned: Do you just change it or shall I open a pull request?

I can take care of this. Node.js should be fairly straight forward, but need to test the python3-minimal package availability before making a change.

And then perhaps one should raise an issue that there documentation should be updated according to what is needed for compilation and support of all features?

Feel free to report this to XO repository/forums directly.

TristisOris commented 1 year ago

And then perhaps one should raise an issue that there documentation should be updated according to what is needed for compilation and support of all features?

not obvious but XO needs Node.js. Please always use latest Node LTS. So ofcourse i'm forgot about this too) https://xen-orchestra.com/docs/installation.html#nodejs

ronivay commented 1 year ago

Node.js and python version fixed in following PR's:

https://github.com/ronivay/XenOrchestraInstallerUpdater/pull/162 https://github.com/ronivay/XenOrchestraInstallerUpdater/pull/161

TristisOris commented 1 year ago

Tested new version, it works good. Thanks.

ronivay commented 1 year ago

And removed unused libxml2 pkg here: https://github.com/ronivay/XenOrchestraInstallerUpdater/pull/164

Considering this done

XSpielinbox commented 1 year ago

not obvious but XO needs Node.js. Please always use latest Node LTS. So ofcourse i'm forgot about this too) https://xen-orchestra.com/docs/installation.html#nodejs

@TristisOris Yes, that's what I referred to as well when opening the issue (third paragraph). I was mentioning to report the error about the needed packages. These do not include the nfs packages for example.

XSpielinbox commented 1 year ago

And removed unused libxml2 pkg here: #164

Considering this done

Thank you!

XSpielinbox commented 1 year ago

I feel like it might get a bit overwhelming to document the purpose of each package separately.

@ronivay I did not mean to document every package separately, but just a notice what was the reasoning for a group of packages that differ from the official documentation; just something like

# nfs-common and ntfs-3g are needed to support operations on NTFS and NFS
# openssl-devel and python3 where added as per [PR] / to solve build issues
# libvhdi-utils and automake appear to be unused, therefore omitted