Problems installing x2goserver-xsession on a fresh install of CentOS 7.1 on Amazon EC2

Solution 1:

First, this has 100% nothing to do with Amazon EC2 servers versus Linode servers. This is a simple—but still complex—issue of am RPM needing dependencies that are not installed on the system. Clear up those dependencies and all should be good.

Before anything else, look at the errors returned:

--> Finished Dependency Resolution
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(File::Which)
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(Config::Simple)
Error: Package: x2goserver-4.0.1.19-3.el7.x86_64 (epel)
           Requires: perl(Capture::Tiny)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

The issue is you just need to install Requires: perl(File::Which), Requires: perl(Config::Simple) and Requires: perl(Capture::Tiny) before the main command. Those are Perl CPAN modules. Apparently the RPM doesn’t handle those Perl specific dependencies.

While I’m unfamiliar with x2go, this should work for installing the Perl CPAN modules.

First, get into your home directory on the server:

cd ~/

Next, install Perl on your system like this:

sudo yum install perl

Or you might need to run this command to get Perl and CPAN installed:

sudo yum install perl-SPAN

But after that is done, run cpan like this via sudo:

sudo cpan

Now install YAML for the CPAN setup:

install YAML

Finally, install the actual CPAN modules like this:

install File::Which Config::Simple Capture::Tiny

When that’s done, exit:

quit

And now run that yum command again:

yum -y install x2goserver-xsession

Hopefully that all works. But if all of this doesn’t work—or if more errors come up—this could mean you need to explicitly use a CentOS 7.0 OS on the Amazon EC2 instance.