Skip to content

Commit 37b1d0f

Browse files
committed
Update Debian packaging, allow PPA upload
1 parent ad33d3e commit 37b1d0f

6 files changed

+83
-2
lines changed

RELEASE

+4
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,10 @@ prebuilt binaries and solutions to common issues users may encounter.
4545

4646
5. Upload binaries generated by GitHub Actions to the new release
4747

48+
6. Upload Debian packages to PPA:
49+
50+
../contrib/upload-ppa-package.sh
51+
4852
6. Do post release version bump in CMakeLists.txt, RELEASE
4953

5054
7. Commit trivial changes:

contrib/debian/control

+29-2
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,22 @@ Source: pomidaq
22
Section: science
33
Priority: optional
44
Maintainer: Matthias Klumpp <[email protected]>
5-
Build-Depends: debhelper-compat (= 12),
5+
Build-Depends: appstream,
66
cmake,
7+
debhelper-compat (= 13),
78
libavcodec-dev,
89
libavformat-dev,
910
libkf5configwidgets-dev,
11+
libopencv-dev,
1012
libqt5opengl5-dev,
13+
libqt5svg5-dev,
1114
libswscale-dev,
15+
ninja-build,
16+
pybind11-dev,
1217
python3-dev,
1318
python3-numpy,
1419
qtbase5-dev
15-
Standards-Version: 4.5.0
20+
Standards-Version: 4.6.2
1621

1722
Package: pomidaq
1823
Architecture: any
@@ -25,3 +30,25 @@ Description: Portable Miniscope Data Acquisition
2530
.
2631
Recorded data is encoded with the FFV1 codec by default, to allow
2732
for smaller video files at the same quality.
33+
34+
Package: libminiscope0
35+
Architecture: any
36+
Depends: ${misc:Depends},
37+
${shlibs:Depends}
38+
Description: Miniscope Data Acquisition Library
39+
The UCLA Miniscope allows for recording of calcium activity
40+
in freely moving animals.
41+
.
42+
This package contains the libminiscope library to embed Miniscope
43+
functionality into other applications.
44+
45+
Package: libminiscope-dev
46+
Architecture: any
47+
Depends: ${misc:Depends},
48+
${shlibs:Depends}
49+
Description: Miniscope Data Acquisition Library - Development Files
50+
The UCLA Miniscope allows for recording of calcium activity
51+
in freely moving animals.
52+
.
53+
This package contains development files for the libminiscope library,
54+
to embed Miniscope functionality into other applications.
+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
usr/include/*
2+
usr/lib/*/libminiscope.so
3+
usr/lib/*/pkgconfig/*

contrib/debian/libminiscope0.install

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
usr/lib/*/libminiscope.so.*
2+
usr/lib/python*

contrib/debian/pomidaq.install

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
usr/bin/*
2+
usr/share/*

contrib/upload-ppa-package.sh

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
#!/bin/sh
2+
set -e
3+
4+
#
5+
# This script will create the PoMiDAQ Debian package & upload it to the PPA
6+
#
7+
8+
TARGET_SUITE="noble"
9+
10+
set -x
11+
mkdir -p __ppa-pkg-build
12+
cd __ppa-pkg-build
13+
14+
# create clean source copy from current Git tree
15+
mkdir -p pomidaq
16+
git -C "$(git rev-parse --show-toplevel)" archive HEAD | tar -x -C ./pomidaq/
17+
cd pomidaq
18+
19+
#
20+
# Build Debian source package
21+
#
22+
23+
git_commit=$(git log --pretty="format:%h" -n1)
24+
git_current_tag=$(git describe --abbrev=0 --tags 2> /dev/null || echo "v3.0.2")
25+
git_commit_no=$(git rev-list --count HEAD)
26+
upstream_version=$(echo "${git_current_tag}" | sed 's/^v\(.\+\)$/\1/;s/[-]/./g')
27+
upstream_version="$upstream_version+git$git_commit_no"
28+
29+
mv contrib/debian .
30+
dch --distribution "$TARGET_SUITE" --newversion="${upstream_version}" -b \
31+
"New automated build from: ${upstream_version} - ${git_commit}"
32+
33+
# build the source package
34+
debuild -S -sa
35+
36+
# cleanup & upload
37+
cd ..
38+
rm -r pomidaq
39+
dput ppa:ximion/syntalos *.changes
40+
rm *.changes
41+
42+
cd ..
43+
rm -r __ppa-pkg-build

0 commit comments

Comments
 (0)