Is there a way to install a functional instance of Jupyter notebook on an Android device? Specifically, I want to use Jupyter to run a Python notebook.
I found some information on the web (like in this blog post) while I was coming up with the answer for this question, but it was all at least somewhat wrong and/or out of date. Here's a complete set of working instructions:
- Install the Termux app.
Open Termux, then enter/run the following commands in the prompt:
$ apt install clang python fftw libzmq freetype libpng pkg-config libcrypt $ LDFLAGS="-lm -lcompiler_rt" pip install jupyter
Optionally, you can install some other useful packages that mesh well with Jupyter:
$ LDFLAGS="-lm -lcompiler_rt" pip install numpy matplotlib
Finally, test the notebook out by running:
$ jupyter notebook
When you run jupyter notebook
, a notebook server starts up and dumps some information to stdout. When you see the line:
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
copy the following URL, paste it into the browser on your device, and then hit go. You should end up with something that looks like this:
I tested these instructions out a Nexus 7 2013 (wifi) running stock Android 6.0.1 (Marshmallow).
Update: <foo>-dev
packages dropped in Termux
As @OmPS pointed out in the comments, Termux dropped all of it's <foo>-dev
packages. I've updated step 2. above to match, but I haven't tested it out since I no longer have access to my android device. If someone could please test the current version of the instructions above and then post their experience in the comments, that would be very helpful.
apt
command did not work, but the when I replaced that command with the pkg
command , it did work. When you first invoke the termux and terminal, it will refer to the pkg
command. –
Egad Directories to search for the sources can be specified in the numpy/distutils/site.cfg file (section [lapack_src]) or by setting the LAPACK_SRC environment variable. self.calc_info() NOT AVAILABLE
–
Egad pythin-dev
, libzmq-dev
, freetype-dev
, libpng-dev
, libcrypt-dev
all gave "Package has no installation candidate" and then in LDFLAGS="-lm -lcompiler_rt" pip install jupyter
got "No command 'pip' found" –
Hearth cython
in order to get matplotlib
running, but otherwise it worked perfectly. I copied your method to do it: LDFLAGS="-lm -lcompiler_rt" pip install cython
–
Mulloy pip install jupyter-lab
worked for me after this –
Eichmann rust
and binutils
(apt install rust binutils
). Also, I had to use the Termux version provided by F-droid. –
Underpin Download the app pydroid3. Open the app. On the top there is a 3-line button - click on it. There is a PIP option - click on it. In PIP, click on install and type jupyter
. Once it gets downloaded, there is terminal option above pip, click on terminal and type jupyter notebook
. Your work is done.
Edit
I got a video explaining the download of jupyter using pydroid3.
I found some information on the web (like in this blog post) while I was coming up with the answer for this question, but it was all at least somewhat wrong and/or out of date. Here's a complete set of working instructions:
- Install the Termux app.
Open Termux, then enter/run the following commands in the prompt:
$ apt install clang python fftw libzmq freetype libpng pkg-config libcrypt $ LDFLAGS="-lm -lcompiler_rt" pip install jupyter
Optionally, you can install some other useful packages that mesh well with Jupyter:
$ LDFLAGS="-lm -lcompiler_rt" pip install numpy matplotlib
Finally, test the notebook out by running:
$ jupyter notebook
When you run jupyter notebook
, a notebook server starts up and dumps some information to stdout. When you see the line:
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
copy the following URL, paste it into the browser on your device, and then hit go. You should end up with something that looks like this:
I tested these instructions out a Nexus 7 2013 (wifi) running stock Android 6.0.1 (Marshmallow).
Update: <foo>-dev
packages dropped in Termux
As @OmPS pointed out in the comments, Termux dropped all of it's <foo>-dev
packages. I've updated step 2. above to match, but I haven't tested it out since I no longer have access to my android device. If someone could please test the current version of the instructions above and then post their experience in the comments, that would be very helpful.
apt
command did not work, but the when I replaced that command with the pkg
command , it did work. When you first invoke the termux and terminal, it will refer to the pkg
command. –
Egad Directories to search for the sources can be specified in the numpy/distutils/site.cfg file (section [lapack_src]) or by setting the LAPACK_SRC environment variable. self.calc_info() NOT AVAILABLE
–
Egad pythin-dev
, libzmq-dev
, freetype-dev
, libpng-dev
, libcrypt-dev
all gave "Package has no installation candidate" and then in LDFLAGS="-lm -lcompiler_rt" pip install jupyter
got "No command 'pip' found" –
Hearth cython
in order to get matplotlib
running, but otherwise it worked perfectly. I copied your method to do it: LDFLAGS="-lm -lcompiler_rt" pip install cython
–
Mulloy pip install jupyter-lab
worked for me after this –
Eichmann rust
and binutils
(apt install rust binutils
). Also, I had to use the Termux version provided by F-droid. –
Underpin I have tried the above instructions and everything works down to the tee except when the following command is run:
$ LDFLAGS="-lm -lcompiler_rt" pip install numpy matplotlib
This ends in an error that says that matplotlib could not be installed and the output advises you to install some dependencies.
My own output looks something like this:
I googled and found that just installing a simple package through following command fixed it:
pkg install zlib-dev
after running this command run the following command again and both packages will be installed though it took a lot of time to complete:
$ LDFLAGS="-lm -lcompiler_rt" pip install numpy matplotlib
-cheers
© 2022 - 2024 — McMap. All rights reserved.
Pydroid 3
app has a quick link for installing Jupyter. I haven't tried it yet, but reviews indicate that it works. – Getup