# Maintainer: Niels Martignène # Contributor: PyroPeter # Contributor: darkapex # Contributor: tty0 pkgname=teensyduino pkgver=1.29 _pkgver=1.29 _arduino=1.6.9 pkgrel=1 pkgdesc="Arduino SDK with Teensyduino" arch=('i686' 'x86_64') url="http://www.pjrc.com/teensy/teensyduino.html" options=(!strip staticlibs) license=('GPL' 'LGPL' 'custom') depends=('gtk2' 'libusb-compat' 'libusb' 'java-runtime' 'libpng12' 'libsm' 'desktop-file-utils' 'giflib' 'avrdude') makedepends=('xorg-server-xvfb' 'libxft' 'xdotool') provides=('arduino') conflicts=('arduino' 'teensy-loader-cli') install="teensyduino.install" source=('arduino.xml' 'teensyduino.sh' 'teensy-loader.desktop' "git+https://github.com/PaulStoffregen/teensy_loader_cli.git#commit=5f183c12915070b71d70e92868dc04ef7e76f21e" "http://www.pjrc.com/teensy/49-teensy.rules" 'LICENSE') source_i686+=("http://downloads.arduino.cc/arduino-${_arduino}-linux32.tar.xz" "http://www.pjrc.com/teensy/td_${_pkgver//./}/TeensyduinoInstall.linux32") source_x86_64+=("http://downloads.arduino.cc/arduino-${_arduino}-linux64.tar.xz" "http://www.pjrc.com/teensy/td_${_pkgver//./}/TeensyduinoInstall.linux64") sha256sums=('473b82156505e9bd903e4d8484e8d183f2e3bf3c1f7e29940b815929ae597b68' 'ee25f5421e529aacb11c19307c78ce97202329b14935f8eb6cbbf70806ae183b' '270b55353eb438d3790c7245e5ae16ff8bac9f98cfe927d6c9f2146a34499323' 'SKIP' 'fa7eff0e0f1e8230941c3b016c40617887f52f1991db655a498309824291ca54' '25980feb5927b8bea8b8e999f5002e110825b1bc3d546fa902c2db5c824d33f3') sha256sums_i686=('b164905f281ad34ca4ca0d58b2b4c0d67d8125dbcd43ad73d536effd02ef8e56' '2d2f963b68a2b4c4526fb9b6cdc586db5d3d346799de947181e9f50ac1c9c3b2') sha256sums_x86_64=('8da3920fe9e168bcf3fe31fef9e1f8454ba5366e7f2e297cf264485e59e8a1a0' '83a345371d8a0931cc97962bc1c8485eea324d99236a208dea7ac53514862bd0') if [ "$CARCH" == 'x86_64' ]; then _bits=64 elif [ "$CARCH" == 'i686' ]; then _bits=32 fi build() { msg2 "Running Teensyduino installer (takes around 60 seconds)" chmod +x "TeensyduinoInstall.linux${_bits}" xvfb-run ./teensyduino.sh "./TeensyduinoInstall.linux${_bits}" "${srcdir}/arduino-${_arduino}" msg2 "Building Teensy Loader command line" cd teensy_loader_cli make } package() { cd "arduino-${_arduino}" mkdir -p "${pkgdir}/usr/bin" mkdir -p "${pkgdir}/usr/share/"{doc,applications,icons/hicolor,mime/packages,licenses/teensyduino} mkdir -p "${pkgdir}/usr/lib/udev/rules.d" # copy the whole SDK to /usr/share/arduino/ cp -a . "${pkgdir}/usr/share/arduino" # use system's RXTX library ln -sf /usr/lib/librxtxSerial.so "${pkgdir}/usr/share/arduino/lib/librxtxSerial.so" ln -sf /usr/lib/librxtxSerial.so "${pkgdir}/usr/share/arduino/lib/librxtxSerial64.so" ln -sf /usr/share/java/rxtx/RXTXcomm.jar "${pkgdir}/usr/share/arduino/lib/RXTXcomm.jar" # we don't need these sources rm -rf "${pkgdir}/usr/share/arduino/src" # at least support the FHS a little bit ln -s /usr/share/arduino/arduino "${pkgdir}/usr/bin/arduino" ln -s /usr/share/arduino/reference "${pkgdir}/usr/share/doc/arduino" # fix avrdude rm -f "${pkgdir}/usr/share/arduino/hardware/tools/avr/bin/avrdude"{,_bin} ln -s /usr/bin/avrdude "${pkgdir}/usr/share/arduino/hardware/tools/avr/bin/avrdude" # desktop icon cp -a lib/icons/* "${pkgdir}/usr/share/icons/hicolor" rm -rf "${pkgdir}/usr/share/arduino/lib/icons" ln -s /usr/share/icons/hicolor "${pkgdir}/usr/share/arduino/lib/icons" # desktop and mimetype files sed "s,,arduino %U,g;s,,arduino,g" lib/desktop.template > "${pkgdir}/usr/share/applications/arduino.desktop" install -m644 "${srcdir}/arduino.xml" "${pkgdir}/usr/share/mime/packages/" # install custom PJRC license install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/teensyduino/" # install teensy loader files install -m644 "${srcdir}/49-teensy.rules" "${pkgdir}/usr/lib/udev/rules.d" ln -s /usr/share/arduino/hardware/tools/teensy "${pkgdir}/usr/bin/teensy-loader" install -m644 "${srcdir}/teensy-loader.desktop" "${pkgdir}/usr/share/applications/" # install command-line teensy loader install -m755 "${srcdir}/teensy_loader_cli/teensy_loader_cli" "${pkgdir}/usr/bin/teensy-loader-cli" }