Not completely. It's correct that the 'pkg' command does not *install*
dependencies, but it does *load* them once they are installed.
For example,
>> pkg list
Package Name | Version | Installation directory
--------------+---------+-----------------------
control | 3.2.0 | /home/user/octave/control-3.2.0
signal | 1.4.1 | /home/user/octave/signal-1.4.1
>> pkg load signal
>> pkg list
Package Name | Version | Installation directory
--------------+---------+-----------------------
control *| 3.2.0 | /home/user/octave/control-3.2.0
signal *| 1.4.1 | /home/user/octave/signal-1.4.1
To the original question, all that's needed is to include the Depends
field in the DESCRIPTION file. Refer to
https://www.octave.org/doc/interpreter/The-DESCRIPTION-File.html for the
full details.