<> = Introduction = The Debian Octave Group (DOG) is a collaborative effort for maintaining the [[https://www.octave.org|Octave]]-related Debian packages, in particular those released by the [[https://octave.sourceforge.io/|Octave-Forge project]]. Anyone is invited to participate. There is no need to be a Debian Developer. If you are interested, send an email to the development list (see below). = Maintained packages = * [[https://tracker.debian.org/teams/pkg-octave-team/|Team homepage at tracker.debian.org]] (for subscribing to notifications) * [[https://qa.debian.org/developer.php?login=team%2Bpkg-octave-team%40tracker.debian.org|Packages overview at QA Debian]] * [[https://udd.debian.org/dmd/?email1=team%2Bpkg-octave-team%40tracker.debian.org|Maintainer Dashboard]] * [[https://bugs.debian.org/team%2Bpkg-octave-team%40tracker.debian.org|BTS entry]] * [[https://buildd.debian.org/status/package.php?maint=team%2Bpkg-octave-team%40tracker.debian.org&compact=compact|Buildd status]] * [[https://lintian.debian.org/full/team%2Bpkg-octave-team%40tracker.debian.org.html|Lintian reports]] = Mailing list = Development is coordinated through the [[https://lists.debian.org/debian-octave|debian-octave]] list on Debian list server. Subscription and posting are open to anyone. = Git repositories = Development is coordinated through Git repositories, grouped under the [[https://salsa.debian.org/pkg-octave-team/|Debian Octave Group homepage at Salsa]]. Our git workflow is the following: * Branches: We follow the [[https://salsa.debian.org/pkg-octave-team/admin/-/blob/main/DEP-14|DEP-14]] specification for the reposiotry layout: `debian/latest` for Debian packaging, `upstream/latest` for upstream source, and `pristine-tar` for tarball deltas. Additional branches named according to Debian releases (e.g. `debian/stretch`, `debian/stretch-backports`) may be used as need arises for (old)stable uploads and backports. * Tags: `debian/$DEB_VERSION` for Debian releases and `upstream/$VERSION` for upstream releases * The `upstream` branch contains only diffs from tarballs, not the full upstream git history. * We use DebianPkg:git-buildpackage tool for managing the repositories and building packages. * Changelog entries are generated using the associated `gbp dch` command. == .gitignore file == In the past, we used to have a top-dir `.gitignore` file in our Git repositories. This was useful for ignoring the files left over by the package building process. This technique has some drawback, though, since this may interfere with the eventual `.gitignore` file shipped by the upstream authors and the setting `merge-mode = merge` in `gbp.conf` is needed. We then decided to have `.gitignore` files only in the 'debian/` directories. This means that, after the package is built, some Git commands (e.g. `git status` and `git diff`) non-Debian-related changes in the repository will be indicated. It is then recommended running the following commands: {{{ ./debian/rules clean quilt pop -af rm -rf .pc }}} If there are any files left in the top-dir after running the commands above, then their names should be included in the `debian/clean` file. This would probably be an issue with the upstream package and should be reported to the upstream authors. == URL aliases == You may want to create an alias for the URL of our Salsa homepage, as follows: {{{ git config --global url."git@salsa.debian.org:pkg-octave-team/".insteadOf pkg-octave-team: }}} (this assumes that you are accessing Salsa with SSH; replace the corresponding URL if you use another mean) Then you can clone repositories as follows: {{{ gbp clone --git-pristine-tar pkg-octave-team:$pkg }}} (replace `$pkg` by package name, e.g. `octave`) == Pristine-tar default option == If you’re tired of always giving the `--git-pristine-tar` option to `gbp` (or if you fear forgetting it), you can set the following in `~/.gbp.conf`: {{{ [DEFAULT] pristine-tar = True }}} Note that all packages of the DOG have now the following file `debian/gbp.conf`, so that the `pristine-tar` is always `True` : {{{ [DEFAULT] debian-branch = debian/latest upstream-branch = upstream/latest pristine-tar = True }}} == Subscribing to git commit notifications == Git commit notifications are delivered through [[https://tracker.debian.org]]. You can individually subscribe to commit notifications: * either through the web interface, making sure that you have enabled the `vcs` keyword * or through the mail interface, with something like: {{{ ( echo "subscribe $pkg"; echo "keyword $pkg + vcs" ) | mail control@tracker.debian.org }}} It is also possible to subscribe to all git commit notifications by subscribing to the [[https://tracker.debian.org/teams/pkg-octave-team/|Debian Octave Group at tracker.debian.org]] (making sure you have enabled the `vcs` keyword). = Check list for the Octave-Forge packages = 0. Bump the Standards-Version to the latest release. 0. Set the Uploaders field as described below. 0. The recommended debhelper compat level is 11. 0. We use a machine-readable `debian/copyright` with the [[https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/|1.0 specification]]. Generating this file can be simplified by the following command: {{{#!shell licensecheck -r --copyright -c '\.m|\.cc|\.hh|\.c|\.h|\.f' . | /usr/lib/cdbs/licensecheck2dep5 }}} Note that you will have to update the {{{Format}}} line using the finalized URL for version 1.0. If you are using CDBS version 0.4.103 or later, the URL will be that for version 1.0.<
><
> You can also automatically fix some errors in your file using the following command (from package libconfig-model-perl): {{{ cme fix dpkg }}} 0. Use the !SourceForge redirector in the debian/watch file (bump format version to 4 if needed): {{{ version=4 http://sf.net/octave/-(.+)\.tar\.gz }}} = Octave Forge packages not in Debian = == Candidates for packaging == The following packages are [[http://octave.sourceforge.net/packages.php|listed]] as maintained by the upstream authors and are not yet in Debian: * [[https://octave.sourceforge.io/arduino/|arduino]] (uploaded, ITP: DebianBug:912761) * [[https://octave.sourceforge.io/audio/|audio]] (uploaded, ITP: DebianBug:963597) * [[https://octave.sourceforge.io/bsltl/|bsltl]] (uploaded, ITP: DebianBug:898139) * [[https://octave.sourceforge.io/cgi/|cgi]] (uploaded, ITP: DebianBug:898153) * [[https://octave.sourceforge.io/database/|database]] (uploaded, ITP: DebianBug:944608) * [[https://octave.sourceforge.io/dicom/|dicom]] (uploaded, ITP: DebianBug:898289) * [[https://octave.sourceforge.io/divand/|divand]] (uploaded, ITP: DebianBug:865794) * [[https://octave.sourceforge.io/doctest/|doctest]] (uploaded, ITP: DebianBug:898313) * [[https://octave.sourceforge.io/fem-fenics/|fem-fenics]] * [[https://octave.sourceforge.io/fits/|fits]] (uploaded, ITP: DebianBug:898427) * [[https://octave.sourceforge.io/fuzzy-logic-toolkit/|fuzzy-logic-toolkit]] (uploaded, ITP: DebianBug:898476) * [[https://octave.sourceforge.io/image-acquisition/|image-acquisition]] (uploaded, ITP: DebianBug:898908) * [[https://octave.sourceforge.io/instrument-control/|instrument-control]] (uploaded, ITP: DebianBug:899145) * [[https://octave.sourceforge.io/level-set/|level-set]] (uploaded, ITP: DebianBug:899225) * [[https://octave.sourceforge.io/lssa/|lssa]] (uploaded, ITP: DebianBug:900050) * [[https://octave.sourceforge.io/mvn/|mvn]] (uploaded, ITP: DebianBug:900104) * [[https://octave.sourceforge.io/ncarray/|ncarray]] (uploaded, ITP: DebianBug:900682) * [[https://octave.sourceforge.io/octproj/|octproj]] (uploaded, ITP: DebianBug:871926) * [[https://octave.sourceforge.io/optics/|optics]] (uploaded, ITP: DebianBug:900683) * [[https://octave.sourceforge.io/queueing/|queueing]] (uploaded, ITP: DebianBug:900684) * [[https://octave.sourceforge.io/secs3d/|secs3d]] (uploaded, ITP: DebianBug:900685) * [[https://octave.sourceforge.io/tisean/|tisean]] (uploaded, ITP: DebianBug:872148) * [[https://octave.sourceforge.io/vibes/|vibes]] (uploaded, ITP: DebianBug:900689) * [[https://octave.sourceforge.io/video/|video]] (uploaded, ITP: DebianBug:480773) * [[https://octave.sourceforge.io/zeromq/|zeromq]] (uploaded, ITP: DebianBug:865865) == Packages that should not enter Debian == * actuarial (unmaintained) * civil-engineering (unmaintained) * engine (unmaintained) * fenv (unmaintained; find function {{{__setround__}}} in the interval package) * fl-core * [[http://octave.sourceforge.net/generate_html/index.html|generate_html]] (will not be packaged; only of interest for Octave-Forge developers) * gnuplot (unmaintained) * mechanics (unmaintained) * oct2mat (unmaintained) * odebvp (unmaintained) * special-matrix (unmaintained) * tcl-octave (unmaintained; RFP: DebianBug:482615) * [[http://octave.sourceforge.net/windows/index.html|windows]] (tweber: I don't think - we would have to create Debian GNU/kwin32 first) == Packages that have been in Debian at some point but were removed == * [[https://alioth-archive.debian.org/git/pkg-octave/octave-ad.git.tar.xz|octave-ad]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-ann.git.tar.xz|octave-ann]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-benchmark.git.tar.xz|octave-benchmark]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-bioinfo.git.tar.xz|octave-bioinfo]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-combinatorics.git.tar.xz|octave-combinatorics]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-epstk.git.tar.xz|octave-epstk]] (RM: DebianBug:850030) * [[https://alioth-archive.debian.org/git/pkg-octave/octave-ftp.git.tar.xz|octave-ftp]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-ident.git.tar.xz|octave-ident]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-informationtheory.git.tar.xz|octave-informationtheory]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-integration.git.tar.xz|octave-integration]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-irsa.git.tar.xz|octave-irsa]] * octave-missing-functions (RM: DebianBug:1038007) * [[https://alioth-archive.debian.org/git/pkg-octave/octave-multicore.git.tar.xz|octave-multicore]] * octave-nlwing2 * [[https://alioth-archive.debian.org/git/pkg-octave/octave-nnet.git.tar.xz|octave-nnet]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-octcdf.git.tar.xz|octave-octcdf]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-octgpr.git.tar.xz|octave-octgpr]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-outliers.git.tar.xz|octave-outliers]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-pdb.git.tar.xz|octave-pdb]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-physicalconstants.git.tar.xz|octave-physicalconstants]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-plot.git.tar.xz|octave-plot]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-simp.git.tar.xz|octave-simp]] (use octave-interval instead) * octave-specfun (RM: DebianBug:1038008) * [[https://alioth-archive.debian.org/git/pkg-octave/octave-symband.git.tar.xz|octave-symband]] * [[https://alioth-archive.debian.org/git/pkg-octave/octave-time.git.tar.xz|octave-time]] (RM: DebianBug:671089) * [[https://alioth-archive.debian.org/git/pkg-octave/octave-xraylib.git.tar.xz|octave-xraylib]] * octave-zenity (RM: DebianBug:1038010) * [[https://alioth-archive.debian.org/git/pkg-octave/semidef-oct.git.tar.xz|semidef-oct]] (RM: DebianBug:669226) = Uploaders Field = The Uploaders field should normally list the team member(s) that are personally interested in the package and take the primary responsibility for maintaining it. Maintaining this field up-to-date gives a better overview of responsibilities within the team (in particular, it will make individual QA pages more relevant). Also note that team members not in the Uploaders field of a given package can still do [[https://www.debian.org/doc/manuals/developers-reference/pkgs.html#nmu-team-upload|Team Uploads]], for example for fixing RC bugs or handling transitions. There are however some packages that nobody is personally interested in for the time being, but which are nevertheless maintained by the team in the interest of our users. The Uploaders field of those packages should list all the team members willing to do this collective maintenance work, who are: * Thomas Weber * Sébastien Villemot * Rafael Laboissiere * Mike Miller The packages in this situation are: * octave-bim * octave-data-smoothing * octave-financial * octave-fpl * octave-msh * octave-nan * octave-nurbs * octave-ocs * octave-parallel * octave-secs1d * octave-secs2d * octave-sockets * octave-strings * octave-vrml = Work in progress = = ToDo Items = The following list contains things that should be done at some point in the future. * Check that Octave compiles with clang and inform shogun maintainers about it, if yes (shogun-octave was dropped, as shogun uses clang now and some of the Octave code failed to compile) * We might want to add a reportbug script (/usr/share/doc/reportbug/README.developers.gz) that reports the BLAS library in use via the alternatives system and all octave-* packages installed. This should help with bug reports. = Obsolete material = * [[Teams/DebianOctaveGroup/OldPackaging|Old packaging page]] * [[Teams/DebianOctaveGroup/Octave3.6Transition|Octave 3.6 transition]] * [[Teams/DebianOctaveGroup/Octave3.8Transition|Octave 3.8 transition]] * [[Teams/DebianOctaveGroup/UploadersField|Survey about personal interests for packages]] as of June 2014