launching notebooks in guix containers
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
jgart 0edb9e728e add unlicense 1 month ago
src long poll for notebook on POST 1 month ago
.gitignore add gitignore 1 month ago
README.md update readme 1 month ago
UNLICENSE add unlicense 1 month ago
manifest.scm add drakma 1 month ago
nb.asd add drakma 1 month ago

README.md

nb

Development with GNU Guix

guix shell

Uploading a notebook

curl -d "url=https://github.com/jgarte/abjad_jupyter_notebook" -X POST http://127.0.0.1:8080/

Uploading notebooks with nb-upload

$ nb-upload test.ipynb
https://notebook.genetwork.org/view/04ab7ab45c2f08628eba9cb8fe5fb9a63f5961d5dfce622b9e26974ddc138916

Viewing available notebooks

curl http://127.0.0.1:8080/api

Viewing uploaded notebooks with nb-upload

$ nb-upload
[
  {
    "description": "Quantitative Genetics Tools for Mapping Trait Variation to Mechanisms, Therapeutics, and Interventions - Webinar Series",
    "home_page": "https://github.com/senresearch/quant-genetics-webinars"
  },
  {
    "description": "This shows how to model BXD mouse weight data using an AR(1) process",
    "home_page": "https://github.com/BonfaceKilz/tsaf-analysis-of-bxd-mouse-colonies"
  },
  {
    "description": "Querying the GeneNetwork API declaratively with python. ",
    "home_page": "https://github.com/jgarte/genenetwork-jupyter-notebook-example"
  },
  {
    "description": "R notebook showing how to query the GeneNetwork API.",
    "home_page": "https://github.com/jgarte/genenetwork-api-r-jupyter-notebook"
  }
]

Creating an executable

Alternatively, after running guix shell to set up nb-hub's dependencies run the following to create an executable binary:

sbcl --load nb.asd --eval '(require :nb)' --eval '(in-package :nb)' --eval "(sb-ext:save-lisp-and-die #p\"nb\" :toplevel #'main :executable t)"

Copy the binary to the server and run it:

chmod +x nb
./nb

License

Copyright (c) 2022 jgart

Licensed under the LLGPL License.