This repository has been archived by the owner on Nov 26, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 14
/
snapcraft.yaml
72 lines (67 loc) · 2.07 KB
/
snapcraft.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
name: mesmerize
base: core18
version: 0.2.0
grade: stable
summary: Platform for Calcium Imaging analysis
description: >
Calcium imaging anlaysis platform
confinement: strict
# When snapcraft performs the build it will try to build the wheels for all pip requirements and try to perform the mesmerize setup.py before those dependencies are actually installed. To workaround this the setup.py catches the imports of the Cython dependencies to allow snap to continue the build. Therefore by having performing the <setup> part before the <mesmerize> pip will build and install all dependencies, and when snapcraft tries to build the <mesmerize> part it will go through the same seutp.py but this time it can actually build the Cython extensions since Cython was installed in the <setup> step.
parts:
setup:
# Should try including desktop-gtk3 at some time to see if it fixes warnings on Fedora?
after: [desktop-qt5]
plugin: python
python-version: python3
source: .
source-type: git
source-branch: snap
# Cython is required for setup.py, python-dateutils is required by pandas and for whatever reason doesn't get installed automatically
python-packages: [Cython, python-dateutil]
mesmerize:
after: [setup]
plugin: python
requirements: requirements.txt
python-version: python3
source: .
source-type: git
source-branch: snap
build-packages:
- python3
- python3-tk
- python3-pyqt5
- gcc
- gfortran
- libblas3
- liblapack3
- libopenblas-dev
- liblapack-dev
- cython3
# - qtbase5-dev
# - libqt5gui5
# - libqt5svg5
stage-packages:
- python3
- python3-tk
- python3-pyqt5
- libc-bin
- locales
- cython3
- qtwayland5
# - libqt5gui5
# - libqt5svg5
# - qtbase5-dev
apps:
mesmerize:
command: desktop-launch $SNAP/bin/mesmerize
environment:
# To work on Fedora
DISABLE_WAYLAND: 1
plugs:
- desktop
- desktop-legacy
- unity7
- wayland
- x11
- opengl
- home