hi everyone,
I am working on packaging a matlab/octave toolbox that involves multiple
source tarballs
https://salsa.debian.org/pkg-octave-team/octave-iso2mesh
this toolbox contains a number of built-in utilities that are linked to
the source repo via submodules
https://github.com/fangq/iso2mesh/tree/master/tools
however, the github release tarball does not contain these submodules
and I must combine those to build the package.
I previous had used a shell script
<https://salsa.debian.org/fangq/octave-iso2mesh/-/blob/master/README.md>
to merge the source code trees and create a single .orig.tar.gz,
however, I was told that using *debian/repack* and *uscan* is the
preferred way to perform changes like this.
I notice that debian/watch file supports multiple source components, so
I wrote the below watch file:
|
|
|version=3||
||
||opts="dversionmangle=s/\+dfsg\.\d+$//,filenamemangle=s/\S+\/v?(\S+)\.tar\.gz/iso2mesh-$1\.tar\.gz/"
\||
|| https://github.com/fangq/iso2mesh/tags .*/v?(\d\S+)\.tar\.gz \||
|| debian debian/repack||
||
||https://github.com/fangq/cork/releases
.*/v(\d[\d\.]*)\.(?:tar.gz|tar.bz2|tar.xz)||
||https://github.com/fangq/meshfix/releases
.*/v(\d[\d\.]*)\.(?:tar.gz|tar.bz2|tar.xz)|
but when I ran*uscan --verbose*, it only downloaded/repacked the main
source file, but refused to download the components
|...||
||uscan info: Matching target for filenamemangle:
/fangq/iso2mesh/archive/v1.9.5.tar.gz||
||uscan info: Download filename (filenamemangled): iso2mesh-1.9.5.tar.gz||
||...||
||Removing non-DFSG-free files:||
||removed '/tmp/tmp.uNMHl78FqP/octave-iso2mesh-1.9.1.orig/bin/README.txt'||
||Rebuilding DFSG-free upstream source tarball:||
||Moving completed upstream tarball to
‘../octave-iso2mesh_1.9.1.orig.tar.gz’:||
||...||
||uscan info: Newest upstream tarball version selected for download
(uversionmangled): 0.9||
||uscan info: Download filename (filenamemangled): v0.9.tar.gz||
||*uscan info: Newest version of octave-iso2mesh on remote site is 0.9,
local version is 1.9.1*||
||uscan info: => Only older package available from||
||https://github.com/fangq/cork/archive/v0.9.tar.gz||
||...||
||uscan info: Scan finished|
I am wondering if you know any sample package that uses repack/uscan to
combine multiple source packages? The uscan manpage mentioned about MUT,
but I could not find a working example.
thanks, let me know if you have any suggestions.
Qianqian