As of the date of this post, Xilinx Vivado 2016.2 works fine on Arch with minimal coaxing. Said coaxing is documented here in case it will be useful for others.
ncurses5-compat-libs from AUR, or the installer will hang during a later step. It appears to be required at runtime as well.
2. Mark the installer executable, eg.
chmod +x Xilinx_Vivado_SDK_2016.2_0605_1_Lin64.bin, and run it with the confirm flag,
3. Hit Y at the “unpack” prompt, then go into the directory it creates at
/tmp/selfgz[RANDOMSTRING], and edit xsetup to replace
`uname -i` with
`uname -m`, which is what they should have used in the first place.
4. Pre-create and permission the install path, a reasonable choice is the default
/opt/Xilinx, which needs to be writable by the user doing the install (eg.
chgrp users /opt/Xilinx,
chmod g+w /opt/Xilinx)
5. Return to the terminal and hit Y to continue until the GUI installer runs.
6. Follow the GUI installer instructions, Feed the prompt your Xilinx credentials, Select Vivado HL WebPACK, etc.
7. The activation prompt at the end of the installation procedure is misleading, in the 2016.x versions if you simply quit without activating, the install automatically goes into WebPACK mode. If you don’t have/need any of the non-WebPACK features, activating the 30-day free trial of the nonfree version is asking for a headache when it expires.
8. It works. (and as a bonus convenience over the old toolchain, at least the Digilent Basys 3 boards use a normal FTDI usb-serial as their onboard programmer, so you don’t have to fight with drivers to program boards, that just works too.)
The word for all this is ‘mature programming environment.’ Basically, when hardware performance has been pushed to its final limit, and programmers have had several centuries to code, you reach a point where there is far more significant code than can be rationalized. The best you can do is understand the overall layering, and know how to search for the oddball tool that may come in handy— Vernor Vinge
Unless otherwise noted, this work is licensed under a Creative Commons Attribution-ShareAlike 3.0 United States License.