1. 15 Oct, 2018 2 commits
    • Ludovic Courtès's avatar
      kernel: Remove '%notebook' global variable. · 3ec4956c
      Ludovic Courtès authored
      * guix-jupyter-kernel.scm (%notebook): Remove.
      (reply-kernel-info-request): Remove 'socket' parameter; add 'notebook'
      parameter and adjust accordingly.
      (reply-execute-request): Likewise.
      (shutdown): Likewise.
      (start-container): Add 'notebook' parameter and use it.
      (start-kernel): Likewise.
      (run-new-container): Remove.
      <top level>: Adjust 'sigaction' and 'start-kernel' calls accordingly.
      3ec4956c
    • Ludovic Courtès's avatar
      client: Add a <notebook> record type and use it. · c7fd4571
      Ludovic Courtès authored
      * guix-kernel/jupyter-client.scm (<notebook>): New record type.
      (json->notebook, close-notebook): New procedures.
      * guix-jupyter-kernel.scm (%notebook): New variable.
      (notebook-info, get-notebook-info-atom)
      (notebook-info-control-port, notebook-info-shell-port)
      (notebook-info-transport, notebook-info-signature-scheme)
      (notebook-info-stdin-port, notebook-info-heartbeat-port)
      (notebook-info-ip, notebook-info-iopub-port)
      (notebook-info-key, create-address, context)
      (addr-heartbeat, addr-shell, addr-control, addr-iopub)
      (addr-stdin, socket-heartbeat, socket-shell, socket-control)
      (socket-iopub, socket-stdin, addresses, sockets): Remove.
      Remove top-level calls to 'zmq-set-socket-option' and
      'zmq-bind-socket'.
      (proxy-exec-container, heartbeat-handler, general-handler)
      (reply-kernel-info-request, reply-execute-request)
      (start-container, start-kernel): Refer to %NOTEBOOK instead of referring
      to the individual variables.
      (atexit, sig-exit-handler): Remove.
      (shutdown): Remove call to 'atexit'.
      (exit-handler): New procedure.
      Use it in top-level 'sigaction' calls.
      c7fd4571
  2. 24 Sep, 2018 1 commit
    • Ludovic Courtès's avatar
      Send and receive bytevectors. · da295031
      Ludovic Courtès authored
      This avoids the occasional string decoding error for byte streams that
      were not actual UTF-8 strings.
      
      This is based on commit fbab29d738b46d8637579ccec93be49520a4606f ("Fixed
      a bug when the kernel could not send kernel_info (1 minute pause after
      notebook starts)") of <https://github.com/jerry40/guile-kernel
      
      >.
      
      * guix-jupyter-container.scm (reply-execute-request): Turn UUID into a
      bytevector.
      * guix-jupyter-kernel.scm (send-to-container): Turn NAME into a
      bytevector and use 'zmq-send-msg-parts-bytevector'.
      (heartbeat-handler): Use '-bytevector' send and receive procedures.
      (general-handler): Likewise.  Add calls to 'utf8->string' as needed.
      * guix-kernel/jupyter-client.scm (send-to-jupyter)
      (pub): Likewise.
      * guix-kernel/jupyter-server.scm (run-kernel): Likewise.
      Co-authored-by: default avatarjerry40 <epanfilov@gmail.com>
      da295031
  3. 20 Jul, 2018 3 commits
  4. 18 Jul, 2018 1 commit
  5. 17 Jul, 2018 2 commits
    • Ludovic Courtès's avatar
      guix-kernel: Simplify container network file system handling. · 3531b335
      Ludovic Courtès authored and ROUBY Pierre-Antoine's avatar ROUBY Pierre-Antoine committed
      * guix-jupyter-kernel.scm (%network-file-systems): New variable.
      (start-container)[network-file-system]: Remove.
      Use %NETWORK-FILE-SYSTEMS instead.
      3531b335
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Add ipython. · 0c25abe7
      ROUBY Pierre-Antoine authored
      * guix-jupyter-container.scm (proxy-exec-kernel): Get streams message
        type.
        (local-eval): Send 'guix-end-of-eval' message.
      * guix-jupyter-kernel.scm (proxy-exec-container): Get streams message
        type.
      * guix-kernel/jupyter-client.scm (reply-html): Send 'guix-end-of-eval'
        message.
      * guix-kernel/jupyter-server.scm (exec-kernel): Add IPython.
      0c25abe7
  6. 13 Jul, 2018 2 commits
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Add syntax for 'guix environment' magic command. · c8fd0d41
      ROUBY Pierre-Antoine authored
      * guix-jupyter-container.scm (kernel-info->html): Add warning at
        envrionment creation.
        (reply-execute-request): Update list ref.
      * guix-jupyter-kernel.scm: Update list ref.
      * guix-kernel/magic.scm (magic-env?): Test separator.
      * tests/magic.scm (magic-no-code): Update string.
      * README.org (How to use it): Update 'environment'.
      * guix-kernel-demo.ipynb: Update with new syntax.
      c8fd0d41
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Reply html at environment creation. · 7a019ac3
      ROUBY Pierre-Antoine authored
      * guix-kernel/magic.scm (magic-html?): New procedure.
      * guix-jupyter-container.scm (reply-html-to-kernel,
        kernel-info->html): New procedures.
      * guix-jupyter-kernel.scm: Minor change.
      * guix-kernel/html.scm: New file.
      * guix-kernel/jupyter-client.scm (reply-html): New procedure.
      * Makefile.am: Add 'guix-kernel/html.scm'.
      * guix-kernel-demo.ipynb: Add example for new features.
      7a019ac3
  7. 10 Jul, 2018 2 commits
  8. 05 Jul, 2018 1 commit
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Run Jupyter kernel over Guix kernel. · a76494a7
      ROUBY Pierre-Antoine authored
      * guix-jupyter-container.scm: Add magic kernel command.
      * guix-jupyter-kernel.scm: Add magic kernel command.
      * guix-kernel/jupyter-server.scm: New file.
      * Makefile.am: Add jupyter-server to SOURCE.
      * guix-kernel/magic.scm (magic-kernel?,
        magic-get-kernel-name): Add procedure.
        (magic?): Change '%%' by ';;'.
      * guix-kernel-demo.ipynb: Add new guix-kernel features.
      * logo.png: New file.
      a76494a7
  9. 03 Jul, 2018 2 commits
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Add modules jupyter-client. · 81d3619b
      ROUBY Pierre-Antoine authored
      * guix-kernel/jupyter-client.scm: New file.
      * guix-jupyter-container.scm: Use module 'guix-kernel jupyter-client'.
      * guix-jupyter-kernel.scm: Use module 'guix-kernel jupyter-client'.
      * Makefile.am: Add 'guix-kernel/jupyter-client.scm' to SOURCE.
      81d3619b
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Rename 'subkernel' to 'container'. · 180ff53e
      ROUBY Pierre-Antoine authored
      * guix-jupyter-subkernel.scm: Rename to guix-jupyter-container.scm.
      * guix-jupyter-kernel.scm: Substitute all 'subkernel' to 'container'.
      * Makefile.am: Update SOURCE path.
      180ff53e
  10. 02 Jul, 2018 1 commit
  11. 27 Jun, 2018 1 commit
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Fix guix package. · 87850a5f
      ROUBY Pierre-Antoine authored
      * Makefile.am (kernel.json): Delete rule.
      * environment.scm (arguments): substitute openssl, guile, guile-load-path,
        guile-load-compiled-path and kernel path.
        (source): Use local file.
      * guix-kernel/environ.scm (guile-current-load-path->args-list,
        guix-current-load-compiled-path->args-list): New procedures.
      * kernel.json: Rename 'kernel.json.in' to 'kernel.json'.
        (argv) Add '@guile@', '@LOAD_PATH@', '@LOAD_COMPILED_PATH@' and
        '@guix-jupyter-kernerl.scm@' for subsitution.
      * guix-jupyter-kernel.scm (start-sub-kernel): Propagated guile load path
        and load compiled path.
      87850a5f
  12. 25 Jun, 2018 2 commits
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Add GPLv3 and copyright file header. · fdd4dc2a
      ROUBY Pierre-Antoine authored
      * Makefile.am: Add GPLv3+ header.
      * configure.ac: Add GPLv3+ header.
      * guix-jupyter-kernel.scm: Add GPLv3+ header.
      * guix-jupyter-subkernel.scm: Add GPLv3+ header.
      * guix-kernel/environ.scm: Add GPLv3+ header.
      * guix-kernel/hmac.scm: Add GPLv3+ header.
      * guix-kernel/magic.scm: Add GPLv3+ header.
      * guix-kernel/tools.scm: Add GPLv3+ header.
      fdd4dc2a
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Add autotools build system. · 2072ebcd
      ROUBY Pierre-Antoine authored
      * guix-jupyter-kernel.scm: Move from 'src/'.
      * guix-jupyter-subkernel.scm: Move from 'src/'.
      * guix-kernel/environ.scm: Move from 'src/'.
      * guix-kernel/hmac.scm: Move from 'src/'.
      * guix-kernel/magic.scm: Move from 'src/'.
      * guix-kernel/tools.scm: Move from 'src/'.
      * kernel.json.in: Move from 'src/kernel.json'.
        (argv): Add '@guilemoduledir@'.
      * env.in: New file.
      * bootstrap: New file.
      * configure.ac: New file.
      * guile.am: New file.
      * Makefile.am: New file.
      * environment.scm: New file.
      * VERSION: New file.
      2072ebcd
  13. 22 Jun, 2018 4 commits
  14. 21 Jun, 2018 2 commits
  15. 20 Jun, 2018 2 commits
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Add 'environ.scm'. · c754de0d
      ROUBY Pierre-Antoine authored
      * src/guix-kernel/environ.scm: New file.
        (all-packages): New variable.
        (store): New variable.
        (find-package): New procedure.
        (get-package-path): New procedure.
        (guile-current-version-path): New procedure.
      * src/guix-jupyter-kernel.scm (start-sub-kernel): Dynamic guile path.
      c754de0d
    • ROUBY Pierre-Antoine's avatar
      guix-kernel: Add signal handler. · 745ec690
      ROUBY Pierre-Antoine authored
      * src/guix-jupyter-kernel.scm (sig-exit-handler): Add signal handler.
        (atexit): New procedure.
      * src/guix-jupyter-subkerne.scm: Minor change.
      745ec690
  16. 19 Jun, 2018 1 commit
  17. 14 Jun, 2018 3 commits
  18. 12 Jun, 2018 6 commits
  19. 24 May, 2018 1 commit
  20. 15 May, 2018 1 commit