Snapping OpenCV and CUDA

My code is based on OpenCV and CUDA.

I created the following snapcraft.yaml for the following repository:

name: opencv
version: '3.4.0'
summary: OpenCV for TX2
description: |
  OpenCV 3.4.0 for TX2 based on https://github.com/jetsonhacks/buildOpenCVTX2

grade: devel # must be 'stable' to release into candidate/stable channels
confinement: devmode # use 'strict' once you have the right plugs and slots

parts:
  opencv:
    plugin: nil
    stage-packages:
      - software-properties-common
    override-build: |
      ./buildOpenCV.sh

There’s a removeOpenCVSources.sh script, I was wondering if I can run it in a different procedure or I just simply wait for the build to end and run it with &&?

Another thing I’m wondering about, since OpenCV and CUDA are pretty big and I have several applications that needs them I was wondering if I can just configure a dependencies between snaps and what do I do if I need both CUDA and OpenCV for one of the products? Can I install snap as a build dependency for another snap?

Thank you!

Doesn’t matter anymore, apparently Snapcraft packages need SquashFS on the target machine to work and the kernel was configured without it, 1.5 weeks of work went down the drain.