[Debian-med-packaging] Bug#1108716: octave-biosig: Package octave-biosig can not be loaded in Octave
Alois Schlögl
alois.schloegl at gmail.com
Fri Jul 4 06:01:38 BST 2025
Am 7/3/25 um 10:45 PM schrieb Étienne Mollier:
> Control: tag -1 moreinfo
>
> Hi Alois,
>
> I probably should leave that issue to someone fluent with octave
> and probably won't be in position to put useful packaging work
> to resolve the situation (help from someone having some
> experience with octave would be welcome, thanks:), but let's see
> if I can contribute something useful to the bug entry anyway…
Hi Etienne,
Thanks for your quick response. I'm not so fluent with debian package
management,
Your contribution would certainly be useful.
> Alois Schlögl, on 2025-07-03:
>> * What led up to the situation?
>>
>> I recently upgraded to trixie, and tried reinstalling octave-biosig with
>> apt-get install octave-biosig
>> does run and the package is installed, however
>> when starting Octave, the package is not shown and can not be loaded with
>> pkg list
>> pkg load biosig
> I'm under the impression that the dh-octave scripting is
> supposed to capture and convert the scripting to something
> compatible with octave's integrated package management system.
> However the package is deployed in such manner that it end up
> flat:
A contributing factor might be that the directory structure of biosig
sources file, is very different (not compliant) with standard directory
structure of typical octave packages, and so some of the assumptions in
the dh-octave scripts might not be fulfilled.
I noticed also that other octave packages (e.g. octave-signal) is
installed on
/usr/lib/x86_64-linux-gnu/octave/packages/signal-1.4.6/x86_64-pc-linux-gnu-api-v59/*.{mex,oct}
/usr/share/octave/packages/signal-1.4.6/PKG_ADD
So, instead of
/usr/lib/x86_64-linux-gnu/octave/site/ /usr/share/octave/site/ Other
packages are installed in /usr/lib/x86_64-linux-gnu/octave/packages/
/usr/share/octave/packages/
>> apt-file list octave-biosig
>> shows the files are installed in
>> octave-biosig: oct/x86_64-pc-linux-gnu/biosig/mexSSAVE.mex
>> ...
>> octave-biosig: /usr/share/octave/site/m/biosig/...
>> ...
>> * What was the outcome of this action?
>>
>> and when adding these directories, octave-biosig is usable.
> The sentence is unclear to me, when adding which directories
> where?
Ops, I meant "unusable" ("usable" is a typo. ).
Within octave, you can do
addpath('/usr/lib/x86_64-linux-gnu/octave/site/oct/x86_64-pc-linux-gnu/biosig/')
and than mexSLOAD, would be available, and one could do this for all the other directories with *.mex and *.m files.
The command "path" shows which directories are searched for any *.m,*.oct,*.mex command.
>
>> pkg list
>> should list biosig
>> pkg load biosig
>> should provide the functions in each path, e.g.
> Indeed:
>
> octave:1> pkg list
> no packages installed.
> octave:2> pkg load biosig
> error: package biosig is not installed
> error: called from
> load_packages at line 47 column 7
> pkg at line 639 column 7
>
>> which sload
>> which mexSLOAD
>> should show the location of these functions.
> On my end I have something different from what you describre:
> the symbols are identified without loading the packages at all,
> as if they are loaded immediately in the octave namespace:
>
> octave:1> which sload
> 'sload' is a function from the file /usr/share/octave/site/m/biosig/t200_FileAccess/sload.m
> octave:2> which mexSLOAD
> 'mexSLOAD' is a function from the file /usr/lib/x86_64-linux-gnu/octave/site/oct/x86_64-pc-linux-gnu/biosig/mexSLOAD.mex
>
> Does that match your observation?
You are right, the package is actually usable. mexSLOAD, sload and all
the other functions are available. This seems to be the case,
independently of "pkg load". When checking from with Octave the "path",
it shows that the biosig-directories are already included.
So the error is about
- "pkg list" does not show the biosig package, and
- "pkg load biosig" and "pkg unload biosig" show an error, and do not
have any effect.
- "apt install octave-biosig" is putting biosig already into the path of
octave, and make it usable from within octave, put this is independent
of any "pkg .. " command.
That's at least unexpected and could be confusing.
>
> My current impression is that the package might simply need a
> nudge to get octave-biosig shipped as an octave package, but as
> I mentioned first, I'm not litterate with octave and it's
> packaging at the moment, so I probably won't fix anything any
> time soon. I'm just trying to triage the bug.
I'll look further into this, but dh-octave is obscure to me. So any help
is appreciated here.
> Have a nice day, :)
Thanks, same to you.
More information about the Debian-med-packaging
mailing list