cardano-community / guild-operators

Artifacts and scripts created by Guild operators
https://cardano-community.github.io/guild-operators
MIT License
354 stars 177 forks source link

Error in prereqs.sh #829

Closed ruttkowa closed 3 years ago

ruttkowa commented 3 years ago

Describe the bug While running the prereqs.sh Script I encountered an error while installing the prerequisites

To Reproduce Steps to reproduce the behavior:

  1. $ curl -sS -o prereqs.sh https://raw.githubusercontent.com/cardano-community/guild-operators/master/scripts/cnode-helper-scripts/pr
  2. $ chmod 755 prereqs.sh3
  3. $ ./prereqs.sh
  4. Error: Unable to find a match: libsodium-devel srm An error occurred while installing the prerequisite packages, please investigate by using the command below: sudo yum -y install python3 coreutils pkgconfig libffi-devel gmp-devel openssl-devel ncurses-libs ncurses-compat-libs systemd systemd-devel libsodium-devel zlib-devel make gcc-c++ tmux git jq gnupg libtool autoconf srm iproute bc tcptraceroute dialog sqlite util-linux xz It would be best if you could submit an issue at https://github.com/cardano-community/guild-operators with the details to tackle in future, as some errors may be due to external/already present dependencies

Expected behavior A clear error message / docmentation which repository should be present

Version:

Additional context Manual check of dependencies: $ sudo yum -y install python3 coreutils pkgconfig libffi-devel gmp-devel openssl-devel ncurses-libs ncurses-compat-libs systemd systemd-devel libsodium-devel zlib-devel make gcc-c++ tmux git jq gnupg libtool autoconf srm iproute bc tcptraceroute dialog sqlite util-linux xz Updating Subscription Management repositories. Last metadata expiration check: 0:00:58 ago on Mon Mar 8 08:15:55 2021. Package coreutils-8.30-8.el8.x86_64 is already installed. Package pkgconf-pkg-config-1.4.2-1.el8.x86_64 is already installed. Package ncurses-libs-6.1-7.20180224.el8.x86_64 is already installed. Package systemd-239-41.el8_3.1.x86_64 is already installed. No match for argument: libsodium-devel Package make-1:4.2.1-10.el8.x86_64 is already installed. Package tmux-2.7-1.el8.x86_64 is already installed. Package git-2.27.0-1.el8.x86_64 is already installed. Package jq-1.5-12.el8.x86_64 is already installed. Package gnupg2-2.2.20-2.el8.x86_64 is already installed. Package libtool-2.4.6-25.el8.x86_64 is already installed. Package autoconf-2.69-27.el8.noarch is already installed. No match for argument: srm Package iproute-5.3.0-5.el8.x86_64 is already installed. Package bc-1.07.1-5.el8.x86_64 is already installed. Package sqlite-3.26.0-11.el8.x86_64 is already installed. Package util-linux-2.32.1-24.el8.x86_64 is already installed. Package xz-5.2.4-3.el8.x86_64 is already installed. Error: Unable to find a match: libsodium-devel srm

--> Looks like epel-release is needed. Either we should point to this in the docs or make it more clear during script runtime. Got it fixed with

yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm 
sudo yum update
rdlrt commented 3 years ago

The yum repository management is a pre-requisite (Guild doco does not intend to go into setting up linux itself, they're part of SysOps) As regards epel-release, prereqs would try to install it if its available to your repo management, as you can see here

ruttkowa commented 3 years ago

Well apparently the install didn‘t work on a RHEL 8 machine. Also - according to the current official quickstart documentation at https://fedoraproject.org/wiki/EPEL#Quickstart the epel release should be added via URL not „epel-release“. Maybe this should be changed accordingly? Or am I missing something?