kwrazi / archlinux-ros-melodic

Scripts for testing, fixing and installing Archlinux packages used to install ros-melodic
MIT License
6 stars 2 forks source link

README

The aim of this project is to create a test environment for the ROS melodic packages in the AUR repository for Arch Linux. The main script is provision.sh which is used to install ros-melodic-desktop-full. It is also the same script used to provision an Arch Linux vagrant box for testing, debugging and applying PKGBUILD fixes.

The way provision.sh works is that if there is a local ros-melodic-*/PKGBUILD then it builds and installs that version (using makepkg -si) otherwise, it will use yaourt to install it.

This way, if there are any broken AUR packages, we can fix it locally and install it. Hence to install it on an Arch Linux machine, goto the provision.sh subdirectory and type:

./provision.sh <local-fix-dir> <top-package>
# <local-fix-dir> defaults to /vagrant
# <top-package> dfaults to ros-melodic-desktop-full

# To install ros-melodic-desktop-full on Arch Linux
./provision.sh .

# To install ros-melodic-desktop
./provision.sh . ros-melodic-desktop

# To install bare-bones ros-melodic-ros-base
./provision.sh . ros-melodic-ros-base

If the packages are fixed upstream, we can just remove the local PKGBUILD subdirectories to make provision.sh use the official packages.

Included in this packages are all the corrected packages that I used to successfully build and install ros-melodic (as of 2019-02-14).

Vagrant ros-melodic Test Box

To boot up the vagrant box:

vagrant up

This may take several hours depend on your machine and network connect to install ALL the ros-melodic-desktop-full packages.

Ohter useful commands:

# just apply provisioning to the vagrant box
vagrant provision

# reboot and reload all /vagrant files to the vagrant box
vagrant reload

# remove the vagrant box completely
vagrant destroy

Useful Scripts