Package Details: libindi-asi 2.0.1-1

Git Clone URL: https://aur.archlinux.org/libindi-asi.git (read-only, click to copy)
Package Base: libindi-asi
Description: 3rd party drivers for INDI, support for ZWO devices: ASI cameras, EFW filter wheel, ASI ST4 port and ASI focuser
Upstream URL: http://www.indilib.org/index.php?title=Main_Page
Licenses: LGPL2.1
Submitter: sebo_b
Maintainer: sebo_b (mobarre)
Last Packager: mobarre
Votes: 5
Popularity: 0.002327
First Submitted: 2019-05-27 22:04 (UTC)
Last Updated: 2023-04-24 11:11 (UTC)

Latest Comments

VeryLazyCat commented on 2023-06-25 21:11 (UTC) (edited on 2023-06-25 21:14 (UTC) by VeryLazyCat)

Libindi was recently upgraded to 2.0.2. This outdated package will block Indi, Ekos, KStars upgrade.

Also, dependency on libasi will conflict with indi-3rdparty-libs if installed.

To upgrade the version manually edit PKGBUILD as follows:

5c5
< pkgver=2.0.1
---
> pkgver=2.0.2
11c11
< depends=(libindi=${pkgver} libasi=${pkgver})
---
> depends=(libindi=${pkgver} )
14c14
< sha256sums=("be98a84ab6166321fe5aa74fca132cd866ae4e6910ef3b97e3502a44c59d277d")
---
> sha256sums=("364124711130b134480954d97c3a7ef3d9d754c3b7eed2bbb840c960a2afef7f")

k-laus commented on 2023-06-22 10:18 (UTC)

Package also compiles and works fine with aarch64 architecture (on odroid n2+), can you please add this architecture to the PKGBUILD?

oldherl commented on 2021-09-29 16:34 (UTC)

@sebo_b No, even the udev rules have to be installed to /usr/lib because /lib is a symlink to /usr/lib on Arch Linux, and if you put files in /lib in a package, pacman would complain about it and can't install:

error: failed to commit transaction (conflicting files) libindi-asi: /lib exists in filesystem (owned by filesystem)

sebo_b commented on 2021-09-22 20:15 (UTC) (edited on 2021-09-22 20:21 (UTC) by sebo_b)

@wgauvin thanks

however, I don't see the behaviour with installing to /lib. I see only udev rules and firmware to be installed into /lib which I think is correct, isn't it?

find . -name CMakeLists.txt -exec sed -n '/"\/lib/p' {} \;

wgauvin commented on 2021-09-18 07:48 (UTC)

Note, that due to PowerOne being added the sed command in the PKGBUILD needs to be changed.

sed -i -e '/option(WITH_.*On/s/ On)/ Off)/' CMakeLists.txt

(note the ) after the On and Off

Also this package tries to install to /lib rather than /usr/lib, so this following needs to be added to the prepare

find ./ -name CMakeLists.txt -exec sed -i -e 's|"\/lib|"${CMAKE_INSTALL_PREFIX}/lib|g' {} \;

yorickpeterse commented on 2020-05-10 16:31 (UTC)

I gave the new libindi-asi and libasi packages a try and they work perfectly, thanks!

sebo_b commented on 2020-05-10 13:31 (UTC)

libindi recently split 3rdparty drivers from the main repository, also there seems to be some changes in libindi-asi driver, as it now requires separate asi sdk.

Anyway I have updated the package, so it should work now. However you need to install libasi, which I have also created.

yorickpeterse commented on 2020-05-09 00:15 (UTC)

I finally managed to get things working, though it required a bit of a weird setup; suggesting I probably overlooked something. I ended up creating two PKGBUILD files:

  1. One PKGBUILD to build just the libasi library
  2. One PKGBUILD to build just the libasi drivers/executables

For the library, I used this PKGBUILD:

pkgname=libindi-libasi
pkgver=1.8.5
pkgrel=1
pkgdesc="3rd party library for INDI, support for ZWO devices: ASI cameras, EFW filter wheel, ASI ST4 port and ASI focuser"
url="http://www.indilib.org/index.php?title=Main_Page"
license=(LGPL2.1)
arch=(i686 x86_64)
depends=(libindi)
conflicts=(libindi-asi)
makedepends=(cmake)
source=("https://github.com/indilib/indi-3rdparty/archive/v${pkgver}.tar.gz")
sha256sums=('acbddca69c25b2c46ebc0982e8dbbf4912a43f6a4b45d46b007deab8805caed8')

prepare() {
  mkdir -p build

  cd indi-3rdparty-${pkgver}

  # Disable all libraries except libasi
  sed -i -e '/option(WITH_.*On/s/ On/ Off/' CMakeLists.txt
}

build() {
  cd build

  cmake -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DUDEVRULES_INSTALL_DIR=/usr/lib/udev/rules.d \
    -DWITH_ASICAM=On \
    ../indi-3rdparty-${pkgver}

  make
}

package() {
  cd build
  make DESTDIR="$pkgdir" install
}

For the driver executables I used this PKGBUILD:

pkgname=libindi-asi-driver
pkgver=1.8.5
pkgrel=1
pkgdesc="3rd party drivers for INDI, support for ZWO devices: ASI cameras, EFW filter wheel, ASI ST4 port and ASI focuser"
url="http://www.indilib.org/index.php?title=Main_Page"
license=(LGPL2.1)
arch=(i686 x86_64)
depends=(libindi-libasi)
conflicts=(libindi-asi)
makedepends=(cmake)
source=("https://github.com/indilib/indi-3rdparty/archive/v${pkgver}.tar.gz")
sha256sums=('acbddca69c25b2c46ebc0982e8dbbf4912a43f6a4b45d46b007deab8805caed8')

prepare() {
  mkdir -p build
}

build() {
  cd build

  cmake -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    ../indi-3rdparty-${pkgver}/indi-asi

  make
}

package() {
  cd build
  make DESTDIR="$pkgdir" install
}

I couldn't get this done using a single PKGBUILD as compiling the drivers will fail unless libasi is already present. Maybe there is a way of telling CMake to search for the library in the build chroot, but it's already midnight and I couldn't figure this out.

Hopefully this is of any use to those trying to build the drivers.

yorickpeterse commented on 2020-05-08 20:11 (UTC) (edited on 2020-05-08 21:25 (UTC) by yorickpeterse)

I got the ASI drivers to build using the following PKGBUILD:

# Maintainer: Sebastian Baberowski <sebastian@baberowski.com>

pkgname=libindi-asi
pkgver=1.8.5
pkgrel=1
pkgdesc="3rd party drivers for INDI, support for ZWO devices: ASI cameras, EFW filter wheel, ASI ST4 port and ASI focuser"
url="http://www.indilib.org/index.php?title=Main_Page"
license=(LGPL2.1)
arch=(i686 x86_64)
depends=(libindi)
makedepends=(cmake)
source=("https://github.com/indilib/indi-3rdparty/archive/v${pkgver}.tar.gz")
sha256sums=('acbddca69c25b2c46ebc0982e8dbbf4912a43f6a4b45d46b007deab8805caed8')

prepare() {
  mkdir -p build
  cd indi-3rdparty-${pkgver}

  #set all to off by default
  sed -i -e '/option(WITH_.*On/s/ On/ Off/' CMakeLists.txt
}

build() {
  cd build
  cmake -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_INSTALL_LIBDIR=/usr/lib \
    -DUDEVRULES_INSTALL_DIR=/usr/lib/udev/rules.d \
    -DWITH_ASICAM=On \
    ../indi-3rdparty-${pkgver}
  make
}

package() {
  cd build
  make DESTDIR="$pkgdir" install
}

Unfortunately, this does not appear to build/install the necessary driver executables; not sure yet why that is.

yorickpeterse commented on 2020-05-08 17:38 (UTC)

3rd party drivers have been moved to a separate repository: https://github.com/indilib/indi-3rdparty