I would really like to see bokeh packaged for Debian.
FWIW, I have run npm2deb on bokehjs to see which node packages are
missing in Debian. Here is the output:
$ npm2deb depends -b -r bokehjs
Dependencies:
NPM Debian
bokehjs (1.4.0) None
├─ canvas2svg (git+https://github.com/bokeh/canvas2svg.git#v1.0.21)None
├─ es5-ext (^0.10.50) node-es5-ext
(0.10.62+dfsg1+~1.1.0-2)
├─ es6-map (^0.1.5) node-es6-map (0.1.5-3)
├─ es6-promise (4.2.6) node-es6-promise
(4.2.8-12)
├─ es6-set (^0.1.5) node-es6-set (0.1.6-1)
├─ es6-weak-map (^2.0.2) node-es6-weak-map (2.0.3-3)
├─ flatbush (^3.1.1) None
│ └─ flatqueue (^2.0.3) None
├─ gloo2 (git+https://github.com/bokeh/gloo2.git#b41bd5d)None
│ └─ error ({'code': 'E404', 'summary': 'Unpublished on
2021-04-28T09:35:17.607Z', 'detail': "\n 'gloo2' is not in this
registry.\n\nNote that you can also install from a\ntarball, folder,
http url, or git url."})None
├─ hammerjs (^2.0.4) None
├─ nouislider (^10.0.0) node-nouislider
(15.7.1+ds-1)
├─ numbro (git+https://github.com/bokeh/numbro.git#e1b6c52)None
│ └─ bignumber.js (^8 || ^9) None
├─ pikaday
(git+https://github.com/bokeh/pikaday.git#6b7258e)node-pikaday
(1.8.2+~1.7.6-2)
├─ proj4 (<2.4) proj4js (2.3.17+ds-1)
├─ slickgrid (git+https://github.com/bokeh/SlickGrid.git#8e993bf)None
│ └─ sortablejs (^1.15.0) None
├─ sprintf-js (^1.1.2) node-sprintf-js
(1.1.2+ds1+~1.1.2-1)
├─ timezone (^1.0.22) None
├─ tslib (^1.10.0) node-tslib (2.4.1-1)
└─ underscore.template (^0.1.7) None
So basically 8 out 18 node dependencies are missing. From those ones
slickgrid and hemmerjs seem like big ones, the rest maybe not so much,
but of course nobody knows until it is tried out.
Also, trying to check which are the python dependencies, I tried to
create a venv using the system packages and this is what I get:
$ python3 -m venv --system-site-packages my_env
$ . ./my_env/bin/activate
(my_env) $ pip install bokeh
Collecting bokeh
Using cached bokeh-3.3.0-py3-none-any.whl (6.8 MB)
Requirement already satisfied: Jinja2>=2.9 in
/usr/lib/python3/dist-packages (from bokeh) (3.1.2)
Requirement already satisfied: contourpy>=1 in
/usr/lib/python3/dist-packages (from bokeh) (1.0.7)
Requirement already satisfied: numpy>=1.16 in
/usr/lib/python3/dist-packages (from bokeh) (1.24.2)
Requirement already satisfied: packaging>=16.8 in
/usr/lib/python3/dist-packages (from bokeh) (23.0)
Requirement already satisfied: pandas>=1.2 in
/usr/lib/python3/dist-packages (from bokeh) (1.5.3)
Requirement already satisfied: pillow>=7.1.0 in
/usr/lib/python3/dist-packages (from bokeh) (9.4.0)
Requirement already satisfied: PyYAML>=3.10 in
/usr/lib/python3/dist-packages (from bokeh) (6.0)
Requirement already satisfied: tornado>=5.1 in
/usr/lib/python3/dist-packages (from bokeh) (6.2)
Requirement already satisfied: xyzservices>=2021.09.1 in
/usr/lib/python3/dist-packages (from bokeh) (2023.2.0)
Installing collected packages: bokeh
Successfully installed bokeh-3.3.0
Which seems to indicate that all the python dependencies are already in
Debian. Maybe this is too naive and there are embedded dependencies in
bokeh, but from a cursory look at the bokeh sources I could not find it.