This board has been archived, no new registrations are allowed. Please come join us on our discord!

Linux Install Instructions/Experience

Can't figure out how to get a specific feature working? Ask for help here.
darval
Registered User
Posts: 2
Joined: Fri Jun 16, 2017 4:54 pm

Linux Install Instructions/Experience

Postby darval » Sat Jun 17, 2017 7:20 pm

Hey folks, I am a new user of the Haasbot software and have been struggling to get it installed in Linux. I appear to finally have it working and I wanted to capture and share part of the experience for anyone else trying to do something similar.

Installing on Linux

My system is an up to date install of Ubuntu 16.04 on a quad core i7 with 16G of ram. I am installing on a 256G SSD. This probably only affects performance but it is worth documenting. Significant to the install is that it is a headless server install. This means I don’t normally have a keyboard and monitor attached (nor X11 installed).

As mentioned in other documentation you need to have mono installed and ntpd running. I will explain about mono below as I had all sorts of problems with it. If you don’t have mono installed, skip down to my section called “Installing a usable Mono”. Ubuntu in the latest disto’s uses something called timesyncd to replace ntpd. You can confirm it is running with the following command:

Code: Select all

$ timedatectl
      Local time: Sat 2017-06-17 13:49:38 CDT
  Universal time: Sat 2017-06-17 18:49:38 UTC
        RTC time: Sat 2017-06-17 18:49:38
       Time zone: America/Chicago (CDT, -0500)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: no


The step was downloading the install archive. In it was a linux32.tar.gz. I placed in this in my choice installed directory (~/development/HTS) but you can place it anywhere you want. Let’s call this the install directory.

Once there I did:

Code: Select all

tar xvf linux32.tar.gz


My install directory looked like this:

Code: Select all

$ ls
BetaUpdate.sh  bin  Haasbot.sh  linux32.tar.gz  Update.sh

I then ran:

Code: Select all

$ ./Haasbot.sh


This produced no results (that were obvious) but the process was working. I confirmed that it was listening on 127.0.0.1:8090 which is the starting default.

Code: Select all

$ netstat -an | grep 8090
tcp        0      0 127.0.01:8090      0.0.0.0:*               LISTEN     

It also tries to start up a console mode browser (lynx, elinks,whatever) but I found that didn’t work to any usable way.

Do a ‘ps x’ and see what the pid for the mono-service is, then kill it so you can change the config file.

Next step was to edit the MainSettings.XML file. Contrary to other advice I found, it is actually located in ~/HTS/Settings, so I used vim to edit the host address to my local server address. Basically replace this:
<HostingAdres>127.0.0.1</HostingAdres>
With
<HostingAdres>192.168.0.105</HostingAdres>
Or whatever you local server address was. I tried making it generic and get it to bind to 0.0.0.0 but apparently the code didn’t like that.

Now assuming you have a working version of mono, you now be able to restart the ./Haasbot.sh script and it “should” work. :)

You should now be able to connect to it from you desktop at your server address : 8090. In my case it is running at 192.168.0.105:8090. Follow the normal license and configuration instructions from that point on.

If you find it doesn’t work, you may not have a compatible version of mono. The latest 5.x versions do no currently work so I have to install an older version.

Installing a usable Mono

If you have not installed mono from the mono-project and are using the default version, you will need to add the more recent version from the project.

If you following the instructions on the mono-project download page http://www.mono-project.com/download/#download-lin

Code: Select all

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/ubuntu xenial main" | sudo tee /etc/apt/sources.list.d/mono-official.list
sudo apt-get update
sudo apt-get install mono-complete


This will get you the latest version which won’t work. If you have not done it yet, change the above instructions to say this:

Code: Select all

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/ubuntu xenial/snapshots/4.6.2.16 main" | sudo tee /etc/apt/sources.list.d/mono-official.list
sudo apt-get update
sudo apt-get install mono-complete


If you have already installed the apt source file and downloaded the latest version, you need to revert to this one. That is slightly more effort.

Code: Select all

sudo apt remove mono-complete
sudo apt auto remove
sudo vim /etc/apt/source.list.d/mono-official.list

Change the deb line to match the following:
deb http://download.mono-project.com/repo/ubuntu xenial/snapshots/4.6.2.16 main
Save this then:

Code: Select all

sudo apt-get install mono-complete


Now head back and try to run the Haasbot.sh script again.

These instruction are from memory after spending the last day getting it working so let me know if there are any issues or things I missed or misspelled. ;)

Rick..

User avatar
r4stl1n
Moderator
Posts: 60
Joined: Thu Jul 13, 2017 12:23 am

Re: Linux Install Instructions/Experience

Postby r4stl1n » Thu Jul 13, 2017 10:21 pm

You notice any werid problem with the webinterface not responding after a bit of use. As in when you navigate to 8090 nothing shows up just a white screen.. It seems to require me to restart the application in order for it to come back up. Its almost like there is a idle timer or something.


Return to “Help and Support”

Who is online

Users browsing this forum: No registered users and 2 guests