diff --git a/module4/ressources/docker_tutorial_fr.org b/module4/ressources/docker_tutorial_fr.org new file mode 100644 index 0000000000000000000000000000000000000000..29c98e9a052bc44c083b96d56810d940066b3d3a --- /dev/null +++ b/module4/ressources/docker_tutorial_fr.org @@ -0,0 +1,4022 @@ +# -*- mode: org -*- +#+TITLE: Contrôler un environnement logiciel avec docker +#+DATE: July, 2019 +#+STARTUP: overview indent +#+OPTIONS: num:nil toc:t +#+PROPERTY: header-args :eval never-export + + +L'objectif, c'est la reproductibilité et l'explicitation des +dépendances. L'intégration continue est un moyen d'y arriver mais je +dirais que notre objectif n'est pas d'en faire des experts de +développement logiciel et de l'intégration continue. + +Il est possible de s'arrêter à l'étape 3. Ceux qui veulent allez plus +loin vont jusqu'à l'étape 6. Et ceux qui veulent vraiment contrôler +finement, passent par l'étape 7 et aller au delà. + +Ayant peu d'expérience avec Docker, je me suis appuyé sur la +[[https://people.irisa.fr/Anthony.Baire/docker-tutorial.pdf][présentation d'Anthony Baire]] pour préparer cette séquence. + +# * Table des matières :TOC: +# - [[#automatiser-lexécution-dun-notebook][Automatiser l'exécution d'un notebook]] +# - [[#identifier-les-dépendances][Identifier les dépendances]] +# - [[#sassure-que-docker-est-bien-installé][S'assure que docker est bien installé]] +# - [[#récupérer-un-environnement-de-base][Récupérer un environnement de base]] +# - [[#exécuter-une-commande-dans-un-conteneur][Exécuter une commande dans un conteneur]] +# - [[#docker-en-interactif][Docker en interactif]] +# - [[#automatiser-la-construction-dun-environnement][Automatiser la construction d'un environnement]] +# - [[#tester-que-votre-code-sexécute-correctement-ailleurs-que-sur-votre-machine][Tester que votre code s'exécute correctement ailleurs que sur votre machine.]] +# - [[#améliorer-le-test][Améliorer le test]] +# - [[#aller-plus-loin][Aller plus loin]] + + +* Autre progression +1. Automatiser l'exécution d'un notebook sur sa machine -> script. Pas + de contrôle du tout de l'environnement. *Où stoquer le résultat?* + *Comment indiquer si c'est OK ?* +2. CI: debian; apt-get install ; youpi! Mais lent et pas complètement + figé... *Qui a "raison" ?* *Comment savoir ce qui a causé la différence ?* +3. Figer une image docker et automatiser sa construction en local + (possibilité de faire à distance mais demande une mise en oeuvre un + peu particulière, fragile si on ne sait pas faire à la main). +4. Intégrer son image au CI +5. Publier la recette et garantir que l'image correspond à cette + recette ? +6. Reconstruire un environnement particulier? Une vieille debian par + exemple ? +* Automatiser l'exécution d'un notebook +Commençons par un notebook tout simple, celui de challenger, et +vérifions qu'il s'exécute bien sur "ma machine". Je commence par créer +un répertoire pour ce notebook. +#+begin_src shell :session *shell* :results output :exports both +mkdir -p mooc_docker +cd mooc_docker +#+end_src + +#+RESULTS: + +J'y télécharge le notebook et le fichier de données. +#+begin_src shell :session *shell* :results output :exports both +wget https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-modele/raw/master/module2/exo5/exo5_fr.ipynb?inline=false -O notebook.ipynb +wget https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-modele/raw/master/module2/exo5/shuttle.csv?inline=false -O shuttle.csv +#+end_src + +#+RESULTS: +#+begin_example +--2019-07-23 09:19:24-- https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-modele/raw/master/module2/exo5/exo5_fr.ipynb?inline=false +Resolving gitlab.inria.fr (gitlab.inria.fr)... 128.93.193.8 +Connecting to gitlab.inria.fr (gitlab.inria.fr)|128.93.193.8|:443... connected. +HTTP request sent, awaiting response... 200 OK +Length: 41019 (40K) [text/plain] +Saving to: 'notebook.ipynb' +[ ] 0 --.-KB/s notebook.ipynb 100%[===================>] 40.06K --.-KB/s in 0.09s + +2019-07-23 09:19:25 (448 KB/s) - 'notebook.ipynb' saved [41019/41019] +--2019-07-23 09:19:25-- https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-modele/raw/master/module2/exo5/shuttle.csv?inline=false +Resolving gitlab.inria.fr (gitlab.inria.fr)... 128.93.193.8 +Connecting to gitlab.inria.fr (gitlab.inria.fr)|128.93.193.8|:443... connected. +HTTP request sent, awaiting response... 200 OK +Length: 485 [text/plain] +Saving to: 'shuttle.csv' +[ ] 0 --.-KB/s shuttle.csv 100%[===================>] 485 --.-KB/s in 0s + +2019-07-23 09:19:25 (4.23 MB/s) - 'shuttle.csv' saved [485/485] +#+end_example + +#+begin_src shell :session *shell* :results output :exports both +ls -l +#+end_src + +#+RESULTS: +: total 56 +: -rw-r--r-- 1 alegrand alegrand 41019 Jul 23 09:19 notebook.ipynb +: -rw-r--r-- 1 alegrand alegrand 485 Jul 23 09:19 shuttle.csv + +Ce notebook a déja été exécuté. Exportons le au format html pour voir +à quoi il [[file:mooc_docker/notebook.html][ressemble]]: +#+begin_src shell :session *shell* :results output :exports both +jupyter-nbconvert --to html notebook.ipynb +ls -l +#+end_src + +#+RESULTS: +: [NbConvertApp] Converting notebook notebook.ipynb to html +: [NbConvertApp] Writing 305180 bytes to notebook.html +: total 356 +: -rw-r--r-- 1 alegrand alegrand 305302 Jul 23 09:20 notebook.html +: -rw-r--r-- 1 alegrand alegrand 41019 Jul 23 09:19 notebook.ipynb +: -rw-r--r-- 1 alegrand alegrand 485 Jul 23 09:19 shuttle.csv + +Je vais maintenant le ré-exécuter sur ma machine. +#+begin_src shell :session *shell* :results output :exports both +jupyter nbconvert --to notebook --execute notebook.ipynb --output notebook_rerun.ipynb +jupyter nbconvert --to html --execute notebook_rerun.ipynb +ls -l +#+end_src + +#+RESULTS: +#+begin_example +[NbConvertApp] Converting notebook notebook.ipynb to notebook +[NbConvertApp] Executing notebook with kernel: python3 +[NbConvertApp] Writing 41346 bytes to notebook_rerun.ipynb +[NbConvertApp] Converting notebook notebook_rerun.ipynb to html +[NbConvertApp] Executing notebook with kernel: python3 +[NbConvertApp] Writing 305683 bytes to notebook_rerun.html +total 700 +-rw-r--r-- 1 alegrand alegrand 305302 Jul 23 09:20 notebook.html +-rw-r--r-- 1 alegrand alegrand 41019 Jul 23 09:19 notebook.ipynb +-rw-r--r-- 1 alegrand alegrand 305805 Jul 23 09:21 notebook_rerun.html +-rw-r--r-- 1 alegrand alegrand 41473 Jul 23 09:21 notebook_rerun.ipynb +-rw-r--r-- 1 alegrand alegrand 485 Jul 23 09:19 shuttle.csv +#+end_example + +Tiens, je peux alors m'appercevoir que le notebook ainsi obtenu est +différent de celui d'origine. Je peux ouvrir les deux sorties html, +mais pas facile de repérer les différences... Diff aide un peu mais il +vaut mieux ignorer les images stoquées dans le notebook au format binaire. + +#+begin_src shell :session *shell* :results output :exports both +diff notebook.ipynb notebook_rerun.ipynb | grep -v image/png | sed 's/^/>/' +#+end_src + +#+RESULTS: +#+begin_example + +456c456 +--- +506a507,514 +> "name": "stderr", +> "output_type": "stream", +> "text": [ +> "/usr/lib/python3/dist-packages/statsmodels/compat/pandas.py:56: FutureWarning: The pandas.core.datetools module is deprecated and will be removed in a future version. Please use the pandas.tseries module instead.\n", +> " from pandas.core import datetools\n" +> ] +> }, +> { +512c520 +< " Dep. Variable: Frequency No. Observations: 7 \n", +--- +> " Dep. Variable: Frequency No. Observations: 7 \n", +515c523 +< " Model: GLM Df Residuals: 5 \n", +--- +> " Model: GLM Df Residuals: 5 \n", +518c526 +< " Model Family: Binomial Df Model: 1 \n", +--- +> " Model Family: Binomial Df Model: 1 \n", +521c529 +< " Link Function: logit Scale: 1.0000 \n", +--- +> " Link Function: logit Scale: 1.0 \n", +524c532 +< " Method: IRLS Log-Likelihood: -2.5250 \n", +--- +> " Method: IRLS Log-Likelihood: -3.6370\n", +527c535 +< " Date: Sat, 13 Apr 2019 Deviance: 0.22231 \n", +--- +> " Date: Tue, 23 Jul 2019 Deviance: 3.3763\n", +530c538 +< " Time: 19:11:24 Pearson chi2: 0.236 \n", +--- +> " Time: 09:21:16 Pearson chi2: 0.236 \n", +533c541 +< " No. Iterations: 4 Covariance Type: nonrobust\n", +--- +> " No. Iterations: 5 \n", +556,560c564,568 +< "Link Function: logit Scale: 1.0000\n", +< "Method: IRLS Log-Likelihood: -2.5250\n", +< "Date: Sat, 13 Apr 2019 Deviance: 0.22231\n", +< "Time: 19:11:24 Pearson chi2: 0.236\n", +< "No. Iterations: 4 Covariance Type: nonrobust\n", +--- +> "Link Function: logit Scale: 1.0\n", +> "Method: IRLS Log-Likelihood: -3.6370\n", +> "Date: Tue, 23 Jul 2019 Deviance: 3.3763\n", +> "Time: 09:21:16 Pearson chi2: 0.236\n", +> "No. Iterations: 5 \n", +613c621 +--- +#+end_example +Certaines différences sont insignifiantes (l'heure, la date ou le +warning sur =pandas.core.datetools= qui ne sera bientôt plus maintenu), +mais d'autres sont plus alarmantes. Le nombre d'itérations pour +calculer la régression logistique n'est pas le même (5 au lieu de 4) +et les valeurs de Log-Likelihood et de Deviance sont très +différentes. Que s'est-il passé ? A priori, ce sont des bibliothèques +python différentes qui ont été utilisées et qui expliquent ces +différences. Nous allons voir comment contrôler tout ceci. +* Identifier les dépendances +Je vais vous montrer comment créer et manipuler une image et un +conteneur docker sur ma machine pas à pas. Vous n'aurez pas forcément +à réaliser ce genre de choses par la suite sur votre machine mais il +est bon que vous voyiez comment cela se passe afin que, lorsque vous +utiliserez des outils qui font ça automatiquement pour vous dans le +cloud, il n'y ait rien de mystérieux. + +Docker va vous permettre d'exécuter des programmes dans ce que l'on +appelle des conteneurs. Un /conteneur/ est une sorte de mini-machine +virtuelle dont le système de fichier est appelé /image/ et qui va donc +exécuter un /programme/. Je peux avoir à un instant donné plusieurs +conteneurs exécutant des programmes différents issus d'images +différentes ou identiques. +- Le premier avantage de cette approche est que votre programme sera + isolé du reste de votre machine et, quoi que vous fassiez dans ce + conteneur, vous n'abimerez pas votre propre machine en installant + des bibliothèques plus anciennes ou plus modernes qui seraient + incompatibles. +- Le second avantage est que vous pourrez préparer plusieurs + conteneurs différents pour vérifier si votre programme fonctionne + toujours bien. + +** S'assure que docker est bien installé +Je suis sur une machine linux (une debian) et j'ai donc installé +docker via le paquet =docker.io=. J'ai aussi pris soin de me mettre dans +le groupe docker pour ne pas avoir à passer root à chaque fois. Voici +comment j'ai fait. +#+begin_src shell :results output :exports both :eval never +sudo apt-get install docker.io +sudo adduser alegrand docker +#+end_src + +#+begin_src shell :session *shell* :results output :exports both +docker version +#+end_src + +#+RESULTS: +#+begin_example +Client: + Version: 1.13.1 + API version: 1.26 + Go version: go1.9.3 + Git commit: 092cba3 + Built: Thu Feb 1 09:36:44 2018 + OS/Arch: linux/amd64 + +Server: + Version: 1.13.1 + API version: 1.26 (minimum version 1.12) + Go version: go1.9.3 + Git commit: 092cba3 + Built: Thu Feb 1 09:36:44 2018 + OS/Arch: linux/amd64 + Experimental: false +#+end_example +** Récupérer une image de base +Nous pouvons commener. L'idée pour bien contrôler son environnement va +être de partir d'un environnement minimaliste et dans lequel notre +notebook aura d'ailleurs peu de chances de s'exécuter. Je partirai +d'une image debian stable. +#+begin_src shell :session *shell* :results output :exports both +docker pull debian:stable +#+end_src + +#+RESULTS: +: stable: Pulling from library/debian +: +: 5893bf6f34bb: Pulling fs layer +: 5893bf6f34bb: Downloading 507kB/50.38MB +: 5893bf6f34bb: Verifying Checksum +: 5893bf6f34bb: Download complete +: 5893bf6f34bb: Extracting 524.3kB/50.38MB +: 5893bf6f34bb: Pull complete +: Digest: sha256:4d28f191a4c9dec569867dd9af1e388c995146057a36d5b3086e599af7c2379b +: Status: Downloaded newer image for debian:stable + +La commande précédent s'est connectée sur le https://hub.docker.com/ +pour y télécharger une image officielle debian stable. Je peux la +trouver listée ici: https://hub.docker.com/_/debian. Que puis-je +savoir sur cette image ? + +#+begin_src shell :session *shell* :results output :exports both +docker image ls +#+end_src + +#+RESULTS: +#+begin_example +REPOSITORY TAG IMAGE ID CREATED SIZE +simgrid-website latest 0f3727380ab6 12 days ago 1.19GB +debian stable 40e13c3c9aab 12 days ago 114MB +#+end_example + +Mon image apparaît. Elle fait 114MB et a été construite il y a 12 +jours. +** Exécuter une commande dans un conteneur +Grâce à la commande docker run, je vais pouvoir exécuter des commandes +dans le conteneur que je viens de télécharger. Par exemple, comme ceci. +#+begin_src shell :session *shell* :results output :exports both +docker run debian:stable ls +#+end_src + +#+RESULTS: +#+begin_example +bin +boot +dev +etc +home +lib +lib64 +media +mnt +opt +proc +root +run +sbin +srv +sys +tmp +usr +var +#+end_example + +Bon, ok, ce n'est pas très impressionnant. Essayons avec la commande +=hostname= qui me renverra comment s'appelle la machine. +#+begin_src shell :session *shell* :results output :exports both +docker run debian:stable hostname +#+end_src + +#+RESULTS: +: 07193bfee89f + +Ah, oui, c'est assez différent de ce que j'obtiens quand je lance +cette commande directement sur ma machine: +#+begin_src shell :session *shell* :results output :exports both +hostname +#+end_src + +#+RESULTS: +: icarus + +Continuons de comparer. Est-ce que l'on trouve python dans cet +environnement ? +#+begin_src shell :session *shell* :results output :exports both +ls /usr/bin/X11//python3 # chez moi oui +docker run debian:stable ls -l /usr/bin/X11//python3 # mais pas dans cet environnement +#+end_src + +#+RESULTS: +: /usr/bin/X11//python3 +: ls: cannot access '/usr/bin/X11//python3': No such file or directory + +En fait, à chaque fois que je lance cette commande docker, c'est un +peu comme si un mini-système d'exploitation démarrait, exécutait cette +commande et s'éteignait... C'est un peu pénible d'avoir à toujours +préfixer par =docker run=, donc une solution simple consiste à lancer +docker en mode interactif. +** Docker en interactif +À partir de maintenant, il vous faudra bien faire attention à +distinguer les commandes qui sont lancées sur mon système de base de +celles qui sont lancées dans notre conteneur docker. +#+begin_src shell :session *docker* :results output :exports both +docker run --name debian -t -i debian:stable +#+end_src + +#+RESULTS: +: +: echo 'org_babel_sh_eoe' + +Je peux alors exécuter plusieurs séries de commandes facilement dans +mon environnement: +#+begin_src shell :session *docker* :results output :exports both +hostname +python +#+end_src + +#+RESULTS: +: hostname +: dca997abf7cc +: python +: bash: python: command not found + +Mmh, et bien installons python du coup. +#+begin_src shell :session *docker* :results output :exports both +whoami +apt-get update +apt-get install -y python3 +#+end_src + +#+RESULTS: +: whoami +: root +: apt-get update +: Get:1 http://cdn-fastly.deb.debian.org/debian stable InRelease [118 kB] +: Get:2 http://security-cdn.debian.org/debian-security stable/updates InRelease [39.1 kB] +: Get:3 http://cdn-fastly.deb.debian.org/debian stable-updates InRelease [46.8 kB] +: Get:4 http://security-cdn.debian.org/debian-security stable/updates/main amd64 Packages [49.4 kB] +: Get:5 http://cdn-fastly.deb.debian.org/debian stable/main amd64 Packages [7897 kB] +: Fetched 8150 kB in 12s (682 kB/s) +: Reading package lists... Done +: apt-get install python3 +: apt-get install python3 +: Reading package lists... Done +: Building dependency tree +: Reading state information... Done +: The following additional packages will be installed: +: bzip2 file libexpat1 libmagic-mgc libmagic1 libmpdec2 libpython3-stdlib +: libpython3.7-minimal libpython3.7-stdlib libreadline7 libsqlite3-0 libssl1.1 +: mime-support python3-minimal python3.7 python3.7-minimal readline-common xz-utils +: Suggested packages: +: bzip2-doc python3-doc python3-tk python3-venv python3.7-venv python3.7-doc binutils +: binfmt-support readline-doc +: The following NEW packages will be installed: +: bzip2 file libexpat1 libmagic-mgc libmagic1 libmpdec2 libpython3-stdlib +: libpython3.7-minimal libpython3.7-stdlib libreadline7 libsqlite3-0 libssl1.1 +: mime-support python3 python3-minimal python3.7 python3.7-minimal readline-common +: xz-utils +: 0 upgraded, 19 newly installed, 0 to remove and 0 not upgraded. +: Need to get 7789 kB of archives. +: After this operation, 36.3 MB of additional disk space will be used. +: Get:1 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libssl1.1 amd64 1.1.1c-1 [1535 kB] +: Get:2 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3.7-minimal amd64 3.7.3-2 [588 kB] +: Get:3 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libexpat1 amd64 2.2.6-2 [106 kB] +: Get:4 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3.7-minimal amd64 3.7.3-2 [1736 kB] +: Get:5 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-minimal amd64 3.7.3-1 [36.6 kB] +: Get:6 http://cdn-fastly.deb.debian.org/debian stable/main amd64 mime-support all 3.62 [37.2 kB] +: Get:7 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmpdec2 amd64 2.4.2-2 [87.2 kB] +: Get:8 http://cdn-fastly.deb.debian.org/debian stable/main amd64 readline-common all 7.0-5 [70.6 kB] +: Get:9 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libreadline7 amd64 7.0-5 [151 kB] +: Get:10 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsqlite3-0 amd64 3.27.2-3 [641 kB] +: Get:11 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3.7-stdlib amd64 3.7.3-2 [1732 kB] +: Get:12 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3.7 amd64 3.7.3-2 [330 kB] +: Get:13 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3-stdlib amd64 3.7.3-1 [20.0 kB] +: Get:14 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3 amd64 3.7.3-1 [61.5 kB] +: Get:15 http://cdn-fastly.deb.debian.org/debian stable/main amd64 bzip2 amd64 1.0.6-9.1 [48.3 kB] +: Get:16 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmagic-mgc amd64 1:5.35-4 [242 kB] +: Get:17 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmagic1 amd64 1:5.35-4 [117 kB] +: Get:18 http://cdn-fastly.deb.debian.org/debian stable/main amd64 file amd64 1:5.35-4 [66.3 kB] +: Get:19 http://cdn-fastly.deb.debian.org/debian stable/main amd64 xz-utils amd64 5.2.4-1 [183 kB] +: Fetched 7789 kB in 12s (635 kB/s) +: debconf: delaying package configuration, since apt-utils is not installed +: Selecting previously unselected package libssl1.1:amd64. +: (Reading database ... 6674 files and directories currently installed.) +: Preparing to unpack .../libssl1.1_1.1.1c-1_amd64.deb ... +: Unpacking libssl1.1:amd64 (1.1.1c-1) ... +: Selecting previously unselected package libpython3.7-minimal:amd64. +: Preparing to unpack .../libpython3.7-minimal_3.7.3-2_amd64.deb ... +: Unpacking libpython3.7-minimal:amd64 (3.7.3-2) ... +: Selecting previously unselected package libexpat1:amd64. +: Preparing to unpack .../libexpat1_2.2.6-2_amd64.deb ... +: Unpacking libexpat1:amd64 (2.2.6-2) ... +: Selecting previously unselected package python3.7-minimal. +: Preparing to unpack .../python3.7-minimal_3.7.3-2_amd64.deb ... +: Unpacking python3.7-minimal (3.7.3-2) ... +: Setting up libssl1.1:amd64 (1.1.1c-1) ... +: debconf: unable to initialize frontend: Dialog +: debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76.) +: debconf: falling back to frontend: Readline +: debconf: unable to initialize frontend: Readline +: debconf: (Can't locate Term/ReadLine.pm in @INC (you may need to install the Term::ReadLine module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.28.1 /usr/local/share/perl/5.28.1 /usr/lib/x86_64-linux-gnu/perl5/5.28 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.28 /usr/share/perl/5.28 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7.) +: debconf: falling back to frontend: Teletype +: Setting up libpython3.7-minimal:amd64 (3.7.3-2) ... +: Setting up libexpat1:amd64 (2.2.6-2) ... +: Setting up python3.7-minimal (3.7.3-2) ... +: Selecting previously unselected package python3-minimal. +: (Reading database ... 6935 files and directories currently installed.) +: Preparing to unpack .../0-python3-minimal_3.7.3-1_amd64.deb ... +: Unpacking python3-minimal (3.7.3-1) ... +: Selecting previously unselected package mime-support. +: Preparing to unpack .../1-mime-support_3.62_all.deb ... +: Unpacking mime-support (3.62) ... +: Selecting previously unselected package libmpdec2:amd64. +: Preparing to unpack .../2-libmpdec2_2.4.2-2_amd64.deb ... +: Unpacking libmpdec2:amd64 (2.4.2-2) ... +: Selecting previously unselected package readline-common. +: Preparing to unpack .../3-readline-common_7.0-5_all.deb ... +: Unpacking readline-common (7.0-5) ... +: Selecting previously unselected package libreadline7:amd64. +: Preparing to unpack .../4-libreadline7_7.0-5_amd64.deb ... +: Unpacking libreadline7:amd64 (7.0-5) ... +: Selecting previously unselected package libsqlite3-0:amd64. +: Preparing to unpack .../5-libsqlite3-0_3.27.2-3_amd64.deb ... +: Unpacking libsqlite3-0:amd64 (3.27.2-3) ... +: Selecting previously unselected package libpython3.7-stdlib:amd64. +: Preparing to unpack .../6-libpython3.7-stdlib_3.7.3-2_amd64.deb ... +: Unpacking libpython3.7-stdlib:amd64 (3.7.3-2) ... +: Selecting previously unselected package python3.7. +: Preparing to unpack .../7-python3.7_3.7.3-2_amd64.deb ... +: Unpacking python3.7 (3.7.3-2) ... +: Selecting previously unselected package libpython3-stdlib:amd64. +: Preparing to unpack .../8-libpython3-stdlib_3.7.3-1_amd64.deb ... +: Unpacking libpython3-stdlib:amd64 (3.7.3-1) ... +: Setting up python3-minimal (3.7.3-1) ... +: Selecting previously unselected package python3. +: (Reading database ... 7404 files and directories currently installed.) +: Preparing to unpack .../0-python3_3.7.3-1_amd64.deb ... +: Unpacking python3 (3.7.3-1) ... +: Selecting previously unselected package bzip2. +: Preparing to unpack .../1-bzip2_1.0.6-9.1_amd64.deb ... +: Unpacking bzip2 (1.0.6-9.1) ... +: Selecting previously unselected package libmagic-mgc. +: Preparing to unpack .../2-libmagic-mgc_1%3a5.35-4_amd64.deb ... +: Unpacking libmagic-mgc (1:5.35-4) ... +: Selecting previously unselected package libmagic1:amd64. +: Preparing to unpack .../3-libmagic1_1%3a5.35-4_amd64.deb ... +: Unpacking libmagic1:amd64 (1:5.35-4) ... +: Selecting previously unselected package file. +: Preparing to unpack .../4-file_1%3a5.35-4_amd64.deb ... +: Unpacking file (1:5.35-4) ... +: Selecting previously unselected package xz-utils. +: Preparing to unpack .../5-xz-utils_5.2.4-1_amd64.deb ... +: Unpacking xz-utils (5.2.4-1) ... +: Setting up mime-support (3.62) ... +: Setting up libmagic-mgc (1:5.35-4) ... +: Setting up libsqlite3-0:amd64 (3.27.2-3) ... +: Setting up libmagic1:amd64 (1:5.35-4) ... +: Setting up file (1:5.35-4) ... +: Setting up bzip2 (1.0.6-9.1) ... +: Setting up xz-utils (5.2.4-1) ... +: update-alternatives: using /usr/bin/xz to provide /usr/bin/lzma (lzma) in auto mode +: Setting up libmpdec2:amd64 (2.4.2-2) ... +: Setting up readline-common (7.0-5) ... +: Setting up libreadline7:amd64 (7.0-5) ... +: Setting up libpython3.7-stdlib:amd64 (3.7.3-2) ... +: Setting up libpython3-stdlib:amd64 (3.7.3-1) ... +: Setting up python3.7 (3.7.3-2) ... +: Setting up python3 (3.7.3-1) ... +: running python rtupdate hooks for python3.7... +: running python post-rtupdate hooks for python3.7... +: Processing triggers for libc-bin (2.28-10) ... + +Je peux donc enfin exécuter du code python dans mon environnement +docker. + +#+begin_src shell :session *docker* :results output :exports both +ls -l /usr/bin/X11//python3 +python3 --version +#+end_src + +#+RESULTS: +: ls -l /usr/bin/X11//python3 +: python3.7 +: python3 --version +: Python 3.7.3 + +Au passage, on peut vérifier que ce n'est pas le même que celui qui est +sur ma machine: + +#+begin_src shell :session *shell* :results output :exports both +python3 --version +#+end_src + +#+RESULTS: +: Python 3.7.2rc1 +** Installer tous les paquets dont on a besoin +Bien, j'ai python3 mais ça ne suffira pas pour exécuter mon notebook. Il me +faudra aussi bien sûr =jupyter= et différents paquets comme =matplotlib=, +=pandas=, =numpy=, =statsmodels=... Courage, allons-y! + +#+begin_src shell :session *docker* :results output :exports both +apt-get install -y jupyter-nbconvert python3-ipykernel python3-matplotlib python3-pandas python3-numpy python3-statsmodels +#+end_src + +#+RESULTS: +#+BEGIN_EXAMPLE +apt-get install -y jupyter-nbconvert python3-ipykernel python3-matplotlib python3-pandas python3-numpy python3-statsmodels +0 upgraded, 247 newly installed, 0 to remove and 0 not upgraded. +Need to get 204 MB of archives. +After this operation, 742 MB of additional disk space will be used. +#+END_EXAMPLE + +Misère. Donc, 800Mb plus tard... :) + +Je peux alors lancer python qui importe matplotlib. +#+begin_src shell :session *docker* :results output :exports both +python3 -c "import matplotlib" +#+end_src + +#+RESULTS: + +Alors que la même chose avec un paquet non existant me renvoie un +message d'erreur: +#+begin_src shell :session *shell* :results output :exports both +python3 -c "import gnuplot365" +#+end_src + +#+RESULTS: +: Traceback (most recent call last): +: ", line 1, in +: ModuleNotFoundError: No module named 'gnuplot365' + +Bon, tout a l'air de très bien marcher. Tiens à tout hasard, si je +cherche python via =docker run=, qu'est-ce que j'obtiens ? + +#+begin_src shell :session *shell* :results output :exports both +docker run debian:stable ls -l /usr/bin/X11//python3 +#+end_src + +#+RESULTS: +: ls: cannot access '/usr/bin/X11//python3': No such file or directory + +Gloups. À ce stade j'ai donc un environnement docker qui est toujours +en train de s'exécuter et dans lequel python3 est bien installé mais +ça n'est pas accessible en dehors. En fait, dès que je fermerai le +terminal où se trouve mon docker interactif, je risque de perdre tout +ce que je viens d'installer. +** Gérer ses conteneurs et figer un environnement +Il est temps que je vous montre comment manipuler ces conteneur. Tout +d'abord, la commande =docker ps= me permet de savoir quels sont les +conteneurs en cours d'exécution (il n'y en a qu'un pour l'instant mais +je pourrais en avoir plusieurs): +#+begin_src shell :session *shell* :results output :exports both +docker ps +#+end_src + +#+RESULTS: +: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +: dca997abf7cc debian:stable "bash" 35 minutes ago Up 35 minutes debian + +Mon conteneur est donc identifié par ce =CONTAINER_ID= et il +s'exécute depuis une demi-heure. Il a été modifié depuis qu'il a +commencé et je peux demander à docker ce qui a changé (attention, +c'est long alors je coupe pour ne montrer que le début): + +#+begin_src shell :session *shell* :results output :exports both +docker diff dca997abf7cc | head -n 60 +#+end_src + +#+RESULTS: +#+begin_example +C /bin +A /bin/bunzip2 +A /bin/bzcat +A /bin/bzcmp +A /bin/bzdiff +A /bin/bzegrep +A /bin/bzexe +A /bin/bzfgrep +A /bin/bzgrep +A /bin/bzip2 +A /bin/bzip2recover +A /bin/bzless +A /bin/bzmore +A /bin/fuser +A /bin/kill +A /bin/ps +C /etc +C /etc/.pwd.lock +D /etc/X11 +A /etc/X11/Xreset +A /etc/X11/Xreset.d +A /etc/X11/Xreset.d/README +A /etc/X11/Xresources +A /etc/X11/Xresources/x11-common +A /etc/X11/Xsession +A /etc/X11/Xsession.d +A /etc/X11/Xsession.d/20x11-common_process-args +A /etc/X11/Xsession.d/30x11-common_xresources +A /etc/X11/Xsession.d/35x11-common_xhost-local +A /etc/X11/Xsession.d/40x11-common_xsessionrc +A /etc/X11/Xsession.d/50x11-common_determine-startup +A /etc/X11/Xsession.d/90gpg-agent +A /etc/X11/Xsession.d/90x11-common_ssh-agent +A /etc/X11/Xsession.d/99x11-common_start +A /etc/X11/Xsession.options +A /etc/X11/rgb.txt +C /etc/alternatives +A /etc/alternatives/c++ +A /etc/alternatives/c89 +A /etc/alternatives/c89.1.gz +A /etc/alternatives/c99 +A /etc/alternatives/c99.1.gz +A /etc/alternatives/cc +A /etc/alternatives/cpp +A /etc/alternatives/faked.1.gz +A /etc/alternatives/faked.es.1.gz +A /etc/alternatives/faked.fr.1.gz +A /etc/alternatives/faked.sv.1.gz +A /etc/alternatives/fakeroot +A /etc/alternatives/fakeroot.1.gz +A /etc/alternatives/fakeroot.es.1.gz +A /etc/alternatives/fakeroot.fr.1.gz +A /etc/alternatives/fakeroot.sv.1.gz +A /etc/alternatives/jsonschema +A /etc/alternatives/libblas.so.3-x86_64-linux-gnu +A /etc/alternatives/liblapack.so.3-x86_64-linux-gnu +A /etc/alternatives/lzcat +A /etc/alternatives/lzcat.1.gz +A /etc/alternatives/lzcmp +A /etc/alternatives/lzcmp.1.gz +#+end_example + +Je vais sauvegarder cet environnement avec la commande =docker commit=. +#+begin_src shell :session *shell* :results output :exports both +docker commit debian debian_stable_jupyter +#+end_src + +#+RESULTS: +: sha256:2b001b2c02a66a7bf2ab2e7e3d234f3611bc7e6228e2f423ceb7d294cb6bd442 + +Et voilà! Mon nouvel environnement est maintenant figé et visible sur +ma machine: +#+begin_src shell :session *shell* :results output :exports both +docker image ls +#+end_src + +#+RESULTS: +#+begin_example +REPOSITORY TAG IMAGE ID CREATED SIZE +debian_stable_jupyter latest 2b001b2c02a6 About a minute ago 962MB +simgrid-website latest 0f3727380ab6 13 days ago 1.19GB +debian stable 40e13c3c9aab 13 days ago 114MB +#+end_example + +#+begin_src shell :session *shell* :results output :exports both +docker run debian_stable_jupyter ls -l /usr/bin/X11//python3 +#+end_src + +#+RESULTS: +: +: python3.7 + +Je peux donc maintenant arrêter mon conteneur: +#+begin_src shell :session *shell* :results output :exports both +docker stop debian +#+end_src + +#+RESULTS: +: exit +: debian + +Je peux alors vérifier que mon conteneur est arrêté. +#+begin_src shell :results output :exports both +docker ps +#+end_src + +#+RESULTS: +: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES + +** Exécuter notre notebook dans ce nouvel environnemnt +Le conteneur ayant son propre système de fichier, il va falloir +trouver un moyen d'y importer notre notebook. Le plus simple consiste +à monter notre répertoire courant dans le =/tmp= du conteneur. + +#+begin_src shell :session *shell* :results output :exports both +echo "-- Sans partage" +docker run debian_stable_jupyter ls /tmp +echo "-- Avec partage" +docker run --volume=`pwd`:/tmp debian_stable_jupyter ls /tmp +#+end_src + +#+RESULTS: +: -- Sans partage +: ]0;alegrand@icarus: /home/alegrand/Work/Documents/Enseignements/RR_MOOC/gitlab-inria/mooc-rr-ressources/module4/ressources/mooc_dockericarus:~/Work/Documents/Enseignements/RR_MOOC/gitlab-inria/mooc-rr-ressources/module4/ressources/mooc_docker$ -- Avec partage +: notebook.html +: notebook.ipynb +: notebook_rerun.html +: notebook_rerun.ipynb +: shuttle.csv + +#+begin_src shell :session *shell* :results output :exports both +cp notebook.ipynb notebook_docker.ipynb +docker run --volume=`pwd`:/tmp debian_stable_jupyter jupyter-nbconvert --to notebook --execute /tmp/notebook_docker.ipynb --output /tmp/notebook_docker.ipynb +docker run --volume=`pwd`:/tmp debian_stable_jupyter jupyter-nbconvert --to html /tmp/notebook_docker.ipynb +#+end_src + +#+RESULTS: +: +: [NbConvertApp] Converting notebook /tmp/notebook_docker.ipynb to notebook +: [NbConvertApp] Executing notebook with kernel: python3 +: [NbConvertApp] Writing 41346 bytes to /tmp/notebook_docker.ipynb +: [NbConvertApp] Converting notebook /tmp/notebook_docker.ipynb to html +: [NbConvertApp] Writing 317710 bytes to /tmp/notebook_docker.html + +#+begin_src shell :session *shell* :results output :exports both +ls -l +#+end_src + +#+RESULTS: +: total 1056 +: -rw-r--r-- 1 alegrand alegrand 305302 Jul 23 09:20 notebook.html +: -rw-r--r-- 1 alegrand alegrand 41019 Jul 23 09:19 notebook.ipynb +: -rw-r--r-- 1 root root 317832 Jul 23 10:10 notebook_docker.html +: -rw-r--r-- 1 alegrand alegrand 41473 Jul 23 10:10 notebook_docker.ipynb +: -rw-r--r-- 1 alegrand alegrand 305805 Jul 23 09:21 notebook_rerun.html +: -rw-r--r-- 1 alegrand alegrand 41473 Jul 23 09:21 notebook_rerun.ipynb +: -rw-r--r-- 1 alegrand alegrand 485 Jul 23 09:19 shuttle.csv + +Une fois de plus le résultat semble différent (pas la même +taille). Regardons les différences entre ce qui a été exécuté dans mon +environnement de base et dans mon conteneur. +#+begin_src shell :session *shell* :results output :exports both +diff notebook_rerun.ipynb notebook_docker.ipynb # | sed 's/^/>/' +#+end_src + +#+RESULTS: +#+begin_example + +456c456 +< "image/png": "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\n", +--- +> "image/png": "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\n", +538c538 +< " Time: 09:21:16 Pearson chi2: 0.236 \n", +--- +> " Time: 08:10:00 Pearson chi2: 0.236 \n", +567c567 +< "Time: 09:21:16 Pearson chi2: 0.236\n", +--- +> "Time: 08:10:00 Pearson chi2: 0.236\n", +621c621 +< "image/png": "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\n", +--- +> "image/png": "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\n", +#+end_example + +Aaah, cette fois-ci, forcément, la date a changé mais ça a l'air moins +grave que tout à l'heure. Et si on regarde très attentivement on fini +par remarquer que quelques lettres ont changé dans l'encodage des +images. Elles sont donc a différentes mais pas sûr que ça soit visible +à l'oeil nu. + +** Conclusion +Nous avons donc vu comment construire un environnement +manuellement. Ce n'est pas très compliqué mais il faut être +soigneux. Ici tout s'est passé sans encombre mais la première fois, +j'avais oublié d'installer le noyau jupyter python3 +(=python3-ipykernel=) au moment de la réexécution de +=notebook_docker.ipynb=, j'ai eu droit à un joli message d'erreur. Il +faut alors relancer le conteneur en interactif, réinstaller ce qui +manque, le figer de l'extérieur, etc. + +Mais pourquoi ne pas avoir téléchargé le notebook et les dans +l'environnement? Et bien parce que ce n'est pas propre et qu'ils y +seraient restés... Ce que je souhaite obtenir ici, c'est figer un +environnemnet logiciel avec les bonnes dépendances pour pouvoir +refaire mes calculs éventuellement sur de nouvelles données. C'est +pour cela que je partage le répertoire contenant mon notebook et mon +fichier csv. +** Update :noexport: + +Renaming the image to =debian_stable_jupyter_alpha=. +#+begin_src shell :results output :exports both +docker tag debian_stable_jupyter debian_stable_jupyter_alpha +docker rmi debian_stable_jupyter +#+end_src + +#+begin_src shell :session *shell* :results output :exports both +docker run --volume=`pwd`:/tmp --name debian_mooc -t -i debian_stable_jupyter_alpha +#+end_src + +#+RESULTS: + +#+begin_src shell :session *shell* :results output :exports both +apt-get install -y python3-ipykernel +#+end_src + +#+begin_src shell :results output :exports both +docker ps +#+end_src + +#+RESULTS: +: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +: a2d6b6cd921c debian_stable_jupyter_alpha "bash" 4 minutes ago Up 4 minutes debian_mooc + +#+begin_src shell :results output :exports both +docker diff a2d6b6cd921c | head -n 60 +#+end_src + +#+RESULTS: +#+begin_example +C /root +D /root/.cache +A /root/.cache/matplotlib +A /root/.cache/matplotlib/fontlist-v300.json +A /root/.cache/matplotlib/tex.cache +D /root/.ipython +A /root/.ipython/extensions +A /root/.ipython/nbextensions +A /root/.ipython/profile_default +A /root/.ipython/profile_default/db +A /root/.ipython/profile_default/history.sqlite +A /root/.ipython/profile_default/log +A /root/.ipython/profile_default/pid +A /root/.ipython/profile_default/security +A /root/.ipython/profile_default/startup +A /root/.ipython/profile_default/startup/README +C /usr/lib/python3/dist-packages +C /usr/lib/python3/dist-packages/__pycache__ +A /usr/lib/python3/dist-packages/__pycache__/ipykernel_launcher.cpython-37.pyc +D /usr/lib/python3/dist-packages/ipykernel +A /usr/lib/python3/dist-packages/ipykernel/__init__.py +A /usr/lib/python3/dist-packages/ipykernel/__main__.py +A /usr/lib/python3/dist-packages/ipykernel/__pycache__ +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/__init__.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/__main__.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/_eventloop_macos.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/_version.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/codeutil.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/connect.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/datapub.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/displayhook.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/embed.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/eventloops.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/heartbeat.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/iostream.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/ipkernel.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/jsonutil.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/kernelapp.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/kernelbase.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/kernelspec.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/log.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/parentpoller.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/pickleutil.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/serialize.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/__pycache__/zmqshell.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/_eventloop_macos.py +A /usr/lib/python3/dist-packages/ipykernel/_version.py +A /usr/lib/python3/dist-packages/ipykernel/codeutil.py +A /usr/lib/python3/dist-packages/ipykernel/comm +A /usr/lib/python3/dist-packages/ipykernel/comm/__init__.py +A /usr/lib/python3/dist-packages/ipykernel/comm/__pycache__ +A /usr/lib/python3/dist-packages/ipykernel/comm/__pycache__/__init__.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/comm/__pycache__/comm.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/comm/__pycache__/manager.cpython-37.pyc +A /usr/lib/python3/dist-packages/ipykernel/comm/comm.py +A /usr/lib/python3/dist-packages/ipykernel/comm/manager.py +A /usr/lib/python3/dist-packages/ipykernel/connect.py +A /usr/lib/python3/dist-packages/ipykernel/datapub.py +A /usr/lib/python3/dist-packages/ipykernel/displayhook.py +A /usr/lib/python3/dist-packages/ipykernel/embed.py +#+end_example + +#+begin_src shell :results output :exports both +docker commit debian_mooc debian_stable_jupyter +#+end_src + +#+RESULTS: +: sha256:2b001b2c02a66a7bf2ab2e7e3d234f3611bc7e6228e2f423ceb7d294cb6bd442 + +* Automatiser la construction d'un environnement et le parager. +Vous remarquerez que dans tout ce qui a précédé, j'ai noté dans mon +journal de ce que j'ai effectué mais vous n'avez aucune garantie que +je n'ai rien oublié. De plus, si vous voulez refaire cet environnement +vous même, il vous faudra suivre ces instructions scrupuleusement en +espérant que rien n'aille de travers. + +Je vais donc maintenant introduire alors la notion de dockerfile qui +va réaliser la préparation de l'environnement automatiquement à l'aide +de la commande =docker build= puis je montrerais comment le rendre +public à l'aide de la commande =docker push=. Vous allez voir que c'est +bien plus simple que tout ce que je vous ai montré précedémment +puisque tout est caché! + +** Automatiser la construction de son environnement +Je commence par créer un répertoire dans lequel sera stoqué un +=[[file:mooc_docker_image/Dockerfile][Dockerfile]]=. + +#+begin_src shell :results output :exports both +mkdir -p mooc_docker_image +#+end_src + +#+RESULTS: + +Et dont voici le contenu. Vous voyez qu'il part d'une image +=debian:stable=, la met à jour et installe les différents +#+begin_src shell :results output :exports both :tangle mooc_docker_image/Dockerfile +FROM debian:stable + +LABEL maintainer="Arnaud Legrand " + +RUN apt-get update \ + && apt-get install -y python3 \ + jupyter-nbconvert python3-ipykernel \ + python3-matplotlib python3-pandas python3-numpy python3-statsmodels +#+end_src + +#+begin_src shell :results output :exports both +docker build mooc_docker_image +#+end_src + +#+RESULTS: +#+begin_example +Sending build context to Docker daemon 2.048kB +Step 1/3 : FROM debian:stable + ---> 40e13c3c9aab +Step 2/3 : LABEL maintainer "Arnaud Legrand " + ---> Running in 8a9a34c45d09 + ---> 0ab85d4f10f5 +Removing intermediate container 8a9a34c45d09 +Step 3/3 : RUN apt-get update && apt-get install -y python3 jupyter-nbconvert python3-ipykernel python3-matplotlib python3-pandas python3-numpy python3-statsmodels + ---> Running in e2a4b2e6b46b +Get:1 http://cdn-fastly.deb.debian.org/debian stable InRelease [118 kB] +Get:2 http://security-cdn.debian.org/debian-security stable/updates InRelease [39.1 kB] +Get:3 http://cdn-fastly.deb.debian.org/debian stable-updates InRelease [46.8 kB] +Get:4 http://security-cdn.debian.org/debian-security stable/updates/main amd64 Packages [49.4 kB] +Get:5 http://cdn-fastly.deb.debian.org/debian stable/main amd64 Packages [7897 kB] +Fetched 8150 kB in 9s (870 kB/s) +Reading package lists... +Reading package lists... +Building dependency tree... +Reading state information... +The following additional packages will be installed: + binutils binutils-common binutils-x86-64-linux-gnu blt build-essential bzip2 + ca-certificates cpp cpp-8 dbus dh-python dirmngr dpkg-dev fakeroot file + fontconfig-config fonts-lyx g++ g++-8 gcc gcc-8 gir1.2-glib-2.0 gnupg + gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf + gpgsm javascript-common krb5-locales libaec0 libalgorithm-diff-perl + libalgorithm-diff-xs-perl libalgorithm-merge-perl libamd2 libapparmor1 + libasan5 libassuan0 libatomic1 libbinutils libblas3 libblosc1 libbsd0 + libc-dev-bin libc6-dev libcamd2 libcc1-0 libccolamd2 libcholmod3 libcolamd2 + libdbus-1-3 libdpkg-perl libdsdp-5.8gf libexpat1 libexpat1-dev libfakeroot + libfftw3-double3 libfile-fcntllock-perl libfontconfig1 libfreetype6 + libgcc-8-dev libgdbm-compat4 libgdbm6 libgfortran5 libgirepository-1.0-1 + libglib2.0-0 libglib2.0-data libglpk40 libgomp1 libgpm2 libgsl23 + libgslcblas0 libgssapi-krb5-2 libhdf5-103 libicu63 libimagequant0 libisl19 + libitm1 libjbig0 libjpeg62-turbo libjs-jquery libjs-jquery-ui libk5crypto3 + libkeyutils1 libkrb5-3 libkrb5support0 libksba8 liblapack3 liblcms2-2 + libldap-2.4-2 libldap-common liblocale-gettext-perl liblsan0 libltdl7 + liblua5.1-0 liblzo2-2 libmagic-mgc libmagic1 libmetis5 libmpc3 libmpdec2 + libmpfr6 libmpx2 libncurses6 libnorm1 libnpth0 libperl5.28 libpgm-5.2-0 + libpng16-16 libprocps7 libpython3-dev libpython3-stdlib libpython3.7 + libpython3.7-dev libpython3.7-minimal libpython3.7-stdlib libquadmath0 + libreadline7 libsasl2-2 libsasl2-modules libsasl2-modules-db libsnappy1v5 + libsodium23 libsqlite3-0 libssl1.1 libstdc++-8-dev libsuitesparseconfig5 + libsz2 libtcl8.6 libtiff5 libtk8.6 libtsan0 libubsan1 libumfpack5 libwebp6 + libwebpdemux2 libwebpmux3 libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 + libxext6 libxft2 libxml2 libxrender1 libxslt1.1 libxss1 libyaml-0-2 libzmq5 + linux-libc-dev lsb-base make manpages manpages-dev mime-support netbase + openssl pandoc pandoc-data patch perl perl-modules-5.28 pinentry-curses + procps psmisc python-matplotlib-data python-pip-whl python-tables-data + python3-asn1crypto python3-atomicwrites python3-attr python3-bleach + python3-bs4 python3-cffi-backend python3-chardet python3-crypto + python3-cryptography python3-cvxopt python3-cycler python3-dateutil + python3-dbus python3-decorator python3-defusedxml python3-dev + python3-distutils python3-entrypoints python3-gi python3-html5lib + python3-ipython python3-ipython-genutils python3-jinja2 python3-joblib + python3-jsonschema python3-jupyter-client python3-jupyter-core + python3-keyring python3-keyrings.alt python3-kiwisolver python3-lib2to3 + python3-lxml python3-markupsafe python3-minimal python3-mistune + python3-more-itertools python3-nbconvert python3-nbformat python3-numexpr + python3-olefile python3-pandas-lib python3-pandocfilters python3-patsy + python3-pexpect python3-pickleshare python3-pil python3-pip + python3-pkg-resources python3-pluggy python3-prompt-toolkit python3-psutil + python3-ptyprocess python3-py python3-pygments python3-pyparsing + python3-pytest python3-scipy python3-secretstorage python3-setuptools + python3-simplegeneric python3-simplejson python3-six python3-soupsieve + python3-statsmodels-lib python3-tables python3-tables-lib python3-testpath + python3-tk python3-tornado python3-traitlets python3-tz python3-wcwidth + python3-webencodings python3-wheel python3-xdg python3-zmq python3.7 + python3.7-dev python3.7-minimal readline-common sensible-utils + shared-mime-info tk8.6-blt2.5 ttf-bitstream-vera ucf x11-common + xdg-user-dirs xz-utils +Suggested packages: + binutils-doc blt-demo bzip2-doc cpp-doc gcc-8-locales + default-dbus-session-bus | dbus-session-bus dbus-user-session libpam-systemd + pinentry-gnome3 tor debian-keyring g++-multilib g++-8-multilib gcc-8-doc + libstdc++6-8-dbg gcc-multilib autoconf automake libtool flex bison gdb + gcc-doc gcc-8-multilib libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg + libasan5-dbg liblsan0-dbg libtsan0-dbg libubsan1-dbg libmpx2-dbg + libquadmath0-dbg parcimonie xloadimage scdaemon apache2 | lighttpd | httpd + glibc-doc git bzr libfftw3-bin libfftw3-dev gdbm-l10n libiodbc2-dev + default-libmysqlclient-dev gpm gsl-ref-psdoc | gsl-doc-pdf | gsl-doc-info + | gsl-ref-html krb5-doc krb5-user libjs-jquery-ui-docs liblcms2-utils + libsasl2-modules-gssapi-mit | libsasl2-modules-gssapi-heimdal + libsasl2-modules-ldap libsasl2-modules-otp libsasl2-modules-sql + libstdc++-8-doc tcl8.6 tk8.6 make-doc man-browser texlive-latex-recommended + texlive-xetex texlive-luatex pandoc-citeproc texlive-latex-extra context + wkhtmltopdf librsvg2-bin groff ghc nodejs php python ruby r-base-core + libjs-mathjax node-katex ed diffutils-doc perl-doc libterm-readline-gnu-perl + | libterm-readline-perl-perl libb-debug-perl liblocale-codes-perl + pinentry-doc python3-doc python3-venv python-attr-doc python-bleach-doc + python-crypto-doc python-cryptography-doc python3-cryptography-vectors + python-cvxopt-doc python-cycler-doc python-dbus-doc python3-dbus-dbg + python3-genshi python-jinja2-doc python-jsonschema-doc gnome-keyring + libkf5wallet-bin gir1.2-gnomekeyring-1.0 python3-lxml-dbg python-lxml-doc + dvipng ffmpeg gir1.2-gtk-3.0 ghostscript inkscape ipython3 librsvg2-common + python-matplotlib-doc python3-cairocffi python3-gi-cairo python3-gobject + python3-nose python3-pyqt4 python3-sip texlive-extra-utils ttf-staypuft + python-nbconvert-doc gfortran python-numpy-doc python3-numpy-dbg + python-pandas-doc python-patsy-doc python-pexpect-doc python-pil-doc + python3-pil-dbg python-psutil-doc subversion python-pygments-doc + python-pyparsing-doc python-scipy-doc python-secretstorage-doc + python-setuptools-doc python-statsmodels-doc python-tables-doc + python3-netcdf4 vitables tix python3-tk-dbg python3-pycurl + python-tornado-doc python3-twisted python3.7-venv python3.7-doc + binfmt-support readline-doc +The following NEW packages will be installed: + binutils binutils-common binutils-x86-64-linux-gnu blt build-essential bzip2 + ca-certificates cpp cpp-8 dbus dh-python dirmngr dpkg-dev fakeroot file + fontconfig-config fonts-lyx g++ g++-8 gcc gcc-8 gir1.2-glib-2.0 gnupg + gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf + gpgsm javascript-common jupyter-nbconvert krb5-locales libaec0 + libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl + libamd2 libapparmor1 libasan5 libassuan0 libatomic1 libbinutils libblas3 + libblosc1 libbsd0 libc-dev-bin libc6-dev libcamd2 libcc1-0 libccolamd2 + libcholmod3 libcolamd2 libdbus-1-3 libdpkg-perl libdsdp-5.8gf libexpat1 + libexpat1-dev libfakeroot libfftw3-double3 libfile-fcntllock-perl + libfontconfig1 libfreetype6 libgcc-8-dev libgdbm-compat4 libgdbm6 + libgfortran5 libgirepository-1.0-1 libglib2.0-0 libglib2.0-data libglpk40 + libgomp1 libgpm2 libgsl23 libgslcblas0 libgssapi-krb5-2 libhdf5-103 libicu63 + libimagequant0 libisl19 libitm1 libjbig0 libjpeg62-turbo libjs-jquery + libjs-jquery-ui libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libksba8 + liblapack3 liblcms2-2 libldap-2.4-2 libldap-common liblocale-gettext-perl + liblsan0 libltdl7 liblua5.1-0 liblzo2-2 libmagic-mgc libmagic1 libmetis5 + libmpc3 libmpdec2 libmpfr6 libmpx2 libncurses6 libnorm1 libnpth0 libperl5.28 + libpgm-5.2-0 libpng16-16 libprocps7 libpython3-dev libpython3-stdlib + libpython3.7 libpython3.7-dev libpython3.7-minimal libpython3.7-stdlib + libquadmath0 libreadline7 libsasl2-2 libsasl2-modules libsasl2-modules-db + libsnappy1v5 libsodium23 libsqlite3-0 libssl1.1 libstdc++-8-dev + libsuitesparseconfig5 libsz2 libtcl8.6 libtiff5 libtk8.6 libtsan0 libubsan1 + libumfpack5 libwebp6 libwebpdemux2 libwebpmux3 libx11-6 libx11-data libxau6 + libxcb1 libxdmcp6 libxext6 libxft2 libxml2 libxrender1 libxslt1.1 libxss1 + libyaml-0-2 libzmq5 linux-libc-dev lsb-base make manpages manpages-dev + mime-support netbase openssl pandoc pandoc-data patch perl perl-modules-5.28 + pinentry-curses procps psmisc python-matplotlib-data python-pip-whl + python-tables-data python3 python3-asn1crypto python3-atomicwrites + python3-attr python3-bleach python3-bs4 python3-cffi-backend python3-chardet + python3-crypto python3-cryptography python3-cvxopt python3-cycler + python3-dateutil python3-dbus python3-decorator python3-defusedxml + python3-dev python3-distutils python3-entrypoints python3-gi + python3-html5lib python3-ipykernel python3-ipython python3-ipython-genutils + python3-jinja2 python3-joblib python3-jsonschema python3-jupyter-client + python3-jupyter-core python3-keyring python3-keyrings.alt python3-kiwisolver + python3-lib2to3 python3-lxml python3-markupsafe python3-matplotlib + python3-minimal python3-mistune python3-more-itertools python3-nbconvert + python3-nbformat python3-numexpr python3-numpy python3-olefile + python3-pandas python3-pandas-lib python3-pandocfilters python3-patsy + python3-pexpect python3-pickleshare python3-pil python3-pip + python3-pkg-resources python3-pluggy python3-prompt-toolkit python3-psutil + python3-ptyprocess python3-py python3-pygments python3-pyparsing + python3-pytest python3-scipy python3-secretstorage python3-setuptools + python3-simplegeneric python3-simplejson python3-six python3-soupsieve + python3-statsmodels python3-statsmodels-lib python3-tables + python3-tables-lib python3-testpath python3-tk python3-tornado + python3-traitlets python3-tz python3-wcwidth python3-webencodings + python3-wheel python3-xdg python3-zmq python3.7 python3.7-dev + python3.7-minimal readline-common sensible-utils shared-mime-info + tk8.6-blt2.5 ttf-bitstream-vera ucf x11-common xdg-user-dirs xz-utils +0 upgraded, 267 newly installed, 0 to remove and 0 not upgraded. +Need to get 212 MB of archives. +After this operation, 779 MB of additional disk space will be used. +Get:1 http://cdn-fastly.deb.debian.org/debian stable/main amd64 perl-modules-5.28 all 5.28.1-6 [2873 kB] +Get:2 http://security-cdn.debian.org/debian-security stable/updates/main amd64 linux-libc-dev amd64 4.19.37-5+deb10u1 [1185 kB] +Get:12 http://security-cdn.debian.org/debian-security stable/updates/main amd64 libzmq5 amd64 4.3.1-4+deb10u1 [246 kB] +Get:3 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgdbm6 amd64 1.18.1-4 [64.7 kB] +Get:4 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgdbm-compat4 amd64 1.18.1-4 [44.1 kB] +Get:5 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libperl5.28 amd64 5.28.1-6 [3883 kB] +Get:6 http://cdn-fastly.deb.debian.org/debian stable/main amd64 perl amd64 5.28.1-6 [204 kB] +Get:7 http://cdn-fastly.deb.debian.org/debian stable/main amd64 liblocale-gettext-perl amd64 1.07-3+b4 [18.9 kB] +Get:8 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libssl1.1 amd64 1.1.1c-1 [1535 kB] +Get:9 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3.7-minimal amd64 3.7.3-2 [588 kB] +Get:10 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libexpat1 amd64 2.2.6-2 [106 kB] +Get:11 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3.7-minimal amd64 3.7.3-2 [1736 kB] +Get:13 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-minimal amd64 3.7.3-1 [36.6 kB] +Get:14 http://cdn-fastly.deb.debian.org/debian stable/main amd64 mime-support all 3.62 [37.2 kB] +Get:15 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmpdec2 amd64 2.4.2-2 [87.2 kB] +Get:16 http://cdn-fastly.deb.debian.org/debian stable/main amd64 readline-common all 7.0-5 [70.6 kB] +Get:17 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libreadline7 amd64 7.0-5 [151 kB] +Get:18 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsqlite3-0 amd64 3.27.2-3 [641 kB] +Get:19 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3.7-stdlib amd64 3.7.3-2 [1732 kB] +Get:20 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3.7 amd64 3.7.3-2 [330 kB] +Get:21 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3-stdlib amd64 3.7.3-1 [20.0 kB] +Get:22 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3 amd64 3.7.3-1 [61.5 kB] +Get:23 http://cdn-fastly.deb.debian.org/debian stable/main amd64 netbase all 5.6 [19.4 kB] +Get:24 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libncurses6 amd64 6.1+20181013-2 [102 kB] +Get:25 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libprocps7 amd64 2:3.3.15-2 [61.7 kB] +Get:26 http://cdn-fastly.deb.debian.org/debian stable/main amd64 lsb-base all 10.2019051400 [28.4 kB] +Get:27 http://cdn-fastly.deb.debian.org/debian stable/main amd64 procps amd64 2:3.3.15-2 [259 kB] +Get:28 http://cdn-fastly.deb.debian.org/debian stable/main amd64 sensible-utils all 0.0.12 [15.8 kB] +Get:29 http://cdn-fastly.deb.debian.org/debian stable/main amd64 bzip2 amd64 1.0.6-9.1 [48.3 kB] +Get:30 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libapparmor1 amd64 2.13.2-10 [94.7 kB] +Get:31 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libdbus-1-3 amd64 1.12.16-1 [214 kB] +Get:32 http://cdn-fastly.deb.debian.org/debian stable/main amd64 dbus amd64 1.12.16-1 [235 kB] +Get:33 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmagic-mgc amd64 1:5.35-4 [242 kB] +Get:34 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmagic1 amd64 1:5.35-4 [117 kB] +Get:35 http://cdn-fastly.deb.debian.org/debian stable/main amd64 file amd64 1:5.35-4 [66.3 kB] +Get:36 http://cdn-fastly.deb.debian.org/debian stable/main amd64 krb5-locales all 1.17-3 [95.4 kB] +Get:37 http://cdn-fastly.deb.debian.org/debian stable/main amd64 manpages all 4.16-2 [1295 kB] +Get:38 http://cdn-fastly.deb.debian.org/debian stable/main amd64 ucf all 3.0038+nmu1 [69.0 kB] +Get:39 http://cdn-fastly.deb.debian.org/debian stable/main amd64 xz-utils amd64 5.2.4-1 [183 kB] +Get:40 http://cdn-fastly.deb.debian.org/debian stable/main amd64 binutils-common amd64 2.31.1-16 [2073 kB] +Get:41 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libbinutils amd64 2.31.1-16 [478 kB] +Get:42 http://cdn-fastly.deb.debian.org/debian stable/main amd64 binutils-x86-64-linux-gnu amd64 2.31.1-16 [1823 kB] +Get:43 http://cdn-fastly.deb.debian.org/debian stable/main amd64 binutils amd64 2.31.1-16 [56.8 kB] +Get:44 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libtcl8.6 amd64 8.6.9+dfsg-2 [1005 kB] +Get:45 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpng16-16 amd64 1.6.36-6 [292 kB] +Get:46 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libfreetype6 amd64 2.9.1-3 [379 kB] +Get:47 http://cdn-fastly.deb.debian.org/debian stable/main amd64 ttf-bitstream-vera all 1.10-8 [352 kB] +Get:48 http://cdn-fastly.deb.debian.org/debian stable/main amd64 fontconfig-config all 2.13.1-2 [280 kB] +Get:49 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libfontconfig1 amd64 2.13.1-2 [346 kB] +Get:50 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxau6 amd64 1:1.0.8-1+b2 [19.9 kB] +Get:51 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libbsd0 amd64 0.9.1-2 [99.5 kB] +Get:52 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxdmcp6 amd64 1:1.1.2-3 [26.3 kB] +Get:53 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxcb1 amd64 1.13.1-2 [137 kB] +Get:54 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libx11-data all 2:1.6.7-1 [298 kB] +Get:55 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libx11-6 amd64 2:1.6.7-1 [754 kB] +Get:56 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxext6 amd64 2:1.3.3-1+b2 [52.5 kB] +Get:57 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxrender1 amd64 1:0.9.10-1 [33.0 kB] +Get:58 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxft2 amd64 2.3.2-2 [57.2 kB] +Get:59 http://cdn-fastly.deb.debian.org/debian stable/main amd64 x11-common all 1:7.7+19 [251 kB] +Get:60 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxss1 amd64 1:1.2.3-1 [17.8 kB] +Get:61 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libtk8.6 amd64 8.6.9-2 [768 kB] +Get:62 http://cdn-fastly.deb.debian.org/debian stable/main amd64 tk8.6-blt2.5 amd64 2.5.3+dfsg-4 [587 kB] +Get:63 http://cdn-fastly.deb.debian.org/debian stable/main amd64 blt amd64 2.5.3+dfsg-4 [14.8 kB] +Get:64 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libc-dev-bin amd64 2.28-10 [275 kB] +Get:65 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libc6-dev amd64 2.28-10 [2691 kB] +Get:66 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libisl19 amd64 0.20-2 [587 kB] +Get:67 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmpfr6 amd64 4.0.2-1 [775 kB] +Get:68 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmpc3 amd64 1.1.0-1 [41.3 kB] +Get:69 http://cdn-fastly.deb.debian.org/debian stable/main amd64 cpp-8 amd64 8.3.0-6 [8914 kB] +Get:70 http://cdn-fastly.deb.debian.org/debian stable/main amd64 cpp amd64 4:8.3.0-1 [19.4 kB] +Get:71 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libcc1-0 amd64 8.3.0-6 [46.6 kB] +Get:72 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgomp1 amd64 8.3.0-6 [75.8 kB] +Get:73 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libitm1 amd64 8.3.0-6 [27.7 kB] +Get:74 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libatomic1 amd64 8.3.0-6 [9032 B] +Get:75 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libasan5 amd64 8.3.0-6 [362 kB] +Get:76 http://cdn-fastly.deb.debian.org/debian stable/main amd64 liblsan0 amd64 8.3.0-6 [131 kB] +Get:77 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libtsan0 amd64 8.3.0-6 [283 kB] +Get:78 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libubsan1 amd64 8.3.0-6 [120 kB] +Get:79 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmpx2 amd64 8.3.0-6 [11.4 kB] +Get:80 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libquadmath0 amd64 8.3.0-6 [133 kB] +Get:81 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgcc-8-dev amd64 8.3.0-6 [2298 kB] +Get:82 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gcc-8 amd64 8.3.0-6 [9452 kB] +Get:83 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gcc amd64 4:8.3.0-1 [5196 B] +Get:84 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libstdc++-8-dev amd64 8.3.0-6 [1532 kB] +Get:85 http://cdn-fastly.deb.debian.org/debian stable/main amd64 g++-8 amd64 8.3.0-6 [9752 kB] +Get:86 http://cdn-fastly.deb.debian.org/debian stable/main amd64 g++ amd64 4:8.3.0-1 [1644 B] +Get:87 http://cdn-fastly.deb.debian.org/debian stable/main amd64 make amd64 4.2.1-1.2 [341 kB] +Get:88 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libdpkg-perl all 1.19.7 [1414 kB] +Get:89 http://cdn-fastly.deb.debian.org/debian stable/main amd64 patch amd64 2.7.6-3 [126 kB] +Get:90 http://cdn-fastly.deb.debian.org/debian stable/main amd64 dpkg-dev all 1.19.7 [1773 kB] +Get:91 http://cdn-fastly.deb.debian.org/debian stable/main amd64 build-essential amd64 12.6 [7576 B] +Get:92 http://cdn-fastly.deb.debian.org/debian stable/main amd64 openssl amd64 1.1.1c-1 [842 kB] +Get:93 http://cdn-fastly.deb.debian.org/debian stable/main amd64 ca-certificates all 20190110 [157 kB] +Get:94 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-lib2to3 all 3.7.3-1 [76.7 kB] +Get:95 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-distutils all 3.7.3-1 [142 kB] +Get:96 http://cdn-fastly.deb.debian.org/debian stable/main amd64 dh-python all 3.20190308 [99.3 kB] +Get:97 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libassuan0 amd64 2.5.2-1 [49.4 kB] +Get:98 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gpgconf amd64 2.2.12-1 [509 kB] +Get:99 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libksba8 amd64 1.3.5-2 [99.7 kB] +Get:100 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsasl2-modules-db amd64 2.1.27+dfsg-1 [69.0 kB] +Get:101 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsasl2-2 amd64 2.1.27+dfsg-1 [106 kB] +Get:102 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libldap-common all 2.4.47+dfsg-3 [89.4 kB] +Get:103 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libldap-2.4-2 amd64 2.4.47+dfsg-3 [224 kB] +Get:104 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libnpth0 amd64 1.6-1 [18.4 kB] +Get:105 http://cdn-fastly.deb.debian.org/debian stable/main amd64 dirmngr amd64 2.2.12-1 [711 kB] +Get:106 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libfakeroot amd64 1.23-1 [45.9 kB] +Get:107 http://cdn-fastly.deb.debian.org/debian stable/main amd64 fakeroot amd64 1.23-1 [85.8 kB] +Get:108 http://cdn-fastly.deb.debian.org/debian stable/main amd64 fonts-lyx all 2.3.2-1 [199 kB] +Get:109 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libglib2.0-0 amd64 2.58.3-2 [1259 kB] +Get:110 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgirepository-1.0-1 amd64 1.58.3-2 [92.8 kB] +Get:111 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gir1.2-glib-2.0 amd64 1.58.3-2 [143 kB] +Get:112 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gnupg-l10n all 2.2.12-1 [1008 kB] +Get:113 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gnupg-utils amd64 2.2.12-1 [857 kB] +Get:114 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gpg amd64 2.2.12-1 [862 kB] +Get:115 http://cdn-fastly.deb.debian.org/debian stable/main amd64 pinentry-curses amd64 1.1.0-2 [64.5 kB] +Get:116 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gpg-agent amd64 2.2.12-1 [617 kB] +Get:117 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gpg-wks-client amd64 2.2.12-1 [484 kB] +Get:118 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gpg-wks-server amd64 2.2.12-1 [477 kB] +Get:119 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gpgsm amd64 2.2.12-1 [602 kB] +Get:120 http://cdn-fastly.deb.debian.org/debian stable/main amd64 gnupg all 2.2.12-1 [715 kB] +Get:121 http://cdn-fastly.deb.debian.org/debian stable/main amd64 javascript-common all 11 [6120 B] +Get:122 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-entrypoints all 0.3-1 [5508 B] +Get:123 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-decorator all 4.3.0-1.1 [14.5 kB] +Get:124 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-ptyprocess all 0.6.0-1 [13.2 kB] +Get:125 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pexpect all 4.6.0-1 [52.4 kB] +Get:126 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pickleshare all 0.7.5-1 [7348 B] +Get:127 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pkg-resources all 40.8.0-1 [153 kB] +Get:128 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-six all 1.12.0-1 [15.7 kB] +Get:129 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-wcwidth all 0.1.7+dfsg1-3 [15.0 kB] +Get:130 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-prompt-toolkit all 1.0.15-1 [179 kB] +Get:131 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pygments all 2.3.1+dfsg-1 [594 kB] +Get:132 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-simplegeneric all 0.8.1-2 [11.1 kB] +Get:133 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-ipython-genutils all 0.2.0-1 [20.9 kB] +Get:134 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-traitlets all 4.3.2-1 [60.7 kB] +Get:135 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-ipython all 5.8.0-1 [390 kB] +Get:136 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-dateutil all 2.7.3-3 [64.5 kB] +Get:137 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-jupyter-core all 4.4.0-2 [38.5 kB] +Get:138 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-tornado amd64 5.1.1-4 [354 kB] +Get:139 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libkeyutils1 amd64 1.6-6 [15.0 kB] +Get:140 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libkrb5support0 amd64 1.17-3 [65.6 kB] +Get:141 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libk5crypto3 amd64 1.17-3 [121 kB] +Get:142 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libkrb5-3 amd64 1.17-3 [370 kB] +Get:143 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgssapi-krb5-2 amd64 1.17-3 [158 kB] +Get:144 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libnorm1 amd64 1.5.8+dfsg2-1 [287 kB] +Get:145 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpgm-5.2-0 amd64 5.2.122~dfsg-3 [158 kB] +Get:146 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsodium23 amd64 1.0.17-1 [158 kB] +Get:147 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-zmq amd64 17.1.2-2 [268 kB] +Get:148 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-jupyter-client all 5.2.3-1 [63.7 kB] +Get:149 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-testpath all 0.4.2+dfsg-1 [8796 B] +Get:150 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-webencodings all 0.5.1-1 [10.9 kB] +Get:151 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-html5lib all 1.0.1-1 [89.5 kB] +Get:152 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-bleach all 3.1.0-1 [113 kB] +Get:153 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-defusedxml all 0.5.0-2 [20.1 kB] +Get:154 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-markupsafe amd64 1.1.0-1 [14.8 kB] +Get:155 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-jinja2 all 2.10-2 [106 kB] +Get:156 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-mistune all 0.8.4-1 [16.1 kB] +Get:157 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-jsonschema all 2.6.0-4 [33.5 kB] +Get:158 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-nbformat all 4.4.0-1 [30.1 kB] +Get:159 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pandocfilters all 1.4.2-1 [18.7 kB] +Get:160 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-nbconvert all 5.4-2 [103 kB] +Get:161 http://cdn-fastly.deb.debian.org/debian stable/main amd64 jupyter-nbconvert all 5.4-2 [12.6 kB] +Get:162 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libaec0 amd64 1.0.2-1 [20.1 kB] +Get:163 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libalgorithm-diff-perl all 1.19.03-2 [47.9 kB] +Get:164 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libalgorithm-diff-xs-perl amd64 0.04-5+b1 [11.8 kB] +Get:165 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libalgorithm-merge-perl all 0.08-3 [12.7 kB] +Get:166 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsuitesparseconfig5 amd64 1:5.4.0+dfsg-1 [20.9 kB] +Get:167 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libamd2 amd64 1:5.4.0+dfsg-1 [33.4 kB] +Get:168 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgfortran5 amd64 8.3.0-6 [581 kB] +Get:169 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libblas3 amd64 3.8.0-2 [148 kB] +Get:170 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsnappy1v5 amd64 1.1.7-1 [17.0 kB] +Get:171 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libblosc1 amd64 1.15.1+ds1-1 [44.9 kB] +Get:172 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libcamd2 amd64 1:5.4.0+dfsg-1 [35.0 kB] +Get:173 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libccolamd2 amd64 1:5.4.0+dfsg-1 [36.4 kB] +Get:174 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libcolamd2 amd64 1:5.4.0+dfsg-1 [30.3 kB] +Get:175 http://cdn-fastly.deb.debian.org/debian stable/main amd64 liblapack3 amd64 3.8.0-2 [2110 kB] +Get:176 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libmetis5 amd64 5.1.0.dfsg-5+b2 [175 kB] +Get:177 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libcholmod3 amd64 1:5.4.0+dfsg-1 [324 kB] +Get:178 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libdsdp-5.8gf amd64 5.8-9.4 [189 kB] +Get:179 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libexpat1-dev amd64 2.2.6-2 [152 kB] +Get:180 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libfftw3-double3 amd64 3.3.8-2 [733 kB] +Get:181 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libfile-fcntllock-perl amd64 0.22-3+b5 [35.4 kB] +Get:182 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libglib2.0-data all 2.58.3-2 [1109 kB] +Get:183 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libltdl7 amd64 2.4.6-9 [390 kB] +Get:184 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libglpk40 amd64 4.65-2 [418 kB] +Get:185 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgpm2 amd64 1.20.7-5 [35.1 kB] +Get:186 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgslcblas0 amd64 2.5+dfsg-6 [101 kB] +Get:187 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libgsl23 amd64 2.5+dfsg-6 [880 kB] +Get:188 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsz2 amd64 1.0.2-1 [6676 B] +Get:189 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libhdf5-103 amd64 1.10.4+repack-10 [1325 kB] +Get:190 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libicu63 amd64 63.1-6 [8292 kB] +Get:191 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libimagequant0 amd64 2.12.2-1.1 [32.5 kB] +Get:192 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libjbig0 amd64 2.1-3.1+b2 [31.0 kB] +Get:193 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libjpeg62-turbo amd64 1:1.5.2-2+b1 [134 kB] +Get:194 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libjs-jquery all 3.3.1~dfsg-3 [332 kB] +Get:195 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libjs-jquery-ui all 1.12.1+dfsg-5 [232 kB] +Get:196 http://cdn-fastly.deb.debian.org/debian stable/main amd64 liblcms2-2 amd64 2.9-3 [145 kB] +Get:197 http://cdn-fastly.deb.debian.org/debian stable/main amd64 liblua5.1-0 amd64 5.1.5-8.1+b2 [111 kB] +Get:198 http://cdn-fastly.deb.debian.org/debian stable/main amd64 liblzo2-2 amd64 2.10-0.1 [56.1 kB] +Get:199 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3.7 amd64 3.7.3-2 [1498 kB] +Get:200 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3.7-dev amd64 3.7.3-2 [48.4 MB] +Get:201 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libpython3-dev amd64 3.7.3-1 [20.1 kB] +Get:202 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libsasl2-modules amd64 2.1.27+dfsg-1 [104 kB] +Get:203 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libwebp6 amd64 0.6.1-2 [263 kB] +Get:204 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libtiff5 amd64 4.0.10-4 [257 kB] +Get:205 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libumfpack5 amd64 1:5.4.0+dfsg-1 [243 kB] +Get:206 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libwebpdemux2 amd64 0.6.1-2 [87.5 kB] +Get:207 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libwebpmux3 amd64 0.6.1-2 [97.7 kB] +Get:208 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxml2 amd64 2.9.4+dfsg1-7+b3 [687 kB] +Get:209 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libxslt1.1 amd64 1.1.32-2 [236 kB] +Get:210 http://cdn-fastly.deb.debian.org/debian stable/main amd64 libyaml-0-2 amd64 0.2.1-1 [47.2 kB] +Get:211 http://cdn-fastly.deb.debian.org/debian stable/main amd64 manpages-dev all 4.16-2 [2232 kB] +Get:212 http://cdn-fastly.deb.debian.org/debian stable/main amd64 pandoc-data all 2.2.1-3 [329 kB] +Get:213 http://cdn-fastly.deb.debian.org/debian stable/main amd64 pandoc amd64 2.2.1-3+b2 [14.7 MB] +Get:214 http://cdn-fastly.deb.debian.org/debian stable/main amd64 psmisc amd64 23.2-1 [126 kB] +Get:215 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python-matplotlib-data all 3.0.2-2 [4138 kB] +Get:216 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python-pip-whl all 18.1-5 [1591 kB] +Get:217 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python-tables-data all 3.4.4-2 [53.1 kB] +Get:218 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-asn1crypto all 0.24.0-1 [78.2 kB] +Get:219 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-atomicwrites all 1.1.5-2 [6892 B] +Get:220 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-attr all 18.2.0-1 [37.3 kB] +Get:221 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-soupsieve all 1.8+dfsg-1 [27.6 kB] +Get:222 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-bs4 all 4.7.1-1 [94.1 kB] +Get:223 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-cffi-backend amd64 1.12.2-1 [79.7 kB] +Get:224 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-chardet all 3.0.4-3 [80.5 kB] +Get:225 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-crypto amd64 2.6.1-9+b1 [263 kB] +Get:226 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-cryptography amd64 2.6.1-3 [218 kB] +Get:227 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-cvxopt amd64 1.1.9+dfsg-3+b1 [269 kB] +Get:228 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-cycler all 0.10.0-1 [7556 B] +Get:229 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-dbus amd64 1.2.8-3 [103 kB] +Get:230 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3.7-dev amd64 3.7.3-2 [509 kB] +Get:231 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-dev amd64 3.7.3-1 [1264 B] +Get:232 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-gi amd64 3.30.4-1 [180 kB] +Get:233 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-ipykernel all 4.9.0-1 [75.7 kB] +Get:234 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-joblib all 0.13.0-2 [187 kB] +Get:235 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-secretstorage all 2.3.1-2 [14.2 kB] +Get:236 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-keyring all 17.1.1-1 [43.1 kB] +Get:237 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-keyrings.alt all 3.1.1-1 [18.2 kB] +Get:238 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-kiwisolver amd64 1.0.1-2+b1 [65.4 kB] +Get:239 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-lxml amd64 4.3.2-1 [1161 kB] +Get:240 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pyparsing all 2.2.0+dfsg1-2 [89.6 kB] +Get:241 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-numpy amd64 1:1.16.2-1 [2119 kB] +Get:242 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-matplotlib amd64 3.0.2-2 [5353 kB] +Get:243 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-more-itertools all 4.2.0-1 [42.2 kB] +Get:244 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-numexpr amd64 2.6.9-1 [140 kB] +Get:245 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-olefile all 0.46-1 [35.9 kB] +Get:246 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-tz all 2019.1-1 [27.1 kB] +Get:247 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pandas-lib amd64 0.23.3+dfsg-3 [3475 kB] +Get:248 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pandas all 0.23.3+dfsg-3 [1750 kB] +Get:249 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-patsy all 0.5.0+git13-g54dcf7b-1 [172 kB] +Get:250 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pil amd64 5.4.1-2 [395 kB] +Get:251 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pip all 18.1-5 [171 kB] +Get:252 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pluggy all 0.8.0-1 [20.6 kB] +Get:253 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-psutil amd64 5.5.1-1 [166 kB] +Get:254 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-py all 1.7.0-2 [86.6 kB] +Get:255 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-pytest all 3.10.1-2 [243 kB] +Get:256 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-scipy amd64 1.1.0-7 [10.0 MB] +Get:257 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-setuptools all 40.8.0-1 [306 kB] +Get:258 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-simplejson amd64 3.16.0-1 [60.7 kB] +Get:259 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-statsmodels-lib amd64 0.8.0-9 [365 kB] +Get:260 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-statsmodels all 0.8.0-9 [3004 kB] +Get:261 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-tables-lib amd64 3.4.4-2 [438 kB] +Get:262 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-tables all 3.4.4-2 [342 kB] +Get:263 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-tk amd64 3.7.3-1 [97.4 kB] +Get:264 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-wheel all 0.32.3-2 [19.4 kB] +Get:265 http://cdn-fastly.deb.debian.org/debian stable/main amd64 python3-xdg all 0.25-5 [35.9 kB] +Get:266 http://cdn-fastly.deb.debian.org/debian stable/main amd64 shared-mime-info amd64 1.10-1 [766 kB] +Get:267 http://cdn-fastly.deb.debian.org/debian stable/main amd64 xdg-user-dirs amd64 0.17-2 [53.8 kB] +debconf: delaying package configuration, since apt-utils is not installed +Fetched 212 MB in 2min 56s (1204 kB/s) +Selecting previously unselected package perl-modules-5.28. +(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 6674 files and directories currently installed.) +Preparing to unpack .../0-perl-modules-5.28_5.28.1-6_all.deb ... +Unpacking perl-modules-5.28 (5.28.1-6) ... +Selecting previously unselected package libgdbm6:amd64. +Preparing to unpack .../1-libgdbm6_1.18.1-4_amd64.deb ... +Unpacking libgdbm6:amd64 (1.18.1-4) ... +Selecting previously unselected package libgdbm-compat4:amd64. +Preparing to unpack .../2-libgdbm-compat4_1.18.1-4_amd64.deb ... +Unpacking libgdbm-compat4:amd64 (1.18.1-4) ... +Selecting previously unselected package libperl5.28:amd64. +Preparing to unpack .../3-libperl5.28_5.28.1-6_amd64.deb ... +Unpacking libperl5.28:amd64 (5.28.1-6) ... +Selecting previously unselected package perl. +Preparing to unpack .../4-perl_5.28.1-6_amd64.deb ... +Unpacking perl (5.28.1-6) ... +Selecting previously unselected package liblocale-gettext-perl. +Preparing to unpack .../5-liblocale-gettext-perl_1.07-3+b4_amd64.deb ... +Unpacking liblocale-gettext-perl (1.07-3+b4) ... +Selecting previously unselected package libssl1.1:amd64. +Preparing to unpack .../6-libssl1.1_1.1.1c-1_amd64.deb ... +Unpacking libssl1.1:amd64 (1.1.1c-1) ... +Selecting previously unselected package libpython3.7-minimal:amd64. +Preparing to unpack .../7-libpython3.7-minimal_3.7.3-2_amd64.deb ... +Unpacking libpython3.7-minimal:amd64 (3.7.3-2) ... +Selecting previously unselected package libexpat1:amd64. +Preparing to unpack .../8-libexpat1_2.2.6-2_amd64.deb ... +Unpacking libexpat1:amd64 (2.2.6-2) ... +Selecting previously unselected package python3.7-minimal. +Preparing to unpack .../9-python3.7-minimal_3.7.3-2_amd64.deb ... +Unpacking python3.7-minimal (3.7.3-2) ... +Setting up libssl1.1:amd64 (1.1.1c-1) ... +debconf: unable to initialize frontend: Dialog +debconf: (TERM is not set, so the dialog frontend is not usable.) +debconf: falling back to frontend: Readline +Setting up libpython3.7-minimal:amd64 (3.7.3-2) ... +Setting up libexpat1:amd64 (2.2.6-2) ... +Setting up python3.7-minimal (3.7.3-2) ... +Selecting previously unselected package python3-minimal. +(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 8896 files and directories currently installed.) +Preparing to unpack .../0-python3-minimal_3.7.3-1_amd64.deb ... +Unpacking python3-minimal (3.7.3-1) ... +Selecting previously unselected package mime-support. +Preparing to unpack .../1-mime-support_3.62_all.deb ... +Unpacking mime-support (3.62) ... +Selecting previously unselected package libmpdec2:amd64. +Preparing to unpack .../2-libmpdec2_2.4.2-2_amd64.deb ... +Unpacking libmpdec2:amd64 (2.4.2-2) ... +Selecting previously unselected package readline-common. +Preparing to unpack .../3-readline-common_7.0-5_all.deb ... +Unpacking readline-common (7.0-5) ... +Selecting previously unselected package libreadline7:amd64. +Preparing to unpack .../4-libreadline7_7.0-5_amd64.deb ... +Unpacking libreadline7:amd64 (7.0-5) ... +Selecting previously unselected package libsqlite3-0:amd64. +Preparing to unpack .../5-libsqlite3-0_3.27.2-3_amd64.deb ... +Unpacking libsqlite3-0:amd64 (3.27.2-3) ... +Selecting previously unselected package libpython3.7-stdlib:amd64. +Preparing to unpack .../6-libpython3.7-stdlib_3.7.3-2_amd64.deb ... +Unpacking libpython3.7-stdlib:amd64 (3.7.3-2) ... +Selecting previously unselected package python3.7. +Preparing to unpack .../7-python3.7_3.7.3-2_amd64.deb ... +Unpacking python3.7 (3.7.3-2) ... +Selecting previously unselected package libpython3-stdlib:amd64. +Preparing to unpack .../8-libpython3-stdlib_3.7.3-1_amd64.deb ... +Unpacking libpython3-stdlib:amd64 (3.7.3-1) ... +Setting up python3-minimal (3.7.3-1) ... +Selecting previously unselected package python3. +(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 9365 files and directories currently installed.) +Preparing to unpack .../000-python3_3.7.3-1_amd64.deb ... +Unpacking python3 (3.7.3-1) ... +Selecting previously unselected package netbase. +Preparing to unpack .../001-netbase_5.6_all.deb ... +Unpacking netbase (5.6) ... +Selecting previously unselected package libncurses6:amd64. +Preparing to unpack .../002-libncurses6_6.1+20181013-2_amd64.deb ... +Unpacking libncurses6:amd64 (6.1+20181013-2) ... +Selecting previously unselected package libprocps7:amd64. +Preparing to unpack .../003-libprocps7_2%3a3.3.15-2_amd64.deb ... +Unpacking libprocps7:amd64 (2:3.3.15-2) ... +Selecting previously unselected package lsb-base. +Preparing to unpack .../004-lsb-base_10.2019051400_all.deb ... +Unpacking lsb-base (10.2019051400) ... +Selecting previously unselected package procps. +Preparing to unpack .../005-procps_2%3a3.3.15-2_amd64.deb ... +Unpacking procps (2:3.3.15-2) ... +Selecting previously unselected package sensible-utils. +Preparing to unpack .../006-sensible-utils_0.0.12_all.deb ... +Unpacking sensible-utils (0.0.12) ... +Selecting previously unselected package bzip2. +Preparing to unpack .../007-bzip2_1.0.6-9.1_amd64.deb ... +Unpacking bzip2 (1.0.6-9.1) ... +Selecting previously unselected package libapparmor1:amd64. +Preparing to unpack .../008-libapparmor1_2.13.2-10_amd64.deb ... +Unpacking libapparmor1:amd64 (2.13.2-10) ... +Selecting previously unselected package libdbus-1-3:amd64. +Preparing to unpack .../009-libdbus-1-3_1.12.16-1_amd64.deb ... +Unpacking libdbus-1-3:amd64 (1.12.16-1) ... +Selecting previously unselected package dbus. +Preparing to unpack .../010-dbus_1.12.16-1_amd64.deb ... +Unpacking dbus (1.12.16-1) ... +Selecting previously unselected package libmagic-mgc. +Preparing to unpack .../011-libmagic-mgc_1%3a5.35-4_amd64.deb ... +Unpacking libmagic-mgc (1:5.35-4) ... +Selecting previously unselected package libmagic1:amd64. +Preparing to unpack .../012-libmagic1_1%3a5.35-4_amd64.deb ... +Unpacking libmagic1:amd64 (1:5.35-4) ... +Selecting previously unselected package file. +Preparing to unpack .../013-file_1%3a5.35-4_amd64.deb ... +Unpacking file (1:5.35-4) ... +Selecting previously unselected package krb5-locales. +Preparing to unpack .../014-krb5-locales_1.17-3_all.deb ... +Unpacking krb5-locales (1.17-3) ... +Selecting previously unselected package manpages. +Preparing to unpack .../015-manpages_4.16-2_all.deb ... +Unpacking manpages (4.16-2) ... +Selecting previously unselected package ucf. +Preparing to unpack .../016-ucf_3.0038+nmu1_all.deb ... +Moving old data out of the way +Unpacking ucf (3.0038+nmu1) ... +Selecting previously unselected package xz-utils. +Preparing to unpack .../017-xz-utils_5.2.4-1_amd64.deb ... +Unpacking xz-utils (5.2.4-1) ... +Selecting previously unselected package binutils-common:amd64. +Preparing to unpack .../018-binutils-common_2.31.1-16_amd64.deb ... +Unpacking binutils-common:amd64 (2.31.1-16) ... +Selecting previously unselected package libbinutils:amd64. +Preparing to unpack .../019-libbinutils_2.31.1-16_amd64.deb ... +Unpacking libbinutils:amd64 (2.31.1-16) ... +Selecting previously unselected package binutils-x86-64-linux-gnu. +Preparing to unpack .../020-binutils-x86-64-linux-gnu_2.31.1-16_amd64.deb ... +Unpacking binutils-x86-64-linux-gnu (2.31.1-16) ... +Selecting previously unselected package binutils. +Preparing to unpack .../021-binutils_2.31.1-16_amd64.deb ... +Unpacking binutils (2.31.1-16) ... +Selecting previously unselected package libtcl8.6:amd64. +Preparing to unpack .../022-libtcl8.6_8.6.9+dfsg-2_amd64.deb ... +Unpacking libtcl8.6:amd64 (8.6.9+dfsg-2) ... +Selecting previously unselected package libpng16-16:amd64. +Preparing to unpack .../023-libpng16-16_1.6.36-6_amd64.deb ... +Unpacking libpng16-16:amd64 (1.6.36-6) ... +Selecting previously unselected package libfreetype6:amd64. +Preparing to unpack .../024-libfreetype6_2.9.1-3_amd64.deb ... +Unpacking libfreetype6:amd64 (2.9.1-3) ... +Selecting previously unselected package ttf-bitstream-vera. +Preparing to unpack .../025-ttf-bitstream-vera_1.10-8_all.deb ... +Unpacking ttf-bitstream-vera (1.10-8) ... +Selecting previously unselected package fontconfig-config. +Preparing to unpack .../026-fontconfig-config_2.13.1-2_all.deb ... +Unpacking fontconfig-config (2.13.1-2) ... +Selecting previously unselected package libfontconfig1:amd64. +Preparing to unpack .../027-libfontconfig1_2.13.1-2_amd64.deb ... +Unpacking libfontconfig1:amd64 (2.13.1-2) ... +Selecting previously unselected package libxau6:amd64. +Preparing to unpack .../028-libxau6_1%3a1.0.8-1+b2_amd64.deb ... +Unpacking libxau6:amd64 (1:1.0.8-1+b2) ... +Selecting previously unselected package libbsd0:amd64. +Preparing to unpack .../029-libbsd0_0.9.1-2_amd64.deb ... +Unpacking libbsd0:amd64 (0.9.1-2) ... +Selecting previously unselected package libxdmcp6:amd64. +Preparing to unpack .../030-libxdmcp6_1%3a1.1.2-3_amd64.deb ... +Unpacking libxdmcp6:amd64 (1:1.1.2-3) ... +Selecting previously unselected package libxcb1:amd64. +Preparing to unpack .../031-libxcb1_1.13.1-2_amd64.deb ... +Unpacking libxcb1:amd64 (1.13.1-2) ... +Selecting previously unselected package libx11-data. +Preparing to unpack .../032-libx11-data_2%3a1.6.7-1_all.deb ... +Unpacking libx11-data (2:1.6.7-1) ... +Selecting previously unselected package libx11-6:amd64. +Preparing to unpack .../033-libx11-6_2%3a1.6.7-1_amd64.deb ... +Unpacking libx11-6:amd64 (2:1.6.7-1) ... +Selecting previously unselected package libxext6:amd64. +Preparing to unpack .../034-libxext6_2%3a1.3.3-1+b2_amd64.deb ... +Unpacking libxext6:amd64 (2:1.3.3-1+b2) ... +Selecting previously unselected package libxrender1:amd64. +Preparing to unpack .../035-libxrender1_1%3a0.9.10-1_amd64.deb ... +Unpacking libxrender1:amd64 (1:0.9.10-1) ... +Selecting previously unselected package libxft2:amd64. +Preparing to unpack .../036-libxft2_2.3.2-2_amd64.deb ... +Unpacking libxft2:amd64 (2.3.2-2) ... +Selecting previously unselected package x11-common. +Preparing to unpack .../037-x11-common_1%3a7.7+19_all.deb ... +Unpacking x11-common (1:7.7+19) ... +Selecting previously unselected package libxss1:amd64. +Preparing to unpack .../038-libxss1_1%3a1.2.3-1_amd64.deb ... +Unpacking libxss1:amd64 (1:1.2.3-1) ... +Selecting previously unselected package libtk8.6:amd64. +Preparing to unpack .../039-libtk8.6_8.6.9-2_amd64.deb ... +Unpacking libtk8.6:amd64 (8.6.9-2) ... +Selecting previously unselected package tk8.6-blt2.5. +Preparing to unpack .../040-tk8.6-blt2.5_2.5.3+dfsg-4_amd64.deb ... +Unpacking tk8.6-blt2.5 (2.5.3+dfsg-4) ... +Selecting previously unselected package blt. +Preparing to unpack .../041-blt_2.5.3+dfsg-4_amd64.deb ... +Unpacking blt (2.5.3+dfsg-4) ... +Selecting previously unselected package libc-dev-bin. +Preparing to unpack .../042-libc-dev-bin_2.28-10_amd64.deb ... +Unpacking libc-dev-bin (2.28-10) ... +Selecting previously unselected package linux-libc-dev:amd64. +Preparing to unpack .../043-linux-libc-dev_4.19.37-5+deb10u1_amd64.deb ... +Unpacking linux-libc-dev:amd64 (4.19.37-5+deb10u1) ... +Selecting previously unselected package libc6-dev:amd64. +Preparing to unpack .../044-libc6-dev_2.28-10_amd64.deb ... +Unpacking libc6-dev:amd64 (2.28-10) ... +Selecting previously unselected package libisl19:amd64. +Preparing to unpack .../045-libisl19_0.20-2_amd64.deb ... +Unpacking libisl19:amd64 (0.20-2) ... +Selecting previously unselected package libmpfr6:amd64. +Preparing to unpack .../046-libmpfr6_4.0.2-1_amd64.deb ... +Unpacking libmpfr6:amd64 (4.0.2-1) ... +Selecting previously unselected package libmpc3:amd64. +Preparing to unpack .../047-libmpc3_1.1.0-1_amd64.deb ... +Unpacking libmpc3:amd64 (1.1.0-1) ... +Selecting previously unselected package cpp-8. +Preparing to unpack .../048-cpp-8_8.3.0-6_amd64.deb ... +Unpacking cpp-8 (8.3.0-6) ... +Selecting previously unselected package cpp. +Preparing to unpack .../049-cpp_4%3a8.3.0-1_amd64.deb ... +Unpacking cpp (4:8.3.0-1) ... +Selecting previously unselected package libcc1-0:amd64. +Preparing to unpack .../050-libcc1-0_8.3.0-6_amd64.deb ... +Unpacking libcc1-0:amd64 (8.3.0-6) ... +Selecting previously unselected package libgomp1:amd64. +Preparing to unpack .../051-libgomp1_8.3.0-6_amd64.deb ... +Unpacking libgomp1:amd64 (8.3.0-6) ... +Selecting previously unselected package libitm1:amd64. +Preparing to unpack .../052-libitm1_8.3.0-6_amd64.deb ... +Unpacking libitm1:amd64 (8.3.0-6) ... +Selecting previously unselected package libatomic1:amd64. +Preparing to unpack .../053-libatomic1_8.3.0-6_amd64.deb ... +Unpacking libatomic1:amd64 (8.3.0-6) ... +Selecting previously unselected package libasan5:amd64. +Preparing to unpack .../054-libasan5_8.3.0-6_amd64.deb ... +Unpacking libasan5:amd64 (8.3.0-6) ... +Selecting previously unselected package liblsan0:amd64. +Preparing to unpack .../055-liblsan0_8.3.0-6_amd64.deb ... +Unpacking liblsan0:amd64 (8.3.0-6) ... +Selecting previously unselected package libtsan0:amd64. +Preparing to unpack .../056-libtsan0_8.3.0-6_amd64.deb ... +Unpacking libtsan0:amd64 (8.3.0-6) ... +Selecting previously unselected package libubsan1:amd64. +Preparing to unpack .../057-libubsan1_8.3.0-6_amd64.deb ... +Unpacking libubsan1:amd64 (8.3.0-6) ... +Selecting previously unselected package libmpx2:amd64. +Preparing to unpack .../058-libmpx2_8.3.0-6_amd64.deb ... +Unpacking libmpx2:amd64 (8.3.0-6) ... +Selecting previously unselected package libquadmath0:amd64. +Preparing to unpack .../059-libquadmath0_8.3.0-6_amd64.deb ... +Unpacking libquadmath0:amd64 (8.3.0-6) ... +Selecting previously unselected package libgcc-8-dev:amd64. +Preparing to unpack .../060-libgcc-8-dev_8.3.0-6_amd64.deb ... +Unpacking libgcc-8-dev:amd64 (8.3.0-6) ... +Selecting previously unselected package gcc-8. +Preparing to unpack .../061-gcc-8_8.3.0-6_amd64.deb ... +Unpacking gcc-8 (8.3.0-6) ... +Selecting previously unselected package gcc. +Preparing to unpack .../062-gcc_4%3a8.3.0-1_amd64.deb ... +Unpacking gcc (4:8.3.0-1) ... +Selecting previously unselected package libstdc++-8-dev:amd64. +Preparing to unpack .../063-libstdc++-8-dev_8.3.0-6_amd64.deb ... +Unpacking libstdc++-8-dev:amd64 (8.3.0-6) ... +Selecting previously unselected package g++-8. +Preparing to unpack .../064-g++-8_8.3.0-6_amd64.deb ... +Unpacking g++-8 (8.3.0-6) ... +Selecting previously unselected package g++. +Preparing to unpack .../065-g++_4%3a8.3.0-1_amd64.deb ... +Unpacking g++ (4:8.3.0-1) ... +Selecting previously unselected package make. +Preparing to unpack .../066-make_4.2.1-1.2_amd64.deb ... +Unpacking make (4.2.1-1.2) ... +Selecting previously unselected package libdpkg-perl. +Preparing to unpack .../067-libdpkg-perl_1.19.7_all.deb ... +Unpacking libdpkg-perl (1.19.7) ... +Selecting previously unselected package patch. +Preparing to unpack .../068-patch_2.7.6-3_amd64.deb ... +Unpacking patch (2.7.6-3) ... +Selecting previously unselected package dpkg-dev. +Preparing to unpack .../069-dpkg-dev_1.19.7_all.deb ... +Unpacking dpkg-dev (1.19.7) ... +Selecting previously unselected package build-essential. +Preparing to unpack .../070-build-essential_12.6_amd64.deb ... +Unpacking build-essential (12.6) ... +Selecting previously unselected package openssl. +Preparing to unpack .../071-openssl_1.1.1c-1_amd64.deb ... +Unpacking openssl (1.1.1c-1) ... +Selecting previously unselected package ca-certificates. +Preparing to unpack .../072-ca-certificates_20190110_all.deb ... +Unpacking ca-certificates (20190110) ... +Selecting previously unselected package python3-lib2to3. +Preparing to unpack .../073-python3-lib2to3_3.7.3-1_all.deb ... +Unpacking python3-lib2to3 (3.7.3-1) ... +Selecting previously unselected package python3-distutils. +Preparing to unpack .../074-python3-distutils_3.7.3-1_all.deb ... +Unpacking python3-distutils (3.7.3-1) ... +Selecting previously unselected package dh-python. +Preparing to unpack .../075-dh-python_3.20190308_all.deb ... +Unpacking dh-python (3.20190308) ... +Selecting previously unselected package libassuan0:amd64. +Preparing to unpack .../076-libassuan0_2.5.2-1_amd64.deb ... +Unpacking libassuan0:amd64 (2.5.2-1) ... +Selecting previously unselected package gpgconf. +Preparing to unpack .../077-gpgconf_2.2.12-1_amd64.deb ... +Unpacking gpgconf (2.2.12-1) ... +Selecting previously unselected package libksba8:amd64. +Preparing to unpack .../078-libksba8_1.3.5-2_amd64.deb ... +Unpacking libksba8:amd64 (1.3.5-2) ... +Selecting previously unselected package libsasl2-modules-db:amd64. +Preparing to unpack .../079-libsasl2-modules-db_2.1.27+dfsg-1_amd64.deb ... +Unpacking libsasl2-modules-db:amd64 (2.1.27+dfsg-1) ... +Selecting previously unselected package libsasl2-2:amd64. +Preparing to unpack .../080-libsasl2-2_2.1.27+dfsg-1_amd64.deb ... +Unpacking libsasl2-2:amd64 (2.1.27+dfsg-1) ... +Selecting previously unselected package libldap-common. +Preparing to unpack .../081-libldap-common_2.4.47+dfsg-3_all.deb ... +Unpacking libldap-common (2.4.47+dfsg-3) ... +Selecting previously unselected package libldap-2.4-2:amd64. +Preparing to unpack .../082-libldap-2.4-2_2.4.47+dfsg-3_amd64.deb ... +Unpacking libldap-2.4-2:amd64 (2.4.47+dfsg-3) ... +Selecting previously unselected package libnpth0:amd64. +Preparing to unpack .../083-libnpth0_1.6-1_amd64.deb ... +Unpacking libnpth0:amd64 (1.6-1) ... +Selecting previously unselected package dirmngr. +Preparing to unpack .../084-dirmngr_2.2.12-1_amd64.deb ... +Unpacking dirmngr (2.2.12-1) ... +Selecting previously unselected package libfakeroot:amd64. +Preparing to unpack .../085-libfakeroot_1.23-1_amd64.deb ... +Unpacking libfakeroot:amd64 (1.23-1) ... +Selecting previously unselected package fakeroot. +Preparing to unpack .../086-fakeroot_1.23-1_amd64.deb ... +Unpacking fakeroot (1.23-1) ... +Selecting previously unselected package fonts-lyx. +Preparing to unpack .../087-fonts-lyx_2.3.2-1_all.deb ... +Unpacking fonts-lyx (2.3.2-1) ... +Selecting previously unselected package libglib2.0-0:amd64. +Preparing to unpack .../088-libglib2.0-0_2.58.3-2_amd64.deb ... +Unpacking libglib2.0-0:amd64 (2.58.3-2) ... +Selecting previously unselected package libgirepository-1.0-1:amd64. +Preparing to unpack .../089-libgirepository-1.0-1_1.58.3-2_amd64.deb ... +Unpacking libgirepository-1.0-1:amd64 (1.58.3-2) ... +Selecting previously unselected package gir1.2-glib-2.0:amd64. +Preparing to unpack .../090-gir1.2-glib-2.0_1.58.3-2_amd64.deb ... +Unpacking gir1.2-glib-2.0:amd64 (1.58.3-2) ... +Selecting previously unselected package gnupg-l10n. +Preparing to unpack .../091-gnupg-l10n_2.2.12-1_all.deb ... +Unpacking gnupg-l10n (2.2.12-1) ... +Selecting previously unselected package gnupg-utils. +Preparing to unpack .../092-gnupg-utils_2.2.12-1_amd64.deb ... +Unpacking gnupg-utils (2.2.12-1) ... +Selecting previously unselected package gpg. +Preparing to unpack .../093-gpg_2.2.12-1_amd64.deb ... +Unpacking gpg (2.2.12-1) ... +Selecting previously unselected package pinentry-curses. +Preparing to unpack .../094-pinentry-curses_1.1.0-2_amd64.deb ... +Unpacking pinentry-curses (1.1.0-2) ... +Selecting previously unselected package gpg-agent. +Preparing to unpack .../095-gpg-agent_2.2.12-1_amd64.deb ... +Unpacking gpg-agent (2.2.12-1) ... +Selecting previously unselected package gpg-wks-client. +Preparing to unpack .../096-gpg-wks-client_2.2.12-1_amd64.deb ... +Unpacking gpg-wks-client (2.2.12-1) ... +Selecting previously unselected package gpg-wks-server. +Preparing to unpack .../097-gpg-wks-server_2.2.12-1_amd64.deb ... +Unpacking gpg-wks-server (2.2.12-1) ... +Selecting previously unselected package gpgsm. +Preparing to unpack .../098-gpgsm_2.2.12-1_amd64.deb ... +Unpacking gpgsm (2.2.12-1) ... +Selecting previously unselected package gnupg. +Preparing to unpack .../099-gnupg_2.2.12-1_all.deb ... +Unpacking gnupg (2.2.12-1) ... +Selecting previously unselected package javascript-common. +Preparing to unpack .../100-javascript-common_11_all.deb ... +Unpacking javascript-common (11) ... +Selecting previously unselected package python3-entrypoints. +Preparing to unpack .../101-python3-entrypoints_0.3-1_all.deb ... +Unpacking python3-entrypoints (0.3-1) ... +Selecting previously unselected package python3-decorator. +Preparing to unpack .../102-python3-decorator_4.3.0-1.1_all.deb ... +Unpacking python3-decorator (4.3.0-1.1) ... +Selecting previously unselected package python3-ptyprocess. +Preparing to unpack .../103-python3-ptyprocess_0.6.0-1_all.deb ... +Unpacking python3-ptyprocess (0.6.0-1) ... +Selecting previously unselected package python3-pexpect. +Preparing to unpack .../104-python3-pexpect_4.6.0-1_all.deb ... +Unpacking python3-pexpect (4.6.0-1) ... +Selecting previously unselected package python3-pickleshare. +Preparing to unpack .../105-python3-pickleshare_0.7.5-1_all.deb ... +Unpacking python3-pickleshare (0.7.5-1) ... +Selecting previously unselected package python3-pkg-resources. +Preparing to unpack .../106-python3-pkg-resources_40.8.0-1_all.deb ... +Unpacking python3-pkg-resources (40.8.0-1) ... +Selecting previously unselected package python3-six. +Preparing to unpack .../107-python3-six_1.12.0-1_all.deb ... +Unpacking python3-six (1.12.0-1) ... +Selecting previously unselected package python3-wcwidth. +Preparing to unpack .../108-python3-wcwidth_0.1.7+dfsg1-3_all.deb ... +Unpacking python3-wcwidth (0.1.7+dfsg1-3) ... +Selecting previously unselected package python3-prompt-toolkit. +Preparing to unpack .../109-python3-prompt-toolkit_1.0.15-1_all.deb ... +Unpacking python3-prompt-toolkit (1.0.15-1) ... +Selecting previously unselected package python3-pygments. +Preparing to unpack .../110-python3-pygments_2.3.1+dfsg-1_all.deb ... +Unpacking python3-pygments (2.3.1+dfsg-1) ... +Selecting previously unselected package python3-simplegeneric. +Preparing to unpack .../111-python3-simplegeneric_0.8.1-2_all.deb ... +Unpacking python3-simplegeneric (0.8.1-2) ... +Selecting previously unselected package python3-ipython-genutils. +Preparing to unpack .../112-python3-ipython-genutils_0.2.0-1_all.deb ... +Unpacking python3-ipython-genutils (0.2.0-1) ... +Selecting previously unselected package python3-traitlets. +Preparing to unpack .../113-python3-traitlets_4.3.2-1_all.deb ... +Unpacking python3-traitlets (4.3.2-1) ... +Selecting previously unselected package python3-ipython. +Preparing to unpack .../114-python3-ipython_5.8.0-1_all.deb ... +Unpacking python3-ipython (5.8.0-1) ... +Selecting previously unselected package python3-dateutil. +Preparing to unpack .../115-python3-dateutil_2.7.3-3_all.deb ... +Unpacking python3-dateutil (2.7.3-3) ... +Selecting previously unselected package python3-jupyter-core. +Preparing to unpack .../116-python3-jupyter-core_4.4.0-2_all.deb ... +Unpacking python3-jupyter-core (4.4.0-2) ... +Selecting previously unselected package python3-tornado. +Preparing to unpack .../117-python3-tornado_5.1.1-4_amd64.deb ... +Unpacking python3-tornado (5.1.1-4) ... +Selecting previously unselected package libkeyutils1:amd64. +Preparing to unpack .../118-libkeyutils1_1.6-6_amd64.deb ... +Unpacking libkeyutils1:amd64 (1.6-6) ... +Selecting previously unselected package libkrb5support0:amd64. +Preparing to unpack .../119-libkrb5support0_1.17-3_amd64.deb ... +Unpacking libkrb5support0:amd64 (1.17-3) ... +Selecting previously unselected package libk5crypto3:amd64. +Preparing to unpack .../120-libk5crypto3_1.17-3_amd64.deb ... +Unpacking libk5crypto3:amd64 (1.17-3) ... +Selecting previously unselected package libkrb5-3:amd64. +Preparing to unpack .../121-libkrb5-3_1.17-3_amd64.deb ... +Unpacking libkrb5-3:amd64 (1.17-3) ... +Selecting previously unselected package libgssapi-krb5-2:amd64. +Preparing to unpack .../122-libgssapi-krb5-2_1.17-3_amd64.deb ... +Unpacking libgssapi-krb5-2:amd64 (1.17-3) ... +Selecting previously unselected package libnorm1:amd64. +Preparing to unpack .../123-libnorm1_1.5.8+dfsg2-1_amd64.deb ... +Unpacking libnorm1:amd64 (1.5.8+dfsg2-1) ... +Selecting previously unselected package libpgm-5.2-0:amd64. +Preparing to unpack .../124-libpgm-5.2-0_5.2.122~dfsg-3_amd64.deb ... +Unpacking libpgm-5.2-0:amd64 (5.2.122~dfsg-3) ... +Selecting previously unselected package libsodium23:amd64. +Preparing to unpack .../125-libsodium23_1.0.17-1_amd64.deb ... +Unpacking libsodium23:amd64 (1.0.17-1) ... +Selecting previously unselected package libzmq5:amd64. +Preparing to unpack .../126-libzmq5_4.3.1-4+deb10u1_amd64.deb ... +Unpacking libzmq5:amd64 (4.3.1-4+deb10u1) ... +Selecting previously unselected package python3-zmq. +Preparing to unpack .../127-python3-zmq_17.1.2-2_amd64.deb ... +Unpacking python3-zmq (17.1.2-2) ... +Selecting previously unselected package python3-jupyter-client. +Preparing to unpack .../128-python3-jupyter-client_5.2.3-1_all.deb ... +Unpacking python3-jupyter-client (5.2.3-1) ... +Selecting previously unselected package python3-testpath. +Preparing to unpack .../129-python3-testpath_0.4.2+dfsg-1_all.deb ... +Unpacking python3-testpath (0.4.2+dfsg-1) ... +Selecting previously unselected package python3-webencodings. +Preparing to unpack .../130-python3-webencodings_0.5.1-1_all.deb ... +Unpacking python3-webencodings (0.5.1-1) ... +Selecting previously unselected package python3-html5lib. +Preparing to unpack .../131-python3-html5lib_1.0.1-1_all.deb ... +Unpacking python3-html5lib (1.0.1-1) ... +Selecting previously unselected package python3-bleach. +Preparing to unpack .../132-python3-bleach_3.1.0-1_all.deb ... +Unpacking python3-bleach (3.1.0-1) ... +Selecting previously unselected package python3-defusedxml. +Preparing to unpack .../133-python3-defusedxml_0.5.0-2_all.deb ... +Unpacking python3-defusedxml (0.5.0-2) ... +Selecting previously unselected package python3-markupsafe. +Preparing to unpack .../134-python3-markupsafe_1.1.0-1_amd64.deb ... +Unpacking python3-markupsafe (1.1.0-1) ... +Selecting previously unselected package python3-jinja2. +Preparing to unpack .../135-python3-jinja2_2.10-2_all.deb ... +Unpacking python3-jinja2 (2.10-2) ... +Selecting previously unselected package python3-mistune. +Preparing to unpack .../136-python3-mistune_0.8.4-1_all.deb ... +Unpacking python3-mistune (0.8.4-1) ... +Selecting previously unselected package python3-jsonschema. +Preparing to unpack .../137-python3-jsonschema_2.6.0-4_all.deb ... +Unpacking python3-jsonschema (2.6.0-4) ... +Selecting previously unselected package python3-nbformat. +Preparing to unpack .../138-python3-nbformat_4.4.0-1_all.deb ... +Unpacking python3-nbformat (4.4.0-1) ... +Selecting previously unselected package python3-pandocfilters. +Preparing to unpack .../139-python3-pandocfilters_1.4.2-1_all.deb ... +Unpacking python3-pandocfilters (1.4.2-1) ... +Selecting previously unselected package python3-nbconvert. +Preparing to unpack .../140-python3-nbconvert_5.4-2_all.deb ... +Unpacking python3-nbconvert (5.4-2) ... +Selecting previously unselected package jupyter-nbconvert. +Preparing to unpack .../141-jupyter-nbconvert_5.4-2_all.deb ... +Unpacking jupyter-nbconvert (5.4-2) ... +Selecting previously unselected package libaec0:amd64. +Preparing to unpack .../142-libaec0_1.0.2-1_amd64.deb ... +Unpacking libaec0:amd64 (1.0.2-1) ... +Selecting previously unselected package libalgorithm-diff-perl. +Preparing to unpack .../143-libalgorithm-diff-perl_1.19.03-2_all.deb ... +Unpacking libalgorithm-diff-perl (1.19.03-2) ... +Selecting previously unselected package libalgorithm-diff-xs-perl. +Preparing to unpack .../144-libalgorithm-diff-xs-perl_0.04-5+b1_amd64.deb ... +Unpacking libalgorithm-diff-xs-perl (0.04-5+b1) ... +Selecting previously unselected package libalgorithm-merge-perl. +Preparing to unpack .../145-libalgorithm-merge-perl_0.08-3_all.deb ... +Unpacking libalgorithm-merge-perl (0.08-3) ... +Selecting previously unselected package libsuitesparseconfig5:amd64. +Preparing to unpack .../146-libsuitesparseconfig5_1%3a5.4.0+dfsg-1_amd64.deb ... +Unpacking libsuitesparseconfig5:amd64 (1:5.4.0+dfsg-1) ... +Selecting previously unselected package libamd2:amd64. +Preparing to unpack .../147-libamd2_1%3a5.4.0+dfsg-1_amd64.deb ... +Unpacking libamd2:amd64 (1:5.4.0+dfsg-1) ... +Selecting previously unselected package libgfortran5:amd64. +Preparing to unpack .../148-libgfortran5_8.3.0-6_amd64.deb ... +Unpacking libgfortran5:amd64 (8.3.0-6) ... +Selecting previously unselected package libblas3:amd64. +Preparing to unpack .../149-libblas3_3.8.0-2_amd64.deb ... +Unpacking libblas3:amd64 (3.8.0-2) ... +Selecting previously unselected package libsnappy1v5:amd64. +Preparing to unpack .../150-libsnappy1v5_1.1.7-1_amd64.deb ... +Unpacking libsnappy1v5:amd64 (1.1.7-1) ... +Selecting previously unselected package libblosc1. +Preparing to unpack .../151-libblosc1_1.15.1+ds1-1_amd64.deb ... +Unpacking libblosc1 (1.15.1+ds1-1) ... +Selecting previously unselected package libcamd2:amd64. +Preparing to unpack .../152-libcamd2_1%3a5.4.0+dfsg-1_amd64.deb ... +Unpacking libcamd2:amd64 (1:5.4.0+dfsg-1) ... +Selecting previously unselected package libccolamd2:amd64. +Preparing to unpack .../153-libccolamd2_1%3a5.4.0+dfsg-1_amd64.deb ... +Unpacking libccolamd2:amd64 (1:5.4.0+dfsg-1) ... +Selecting previously unselected package libcolamd2:amd64. +Preparing to unpack .../154-libcolamd2_1%3a5.4.0+dfsg-1_amd64.deb ... +Unpacking libcolamd2:amd64 (1:5.4.0+dfsg-1) ... +Selecting previously unselected package liblapack3:amd64. +Preparing to unpack .../155-liblapack3_3.8.0-2_amd64.deb ... +Unpacking liblapack3:amd64 (3.8.0-2) ... +Selecting previously unselected package libmetis5:amd64. +Preparing to unpack .../156-libmetis5_5.1.0.dfsg-5+b2_amd64.deb ... +Unpacking libmetis5:amd64 (5.1.0.dfsg-5+b2) ... +Selecting previously unselected package libcholmod3:amd64. +Preparing to unpack .../157-libcholmod3_1%3a5.4.0+dfsg-1_amd64.deb ... +Unpacking libcholmod3:amd64 (1:5.4.0+dfsg-1) ... +Selecting previously unselected package libdsdp-5.8gf. +Preparing to unpack .../158-libdsdp-5.8gf_5.8-9.4_amd64.deb ... +Unpacking libdsdp-5.8gf (5.8-9.4) ... +Selecting previously unselected package libexpat1-dev:amd64. +Preparing to unpack .../159-libexpat1-dev_2.2.6-2_amd64.deb ... +Unpacking libexpat1-dev:amd64 (2.2.6-2) ... +Selecting previously unselected package libfftw3-double3:amd64. +Preparing to unpack .../160-libfftw3-double3_3.3.8-2_amd64.deb ... +Unpacking libfftw3-double3:amd64 (3.3.8-2) ... +Selecting previously unselected package libfile-fcntllock-perl. +Preparing to unpack .../161-libfile-fcntllock-perl_0.22-3+b5_amd64.deb ... +Unpacking libfile-fcntllock-perl (0.22-3+b5) ... +Selecting previously unselected package libglib2.0-data. +Preparing to unpack .../162-libglib2.0-data_2.58.3-2_all.deb ... +Unpacking libglib2.0-data (2.58.3-2) ... +Selecting previously unselected package libltdl7:amd64. +Preparing to unpack .../163-libltdl7_2.4.6-9_amd64.deb ... +Unpacking libltdl7:amd64 (2.4.6-9) ... +Selecting previously unselected package libglpk40:amd64. +Preparing to unpack .../164-libglpk40_4.65-2_amd64.deb ... +Unpacking libglpk40:amd64 (4.65-2) ... +Selecting previously unselected package libgpm2:amd64. +Preparing to unpack .../165-libgpm2_1.20.7-5_amd64.deb ... +Unpacking libgpm2:amd64 (1.20.7-5) ... +Selecting previously unselected package libgslcblas0:amd64. +Preparing to unpack .../166-libgslcblas0_2.5+dfsg-6_amd64.deb ... +Unpacking libgslcblas0:amd64 (2.5+dfsg-6) ... +Selecting previously unselected package libgsl23:amd64. +Preparing to unpack .../167-libgsl23_2.5+dfsg-6_amd64.deb ... +Unpacking libgsl23:amd64 (2.5+dfsg-6) ... +Selecting previously unselected package libsz2:amd64. +Preparing to unpack .../168-libsz2_1.0.2-1_amd64.deb ... +Unpacking libsz2:amd64 (1.0.2-1) ... +Selecting previously unselected package libhdf5-103:amd64. +Preparing to unpack .../169-libhdf5-103_1.10.4+repack-10_amd64.deb ... +Unpacking libhdf5-103:amd64 (1.10.4+repack-10) ... +Selecting previously unselected package libicu63:amd64. +Preparing to unpack .../170-libicu63_63.1-6_amd64.deb ... +Unpacking libicu63:amd64 (63.1-6) ... +Selecting previously unselected package libimagequant0:amd64. +Preparing to unpack .../171-libimagequant0_2.12.2-1.1_amd64.deb ... +Unpacking libimagequant0:amd64 (2.12.2-1.1) ... +Selecting previously unselected package libjbig0:amd64. +Preparing to unpack .../172-libjbig0_2.1-3.1+b2_amd64.deb ... +Unpacking libjbig0:amd64 (2.1-3.1+b2) ... +Selecting previously unselected package libjpeg62-turbo:amd64. +Preparing to unpack .../173-libjpeg62-turbo_1%3a1.5.2-2+b1_amd64.deb ... +Unpacking libjpeg62-turbo:amd64 (1:1.5.2-2+b1) ... +Selecting previously unselected package libjs-jquery. +Preparing to unpack .../174-libjs-jquery_3.3.1~dfsg-3_all.deb ... +Unpacking libjs-jquery (3.3.1~dfsg-3) ... +Selecting previously unselected package libjs-jquery-ui. +Preparing to unpack .../175-libjs-jquery-ui_1.12.1+dfsg-5_all.deb ... +Unpacking libjs-jquery-ui (1.12.1+dfsg-5) ... +Selecting previously unselected package liblcms2-2:amd64. +Preparing to unpack .../176-liblcms2-2_2.9-3_amd64.deb ... +Unpacking liblcms2-2:amd64 (2.9-3) ... +Selecting previously unselected package liblua5.1-0:amd64. +Preparing to unpack .../177-liblua5.1-0_5.1.5-8.1+b2_amd64.deb ... +Unpacking liblua5.1-0:amd64 (5.1.5-8.1+b2) ... +Selecting previously unselected package liblzo2-2:amd64. +Preparing to unpack .../178-liblzo2-2_2.10-0.1_amd64.deb ... +Unpacking liblzo2-2:amd64 (2.10-0.1) ... +Selecting previously unselected package libpython3.7:amd64. +Preparing to unpack .../179-libpython3.7_3.7.3-2_amd64.deb ... +Unpacking libpython3.7:amd64 (3.7.3-2) ... +Selecting previously unselected package libpython3.7-dev:amd64. +Preparing to unpack .../180-libpython3.7-dev_3.7.3-2_amd64.deb ... +Unpacking libpython3.7-dev:amd64 (3.7.3-2) ... +Selecting previously unselected package libpython3-dev:amd64. +Preparing to unpack .../181-libpython3-dev_3.7.3-1_amd64.deb ... +Unpacking libpython3-dev:amd64 (3.7.3-1) ... +Selecting previously unselected package libsasl2-modules:amd64. +Preparing to unpack .../182-libsasl2-modules_2.1.27+dfsg-1_amd64.deb ... +Unpacking libsasl2-modules:amd64 (2.1.27+dfsg-1) ... +Selecting previously unselected package libwebp6:amd64. +Preparing to unpack .../183-libwebp6_0.6.1-2_amd64.deb ... +Unpacking libwebp6:amd64 (0.6.1-2) ... +Selecting previously unselected package libtiff5:amd64. +Preparing to unpack .../184-libtiff5_4.0.10-4_amd64.deb ... +Unpacking libtiff5:amd64 (4.0.10-4) ... +Selecting previously unselected package libumfpack5:amd64. +Preparing to unpack .../185-libumfpack5_1%3a5.4.0+dfsg-1_amd64.deb ... +Unpacking libumfpack5:amd64 (1:5.4.0+dfsg-1) ... +Selecting previously unselected package libwebpdemux2:amd64. +Preparing to unpack .../186-libwebpdemux2_0.6.1-2_amd64.deb ... +Unpacking libwebpdemux2:amd64 (0.6.1-2) ... +Selecting previously unselected package libwebpmux3:amd64. +Preparing to unpack .../187-libwebpmux3_0.6.1-2_amd64.deb ... +Unpacking libwebpmux3:amd64 (0.6.1-2) ... +Selecting previously unselected package libxml2:amd64. +Preparing to unpack .../188-libxml2_2.9.4+dfsg1-7+b3_amd64.deb ... +Unpacking libxml2:amd64 (2.9.4+dfsg1-7+b3) ... +Selecting previously unselected package libxslt1.1:amd64. +Preparing to unpack .../189-libxslt1.1_1.1.32-2_amd64.deb ... +Unpacking libxslt1.1:amd64 (1.1.32-2) ... +Selecting previously unselected package libyaml-0-2:amd64. +Preparing to unpack .../190-libyaml-0-2_0.2.1-1_amd64.deb ... +Unpacking libyaml-0-2:amd64 (0.2.1-1) ... +Selecting previously unselected package manpages-dev. +Preparing to unpack .../191-manpages-dev_4.16-2_all.deb ... +Unpacking manpages-dev (4.16-2) ... +Selecting previously unselected package pandoc-data. +Preparing to unpack .../192-pandoc-data_2.2.1-3_all.deb ... +Unpacking pandoc-data (2.2.1-3) ... +Selecting previously unselected package pandoc. +Preparing to unpack .../193-pandoc_2.2.1-3+b2_amd64.deb ... +Unpacking pandoc (2.2.1-3+b2) ... +Selecting previously unselected package psmisc. +Preparing to unpack .../194-psmisc_23.2-1_amd64.deb ... +Unpacking psmisc (23.2-1) ... +Selecting previously unselected package python-matplotlib-data. +Preparing to unpack .../195-python-matplotlib-data_3.0.2-2_all.deb ... +Unpacking python-matplotlib-data (3.0.2-2) ... +Selecting previously unselected package python-pip-whl. +Preparing to unpack .../196-python-pip-whl_18.1-5_all.deb ... +Unpacking python-pip-whl (18.1-5) ... +Selecting previously unselected package python-tables-data. +Preparing to unpack .../197-python-tables-data_3.4.4-2_all.deb ... +Unpacking python-tables-data (3.4.4-2) ... +Selecting previously unselected package python3-asn1crypto. +Preparing to unpack .../198-python3-asn1crypto_0.24.0-1_all.deb ... +Unpacking python3-asn1crypto (0.24.0-1) ... +Selecting previously unselected package python3-atomicwrites. +Preparing to unpack .../199-python3-atomicwrites_1.1.5-2_all.deb ... +Unpacking python3-atomicwrites (1.1.5-2) ... +Selecting previously unselected package python3-attr. +Preparing to unpack .../200-python3-attr_18.2.0-1_all.deb ... +Unpacking python3-attr (18.2.0-1) ... +Selecting previously unselected package python3-soupsieve. +Preparing to unpack .../201-python3-soupsieve_1.8+dfsg-1_all.deb ... +Unpacking python3-soupsieve (1.8+dfsg-1) ... +Selecting previously unselected package python3-bs4. +Preparing to unpack .../202-python3-bs4_4.7.1-1_all.deb ... +Unpacking python3-bs4 (4.7.1-1) ... +Selecting previously unselected package python3-cffi-backend. +Preparing to unpack .../203-python3-cffi-backend_1.12.2-1_amd64.deb ... +Unpacking python3-cffi-backend (1.12.2-1) ... +Selecting previously unselected package python3-chardet. +Preparing to unpack .../204-python3-chardet_3.0.4-3_all.deb ... +Unpacking python3-chardet (3.0.4-3) ... +Selecting previously unselected package python3-crypto. +Preparing to unpack .../205-python3-crypto_2.6.1-9+b1_amd64.deb ... +Unpacking python3-crypto (2.6.1-9+b1) ... +Selecting previously unselected package python3-cryptography. +Preparing to unpack .../206-python3-cryptography_2.6.1-3_amd64.deb ... +Unpacking python3-cryptography (2.6.1-3) ... +Selecting previously unselected package python3-cvxopt. +Preparing to unpack .../207-python3-cvxopt_1.1.9+dfsg-3+b1_amd64.deb ... +Unpacking python3-cvxopt (1.1.9+dfsg-3+b1) ... +Selecting previously unselected package python3-cycler. +Preparing to unpack .../208-python3-cycler_0.10.0-1_all.deb ... +Unpacking python3-cycler (0.10.0-1) ... +Selecting previously unselected package python3-dbus. +Preparing to unpack .../209-python3-dbus_1.2.8-3_amd64.deb ... +Unpacking python3-dbus (1.2.8-3) ... +Selecting previously unselected package python3.7-dev. +Preparing to unpack .../210-python3.7-dev_3.7.3-2_amd64.deb ... +Unpacking python3.7-dev (3.7.3-2) ... +Selecting previously unselected package python3-dev. +Preparing to unpack .../211-python3-dev_3.7.3-1_amd64.deb ... +Unpacking python3-dev (3.7.3-1) ... +Selecting previously unselected package python3-gi. +Preparing to unpack .../212-python3-gi_3.30.4-1_amd64.deb ... +Unpacking python3-gi (3.30.4-1) ... +Selecting previously unselected package python3-ipykernel. +Preparing to unpack .../213-python3-ipykernel_4.9.0-1_all.deb ... +Unpacking python3-ipykernel (4.9.0-1) ... +Selecting previously unselected package python3-joblib. +Preparing to unpack .../214-python3-joblib_0.13.0-2_all.deb ... +Unpacking python3-joblib (0.13.0-2) ... +Selecting previously unselected package python3-secretstorage. +Preparing to unpack .../215-python3-secretstorage_2.3.1-2_all.deb ... +Unpacking python3-secretstorage (2.3.1-2) ... +Selecting previously unselected package python3-keyring. +Preparing to unpack .../216-python3-keyring_17.1.1-1_all.deb ... +Unpacking python3-keyring (17.1.1-1) ... +Selecting previously unselected package python3-keyrings.alt. +Preparing to unpack .../217-python3-keyrings.alt_3.1.1-1_all.deb ... +Unpacking python3-keyrings.alt (3.1.1-1) ... +Selecting previously unselected package python3-kiwisolver. +Preparing to unpack .../218-python3-kiwisolver_1.0.1-2+b1_amd64.deb ... +Unpacking python3-kiwisolver (1.0.1-2+b1) ... +Selecting previously unselected package python3-lxml:amd64. +Preparing to unpack .../219-python3-lxml_4.3.2-1_amd64.deb ... +Unpacking python3-lxml:amd64 (4.3.2-1) ... +Selecting previously unselected package python3-pyparsing. +Preparing to unpack .../220-python3-pyparsing_2.2.0+dfsg1-2_all.deb ... +Unpacking python3-pyparsing (2.2.0+dfsg1-2) ... +Selecting previously unselected package python3-numpy. +Preparing to unpack .../221-python3-numpy_1%3a1.16.2-1_amd64.deb ... +Unpacking python3-numpy (1:1.16.2-1) ... +Selecting previously unselected package python3-matplotlib. +Preparing to unpack .../222-python3-matplotlib_3.0.2-2_amd64.deb ... +Unpacking python3-matplotlib (3.0.2-2) ... +Selecting previously unselected package python3-more-itertools. +Preparing to unpack .../223-python3-more-itertools_4.2.0-1_all.deb ... +Unpacking python3-more-itertools (4.2.0-1) ... +Selecting previously unselected package python3-numexpr. +Preparing to unpack .../224-python3-numexpr_2.6.9-1_amd64.deb ... +Unpacking python3-numexpr (2.6.9-1) ... +Selecting previously unselected package python3-olefile. +Preparing to unpack .../225-python3-olefile_0.46-1_all.deb ... +Unpacking python3-olefile (0.46-1) ... +Selecting previously unselected package python3-tz. +Preparing to unpack .../226-python3-tz_2019.1-1_all.deb ... +Unpacking python3-tz (2019.1-1) ... +Selecting previously unselected package python3-pandas-lib. +Preparing to unpack .../227-python3-pandas-lib_0.23.3+dfsg-3_amd64.deb ... +Unpacking python3-pandas-lib (0.23.3+dfsg-3) ... +Selecting previously unselected package python3-pandas. +Preparing to unpack .../228-python3-pandas_0.23.3+dfsg-3_all.deb ... +Unpacking python3-pandas (0.23.3+dfsg-3) ... +Selecting previously unselected package python3-patsy. +Preparing to unpack .../229-python3-patsy_0.5.0+git13-g54dcf7b-1_all.deb ... +Unpacking python3-patsy (0.5.0+git13-g54dcf7b-1) ... +Selecting previously unselected package python3-pil:amd64. +Preparing to unpack .../230-python3-pil_5.4.1-2_amd64.deb ... +Unpacking python3-pil:amd64 (5.4.1-2) ... +Selecting previously unselected package python3-pip. +Preparing to unpack .../231-python3-pip_18.1-5_all.deb ... +Unpacking python3-pip (18.1-5) ... +Selecting previously unselected package python3-pluggy. +Preparing to unpack .../232-python3-pluggy_0.8.0-1_all.deb ... +Unpacking python3-pluggy (0.8.0-1) ... +Selecting previously unselected package python3-psutil. +Preparing to unpack .../233-python3-psutil_5.5.1-1_amd64.deb ... +Unpacking python3-psutil (5.5.1-1) ... +Selecting previously unselected package python3-py. +Preparing to unpack .../234-python3-py_1.7.0-2_all.deb ... +Unpacking python3-py (1.7.0-2) ... +Selecting previously unselected package python3-pytest. +Preparing to unpack .../235-python3-pytest_3.10.1-2_all.deb ... +Unpacking python3-pytest (3.10.1-2) ... +Selecting previously unselected package python3-scipy. +Preparing to unpack .../236-python3-scipy_1.1.0-7_amd64.deb ... +Unpacking python3-scipy (1.1.0-7) ... +Selecting previously unselected package python3-setuptools. +Preparing to unpack .../237-python3-setuptools_40.8.0-1_all.deb ... +Unpacking python3-setuptools (40.8.0-1) ... +Selecting previously unselected package python3-simplejson. +Preparing to unpack .../238-python3-simplejson_3.16.0-1_amd64.deb ... +Unpacking python3-simplejson (3.16.0-1) ... +Selecting previously unselected package python3-statsmodels-lib. +Preparing to unpack .../239-python3-statsmodels-lib_0.8.0-9_amd64.deb ... +Unpacking python3-statsmodels-lib (0.8.0-9) ... +Selecting previously unselected package python3-statsmodels. +Preparing to unpack .../240-python3-statsmodels_0.8.0-9_all.deb ... +Unpacking python3-statsmodels (0.8.0-9) ... +Selecting previously unselected package python3-tables-lib. +Preparing to unpack .../241-python3-tables-lib_3.4.4-2_amd64.deb ... +Unpacking python3-tables-lib (3.4.4-2) ... +Selecting previously unselected package python3-tables. +Preparing to unpack .../242-python3-tables_3.4.4-2_all.deb ... +Unpacking python3-tables (3.4.4-2) ... +Selecting previously unselected package python3-tk:amd64. +Preparing to unpack .../243-python3-tk_3.7.3-1_amd64.deb ... +Unpacking python3-tk:amd64 (3.7.3-1) ... +Selecting previously unselected package python3-wheel. +Preparing to unpack .../244-python3-wheel_0.32.3-2_all.deb ... +Unpacking python3-wheel (0.32.3-2) ... +Selecting previously unselected package python3-xdg. +Preparing to unpack .../245-python3-xdg_0.25-5_all.deb ... +Unpacking python3-xdg (0.25-5) ... +Selecting previously unselected package shared-mime-info. +Preparing to unpack .../246-shared-mime-info_1.10-1_amd64.deb ... +Unpacking shared-mime-info (1.10-1) ... +Selecting previously unselected package xdg-user-dirs. +Preparing to unpack .../247-xdg-user-dirs_0.17-2_amd64.deb ... +Unpacking xdg-user-dirs (0.17-2) ... +Setting up perl-modules-5.28 (5.28.1-6) ... +Setting up libksba8:amd64 (1.3.5-2) ... +Setting up javascript-common (11) ... +Setting up liblcms2-2:amd64 (2.9-3) ... +Setting up lsb-base (10.2019051400) ... +Setting up libxau6:amd64 (1:1.0.8-1+b2) ... +Setting up libkeyutils1:amd64 (1.6-6) ... +Setting up libapparmor1:amd64 (2.13.2-10) ... +Setting up ttf-bitstream-vera (1.10-8) ... +Setting up libsodium23:amd64 (1.0.17-1) ... +Setting up libgpm2:amd64 (1.20.7-5) ... +Setting up mime-support (3.62) ... +Setting up libgslcblas0:amd64 (2.5+dfsg-6) ... +Setting up xdg-user-dirs (0.17-2) ... +Setting up libmagic-mgc (1:5.35-4) ... +Setting up psmisc (23.2-1) ... +Setting up libyaml-0-2:amd64 (0.2.1-1) ... +Setting up libglib2.0-0:amd64 (2.58.3-2) ... +No schema files found: doing nothing. +Setting up manpages (4.16-2) ... +Setting up fonts-lyx (2.3.2-1) ... +Setting up libprocps7:amd64 (2:3.3.15-2) ... +Setting up libsqlite3-0:amd64 (3.27.2-3) ... +Setting up libsasl2-modules:amd64 (2.1.27+dfsg-1) ... +Setting up libnorm1:amd64 (1.5.8+dfsg2-1) ... +Setting up binutils-common:amd64 (2.31.1-16) ... +Setting up x11-common (1:7.7+19) ... +debconf: unable to initialize frontend: Dialog +debconf: (TERM is not set, so the dialog frontend is not usable.) +debconf: falling back to frontend: Readline +update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults +invoke-rc.d: could not determine current runlevel +invoke-rc.d: policy-rc.d denied execution of start. +Setting up libmagic1:amd64 (1:5.35-4) ... +Setting up linux-libc-dev:amd64 (4.19.37-5+deb10u1) ... +Setting up liblzo2-2:amd64 (2.10-0.1) ... +Setting up libnpth0:amd64 (1.6-1) ... +Setting up krb5-locales (1.17-3) ... +Setting up libmetis5:amd64 (5.1.0.dfsg-5+b2) ... +Setting up file (1:5.35-4) ... +Setting up libassuan0:amd64 (2.5.2-1) ... +Setting up libgomp1:amd64 (8.3.0-6) ... +Setting up bzip2 (1.0.6-9.1) ... +Setting up libldap-common (2.4.47+dfsg-3) ... +Setting up libjbig0:amd64 (2.1-3.1+b2) ... +Setting up libaec0:amd64 (1.0.2-1) ... +Setting up libicu63:amd64 (63.1-6) ... +Setting up libfakeroot:amd64 (1.23-1) ... +Setting up libsnappy1v5:amd64 (1.1.7-1) ... +Setting up libkrb5support0:amd64 (1.17-3) ... +Setting up libsasl2-modules-db:amd64 (2.1.27+dfsg-1) ... +Setting up fakeroot (1.23-1) ... +update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode +Setting up libasan5:amd64 (8.3.0-6) ... +Setting up libglib2.0-data (2.58.3-2) ... +Setting up libjpeg62-turbo:amd64 (1:1.5.2-2+b1) ... +Setting up libx11-data (2:1.6.7-1) ... +Setting up make (4.2.1-1.2) ... +Setting up libmpfr6:amd64 (4.0.2-1) ... +Setting up gnupg-l10n (2.2.12-1) ... +Setting up libgsl23:amd64 (2.5+dfsg-6) ... +Setting up libncurses6:amd64 (6.1+20181013-2) ... +Setting up libdbus-1-3:amd64 (1.12.16-1) ... +Setting up dbus (1.12.16-1) ... +invoke-rc.d: could not determine current runlevel +invoke-rc.d: policy-rc.d denied execution of start. +Setting up xz-utils (5.2.4-1) ... +update-alternatives: using /usr/bin/xz to provide /usr/bin/lzma (lzma) in auto mode +Setting up libquadmath0:amd64 (8.3.0-6) ... +Setting up libimagequant0:amd64 (2.12.2-1.1) ... +Setting up libpng16-16:amd64 (1.6.36-6) ... +Setting up libmpc3:amd64 (1.1.0-1) ... +Setting up libatomic1:amd64 (8.3.0-6) ... +Setting up patch (2.7.6-3) ... +Setting up libtcl8.6:amd64 (8.6.9+dfsg-2) ... +Setting up libwebp6:amd64 (0.6.1-2) ... +Setting up libk5crypto3:amd64 (1.17-3) ... +Setting up libltdl7:amd64 (2.4.6-9) ... +Setting up libfftw3-double3:amd64 (3.3.8-2) ... +Setting up libsasl2-2:amd64 (2.1.27+dfsg-1) ... +Setting up libgfortran5:amd64 (8.3.0-6) ... +Setting up libmpx2:amd64 (8.3.0-6) ... +Setting up libubsan1:amd64 (8.3.0-6) ... +Setting up libisl19:amd64 (0.20-2) ... +Setting up sensible-utils (0.0.12) ... +Setting up procps (2:3.3.15-2) ... +update-alternatives: using /usr/bin/w.procps to provide /usr/bin/w (w) in auto mode +Setting up liblua5.1-0:amd64 (5.1.5-8.1+b2) ... +Setting up libblosc1 (1.15.1+ds1-1) ... +Setting up libgirepository-1.0-1:amd64 (1.58.3-2) ... +Setting up netbase (5.6) ... +Setting up libkrb5-3:amd64 (1.17-3) ... +Setting up libtiff5:amd64 (4.0.10-4) ... +Setting up libmpdec2:amd64 (2.4.2-2) ... +Setting up pandoc-data (2.2.1-3) ... +Setting up libjs-jquery (3.3.1~dfsg-3) ... +Setting up libbinutils:amd64 (2.31.1-16) ... +Setting up cpp-8 (8.3.0-6) ... +Setting up libc-dev-bin (2.28-10) ... +Setting up python-matplotlib-data (3.0.2-2) ... +Setting up openssl (1.1.1c-1) ... +Setting up libwebpmux3:amd64 (0.6.1-2) ... +Setting up libbsd0:amd64 (0.9.1-2) ... +Setting up readline-common (7.0-5) ... +Setting up libxml2:amd64 (2.9.4+dfsg1-7+b3) ... +Setting up python-tables-data (3.4.4-2) ... +Setting up libsuitesparseconfig5:amd64 (1:5.4.0+dfsg-1) ... +Setting up libcc1-0:amd64 (8.3.0-6) ... +Setting up liblocale-gettext-perl (1.07-3+b4) ... +Setting up liblsan0:amd64 (8.3.0-6) ... +Setting up libsz2:amd64 (1.0.2-1) ... +Setting up libitm1:amd64 (8.3.0-6) ... +Setting up libreadline7:amd64 (7.0-5) ... +Setting up libpgm-5.2-0:amd64 (5.2.122~dfsg-3) ... +Setting up libgdbm6:amd64 (1.18.1-4) ... +Setting up gnupg-utils (2.2.12-1) ... +Setting up binutils-x86-64-linux-gnu (2.31.1-16) ... +Setting up libtsan0:amd64 (8.3.0-6) ... +Setting up pinentry-curses (1.1.0-2) ... +Setting up libamd2:amd64 (1:5.4.0+dfsg-1) ... +Setting up manpages-dev (4.16-2) ... +Setting up libxdmcp6:amd64 (1:1.1.2-3) ... +Setting up libpython3.7-stdlib:amd64 (3.7.3-2) ... +Setting up libxcb1:amd64 (1.13.1-2) ... +Setting up libcolamd2:amd64 (1:5.4.0+dfsg-1) ... +Setting up libpython3.7:amd64 (3.7.3-2) ... +Setting up libwebpdemux2:amd64 (0.6.1-2) ... +Setting up libldap-2.4-2:amd64 (2.4.47+dfsg-3) ... +Setting up binutils (2.31.1-16) ... +Setting up ca-certificates (20190110) ... +debconf: unable to initialize frontend: Dialog +debconf: (TERM is not set, so the dialog frontend is not usable.) +debconf: falling back to frontend: Readline +Updating certificates in /etc/ssl/certs... +128 added, 0 removed; done. +Setting up libcamd2:amd64 (1:5.4.0+dfsg-1) ... +Setting up libblas3:amd64 (3.8.0-2) ... +update-alternatives: using /usr/lib/x86_64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/x86_64-linux-gnu/libblas.so.3 (libblas.so.3-x86_64-linux-gnu) in auto mode +Setting up libjs-jquery-ui (1.12.1+dfsg-5) ... +Setting up pandoc (2.2.1-3+b2) ... +Setting up libfreetype6:amd64 (2.9.1-3) ... +Setting up libglpk40:amd64 (4.65-2) ... +Setting up libhdf5-103:amd64 (1.10.4+repack-10) ... +Setting up shared-mime-info (1.10-1) ... +Setting up libgssapi-krb5-2:amd64 (1.17-3) ... +Setting up libgdbm-compat4:amd64 (1.18.1-4) ... +Setting up ucf (3.0038+nmu1) ... +debconf: unable to initialize frontend: Dialog +debconf: (TERM is not set, so the dialog frontend is not usable.) +debconf: falling back to frontend: Readline +Setting up gir1.2-glib-2.0:amd64 (1.58.3-2) ... +Setting up libgcc-8-dev:amd64 (8.3.0-6) ... +Setting up libperl5.28:amd64 (5.28.1-6) ... +Setting up libccolamd2:amd64 (1:5.4.0+dfsg-1) ... +Setting up cpp (4:8.3.0-1) ... +Setting up libxslt1.1:amd64 (1.1.32-2) ... +Setting up gpgconf (2.2.12-1) ... +Setting up libc6-dev:amd64 (2.28-10) ... +Setting up libx11-6:amd64 (2:1.6.7-1) ... +Setting up python-pip-whl (18.1-5) ... +Setting up gpg (2.2.12-1) ... +Setting up libpython3-stdlib:amd64 (3.7.3-1) ... +Setting up libstdc++-8-dev:amd64 (8.3.0-6) ... +Setting up python3.7 (3.7.3-2) ... +Setting up liblapack3:amd64 (3.8.0-2) ... +update-alternatives: using /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/x86_64-linux-gnu/liblapack.so.3 (liblapack.so.3-x86_64-linux-gnu) in auto mode +Setting up gcc-8 (8.3.0-6) ... +Setting up gpg-agent (2.2.12-1) ... +Setting up libzmq5:amd64 (4.3.1-4+deb10u1) ... +Setting up libxrender1:amd64 (1:0.9.10-1) ... +Setting up fontconfig-config (2.13.1-2) ... +debconf: unable to initialize frontend: Dialog +debconf: (TERM is not set, so the dialog frontend is not usable.) +debconf: falling back to frontend: Readline +Setting up gpgsm (2.2.12-1) ... +Setting up libxext6:amd64 (2:1.3.3-1+b2) ... +Setting up python3 (3.7.3-1) ... +running python rtupdate hooks for python3.7... +running python post-rtupdate hooks for python3.7... +Setting up python3-pandocfilters (1.4.2-1) ... +Setting up python3-xdg (0.25-5) ... +Setting up python3-markupsafe (1.1.0-1) ... +Setting up python3-wheel (0.32.3-2) ... +Setting up python3-webencodings (0.5.1-1) ... +Setting up python3-psutil (5.5.1-1) ... +Setting up python3-tz (2019.1-1) ... +Setting up gcc (4:8.3.0-1) ... +Setting up python3-atomicwrites (1.1.5-2) ... +Setting up python3-six (1.12.0-1) ... +Setting up python3-simplejson (3.16.0-1) ... +Setting up dirmngr (2.2.12-1) ... +Setting up python3-pil:amd64 (5.4.1-2) ... +Setting up python3-decorator (4.3.0-1.1) ... +Setting up perl (5.28.1-6) ... +Setting up python3-jinja2 (2.10-2) ... +Setting up python3-pygments (2.3.1+dfsg-1) ... +Setting up libexpat1-dev:amd64 (2.2.6-2) ... +Setting up python3-wcwidth (0.1.7+dfsg1-3) ... +Setting up python3-pyparsing (2.2.0+dfsg1-2) ... +Setting up libdsdp-5.8gf (5.8-9.4) ... +Setting up python3-testpath (0.4.2+dfsg-1) ... +Setting up python3-zmq (17.1.2-2) ... +Setting up python3-gi (3.30.4-1) ... +Setting up python3-cycler (0.10.0-1) ... +Setting up python3-html5lib (1.0.1-1) ... +Setting up python3-pickleshare (0.7.5-1) ... +Setting up libdpkg-perl (1.19.7) ... +Setting up python3-pluggy (0.8.0-1) ... +Setting up gpg-wks-server (2.2.12-1) ... +Setting up g++-8 (8.3.0-6) ... +Setting up python3-lxml:amd64 (4.3.2-1) ... +Setting up python3-crypto (2.6.1-9+b1) ... +Setting up python3-dateutil (2.7.3-3) ... +Setting up libxss1:amd64 (1:1.2.3-1) ... +Setting up libfontconfig1:amd64 (2.13.1-2) ... +Setting up python3-simplegeneric (0.8.1-2) ... +Setting up python3-lib2to3 (3.7.3-1) ... +Setting up python3-mistune (0.8.4-1) ... +Setting up python3-asn1crypto (0.24.0-1) ... +Setting up python3-soupsieve (1.8+dfsg-1) ... +Setting up libcholmod3:amd64 (1:5.4.0+dfsg-1) ... +Setting up python3-cffi-backend (1.12.2-1) ... +Setting up python3-ptyprocess (0.6.0-1) ... +Setting up python3-pkg-resources (40.8.0-1) ... +Setting up python3-entrypoints (0.3-1) ... +Setting up python3-prompt-toolkit (1.0.15-1) ... +Setting up python3-distutils (3.7.3-1) ... +Setting up dh-python (3.20190308) ... +Setting up python3-more-itertools (4.2.0-1) ... +Setting up python3-attr (18.2.0-1) ... +Setting up python3-tornado (5.1.1-4) ... +Setting up python3-dbus (1.2.8-3) ... +Setting up libxft2:amd64 (2.3.2-2) ... +Setting up python3-setuptools (40.8.0-1) ... +Setting up gpg-wks-client (2.2.12-1) ... +Setting up python3-py (1.7.0-2) ... +Setting up python3-joblib (0.13.0-2) ... +Setting up libfile-fcntllock-perl (0.22-3+b5) ... +Setting up python3-defusedxml (0.5.0-2) ... +Setting up libalgorithm-diff-perl (1.19.03-2) ... +Setting up python3-ipython-genutils (0.2.0-1) ... +Setting up python3-pytest (3.10.1-2) ... +Setting up libpython3.7-dev:amd64 (3.7.3-2) ... +Setting up python3-olefile (0.46-1) ... +Setting up libtk8.6:amd64 (8.6.9-2) ... +Setting up python3.7-dev (3.7.3-2) ... +Setting up python3-bs4 (4.7.1-1) ... +Setting up dpkg-dev (1.19.7) ... +Setting up python3-bleach (3.1.0-1) ... +Setting up python3-chardet (3.0.4-3) ... +Setting up libumfpack5:amd64 (1:5.4.0+dfsg-1) ... +Setting up python3-jsonschema (2.6.0-4) ... +update-alternatives: using /usr/bin/python3-jsonschema to provide /usr/bin/jsonschema (jsonschema) in auto mode +Setting up python3-pexpect (4.6.0-1) ... +Setting up python3-cryptography (2.6.1-3) ... +Setting up python3-kiwisolver (1.0.1-2+b1) ... +Setting up python3-pip (18.1-5) ... +Setting up python3-numpy (1:1.16.2-1) ... +Setting up g++ (4:8.3.0-1) ... +update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode +Setting up python3-traitlets (4.3.2-1) ... +Setting up python3-keyrings.alt (3.1.1-1) ... +Setting up gnupg (2.2.12-1) ... +Setting up build-essential (12.6) ... +Setting up libalgorithm-diff-xs-perl (0.04-5+b1) ... +Setting up python3-statsmodels-lib (0.8.0-9) ... +Setting up python3-jupyter-core (4.4.0-2) ... +Setting up libalgorithm-merge-perl (0.08-3) ... +Setting up tk8.6-blt2.5 (2.5.3+dfsg-4) ... +Setting up python3-matplotlib (3.0.2-2) ... +Setting up python3-scipy (1.1.0-7) ... +Setting up libpython3-dev:amd64 (3.7.3-1) ... +Setting up python3-cvxopt (1.1.9+dfsg-3+b1) ... +Setting up python3-tables-lib (3.4.4-2) ... +Setting up blt (2.5.3+dfsg-4) ... +Setting up python3-pandas-lib (0.23.3+dfsg-3) ... +Setting up python3-tk:amd64 (3.7.3-1) ... +Setting up python3-nbformat (4.4.0-1) ... +Setting up python3-patsy (0.5.0+git13-g54dcf7b-1) ... +Setting up python3-pandas (0.23.3+dfsg-3) ... +Setting up python3-secretstorage (2.3.1-2) ... +Setting up python3-ipython (5.8.0-1) ... +Setting up python3-dev (3.7.3-1) ... +Setting up python3-numexpr (2.6.9-1) ... +Setting up python3-statsmodels (0.8.0-9) ... +Setting up python3-keyring (17.1.1-1) ... +Setting up python3-jupyter-client (5.2.3-1) ... +Setting up python3-tables (3.4.4-2) ... +Setting up python3-ipykernel (4.9.0-1) ... +Setting up python3-nbconvert (5.4-2) ... +Setting up jupyter-nbconvert (5.4-2) ... +Processing triggers for libc-bin (2.28-10) ... +Processing triggers for ca-certificates (20190110) ... +Updating certificates in /etc/ssl/certs... +0 added, 0 removed; done. +Running hooks in /etc/ca-certificates/update.d... +done. + ---> 9d49dddc5394 +Removing intermediate container e2a4b2e6b46b +Successfully built 9d49dddc5394 +#+end_example + +Je n'ai pas précisé de nom à mon image. Je le fais maintenant. +#+begin_src shell :results output :exports both +docker tag 9d49dddc5394 debian_stable_jupyter_dockerfile:latest +docker image ls +#+end_src + +#+RESULTS: +#+begin_example +REPOSITORY TAG IMAGE ID CREATED SIZE +debian_stable_jupyter_dockerfile latest 9d49dddc5394 4 minutes ago 960MB +debian_stable_jupyter latest 2b001b2c02a6 About an hour ago 962MB +simgrid-website latest 0f3727380ab6 13 days ago 1.19GB +debian stable 40e13c3c9aab 13 days ago 114MB +#+end_example + +Bon, l'environnement ainsi construit n'est pas rigoureusement +identique à celui que j'ai construit manuellement. Je vais vérifier +s'il me permet d'obtenir les mêmes résultats: + +#+begin_src shell :session *shell* :results output :exports both +cp notebook.ipynb notebook_docker_dockerfile.ipynb +docker run --volume=`pwd`:/tmp debian_stable_jupyter jupyter-nbconvert --to notebook --execute /tmp/notebook_docker_dockerfile.ipynb --output /tmp/notebook_docker_dockerfile.ipynb +docker run --volume=`pwd`:/tmp debian_stable_jupyter jupyter-nbconvert --to html /tmp/notebook_docker_dockerfile.ipynb +#+end_src + +#+RESULTS: +: +: [NbConvertApp] Converting notebook /tmp/notebook_docker_dockerfile.ipynb to notebook +: [NbConvertApp] Executing notebook with kernel: python3 +: [NbConvertApp] Writing 41346 bytes to /tmp/notebook_docker_dockerfile.ipynb +: [NbConvertApp] Converting notebook /tmp/notebook_docker_dockerfile.ipynb to html +: [NbConvertApp] Writing 317721 bytes to /tmp/notebook_docker_dockerfile.html + +#+begin_src shell :session *shell* :results output :exports both +ls -l +#+end_src + +#+RESULTS: +#+begin_example +total 1412 +-rw-r--r-- 1 alegrand alegrand 305302 Jul 23 09:20 notebook.html +-rw-r--r-- 1 alegrand alegrand 41019 Jul 23 09:19 notebook.ipynb +-rw-r--r-- 1 root root 317832 Jul 23 10:10 notebook_docker.html +-rw-r--r-- 1 alegrand alegrand 41473 Jul 23 10:10 notebook_docker.ipynb +-rw-r--r-- 1 root root 317843 Jul 23 11:13 notebook_docker_dockerfile.html +-rw-r--r-- 1 alegrand alegrand 41473 Jul 23 11:13 notebook_docker_dockerfile.ipynb +-rw-r--r-- 1 alegrand alegrand 305805 Jul 23 09:21 notebook_rerun.html +-rw-r--r-- 1 alegrand alegrand 41473 Jul 23 09:21 notebook_rerun.ipynb +-rw-r--r-- 1 alegrand alegrand 485 Jul 23 09:19 shuttle.csv +#+end_example + +Ah, au moins, cette fois-ci, les deux derniers notebooks +=notebook_docker_dockerfile.ipynb= et =notebook_docker.ipynb= ont la même +taille. + +#+begin_src shell :session *shell* :results output :exports both +diff notebook_docker.ipynb notebook_docker_dockerfile.ipynb # | sed 's/^/>/' +#+end_src + +#+RESULTS: +: +: 538c538 +: < " Time: 08:10:00 Pearson chi2: 0.236 \n", +: --- +: > " Time: 09:13:51 Pearson chi2: 0.236 \n", +: 567c567 +: < "Time: 08:10:00 Pearson chi2: 0.236\n", +: --- +: > "Time: 09:13:51 Pearson chi2: 0.236\n", + +Ouf, cette fois-ci, il n'y a plus que la date qui ait changé. +** Mise à disposition de mon image +Reste à publier mon image. Je me suis créé un compte sur dockerhub +afin de pouvoir y publier des images (vous pouvez aussi vous +authentifier via github). Une fois que vous aurez votre login et votre +mot de passe, il vous faudra les fournir au docker de votre machine +via cette commande: +# https://docs.docker.com/engine/reference/commandline/push/ + +#+begin_src shell :session *shell* :results output :exports both +docker login # login: alegrand38 passwd: XXXXXXXXXXX +#+end_src + +Il vous faudra ensuite donner à votre image docker le nom qui +apparaîtra sur dockerhub. Je choisis ici mon login suivi de +=moocrr_jupyter=: +#+begin_src shell :session *shell* :results output :exports both +docker tag debian_stable_jupyter_dockerfile alegrand38/moocrr_jupyter +#+end_src + +#+RESULTS: + +Je peux enfin publier mon image (attention, si vous êtes derrière une +connexion ADSL, c'est long!): +#+begin_src shell :results output :exports both +docker push alegrand38/moocrr_jupyter +#+end_src + +#+RESULTS: +#+begin_example +The push refers to a repository [docker.io/alegrand38/moocrr_jupyter] +92d1efe6875b: Pushing [=====================================> ] 638.8MB/846.4MB +92d1efe6875b: Pushed + +latest: digest: sha256:310d1018e5bfb831aa429b58d9b4073e68200c644ae92de1bc5e7f24ac6e6dd3 size: 742 +#+end_example + +Vous pouvez remarquer que deux "images" ont été poussées: une petite +de 200MB et une grosse de 846MB. La première correspond à l'image de +base que nous avons utilisée et la seconde à ce qui a été +rajouté/modifié à la suite de notre mise à jour et de l'installation +de python et de jupyter. + +Vos collègues peuvent maintenant récupérer cette image sans problème +et la réutiliser. +* Tester que votre code s'exécute correctement ailleurs que sur votre machine. +Je montrerais ensuite CI (sur la branche master) et comment utiliser +ces commandes pour que l'image soit capable d'exécuter notre notebook. + +https://docs.gitlab.com/ee/ci/quick_start/ + +** Création d'un projet test et mise en place de l'intégration continue +Je commence par créer un projet jouet sur gitlab, que je clone ensuite +sur mon disque. +#+begin_src shell :results output :exports both +git clone git@gitlab.inria.fr:learninglab/mooc-rr/test_jupyter.git +#+end_src + +#+RESULTS: + +#+begin_src shell :results output :exports both +ls test_jupyter/ +#+end_src + +#+RESULTS: +: README.md + +Parfait, maintenant, nous mettons à la racine de ce dépot une fichier +=.gitlab-ci.yml= qui va partir d'une image docker et effectuer une série +de commandes. + +#+begin_src shell :results output :exports both :tangle test_jupyter/.gitlab-ci.yml.old +image: "debian:stable" + +before_script: + - perl -v + - which perl + +perl_addition: + script: + - perl -e "print(3+2);" + +perl_multiplication: + script: + - perl -e "print(3*2);" +#+end_src + +#+begin_src shell :results output :exports both +cd test_jupyter +git add .gitlab-ci.yml +git commit -m "Adding a gitlab-ci file" +git push +#+end_src + +#+RESULTS: +: [master b74a444] Adding a gitlab-ci file +: 1 file changed, 13 insertions(+) +: create mode 100644 .gitlab-ci.yml + + +On peut ensuite aller sur la page des commits: +- https://gitlab.inria.fr/learninglab/mooc-rr/test_jupyter/commits/ +- https://gitlab.inria.fr/learninglab/mooc-rr/test_jupyter/commit/b74a444042bf081cf72b12b932494702d11d0299/pipelines?ref=master + + +** Et maintenant, Jupyter avec notre image docker! +Copions notre notebook et ses données dans notre projet: + +#+begin_src shell :results output :exports both +cd test_jupyter/ +cp ../mooc_docker/notebook.ipynb ../mooc_docker/shuttle.csv ./ +git add notebook.ipynb shuttle.csv +git commit -m "Adding a jupyter notebook" +git push +#+end_src + +#+RESULTS: +: [master cd67d8b] Adding a jupyter notebook +: 2 files changed, 737 insertions(+) +: create mode 100644 notebook.ipynb +: create mode 100644 shuttle.csv + +Changeons le docker file. + +#+begin_src shell :results output :exports both :tangle test_jupyter/.gitlab-ci.yml.old2 +image: "debian:stable" + +before_script: + - apt-get update && apt-get install -y python3 jupyter-nbconvert python3-ipykernel python3-matplotlib python3-pandas python3-numpy python3-statsmodels + - python3 --version + - jupyter-nbconvert --version + +jupyter: + script: + - jupyter-nbconvert --to notebook --execute notebook.ipynb --output notebook.ipynb + - jupyter-nbconvert --to html notebook.ipynb +#+end_src + +#+begin_src shell :results output :exports both +cd test_jupyter +git add .gitlab-ci.yml +git commit -m "Updating gitlab-ci file for Jupyter" +git push +#+end_src + +#+RESULTS: +: [master 0b796ae] Updating gitlab-ci file for Jupyter +: 1 file changed, 1 insertion(+), 4 deletions(-) + +Problème, en faisant cela à chaque fois, c'est: + A. Très lent (au moindre commit de correction orthographique), on + fait télécharger des tonnes de paquets. + B. Pas stable puisqu'on reconstruit sans rien maîtriser. + +Une meilleur solution: +#+begin_src shell :results output :exports both :tangle test_jupyter/.gitlab-ci.yml +jupyter_frozen: + image: "alegrand38/moocrr_jupyter" + before_script: + - python3 --version + - jupyter-nbconvert --version + script: + - jupyter-nbconvert --to notebook --execute notebook.ipynb --output notebook.ipynb + - jupyter-nbconvert --to html notebook.ipynb + +jupyter_uptodate: + image: "debian:stable" + before_script: + - apt-get update && apt-get install -y python3 jupyter-nbconvert python3-ipykernel python3-matplotlib python3-pandas python3-numpy python3-statsmodels + - python3 --version + - jupyter-nbconvert --version + script: + - jupyter-nbconvert --to notebook --execute notebook.ipynb --output notebook.ipynb + - jupyter-nbconvert --to html notebook.ipynb +#+end_src + +#+begin_src shell :results output :exports both +cd test_jupyter +git add .gitlab-ci.yml +git commit -m "Updating gitlab-ci file for Jupyter" +git push +#+end_src + +#+RESULTS: +: [master a84baef] Updating gitlab-ci file for Jupyter +: 1 file changed, 4 insertions(+), 5 deletions(-) + + +Première chose à faire: activer l'intégration continue: +- https://gitlab.inria.fr/learninglab/mooc-rr/test_jupyter/edit + (Settings/General/Permissions) +- Passer par le container registry de gitlab ? + +Puis: https://gitlab.inria.fr/alegrand/test_jupyter/pipelines +- Mais https://gitlab.inria.fr/alegrand/test_jupyter/pipelines/88234: + stuck car pas de runner configuré. +- https://gitlab.inria.fr/alegrand/test_jupyter/-/settings/ci_cd + (Settings/CI-CD) + - Shared runners are disabled for the INRIA Gitlab instance. + +* Améliorer le test + Je peux alors montrer (a) comment utiliser l'environnement figé pour + s'assurer que nos propres modifications du notebook n'ont rien cassé + et (b) comment utiliser l'environnement qui se met à jour + régulièrement pour s'assurer que l'évolution de l'extérieur ne remet + pas en cause nos résultats. +* Aller plus loin +7. Enfin, pour s'occuper du point (B) sans passer par un docker + build/push manuel, je montrerais comment (sur une debian, par + exemple) améliorer le dockerfile afin d'expliciter les numéros de + version et de figer les sources des paquets. Tout est alors + explicite, figé, et construit sur une autre machine, ce qui ne + garantie rien mais renforce les chances que quelqu'un d'autre arrive + à reproduire cet environnement. Ça ouvre la voie à nix/guix qui + permettent d'expliciter finement tout ça mais dont je maîtrise mal + l'interaction avec docker. Mais je demanderai aux Nixiens autour de + moi ou à Ludovic Courtes. + +Une fois le push effectué, une information bien plus précise que le +dockerfile: + +#+begin_src shell :results output :exports both +docker run alegrand38/moocrr_jupyter dpkg --list +#+end_src + +#+RESULTS: +#+begin_example +Desired=Unknown/Install/Remove/Purge/Hold +| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend +|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) +||/ Name Version Architecture Description ++++-===========================-======================-============-=============================================================================== +ii adduser 3.118 all add and remove users and groups +ii apt 1.8.2 amd64 commandline package manager +ii base-files 10.3 amd64 Debian base system miscellaneous files +ii base-passwd 3.5.46 amd64 Debian base system master password and group files +ii bash 5.0-4 amd64 GNU Bourne Again SHell +ii binutils 2.31.1-16 amd64 GNU assembler, linker and binary utilities +ii binutils-common:amd64 2.31.1-16 amd64 Common files for the GNU assembler, linker and binary utilities +ii binutils-x86-64-linux-gnu 2.31.1-16 amd64 GNU binary utilities, for x86-64-linux-gnu target +ii blt 2.5.3+dfsg-4 amd64 graphics extension library for Tcl/Tk - run-time +ii bsdutils 1:2.33.1-0.1 amd64 basic utilities from 4.4BSD-Lite +ii build-essential 12.6 amd64 Informational list of build-essential packages +ii bzip2 1.0.6-9.1 amd64 high-quality block-sorting file compressor - utilities +ii ca-certificates 20190110 all Common CA certificates +ii coreutils 8.30-3 amd64 GNU core utilities +ii cpp 4:8.3.0-1 amd64 GNU C preprocessor (cpp) +ii cpp-8 8.3.0-6 amd64 GNU C preprocessor +ii dash 0.5.10.2-5 amd64 POSIX-compliant shell +ii dbus 1.12.16-1 amd64 simple interprocess messaging system (daemon and utilities) +ii debconf 1.5.71 all Debian configuration management system +ii debian-archive-keyring 2019.1 all GnuPG archive keys of the Debian archive +ii debianutils 4.8.6.1 amd64 Miscellaneous utilities specific to Debian +ii dh-python 3.20190308 all Debian helper tools for packaging Python libraries and applications +ii diffutils 1:3.7-3 amd64 File comparison utilities +ii dirmngr 2.2.12-1 amd64 GNU privacy guard - network certificate management service +ii dpkg 1.19.7 amd64 Debian package management system +ii dpkg-dev 1.19.7 all Debian package development tools +ii e2fsprogs 1.44.5-1 amd64 ext2/ext3/ext4 file system utilities +ii fakeroot 1.23-1 amd64 tool for simulating superuser privileges +ii fdisk 2.33.1-0.1 amd64 collection of partitioning utilities +ii file 1:5.35-4 amd64 Recognize the type of data in a file using "magic" numbers +ii findutils 4.6.0+git+20190209-2 amd64 utilities for finding files--find, xargs +ii fontconfig-config 2.13.1-2 all generic font configuration library - configuration +ii fonts-lyx 2.3.2-1 all TrueType versions of some TeX fonts used by LyX +ii g++ 4:8.3.0-1 amd64 GNU C++ compiler +ii g++-8 8.3.0-6 amd64 GNU C++ compiler +ii gcc 4:8.3.0-1 amd64 GNU C compiler +ii gcc-8 8.3.0-6 amd64 GNU C compiler +ii gcc-8-base:amd64 8.3.0-6 amd64 GCC, the GNU Compiler Collection (base package) +ii gir1.2-glib-2.0:amd64 1.58.3-2 amd64 Introspection data for GLib, GObject, Gio and GModule +ii gnupg 2.2.12-1 all GNU privacy guard - a free PGP replacement +ii gnupg-l10n 2.2.12-1 all GNU privacy guard - localization files +ii gnupg-utils 2.2.12-1 amd64 GNU privacy guard - utility programs +ii gpg 2.2.12-1 amd64 GNU Privacy Guard -- minimalist public key operations +ii gpg-agent 2.2.12-1 amd64 GNU privacy guard - cryptographic agent +ii gpg-wks-client 2.2.12-1 amd64 GNU privacy guard - Web Key Service client +ii gpg-wks-server 2.2.12-1 amd64 GNU privacy guard - Web Key Service server +ii gpgconf 2.2.12-1 amd64 GNU privacy guard - core configuration utilities +ii gpgsm 2.2.12-1 amd64 GNU privacy guard - S/MIME version +ii gpgv 2.2.12-1 amd64 GNU privacy guard - signature verification tool +ii grep 3.3-1 amd64 GNU grep, egrep and fgrep +ii gzip 1.9-3 amd64 GNU compression utilities +ii hostname 3.21 amd64 utility to set/show the host name or domain name +ii init-system-helpers 1.56+nmu1 all helper tools for all init systems +ii iproute2 4.20.0-2 amd64 networking and traffic control tools +ii iputils-ping 3:20180629-2 amd64 Tools to test the reachability of network hosts +ii javascript-common 11 all Base support for JavaScript library packages +ii jupyter-nbconvert 5.4-2 all Jupyter notebook conversion (scripts) +ii krb5-locales 1.17-3 all internationalization support for MIT Kerberos +ii libacl1:amd64 2.2.53-4 amd64 access control list - shared library +ii libaec0:amd64 1.0.2-1 amd64 Adaptive Entropy Coding library +ii libalgorithm-diff-perl 1.19.03-2 all module to find differences between files +ii libalgorithm-diff-xs-perl 0.04-5+b1 amd64 module to find differences between files (XS accelerated) +ii libalgorithm-merge-perl 0.08-3 all Perl module for three-way merge of textual data +ii libamd2:amd64 1:5.4.0+dfsg-1 amd64 approximate minimum degree ordering library for sparse matrices +ii libapparmor1:amd64 2.13.2-10 amd64 changehat AppArmor library +ii libapt-pkg5.0:amd64 1.8.2 amd64 package management runtime library +ii libasan5:amd64 8.3.0-6 amd64 AddressSanitizer -- a fast memory error detector +ii libassuan0:amd64 2.5.2-1 amd64 IPC library for the GnuPG components +ii libatomic1:amd64 8.3.0-6 amd64 support library providing __atomic built-in functions +ii libattr1:amd64 1:2.4.48-4 amd64 extended attribute handling - shared library +ii libaudit-common 1:2.8.4-3 all Dynamic library for security auditing - common files +ii libaudit1:amd64 1:2.8.4-3 amd64 Dynamic library for security auditing +ii libbinutils:amd64 2.31.1-16 amd64 GNU binary utilities (private shared library) +ii libblas3:amd64 3.8.0-2 amd64 Basic Linear Algebra Reference implementations, shared library +ii libblkid1:amd64 2.33.1-0.1 amd64 block device ID library +ii libblosc1 1.15.1+ds1-1 amd64 high performance meta-compressor optimized for binary data +ii libbsd0:amd64 0.9.1-2 amd64 utility functions from BSD systems - shared library +ii libbz2-1.0:amd64 1.0.6-9.1 amd64 high-quality block-sorting file compressor library - runtime +ii libc-bin 2.28-10 amd64 GNU C Library: Binaries +ii libc-dev-bin 2.28-10 amd64 GNU C Library: Development binaries +ii libc6:amd64 2.28-10 amd64 GNU C Library: Shared libraries +ii libc6-dev:amd64 2.28-10 amd64 GNU C Library: Development Libraries and Header Files +ii libcamd2:amd64 1:5.4.0+dfsg-1 amd64 symmetric approximate minimum degree library for sparse matrices +ii libcap-ng0:amd64 0.7.9-2 amd64 An alternate POSIX capabilities library +ii libcap2:amd64 1:2.25-2 amd64 POSIX 1003.1e capabilities (library) +ii libcap2-bin 1:2.25-2 amd64 POSIX 1003.1e capabilities (utilities) +ii libcc1-0:amd64 8.3.0-6 amd64 GCC cc1 plugin for GDB +ii libccolamd2:amd64 1:5.4.0+dfsg-1 amd64 constrained column approximate library for sparse matrices +ii libcholmod3:amd64 1:5.4.0+dfsg-1 amd64 sparse Cholesky factorization library for sparse matrices +ii libcolamd2:amd64 1:5.4.0+dfsg-1 amd64 column approximate minimum degree ordering library for sparse matrices +ii libcom-err2:amd64 1.44.5-1 amd64 common error description library +ii libdb5.3:amd64 5.3.28+dfsg1-0.5 amd64 Berkeley v5.3 Database Libraries [runtime] +ii libdbus-1-3:amd64 1.12.16-1 amd64 simple interprocess messaging system (library) +ii libdebconfclient0:amd64 0.249 amd64 Debian Configuration Management System (C-implementation library) +ii libdpkg-perl 1.19.7 all Dpkg perl modules +ii libdsdp-5.8gf 5.8-9.4 amd64 Software for Semidefinite Programming +ii libelf1:amd64 0.176-1.1 amd64 library to read and write ELF files +ii libexpat1:amd64 2.2.6-2 amd64 XML parsing C library - runtime library +ii libexpat1-dev:amd64 2.2.6-2 amd64 XML parsing C library - development kit +ii libext2fs2:amd64 1.44.5-1 amd64 ext2/ext3/ext4 file system libraries +ii libfakeroot:amd64 1.23-1 amd64 tool for simulating superuser privileges - shared libraries +ii libfdisk1:amd64 2.33.1-0.1 amd64 fdisk partitioning library +ii libffi6:amd64 3.2.1-9 amd64 Foreign Function Interface library runtime +ii libfftw3-double3:amd64 3.3.8-2 amd64 Library for computing Fast Fourier Transforms - Double precision +ii libfile-fcntllock-perl 0.22-3+b5 amd64 Perl module for file locking with fcntl(2) +ii libfontconfig1:amd64 2.13.1-2 amd64 generic font configuration library - runtime +ii libfreetype6:amd64 2.9.1-3 amd64 FreeType 2 font engine, shared library files +ii libgcc-8-dev:amd64 8.3.0-6 amd64 GCC support library (development files) +ii libgcc1:amd64 1:8.3.0-6 amd64 GCC support library +ii libgcrypt20:amd64 1.8.4-5 amd64 LGPL Crypto library - runtime library +ii libgdbm-compat4:amd64 1.18.1-4 amd64 GNU dbm database routines (legacy support runtime version) +ii libgdbm6:amd64 1.18.1-4 amd64 GNU dbm database routines (runtime version) +ii libgfortran5:amd64 8.3.0-6 amd64 Runtime library for GNU Fortran applications +ii libgirepository-1.0-1:amd64 1.58.3-2 amd64 Library for handling GObject introspection data (runtime library) +ii libglib2.0-0:amd64 2.58.3-2 amd64 GLib library of C routines +ii libglib2.0-data 2.58.3-2 all Common files for GLib library +ii libglpk40:amd64 4.65-2 amd64 linear programming kit with integer (MIP) support +ii libgmp10:amd64 2:6.1.2+dfsg-4 amd64 Multiprecision arithmetic library +ii libgnutls30:amd64 3.6.7-4 amd64 GNU TLS library - main runtime library +ii libgomp1:amd64 8.3.0-6 amd64 GCC OpenMP (GOMP) support library +ii libgpg-error0:amd64 1.35-1 amd64 GnuPG development runtime library +ii libgpm2:amd64 1.20.7-5 amd64 General Purpose Mouse - shared library +ii libgsl23:amd64 2.5+dfsg-6 amd64 GNU Scientific Library (GSL) -- library package +ii libgslcblas0:amd64 2.5+dfsg-6 amd64 GNU Scientific Library (GSL) -- blas library package +ii libgssapi-krb5-2:amd64 1.17-3 amd64 MIT Kerberos runtime libraries - krb5 GSS-API Mechanism +ii libhdf5-103:amd64 1.10.4+repack-10 amd64 Hierarchical Data Format 5 (HDF5) - runtime files - serial version +ii libhogweed4:amd64 3.4.1-1 amd64 low level cryptographic library (public-key cryptos) +ii libicu63:amd64 63.1-6 amd64 International Components for Unicode +ii libidn2-0:amd64 2.0.5-1 amd64 Internationalized domain names (IDNA2008/TR46) library +ii libimagequant0:amd64 2.12.2-1.1 amd64 palette quantization library +ii libisl19:amd64 0.20-2 amd64 manipulating sets and relations of integer points bounded by linear constraints +ii libitm1:amd64 8.3.0-6 amd64 GNU Transactional Memory Library +ii libjbig0:amd64 2.1-3.1+b2 amd64 JBIGkit libraries +ii libjpeg62-turbo:amd64 1:1.5.2-2+b1 amd64 libjpeg-turbo JPEG runtime library +ii libjs-jquery 3.3.1~dfsg-3 all JavaScript library for dynamic web applications +ii libjs-jquery-ui 1.12.1+dfsg-5 all JavaScript UI library for dynamic web applications +ii libk5crypto3:amd64 1.17-3 amd64 MIT Kerberos runtime libraries - Crypto Library +ii libkeyutils1:amd64 1.6-6 amd64 Linux Key Management Utilities (library) +ii libkrb5-3:amd64 1.17-3 amd64 MIT Kerberos runtime libraries +ii libkrb5support0:amd64 1.17-3 amd64 MIT Kerberos runtime libraries - Support library +ii libksba8:amd64 1.3.5-2 amd64 X.509 and CMS support library +ii liblapack3:amd64 3.8.0-2 amd64 Library of linear algebra routines 3 - shared version +ii liblcms2-2:amd64 2.9-3 amd64 Little CMS 2 color management library +ii libldap-2.4-2:amd64 2.4.47+dfsg-3 amd64 OpenLDAP libraries +ii libldap-common 2.4.47+dfsg-3 all OpenLDAP common files for libraries +ii liblocale-gettext-perl 1.07-3+b4 amd64 module using libc functions for internationalization in Perl +ii liblsan0:amd64 8.3.0-6 amd64 LeakSanitizer -- a memory leak detector (runtime) +ii libltdl7:amd64 2.4.6-9 amd64 System independent dlopen wrapper for GNU libtool +ii liblua5.1-0:amd64 5.1.5-8.1+b2 amd64 Shared library for the Lua interpreter version 5.1 +ii liblz4-1:amd64 1.8.3-1 amd64 Fast LZ compression algorithm library - runtime +ii liblzma5:amd64 5.2.4-1 amd64 XZ-format compression library +ii liblzo2-2:amd64 2.10-0.1 amd64 data compression library +ii libmagic-mgc 1:5.35-4 amd64 File type determination library using "magic" numbers (compiled magic file) +ii libmagic1:amd64 1:5.35-4 amd64 Recognize the type of data in a file using "magic" numbers - library +ii libmetis5:amd64 5.1.0.dfsg-5+b2 amd64 Serial Graph Partitioning and Fill-reducing Matrix Ordering +ii libmnl0:amd64 1.0.4-2 amd64 minimalistic Netlink communication library +ii libmount1:amd64 2.33.1-0.1 amd64 device mounting library +ii libmpc3:amd64 1.1.0-1 amd64 multiple precision complex floating-point library +ii libmpdec2:amd64 2.4.2-2 amd64 library for decimal floating point arithmetic (runtime library) +ii libmpfr6:amd64 4.0.2-1 amd64 multiple precision floating-point computation +ii libmpx2:amd64 8.3.0-6 amd64 Intel memory protection extensions (runtime) +ii libncurses6:amd64 6.1+20181013-2 amd64 shared libraries for terminal handling +ii libncursesw6:amd64 6.1+20181013-2 amd64 shared libraries for terminal handling (wide character support) +ii libnettle6:amd64 3.4.1-1 amd64 low level cryptographic library (symmetric and one-way cryptos) +ii libnorm1:amd64 1.5.8+dfsg2-1 amd64 NACK-Oriented Reliable Multicast (NORM) library +ii libnpth0:amd64 1.6-1 amd64 replacement for GNU Pth using system threads +ii libp11-kit0:amd64 0.23.15-2 amd64 library for loading and coordinating access to PKCS#11 modules - runtime +ii libpam-modules:amd64 1.3.1-5 amd64 Pluggable Authentication Modules for PAM +ii libpam-modules-bin 1.3.1-5 amd64 Pluggable Authentication Modules for PAM - helper binaries +ii libpam-runtime 1.3.1-5 all Runtime support for the PAM library +ii libpam0g:amd64 1.3.1-5 amd64 Pluggable Authentication Modules library +ii libpcre3:amd64 2:8.39-12 amd64 Old Perl 5 Compatible Regular Expression Library - runtime files +ii libperl5.28:amd64 5.28.1-6 amd64 shared Perl library +ii libpgm-5.2-0:amd64 5.2.122~dfsg-3 amd64 OpenPGM shared library +ii libpng16-16:amd64 1.6.36-6 amd64 PNG library - runtime (version 1.6) +ii libprocps7:amd64 2:3.3.15-2 amd64 library for accessing process information from /proc +ii libpython3-dev:amd64 3.7.3-1 amd64 header files and a static library for Python (default) +ii libpython3-stdlib:amd64 3.7.3-1 amd64 interactive high-level object-oriented language (default python3 version) +ii libpython3.7:amd64 3.7.3-2 amd64 Shared Python runtime library (version 3.7) +ii libpython3.7-dev:amd64 3.7.3-2 amd64 Header files and a static library for Python (v3.7) +ii libpython3.7-minimal:amd64 3.7.3-2 amd64 Minimal subset of the Python language (version 3.7) +ii libpython3.7-stdlib:amd64 3.7.3-2 amd64 Interactive high-level object-oriented language (standard library, version 3.7) +ii libquadmath0:amd64 8.3.0-6 amd64 GCC Quad-Precision Math Library +ii libreadline7:amd64 7.0-5 amd64 GNU readline and history libraries, run-time libraries +ii libsasl2-2:amd64 2.1.27+dfsg-1 amd64 Cyrus SASL - authentication abstraction library +ii libsasl2-modules:amd64 2.1.27+dfsg-1 amd64 Cyrus SASL - pluggable authentication modules +ii libsasl2-modules-db:amd64 2.1.27+dfsg-1 amd64 Cyrus SASL - pluggable authentication modules (DB) +ii libseccomp2:amd64 2.3.3-4 amd64 high level interface to Linux seccomp filter +ii libselinux1:amd64 2.8-1+b1 amd64 SELinux runtime shared libraries +ii libsemanage-common 2.8-2 all Common files for SELinux policy management libraries +ii libsemanage1:amd64 2.8-2 amd64 SELinux policy management library +ii libsepol1:amd64 2.8-1 amd64 SELinux library for manipulating binary security policies +ii libsmartcols1:amd64 2.33.1-0.1 amd64 smart column output alignment library +ii libsnappy1v5:amd64 1.1.7-1 amd64 fast compression/decompression library +ii libsodium23:amd64 1.0.17-1 amd64 Network communication, cryptography and signaturing library +ii libsqlite3-0:amd64 3.27.2-3 amd64 SQLite 3 shared library +ii libss2:amd64 1.44.5-1 amd64 command-line interface parsing library +ii libssl1.1:amd64 1.1.1c-1 amd64 Secure Sockets Layer toolkit - shared libraries +ii libstdc++-8-dev:amd64 8.3.0-6 amd64 GNU Standard C++ Library v3 (development files) +ii libstdc++6:amd64 8.3.0-6 amd64 GNU Standard C++ Library v3 +ii libsuitesparseconfig5:amd64 1:5.4.0+dfsg-1 amd64 configuration routines for all SuiteSparse modules +ii libsystemd0:amd64 241-5 amd64 systemd utility library +ii libsz2:amd64 1.0.2-1 amd64 Adaptive Entropy Coding library - SZIP +ii libtasn1-6:amd64 4.13-3 amd64 Manage ASN.1 structures (runtime) +ii libtcl8.6:amd64 8.6.9+dfsg-2 amd64 Tcl (the Tool Command Language) v8.6 - run-time library files +ii libtiff5:amd64 4.0.10-4 amd64 Tag Image File Format (TIFF) library +ii libtinfo6:amd64 6.1+20181013-2 amd64 shared low-level terminfo library for terminal handling +ii libtk8.6:amd64 8.6.9-2 amd64 Tk toolkit for Tcl and X11 v8.6 - run-time files +ii libtsan0:amd64 8.3.0-6 amd64 ThreadSanitizer -- a Valgrind-based detector of data races (runtime) +ii libubsan1:amd64 8.3.0-6 amd64 UBSan -- undefined behaviour sanitizer (runtime) +ii libudev1:amd64 241-5 amd64 libudev shared library +ii libumfpack5:amd64 1:5.4.0+dfsg-1 amd64 sparse LU factorization library +ii libunistring2:amd64 0.9.10-1 amd64 Unicode string library for C +ii libuuid1:amd64 2.33.1-0.1 amd64 Universally Unique ID library +ii libwebp6:amd64 0.6.1-2 amd64 Lossy compression of digital photographic images. +ii libwebpdemux2:amd64 0.6.1-2 amd64 Lossy compression of digital photographic images. +ii libwebpmux3:amd64 0.6.1-2 amd64 Lossy compression of digital photographic images. +ii libx11-6:amd64 2:1.6.7-1 amd64 X11 client-side library +ii libx11-data 2:1.6.7-1 all X11 client-side library +ii libxau6:amd64 1:1.0.8-1+b2 amd64 X11 authorisation library +ii libxcb1:amd64 1.13.1-2 amd64 X C Binding +ii libxdmcp6:amd64 1:1.1.2-3 amd64 X11 Display Manager Control Protocol library +ii libxext6:amd64 2:1.3.3-1+b2 amd64 X11 miscellaneous extension library +ii libxft2:amd64 2.3.2-2 amd64 FreeType-based font drawing library for X +ii libxml2:amd64 2.9.4+dfsg1-7+b3 amd64 GNOME XML library +ii libxrender1:amd64 1:0.9.10-1 amd64 X Rendering Extension client library +ii libxslt1.1:amd64 1.1.32-2 amd64 XSLT 1.0 processing library - runtime library +ii libxss1:amd64 1:1.2.3-1 amd64 X11 Screen Saver extension library +ii libxtables12:amd64 1.8.2-4 amd64 netfilter xtables library +ii libyaml-0-2:amd64 0.2.1-1 amd64 Fast YAML 1.1 parser and emitter library +ii libzmq5:amd64 4.3.1-4+deb10u1 amd64 lightweight messaging kernel (shared library) +ii libzstd1:amd64 1.3.8+dfsg-3 amd64 fast lossless compression algorithm +ii linux-libc-dev:amd64 4.19.37-5+deb10u1 amd64 Linux support headers for userspace development +ii login 1:4.5-1.1 amd64 system login tools +ii lsb-base 10.2019051400 all Linux Standard Base init script functionality +ii make 4.2.1-1.2 amd64 utility for directing compilation +ii manpages 4.16-2 all Manual pages about using a GNU/Linux system +ii manpages-dev 4.16-2 all Manual pages about using GNU/Linux for development +ii mawk 1.3.3-17+b3 amd64 a pattern scanning and text processing language +ii mime-support 3.62 all MIME files 'mime.types' & 'mailcap', and support programs +ii mount 2.33.1-0.1 amd64 tools for mounting and manipulating filesystems +ii ncurses-base 6.1+20181013-2 all basic terminal type definitions +ii ncurses-bin 6.1+20181013-2 amd64 terminal-related programs and man pages +ii netbase 5.6 all Basic TCP/IP networking system +ii openssl 1.1.1c-1 amd64 Secure Sockets Layer toolkit - cryptographic utility +ii pandoc 2.2.1-3+b2 amd64 general markup converter +ii pandoc-data 2.2.1-3 all general markup converter - data files +ii passwd 1:4.5-1.1 amd64 change and administer password and group data +ii patch 2.7.6-3 amd64 Apply a diff file to an original +ii perl 5.28.1-6 amd64 Larry Wall's Practical Extraction and Report Language +ii perl-base 5.28.1-6 amd64 minimal Perl system +ii perl-modules-5.28 5.28.1-6 all Core Perl modules +ii pinentry-curses 1.1.0-2 amd64 curses-based PIN or pass-phrase entry dialog for GnuPG +ii procps 2:3.3.15-2 amd64 /proc file system utilities +ii psmisc 23.2-1 amd64 utilities that use the proc file system +ii python-matplotlib-data 3.0.2-2 all Python based plotting system (data package) +ii python-pip-whl 18.1-5 all Python package installer +ii python-tables-data 3.4.4-2 all hierarchical database for Python based on HDF5 - test data +ii python3 3.7.3-1 amd64 interactive high-level object-oriented language (default python3 version) +ii python3-asn1crypto 0.24.0-1 all Fast ASN.1 parser and serializer (Python 3) +ii python3-atomicwrites 1.1.5-2 all Atomic file writes - Python 3.x +ii python3-attr 18.2.0-1 all Attributes without boilerplate (Python 3) +ii python3-bleach 3.1.0-1 all whitelist-based HTML-sanitizing library (Python 3) +ii python3-bs4 4.7.1-1 all error-tolerant HTML parser for Python 3 +ii python3-cffi-backend 1.12.2-1 amd64 Foreign Function Interface for Python 3 calling C code - runtime +ii python3-chardet 3.0.4-3 all universal character encoding detector for Python3 +ii python3-crypto 2.6.1-9+b1 amd64 cryptographic algorithms and protocols for Python 3 +ii python3-cryptography 2.6.1-3 amd64 Python library exposing cryptographic recipes and primitives (Python 3) +ii python3-cvxopt 1.1.9+dfsg-3+b1 amd64 Python3 package for convex optimization +ii python3-cycler 0.10.0-1 all composable kwarg iterator (Python 3) +ii python3-dateutil 2.7.3-3 all powerful extensions to the standard Python 3 datetime module +ii python3-dbus 1.2.8-3 amd64 simple interprocess messaging system (Python 3 interface) +ii python3-decorator 4.3.0-1.1 all simplify usage of Python decorators by programmers +ii python3-defusedxml 0.5.0-2 all XML bomb protection for Python stdlib modules (for Python 3) +ii python3-dev 3.7.3-1 amd64 header files and a static library for Python (default) +ii python3-distutils 3.7.3-1 all distutils package for Python 3.x +ii python3-entrypoints 0.3-1 all Discover and load entry points from installed packages (Python 3) +ii python3-gi 3.30.4-1 amd64 Python 3 bindings for gobject-introspection libraries +ii python3-html5lib 1.0.1-1 all HTML parser/tokenizer based on the WHATWG HTML5 specification +ii python3-ipykernel 4.9.0-1 all IPython kernel for Jupyter (Python 3) +ii python3-ipython 5.8.0-1 all Enhanced interactive Python shell (Python 3 version) +ii python3-ipython-genutils 0.2.0-1 all IPython vestigial utilities for Python 3 +ii python3-jinja2 2.10-2 all small but fast and easy to use stand-alone template engine +ii python3-joblib 0.13.0-2 all tools to provide lightweight pipelining in Python +ii python3-jsonschema 2.6.0-4 all An(other) implementation of JSON Schema (Draft 3 and 4) - Python 3.x +ii python3-jupyter-client 5.2.3-1 all Jupyter protocol client APIs (Python 3) +ii python3-jupyter-core 4.4.0-2 all Core common functionality of Jupyter projects for Python 3 +ii python3-keyring 17.1.1-1 all store and access your passwords safely - Python 3 version of the package +ii python3-keyrings.alt 3.1.1-1 all alternate backend implementations for python3-keyring +ii python3-kiwisolver 1.0.1-2+b1 amd64 fast implementation of the Cassowary constraint solver - Python 3.X +ii python3-lib2to3 3.7.3-1 all Interactive high-level object-oriented language (2to3, version 3.6) +ii python3-lxml:amd64 4.3.2-1 amd64 pythonic binding for the libxml2 and libxslt libraries +ii python3-markupsafe 1.1.0-1 amd64 HTML/XHTML/XML string library for Python 3 +ii python3-matplotlib 3.0.2-2 amd64 Python based plotting system in a style similar to Matlab (Python 3) +ii python3-minimal 3.7.3-1 amd64 minimal subset of the Python language (default python3 version) +ii python3-mistune 0.8.4-1 all Markdown parser for Python 3 +ii python3-more-itertools 4.2.0-1 all library with routines for operating on iterables, beyond itertools (Python 3) +ii python3-nbconvert 5.4-2 all Jupyter notebook conversion (Python 3) +ii python3-nbformat 4.4.0-1 all Jupyter notebook format (Python 3) +ii python3-numexpr 2.6.9-1 amd64 Fast numerical array expression evaluator for Python 3 and NumPy +ii python3-numpy 1:1.16.2-1 amd64 Fast array facility to the Python 3 language +ii python3-olefile 0.46-1 all Python module to read/write MS OLE2 files +ii python3-pandas 0.23.3+dfsg-3 all data structures for "relational" or "labeled" data - Python 3 +ii python3-pandas-lib 0.23.3+dfsg-3 amd64 low-level implementations and bindings for pandas - Python 3 +ii python3-pandocfilters 1.4.2-1 all python3 bindings for Pandoc's filters +ii python3-patsy 0.5.0+git13-g54dcf7b-1 all statistical models in Python using symbolic formulas +ii python3-pexpect 4.6.0-1 all Python 3 module for automating interactive applications +ii python3-pickleshare 0.7.5-1 all File system based database that uses Python pickles for Python 3 +ii python3-pil:amd64 5.4.1-2 amd64 Python Imaging Library (Python3) +ii python3-pip 18.1-5 all Python package installer +ii python3-pkg-resources 40.8.0-1 all Package Discovery and Resource Access using pkg_resources +ii python3-pluggy 0.8.0-1 all plugin and hook calling mechanisms for Python - 3.x +ii python3-prompt-toolkit 1.0.15-1 all library for building interactive command lines (Python 3) +ii python3-psutil 5.5.1-1 amd64 module providing convenience functions for managing processes (Python3) +ii python3-ptyprocess 0.6.0-1 all Run a subprocess in a pseudo terminal from Python 3 +ii python3-py 1.7.0-2 all Advanced Python development support library (Python 3) +ii python3-pygments 2.3.1+dfsg-1 all syntax highlighting package written in Python 3 +ii python3-pyparsing 2.2.0+dfsg1-2 all alternative to creating and executing simple grammars - Python 3.x +ii python3-pytest 3.10.1-2 all Simple, powerful testing in Python3 +ii python3-scipy 1.1.0-7 amd64 scientific tools for Python 3 +ii python3-secretstorage 2.3.1-2 all Python module for storing secrets - Python 3.x version +ii python3-setuptools 40.8.0-1 all Python3 Distutils Enhancements +ii python3-simplegeneric 0.8.1-2 all simple generic functions for Python3 +ii python3-simplejson 3.16.0-1 amd64 simple, fast, extensible JSON encoder/decoder for Python 3.x +ii python3-six 1.12.0-1 all Python 2 and 3 compatibility library (Python 3 interface) +ii python3-soupsieve 1.8+dfsg-1 all modern CSS selector implementation for BeautifulSoup (Python 3) +ii python3-statsmodels 0.8.0-9 all Python3 module for the estimation of statistical models +ii python3-statsmodels-lib 0.8.0-9 amd64 Python3 low-level implementations and bindings for statsmodels +ii python3-tables 3.4.4-2 all hierarchical database for Python3 based on HDF5 +ii python3-tables-lib 3.4.4-2 amd64 hierarchical database for Python3 based on HDF5 (extension) +ii python3-testpath 0.4.2+dfsg-1 all Utilities for Python 3 code working with files and commands +ii python3-tk:amd64 3.7.3-1 amd64 Tkinter - Writing Tk applications with Python 3.x +ii python3-tornado 5.1.1-4 amd64 scalable, non-blocking web server and tools - Python 3 package +ii python3-traitlets 4.3.2-1 all Lightweight Traits-like package for Python 3 +ii python3-tz 2019.1-1 all Python3 version of the Olson timezone database +ii python3-wcwidth 0.1.7+dfsg1-3 all determine printable width of a string on a terminal (Python 3) +ii python3-webencodings 0.5.1-1 all Python implementation of the WHATWG Encoding standard +ii python3-wheel 0.32.3-2 all built-package format for Python +ii python3-xdg 0.25-5 all Python 3 library to access freedesktop.org standards +ii python3-zmq 17.1.2-2 amd64 Python3 bindings for 0MQ library +ii python3.7 3.7.3-2 amd64 Interactive high-level object-oriented language (version 3.7) +ii python3.7-dev 3.7.3-2 amd64 Header files and a static library for Python (v3.7) +ii python3.7-minimal 3.7.3-2 amd64 Minimal subset of the Python language (version 3.7) +ii readline-common 7.0-5 all GNU readline and history libraries, common files +ii sed 4.7-1 amd64 GNU stream editor for filtering/transforming text +ii sensible-utils 0.0.12 all Utilities for sensible alternative selection +ii shared-mime-info 1.10-1 amd64 FreeDesktop.org shared MIME database and spec +ii sysvinit-utils 2.93-8 amd64 System-V-like utilities +ii tar 1.30+dfsg-6 amd64 GNU version of the tar archiving utility +ii tk8.6-blt2.5 2.5.3+dfsg-4 amd64 graphics extension library for Tcl/Tk - library +ii ttf-bitstream-vera 1.10-8 all The Bitstream Vera family of free TrueType fonts +ii tzdata 2019a-1 all time zone and daylight-saving time data +ii ucf 3.0038+nmu1 all Update Configuration File(s): preserve user changes to config files +ii util-linux 2.33.1-0.1 amd64 miscellaneous system utilities +ii x11-common 1:7.7+19 all X Window System (X.Org) infrastructure +ii xdg-user-dirs 0.17-2 amd64 tool to manage well known user directories +ii xz-utils 5.2.4-1 amd64 XZ-format compression utilities +ii zlib1g:amd64 1:1.2.11.dfsg-1 amd64 compression library - runtime +#+end_example + +#+begin_src shell :results output :exports both +dpkg --get-selections # dpkg --set-selections +#+end_src +* Time machine + +From https://www.debian.org/releases/: + +- oldoldstable: jessie (juin 2018) +- oldstable: stretch (avril 2019) +- stable: buster (juillet 2019) +- testing: bullseye +- unstable: sid +** oldoldstable (jessie) :noexport: + +#+begin_src shell :session *docker* :results output :exports both +docker run -t -i debian:oldoldstable-slim +#+end_src + +#+RESULTS: +: +: echo 'org_babel_sh_eoe' + +#+begin_src shell :session *docker* :results output :exports both +cat /etc/apt/sources.list +#+end_src + +#+RESULTS: +: +: deb http://snapshot.debian.org/archive/debian/20190708T033000Z oldoldstable main +: deb http://deb.debian.org/debian oldoldstable main +: deb http://snapshot.debian.org/archive/debian-security/20190708T033000Z oldoldstable/updates main +: deb http://security.debian.org/debian-security oldoldstable/updates main + + +#+begin_src shell :results output :exports both +mkdir -p mooc_docker_image_oldoldstable +#+end_src + +#+RESULTS: + +#+begin_src shell :results output :exports both :tangle mooc_docker_image_oldoldstable/Dockerfile +FROM debian:oldoldstable + +LABEL maintainer="Arnaud Legrand " + +RUN apt-get update \ + && apt-get install -y python3 \ + jupyter-nbconvert python3-ipykernel \ + python3-matplotlib python3-pandas python3-numpy python3-statsmodels +#+end_src + +#+begin_src shell :results output :exports both +docker build -t debian_oldoldstable_jupyter_dockerfile mooc_docker_image_oldoldstable +#+end_src + +#+RESULTS: + +#+BEGIN_EXAMPLE +The command '/bin/sh -c apt-get update && apt-get install -y python3 jupyter-nbconvert python3-ipykernel python3-matplotlib python3-pandas python3-numpy python3-statsmodels' returned a non-zero code: 100 +#+END_EXAMPLE + +#+begin_src shell :session *docker* :results output :exports both +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3-pandas python3-numpy python3-statsmodels ; do + echo $i; + apt-cache show $i | grep Version ; +done +#+end_src + +#+RESULTS: +#+begin_example +python3-ipykernel +E: No packages found +jupyter-nbconvert +E: No packages found +python3-matplotlib +Version: 1.4.2-3.1 +python3-pandas +Version: 0.14.1-2 +python3-numpy +Version: 1:1.8.2-2 +python3-statsmodels +E: No packages found +#+end_example + +https://snapshot.debian.org/binary/python3-statsmodels/ + +#+begin_src shell :session *docker* :results output :exports both +apt-get install wget +wget https://snapshot.debian.org/archive/debian/20170929T215212Z/pool/main/s/statsmodels/python3-statsmodels_0.8.0-4_all.deb +wget https://snapshot.debian.org/archive/debian-ports/20171026T191424Z/pool/main/n/nbconvert/jupyter-nbconvert_5.3.1-1_all.deb +wget https://snapshot.debian.org/archive/debian-ports/20171026T191424Z/pool/main/n/nbconvert/python3-nbconvert_5.3.1-1_all.deb +dpkg -i python3-statsmodels_0.8.0-4_all.deb jupyter-nbconvert_5.3.1-1_all.deb python3-nbconvert_5.3.1-1_all.deb +apt-get -f install +#+end_src + +#+begin_src shell :session *docker* :results output :exports both +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3-pandas python3-numpy python3-statsmodels ; do + echo "===== $i ====="; + dpkg -s $i +done +#+end_src + +#+RESULTS: +#+begin_example +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3- pandas python3-numpy python3-statsmodels ; do +echo "===== $i ====="; +dpkg -s $i +done +===== python3-ipykernel ===== +dpkg-query: package 'python3-ipykernel' is not installed and no information is available +Use dpkg --info (= dpkg-deb --info) to examine archive files, +and dpkg --contents (= dpkg-deb --contents) to list their contents. +===== jupyter-nbconvert ===== +dpkg-query: package 'jupyter-nbconvert' is not installed and no information is available +Use dpkg --info (= dpkg-deb --info) to examine archive files, +and dpkg --contents (= dpkg-deb --contents) to list their contents. +===== python3-matplotlib ===== +Package: python3-matplotlib +Status: install ok installed +Priority: optional +Section: python +Installed-Size: 12987 +Architecture: amd64 +Source: matplotlib +Version: 1.4.2-3.1 += 1.4.2-3.1), python3-pyparsing (>= 1.5.6), python3-six (>= 1.4), python3-tz, libjs-jquery, libjs-jquery-ui, python3-numpy (>= 1:1.8.0), python3-numpy-abi9, python3 (<< 3.5), python3 (>= 3.4~), python3-nose, libc6 (>= 2.14), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:4.1.1), libpng12-0 (>= 1.2.13-4), libstdc++6 (>= 4.6), libtcl8.6 (>= 8.6.0), libtk8.6 (>= 8.6.0) +Recommends: python3-pil, python3-tk +Suggests: dvipng, gir1.2-gtk-3.0, ghostscript, inkscape, ipython3, librsvg2-common, python-matplotlib-doc, python3-cairocffi, python3-gi, python3-gi-cairo, python3-gobject, python3-pyqt4, python3-scipy, python3-sip, python3-tornado, texlive-extra-utils, texlive-latex-extra, ttf-staypuft +Enhances: ipython3 +Description: Python based plotting system in a style similar to Matlab (Python 3) + Matplotlib is a pure Python plotting library designed to bring + publication quality plotting to Python with a syntax familiar to + Matlab users. All of the plotting commands in the pylab interface can + be accessed either via a functional interface familiar to Matlab + users or an object oriented interface familiar to Python users. + . + This package contains the Python 3 version of matplotlib. +Homepage: http://matplotlib.org/ +===== python3-pandas ===== +echo 'org_babel_sh_eoe' +Package: python3-pandas +Status: install ok installed +Priority: optional +Section: python +Installed-Size: 8903 +#+end_example + +#+begin_src shell :session *docker* :results output :exports both +apt-get install python3-numpy +#+end_src + +#+RESULTS: +#+begin_example +Reading package lists... Done +Building dependency tree +Reading state information... Done +You might want to run 'apt-get -f install' to correct these: +The following packages have unmet dependencies: + jupyter-nbconvert : Depends: python3:any (>= 3.3~) + python3-nbconvert : Depends: python3-entrypoints but it is not installable + Depends: python3-ipython (>= 5.0.0) but it is not installable + Depends: python3-jupyter-client but it is not installable + Depends: python3-testpath but it is not installable + Depends: python3-bleach but it is not going to be installed + Depends: python3-jinja2 but it is not going to be installed + Depends: python3-jupyter-core but it is not installable + Depends: python3-mistune but it is not installable + Depends: python3-nbformat but it is not installable + Depends: python3-pandocfilters (>= 1.4) but it is not going to be installed + Depends: python3-pygments but it is not going to be installed + Depends: python3-traitlets but it is not installable + Depends: python3:any (>= 3.3.2-2~) + Recommends: pandoc but it is not going to be installed + python3-numpy : Depends: python3 (>= 3.4~) but it is not going to be installed + Depends: python3 (< 3.5) but it is not going to be installed + Depends: python3.4 but it is not going to be installed + Depends: libblas3 but it is not going to be installed or + libblas.so.3 + Depends: libgfortran3 (>= 4.3) but it is not going to be installed + Depends: liblapack3 but it is not going to be installed or + liblapack.so.3 + Depends: libquadmath0 (>= 4.6) but it is not going to be installed + python3-statsmodels : Depends: python3:any (>= 3.3.2-2~) + Depends: python3-scipy but it is not going to be installed + Depends: python3-statsmodels-lib (>= 0.8.0-4) but it is not installable + Depends: python3-patsy but it is not going to be installed + Depends: python3-pandas but it is not going to be installed + Recommends: python3-matplotlib but it is not going to be installed + Recommends: python3-joblib but it is not going to be installed + Recommends: python3-cvxopt but it is not installable +E: Unmet dependencies. Try 'apt-get -f install' with no packages (or +specify a solution). +#+end_example + +Moralité: c'est l'horreur, vaut mieux oublier de partir d'une distrib +où les paquets n'étaient pas encore rentrés. Il faudrait itérativement +repérer chacun des paquets, un numéro de version qui va bien et les +récuperer sur snapshot... +** oldstable (stretch, V2 more controled) :noexport: + +#+begin_src shell :session *docker* :results output :exports both +docker run -t -i debian:stretch-20190708-slim +#+end_src + +#+RESULTS: +: Unable to find image 'debian:stretch-20190708-slim' locally +: stretch-20190708-slim: Pulling from library/debian +: +:  0a4690c5d889: Pulling fs layer  0a4690c5d889: Downloading 228.5kB/22.49MB  0a4690c5d889: Downloading 457.5kB/22.49MB  0a4690c5d889: Downloading 695kB/22.49MB  0a4690c5d889: Downloading 920.3kB/22.49MB  0a4690c5d889: Downloading 1.15MB/22.49MB  0a4690c5d889: Downloading 1.379MB/22.49MB  0a4690c5d889: Downloading 1.617MB/22.49MB  0a4690c5d889: Downloading 1.85MB/22.49MB  0a4690c5d889: Downloading 2.079MB/22.49MB  0a4690c5d889: Downloading 2.309MB/22.49MB  0a4690c5d889: Downloading 2.538MB/22.49MB  0a4690c5d889: Downloading 2.768MB/22.49MB  0a4690c5d889: Downloading 2.997MB/22.49MB  0a4690c5d889: Downloading 3.226MB/22.49MB  0a4690c5d889: Downloading 3.456MB/22.49MB  0a4690c5d889: Downloading 3.685MB/22.49MB  0a4690c5d889: Downloading 3.919MB/22.49MB  0a4690c5d889: Downloading 4.148MB/22.49MB  0a4690c5d889: Downloading 4.373MB/22.49MB  0a4690c5d889: Downloading 4.603MB/22.49MB  0a4690c5d889: Downloading 4.832MB/22.49MB  0a4690c5d889: Downloading 5.061MB/22.49MB  0a4690c5d889: Downloading 5.291MB/22.49MB  0a4690c5d889: Downloading 5.524MB/22.49MB  0a4690c5d889: Downloading 5.754MB/22.49MB  0a4690c5d889: Downloading 5.991MB/22.49MB  0a4690c5d889: Downloading 6.221MB/22.49MB  0a4690c5d889: Downloading 6.45MB/22.49MB  0a4690c5d889: Downloading 6.675MB/22.49MB  0a4690c5d889: Downloading 6.905MB/22.49MB  0a4690c5d889: Downloading 7.134MB/22.49MB  0a4690c5d889: Downloading 7.372MB/22.49MB  0a4690c5d889: Downloading 7.601MB/22.49MB  0a4690c5d889: Downloading 7.826MB/22.49MB  0a4690c5d889: Downloading 8.06MB/22.49MB  0a4690c5d889: Downloading 8.289MB/22.49MB  0a4690c5d889: Downloading 8.518MB/22.49MB  0a4690c5d889: Downloading 8.748MB/22.49MB  0a4690c5d889: Downloading 8.973MB/22.49MB  0a4690c5d889: Downloading 9.202MB/22.49MB  0a4690c5d889: Downloading 9.432MB/22.49MB  0a4690c5d889: Downloading 9.665MB/22.49MB  0a4690c5d889: Downloading 9.891MB/22.49MB  0a4690c5d889: Downloading 10.12MB/22.49MB  0a4690c5d889: Downloading 10.35MB/22.49MB  0a4690c5d889: Downloading 10.58MB/22.49MB  0a4690c5d889: Downloading 10.82MB/22.49MB  0a4690c5d889: Downloading 11.05MB/22.49MB  0a4690c5d889: Downloading 11.27MB/22.49MB  0a4690c5d889: Downloading 11.5MB/22.49MB  0a4690c5d889: Downloading 11.73MB/22.49MB  0a4690c5d889: Downloading 11.96MB/22.49MB  0a4690c5d889: Downloading 12.19MB/22.49MB  0a4690c5d889: Downloading 12.42MB/22.49MB  0a4690c5d889: Downloading 12.65MB/22.49MB  0a4690c5d889: Downloading 12.88MB/22.49MB  0a4690c5d889: Downloading 13.11MB/22.49MB  0a4690c5d889: Downloading 13.34MB/22.49MB  0a4690c5d889: Downloading 13.57MB/22.49MB  0a4690c5d889: Downloading 13.8MB/22.49MB  0a4690c5d889: Downloading 14.03MB/22.49MB  0a4690c5d889: Downloading 14.26MB/22.49MB  0a4690c5d889: Downloading 14.49MB/22.49MB  0a4690c5d889: Downloading 14.72MB/22.49MB  0a4690c5d889: Downloading 14.95MB/22.49MB  0a4690c5d889: Downloading 15.17MB/22.49MB  0a4690c5d889: Downloading 15.4MB/22.49MB  0a4690c5d889: Downloading 15.63MB/22.49MB  0a4690c5d889: Downloading 15.86MB/22.49MB  0a4690c5d889: Downloading 16.1MB/22.49MB  0a4690c5d889: Downloading 16.33MB/22.49MB  0a4690c5d889: Downloading 16.56MB/22.49MB  0a4690c5d889: Downloading 16.79MB/22.49MB  0a4690c5d889: Downloading 17.02MB/22.49MB  0a4690c5d889: Downloading 17.25MB/22.49MB  0a4690c5d889: Downloading 17.48MB/22.49MB  0a4690c5d889: Downloading 17.71MB/22.49MB  0a4690c5d889: Downloading 17.94MB/22.49MB  0a4690c5d889: Downloading 18.17MB/22.49MB  0a4690c5d889: Downloading 18.39MB/22.49MB  0a4690c5d889: Downloading 18.62MB/22.49MB  0a4690c5d889: Downloading 18.85MB/22.49MB  0a4690c5d889: Downloading 19.08MB/22.49MB  0a4690c5d889: Downloading 19.31MB/22.49MB  0a4690c5d889: Downloading 19.54MB/22.49MB  0a4690c5d889: Downloading 19.77MB/22.49MB  0a4690c5d889: Downloading 20MB/22.49MB  0a4690c5d889: Downloading 20.22MB/22.49MB  0a4690c5d889: Downloading 20.45MB/22.49MB  0a4690c5d889: Downloading 20.68MB/22.49MB  0a4690c5d889: Downloading 20.91MB/22.49MB  0a4690c5d889: Downloading 21.14MB/22.49MB  0a4690c5d889: Downloading 21.37MB/22.49MB  0a4690c5d889: Downloading 21.6MB/22.49MB  0a4690c5d889: Downloading 21.83MB/22.49MB  0a4690c5d889: Downloading 22.06MB/22.49MB  0a4690c5d889: Downloading 22.29MB/22.49MB  0a4690c5d889: Verifying Checksum  0a4690c5d889: Download complete  0a4690c5d889: Extracting 229.4kB/22.49MB  0a4690c5d889: Extracting 2.523MB/22.49MB  0a4690c5d889: Extracting 5.505MB/22.49MB  0a4690c5d889: Extracting 8.258MB/22.49MB  0a4690c5d889: Extracting 8.946MB/22.49MB  0a4690c5d889: Extracting 11.24MB/22.49MB  0a4690c5d889: Extracting 13.53MB/22.49MB  0a4690c5d889: Extracting 14.45MB/22.49MB  0a4690c5d889: Extracting 15.83MB/22.49MB  0a4690c5d889: Extracting 17.89MB/22.49MB  0a4690c5d889: Extracting 19.73MB/22.49MB  0a4690c5d889: Extracting 20.19MB/22.49MB  0a4690c5d889: Extracting 21.33MB/22.49MB  0a4690c5d889: Extracting 21.79MB/22.49MB  0a4690c5d889: Extracting 22.49MB/22.49MB  0a4690c5d889: Pull complete Digest: sha256:0c04edb9ae10feb7ac03a659dd41e16c79e04fdb2b10cf93c3cbcef1fd6cc1d5 +: Status: Downloaded newer image for debian:stretch-20190708-slim + +#+begin_src shell :session *docker* :results output :exports both +cat /etc/apt/sources.list +#+end_src + +#+RESULTS: +: +: deb http://snapshot.debian.org/archive/debian/20190708T033000Z stretch main +: deb http://deb.debian.org/debian stretch main +: deb http://snapshot.debian.org/archive/debian-security/20190708T033000Z stretch/updates main +: deb http://security.debian.org/debian-security stretch/updates main +: deb http://snapshot.debian.org/archive/debian/20190708T033000Z stretch-updates main +: deb http://deb.debian.org/debian stretch-updates main + +#+begin_src shell :session *docker* :results output :exports both +cp /etc/apt/sources.list /etc/apt/sources.list.bak +cat /etc/apt/sources.list.bak | grep snapsho > /etc/apt/sources.list +cat /etc/apt/sources.list +#+end_src + +#+RESULTS: +: cp /etc/apt/sources.list /etc/apt/sources.list.bak +: cat /etc/apt/sources.list.bak | grep snapsho > /etc/apt/sources.list +: cat /etc/apt/sources.list +: deb http://snapshot.debian.org/archive/debian/20190708T033000Z stretch main +: deb http://snapshot.debian.org/archive/debian-security/20190708T033000Z stretch/updates main +: deb http://snapshot.debian.org/archive/debian/20190708T033000Z stretch-updates main + + +# #+begin_src shell :results output :exports both +# mkdir -p mooc_docker_image_oldoldstable +# #+end_src + +# #+RESULTS: + +# #+begin_src shell :results output :exports both :tangle mooc_docker_image_oldoldstable/Dockerfile +# FROM debian:oldoldstable + +# LABEL maintainer="Arnaud Legrand " + +# RUN apt-get update \ +# && apt-get install -y python3 \ +# jupyter-nbconvert python3-ipykernel \ +# python3-matplotlib python3-pandas python3-numpy python3-statsmodels +# #+end_src + +# #+begin_src shell :results output :exports both +# docker build -t debian_oldoldstable_jupyter_dockerfile mooc_docker_image_oldoldstable +# #+end_src + +# #+RESULTS: + +# #+BEGIN_EXAMPLE +# The command '/bin/sh -c apt-get update && apt-get install -y python3 jupyter-nbconvert python3-ipykernel python3-matplotlib python3-pandas python3-numpy python3-statsmodels' returned a non-zero code: 100 +# #+END_EXAMPLE + +#+begin_src shell :session *docker* :results output :exports both +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3-pandas python3-numpy python3-statsmodels ; do + echo $i; + apt-cache show $i | grep Version ; +done +#+end_src + +#+RESULTS: +#+begin_example +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3 3-pandas python3-numpy python3-statsmodels ; do +echo $i; +apt-cache show $i | grep Version ; +done +python3-ipykernel +E: No packages found +jupyter-nbconvert +E: No packages found +python3-matplotlib +E: No packages found +python3-pandas +E: No packages found +python3-numpy +E: No packages found +python3-statsmodels +E: No packages found +#+end_example + +#+begin_src shell :session *docker* :results output :exports both +apt-get update +#+end_src + +#+RESULTS: +: +: echo 'org_babel_sh_eoe' +: Reading package lists... Done + + +#+begin_src shell :session *docker* :results output :exports both +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3-pandas python3-numpy python3-statsmodels ; do + echo $i; + apt-cache show $i | grep Version ; +done +#+end_src + +#+RESULTS: +#+begin_example +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3 3-pandas python3-numpy python3-statsmodels ; do +echo $i; +apt-cache show $i | grep Version ; +done +python3-ipykernel +E: No packages found +jupyter-nbconvert +E: No packages found +python3-matplotlib +E: No packages found +python3-pandas +E: No packages found +python3-numpy +E: No packages found +python3-statsmodels +E: No packages found +#+end_example + +Du coup, je suis obligé de rétablir le sources.list d'origine... :( Et +là, pas de python3-statsmodels mais tout le reste est présent. Au +moins, je peux tenter ça plus une install de python3-statsmodels à +partir de snapshots. + +https://snapshot.debian.org/binary/python3-statsmodels/ + + +wget https://snapshot.debian.org/archive/debian/20170929T215212Z/pool/main/s/statsmodels/python3-statsmodels_0.8.0-4_all.deb + python3-statsmodels-lib +** Debian Stretch with packages from march 2018 + +#+begin_src shell :session *docker* :results output :exports both +docker run -t -i debian:stretch-slim +#+end_src + +#+RESULTS: + +#+begin_src shell :session *docker* :results output :exports both +cat /etc/apt/sources.list +#+end_src + +#+RESULTS: +: +: deb http://snapshot.debian.org/archive/debian/20190708T033000Z stretch main +: deb http://deb.debian.org/debian stretch main +: deb http://snapshot.debian.org/archive/debian-security/20190708T033000Z stretch/updates main +: deb http://security.debian.org/debian-security stretch/updates main +: deb http://snapshot.debian.org/archive/debian/20190708T033000Z stretch-updates main +: deb http://deb.debian.org/debian stretch-updates main + +#+begin_src shell :session *docker* :results output :exports both +# echo "deb http://snapshot.debian.org/archive/debian/20170929T215212Z/ testing main" > /etc/apt/sources.list +echo "deb http://snapshot.debian.org/archive/debian/20180310T130644Z/ testing main" > /etc/apt/sources.list +cat /etc/apt/sources.list +#+end_src + +#+RESULTS: +: +: echo "deb http://snapshot.debian.org/archive/debian/20170929T215212Z/ / testing main" > /etc/apt/sources.list +: echo "deb http://snapshot.debian.org/archive/debian/20180310T130644Z/ t testing main" > /etc/apt/sources.list +: cat /etc/apt/sources.list +: deb http://snapshot.debian.org/archive/debian/20180310T130644Z/ testing main + +Inspiring from: https://unix.stackexchange.com/questions/2544/how-to-work-around-release-file-expired-problem-on-a-local-mirror + +#+begin_src shell :results output :exports both +apt-get -o Acquire::Check-Valid-Until=false update +#+end_src + +#+begin_src shell :session *docker* :results output :exports both +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3-pandas python3-numpy python3-statsmodels ; do + echo $i; + apt-cache show $i | grep Version ; +done +#+end_src + +#+RESULTS: +#+begin_example +for i in python3-ipykernel jupyter-nbconvert python3-matplotlib python3 3-pandas python3-numpy python3-statsmodels ; do +echo $i; +apt-cache show $i | grep Version ; +done +python3-ipykernel +Version: 4.8.2-2 +jupyter-nbconvert +Version: 5.3.1-1 +python3-matplotlib +Version: 2.1.1-2 +python3-pandas +Version: 0.20.3-11 +python3-numpy +Version: 1:1.13.3-2 +python3-statsmodels +Version: 0.8.0-6 +#+end_example + +#+begin_src shell :session *docker* :results output :exports both +apt-get install -y python3 \ + jupyter-nbconvert python3-ipykernel \ + python3-matplotlib python3-pandas python3-numpy python3-statsmodels +#+end_src + +#+RESULTS: +#+begin_example +apt-get install -y python3 \ + +.dockerenv dev/ lib/ mnt/ root/ srv/ usr/ +bin/ etc/ lib64/ opt/ run/ sys/ var/ +boot/ home/ media/ proc/ sbin/ tmp/ +jupyter-nbconvert python3-ipykernel \ + +.dockerenv dev/ lib/ mnt/ root/ srv/ usr/ +bin/ etc/ lib64/ opt/ run/ sys/ var/ +boot/ home/ media/ proc/ sbin/ tmp/ +#+end_example + +#+begin_src shell :session *docker* :results output :exports both +dpkg --list +#+end_src + +#+RESULTS: +#+begin_example +Desired=Unknown/Install/Remove/Purge/Hold +| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend +|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) +||/ Name Version Architecture Description ++++-================-=============-=============-====================================== +ii adduser 3.115 all add and remove users and groups +ii apt 1.4.9 amd64 commandline package manager +ii base-files 9.9+deb9u9 amd64 Debian base system miscellaneous files +ii base-passwd 3.5.43 amd64 Debian base system master password and +ii bash 4.4-5 amd64 GNU Bourne Again SHell +ii binutils 2.30-5 amd64 GNU assembler, linker and binary utili +ii binutils-common: 2.30-5 amd64 Common files for the GNU assembler, li +ii binutils-x86-64- 2.30-5 amd64 GNU binary utilities, for x86-64-linux +ii blt 2.5.3+dfsg-4 amd64 graphics extension library for Tcl/Tk +ii bsdutils 1:2.29.2-1+de amd64 basic utilities from 4.4BSD-Lite +ii build-essential 12.4 amd64 Informational list of build-essential +ii bzip2 1.0.6-8.1 amd64 high-quality block-sorting file compre +ii ca-certificates 20170717 all Common CA certificates +ii coreutils 8.26-3 amd64 GNU core utilities +ii cpp 4:7.2.0-1d1 amd64 GNU C preprocessor (cpp) +ii cpp-7 7.3.0-5 amd64 GNU C preprocessor +ii dash 0.5.8-2.4 amd64 POSIX-compliant shell +ii dbus 1.12.6-2 amd64 simple interprocess messaging system ( +ii debconf 1.5.61 all Debian configuration management system +ii debian-archive-k 2017.5 all GnuPG archive keys of the Debian archi +ii debianutils 4.8.1.1 amd64 Miscellaneous utilities specific to De +ii dh-python 2.20170125 all Debian helper tools for packaging Pyth +ii diffutils 1:3.5-3 amd64 File comparison utilities +ii dirmngr 2.2.5-1 amd64 GNU privacy guard - network certificat +ii dpkg 1.18.25 amd64 Debian package management system +ii dpkg-dev 1.19.0.5 all Debian package development tools +ii e2fslibs:amd64 1.43.4-2 amd64 ext2/ext3/ext4 file system libraries +ii e2fsprogs 1.43.4-2 amd64 ext2/ext3/ext4 file system utilities +ii fakeroot 1.22-2 amd64 tool for simulating superuser privileg +ii file 1:5.32-2 amd64 Recognize the type of data in a file u +ii findutils 4.6.0+git+201 amd64 utilities for finding files--find, xar +ii fontconfig-confi 2.12.6-0.1 all generic font configuration library - c +ii fonts-lyx 2.2.3-5 all TrueType versions of some TeX fonts us +ii g++ 4:7.2.0-1d1 amd64 GNU C++ compiler +ii g++-7 7.3.0-5 amd64 GNU C++ compiler +ii gcc 4:7.2.0-1d1 amd64 GNU C compiler +ii gcc-6-base:amd64 6.3.0-18+deb9 amd64 GCC, the GNU Compiler Collection (base +ii gcc-7 7.3.0-5 amd64 GNU C compiler +ii gcc-7-base:amd64 7.3.0-5 amd64 GCC, the GNU Compiler Collection (base +ii gcc-8-base:amd64 8-20180218-1 amd64 GCC, the GNU Compiler Collection (base +ii gir1.2-glib-2.0: 1.54.1-4 amd64 Introspection data for GLib, GObject, +ii gnupg 2.2.5-1 amd64 GNU privacy guard - a free PGP replace +ii gnupg-l10n 2.2.5-1 all GNU privacy guard - localization files +ii gnupg-utils 2.2.5-1 amd64 GNU privacy guard - utility programs +ii gpg 2.2.5-1 amd64 GNU Privacy Guard -- minimalist public +ii gpg-agent 2.2.5-1 amd64 GNU privacy guard - cryptographic agen +ii gpg-wks-client 2.2.5-1 amd64 GNU privacy guard - Web Key Service cl +ii gpg-wks-server 2.2.5-1 amd64 GNU privacy guard - Web Key Service se +ii gpgconf 2.2.5-1 amd64 GNU privacy guard - core configuration +ii gpgsm 2.2.5-1 amd64 GNU privacy guard - S/MIME version +ii gpgv 2.2.5-1 amd64 GNU privacy guard - signature verifica +ii grep 2.27-2 amd64 GNU grep, egrep and fgrep +ii gzip 1.6-5+b1 amd64 GNU compression utilities +ii hostname 3.18+b1 amd64 utility to set/show the host name or d +ii init-system-help 1.48 all helper tools for all init systems +ii javascript-commo 11 all Base support for JavaScript library pa +ii jupyter-nbconver 5.3.1-1 all Jupyter notebook conversion (scripts) +ii krb5-locales 1.16-2 all internationalization support for MIT K +ii libacl1:amd64 2.2.52-3+b1 amd64 Access control list shared library +ii libaec0:amd64 1.0.2-1 amd64 Adaptive Entropy Coding library +ii libalgorithm-dif 1.19.03-1 all module to find differences between fil +ii libalgorithm-dif 0.04-5 amd64 module to find differences between fil +ii libalgorithm-mer 0.08-3 all Perl module for three-way merge of tex +ii libamd2:amd64 1:5.1.2-2 amd64 approximate minimum degree ordering li +ii libapparmor1:amd 2.12-3 amd64 changehat AppArmor library +ii libapt-pkg5.0:am 1.4.9 amd64 package management runtime library +ii libasan4:amd64 7.3.0-5 amd64 AddressSanitizer -- a fast memory erro +ii libassuan0:amd64 2.5.1-2 amd64 IPC library for the GnuPG components +ii libatomic1:amd64 8-20180218-1 amd64 support library providing __atomic bui +ii libattr1:amd64 1:2.4.47-2+b2 amd64 Extended attribute shared library +ii libaudit-common 1:2.6.7-2 all Dynamic library for security auditing +ii libaudit1:amd64 1:2.6.7-2 amd64 Dynamic library for security auditing +ii libbinutils:amd6 2.30-5 amd64 GNU binary utilities (private shared l +ii libblas3:amd64 3.7.1-4 amd64 Basic Linear Algebra Reference impleme +ii libblkid1:amd64 2.29.2-1+deb9 amd64 block device ID library +ii libblosc1 1.11.1+ds2-3 amd64 high performance meta-compressor optim +ii libbsd0:amd64 0.8.7-1 amd64 utility functions from BSD systems - s +ii libbz2-1.0:amd64 1.0.6-8.1 amd64 high-quality block-sorting file compre +ii libc-bin 2.27-1 amd64 GNU C Library: Binaries +ii libc-dev-bin 2.27-1 amd64 GNU C Library: Development binaries +ii libc6:amd64 2.27-1 amd64 GNU C Library: Shared libraries +ii libc6-dev:amd64 2.27-1 amd64 GNU C Library: Development Libraries a +ii libcamd2:amd64 1:5.1.2-2 amd64 symmetric approximate minimum degree l +ii libcap-ng0:amd64 0.7.7-3+b1 amd64 An alternate POSIX capabilities librar +ii libcc1-0:amd64 8-20180218-1 amd64 GCC cc1 plugin for GDB +ii libccolamd2:amd6 1:5.1.2-2 amd64 constrained column approximate library +ii libcholmod3:amd6 1:5.1.2-2 amd64 sparse Cholesky factorization library +ii libcilkrts5:amd6 7.3.0-5 amd64 Intel Cilk Plus language extensions (r +ii libcolamd2:amd64 1:5.1.2-2 amd64 column approximate minimum degree orde +ii libcomerr2:amd64 1.43.4-2 amd64 common error description library +ii libdb5.3:amd64 5.3.28-12+deb amd64 Berkeley v5.3 Database Libraries [runt +ii libdbus-1-3:amd6 1.12.6-2 amd64 simple interprocess messaging system ( +ii libdebconfclient 0.227 amd64 Debian Configuration Management System +ii libdpkg-perl 1.19.0.5 all Dpkg perl modules +ii libdsdp-5.8gf 5.8-9.4 amd64 Software for Semidefinite Programming +ii libexpat1:amd64 2.2.5-3 amd64 XML parsing C library - runtime librar +ii libexpat1-dev:am 2.2.5-3 amd64 XML parsing C library - development ki +ii libfakeroot:amd6 1.22-2 amd64 tool for simulating superuser privileg +ii libfdisk1:amd64 2.29.2-1+deb9 amd64 fdisk partitioning library +ii libffi6:amd64 3.2.1-8 amd64 Foreign Function Interface library run +ii libfftw3-double3 3.3.7-1 amd64 Library for computing Fast Fourier Tra +ii libfile-fcntlloc 0.22-3+b4 amd64 Perl module for file locking with fcnt +ii libfontconfig1:a 2.12.6-0.1 amd64 generic font configuration library - r +ii libfreetype6:amd 2.8.1-2 amd64 FreeType 2 font engine, shared library +ii libgcc-7-dev:amd 7.3.0-5 amd64 GCC support library (development files +ii libgcc1:amd64 1:8-20180218- amd64 GCC support library +ii libgcrypt20:amd6 1.8.1-4 amd64 LGPL Crypto library - runtime library +ii libgdbm-compat4: 1.14.1-4 amd64 GNU dbm database routines (legacy supp +ii libgdbm5:amd64 1.14.1-4 amd64 GNU dbm database routines (runtime ver +ii libgfortran4:amd 7.3.0-5 amd64 Runtime library for GNU Fortran applic +ii libgirepository- 1.54.1-4 amd64 Library for handling GObject introspec +ii libglib2.0-0:amd 2.54.3-2 amd64 GLib library of C routines +ii libglib2.0-data 2.54.3-2 all Common files for GLib library +ii libglpk40:amd64 4.65-2 amd64 linear programming kit with integer (M +ii libgmp10:amd64 2:6.1.2+dfsg- amd64 Multiprecision arithmetic library +ii libgnutls30:amd6 3.5.18-1 amd64 GNU TLS library - main runtime library +ii libgomp1:amd64 8-20180218-1 amd64 GCC OpenMP (GOMP) support library +ii libgpg-error0:am 1.26-2 amd64 library for common error values and me +ii libgsl23:amd64 2.4+dfsg-6 amd64 GNU Scientific Library (GSL) -- librar +ii libgslcblas0:amd 2.4+dfsg-6 amd64 GNU Scientific Library (GSL) -- blas l +ii libgssapi-krb5-2 1.16-2 amd64 MIT Kerberos runtime libraries - krb5 +ii libhdf5-100:amd6 1.10.0-patch1 amd64 Hierarchical Data Format 5 (HDF5) - ru +ii libhogweed4:amd6 3.4-1 amd64 low level cryptographic library (publi +ii libicu57:amd64 57.1-8 amd64 International Components for Unicode +ii libidn2-0:amd64 2.0.4-1.1 amd64 Internationalized domain names (IDNA20 +ii libisl15:amd64 0.18-1 amd64 manipulating sets and relations of int +ii libitm1:amd64 8-20180218-1 amd64 GNU Transactional Memory Library +ii libjbig0:amd64 2.1-3.1+b2 amd64 JBIGkit libraries +ii libjpeg62-turbo: 1:1.5.2-2+b1 amd64 libjpeg-turbo JPEG runtime library +ii libjs-jquery 3.2.1-1 all JavaScript library for dynamic web app +ii libjs-jquery-ui 1.12.1+dfsg-5 all JavaScript UI library for dynamic web +ii libk5crypto3:amd 1.16-2 amd64 MIT Kerberos runtime libraries - Crypt +ii libkeyutils1:amd 1.5.9-9.2 amd64 Linux Key Management Utilities (librar +ii libkrb5-3:amd64 1.16-2 amd64 MIT Kerberos runtime libraries +ii libkrb5support0: 1.16-2 amd64 MIT Kerberos runtime libraries - Suppo +ii libksba8:amd64 1.3.5-2 amd64 X.509 and CMS support library +ii liblapack3:amd64 3.7.1-4 amd64 Library of linear algebra routines 3 - +ii liblcms2-2:amd64 2.9-1 amd64 Little CMS 2 color management library +ii libldap-2.4-2:am 2.4.45+dfsg-1 amd64 OpenLDAP libraries +ii libldap-common 2.4.45+dfsg-1 all OpenLDAP common files for libraries +ii liblocale-gettex 1.07-3+b3 amd64 module using libc functions for intern +ii liblsan0:amd64 8-20180218-1 amd64 LeakSanitizer -- a memory leak detecto +ii libltdl7:amd64 2.4.6-2 amd64 System independent dlopen wrapper for +ii liblua5.1-0:amd6 5.1.5-8.1+b2 amd64 Shared library for the Lua interpreter +ii libluajit-5.1-2: 2.1.0~beta3+d amd64 Just in time compiler for Lua - librar +ii libluajit-5.1-co 2.1.0~beta3+d all Just in time compiler for Lua - common +ii liblz4-1:amd64 0.0~r131-2+b1 amd64 Fast LZ compression algorithm library +ii liblzma5:amd64 5.2.2-1.2+b1 amd64 XZ-format compression library +ii liblzo2-2:amd64 2.08-1.2+b2 amd64 data compression library +ii libmagic-mgc 1:5.32-2 amd64 File type determination library using +ii libmagic1:amd64 1:5.32-2 amd64 Recognize the type of data in a file u +ii libmetis5:amd64 5.1.0.dfsg-5+ amd64 Serial Graph Partitioning and Fill-red +ii libmount1:amd64 2.29.2-1+deb9 amd64 device mounting library +ii libmpc3:amd64 1.1.0-1 amd64 multiple precision complex floating-po +ii libmpdec2:amd64 2.4.2-1 amd64 library for decimal floating point ari +ii libmpfr6:amd64 4.0.0-7 amd64 multiple precision floating-point comp +ii libmpx2:amd64 8-20180218-1 amd64 Intel memory protection extensions (ru +ii libncursesw5:amd 6.0+20161126- amd64 shared libraries for terminal handling +ii libnettle6:amd64 3.4-1 amd64 low level cryptographic library (symme +ii libnorm1:amd64 1.5r6+dfsg1-6 amd64 NACK-Oriented Reliable Multicast (NORM +ii libnpth0:amd64 1.5-3 amd64 replacement for GNU Pth using system t +ii libp11-kit0:amd6 0.23.9-2 amd64 library for loading and coordinating a +ii libpam-modules:a 1.1.8-3.6 amd64 Pluggable Authentication Modules for P +ii libpam-modules-b 1.1.8-3.6 amd64 Pluggable Authentication Modules for P +ii libpam-runtime 1.1.8-3.6 all Runtime support for the PAM library +ii libpam0g:amd64 1.1.8-3.6 amd64 Pluggable Authentication Modules libra +ii libpcre3:amd64 2:8.39-3 amd64 Old Perl 5 Compatible Regular Expressi +ii libperl5.26:amd6 5.26.1-5 amd64 shared Perl library +ii libpgm-5.2-0:amd 5.2.122~dfsg- amd64 OpenPGM shared library +ii libpng16-16:amd6 1.6.34-1 amd64 PNG library - runtime (version 1.6) +ii libpython-stdlib 2.7.14-4 amd64 interactive high-level object-oriented +ii libpython2.7-min 2.7.14-6 amd64 Minimal subset of the Python language +ii libpython2.7-std 2.7.14-6 amd64 Interactive high-level object-oriented +ii libpython3-dev:a 3.6.4-1 amd64 header files and a static library for +ii libpython3-stdli 3.6.4-1 amd64 interactive high-level object-oriented +ii libpython3.6:amd 3.6.4-4 amd64 Shared Python runtime library (version +ii libpython3.6-dev 3.6.4-4 amd64 Header files and a static library for +ii libpython3.6-min 3.6.4-4 amd64 Minimal subset of the Python language +ii libpython3.6-std 3.6.4-4 amd64 Interactive high-level object-oriented +ii libquadmath0:amd 8-20180218-1 amd64 GCC Quad-Precision Math Library +ii libreadline7:amd 7.0-3 amd64 GNU readline and history libraries, ru +ii libsasl2-2:amd64 2.1.27~101-g0 amd64 Cyrus SASL - authentication abstractio +ii libsasl2-modules 2.1.27~101-g0 amd64 Cyrus SASL - pluggable authentication +ii libsasl2-modules 2.1.27~101-g0 amd64 Cyrus SASL - pluggable authentication +ii libselinux1:amd6 2.6-3+b3 amd64 SELinux runtime shared libraries +ii libsemanage-comm 2.6-2 all Common files for SELinux policy manage +ii libsemanage1:amd 2.6-2 amd64 SELinux policy management library +ii libsepol1:amd64 2.6-2 amd64 SELinux library for manipulating binar +ii libsmartcols1:am 2.29.2-1+deb9 amd64 smart column output alignment library +ii libsnappy1v5:amd 1.1.7-1 amd64 fast compression/decompression library +ii libsodium23:amd6 1.0.16-2 amd64 Network communication, cryptography an +ii libsqlite3-0:amd 3.22.0-1 amd64 SQLite 3 shared library +ii libss2:amd64 1.43.4-2 amd64 command-line interface parsing library +ii libssl1.1:amd64 1.1.0g-2 amd64 Secure Sockets Layer toolkit - shared +ii libstdc++-7-dev: 7.3.0-5 amd64 GNU Standard C++ Library v3 (developme +ii libstdc++6:amd64 8-20180218-1 amd64 GNU Standard C++ Library v3 +ii libsuitesparseco 1:5.1.2-2 amd64 configuration routines for all SuiteSp +ii libsystemd0:amd6 232-25+deb9u1 amd64 systemd utility library +ii libsz2:amd64 1.0.2-1 amd64 Adaptive Entropy Coding library - SZIP +ii libtasn1-6:amd64 4.13-2 amd64 Manage ASN.1 structures (runtime) +ii libtcl8.6:amd64 8.6.8+dfsg-3 amd64 Tcl (the Tool Command Language) v8.6 - +ii libtiff5:amd64 4.0.9-4 amd64 Tag Image File Format (TIFF) library +ii libtinfo5:amd64 6.0+20161126- amd64 shared low-level terminfo library for +ii libtk8.6:amd64 8.6.8-3 amd64 Tk toolkit for Tcl and X11 v8.6 - run- +ii libtsan0:amd64 8-20180218-1 amd64 ThreadSanitizer -- a Valgrind-based de +ii libubsan0:amd64 7.3.0-5 amd64 UBSan -- undefined behaviour sanitizer +ii libudev1:amd64 232-25+deb9u1 amd64 libudev shared library +ii libumfpack5:amd6 1:5.1.2-2 amd64 sparse LU factorization library +ii libunistring2:am 0.9.8-1 amd64 Unicode string library for C +ii libustr-1.0-1:am 1.0.4-6 amd64 Micro string library: shared library +ii libuuid1:amd64 2.29.2-1+deb9 amd64 Universally Unique ID library +ii libwebp6:amd64 0.6.1-2 amd64 Lossy compression of digital photograp +ii libwebpdemux2:am 0.6.1-2 amd64 Lossy compression of digital photograp +ii libwebpmux3:amd6 0.6.1-2 amd64 Lossy compression of digital photograp +ii libx11-6:amd64 2:1.6.4-3 amd64 X11 client-side library +ii libx11-data 2:1.6.4-3 all X11 client-side library +ii libxau6:amd64 1:1.0.8-1+b2 amd64 X11 authorisation library +ii libxcb1:amd64 1.12-1 amd64 X C Binding +ii libxdmcp6:amd64 1:1.1.2-3 amd64 X11 Display Manager Control Protocol l +ii libxext6:amd64 2:1.3.3-1+b2 amd64 X11 miscellaneous extension library +ii libxft2:amd64 2.3.2-1+b2 amd64 FreeType-based font drawing library fo +ii libxml2:amd64 2.9.4+dfsg1-6 amd64 GNOME XML library +ii libxrender1:amd6 1:0.9.10-1 amd64 X Rendering Extension client library +ii libxslt1.1:amd64 1.1.29-5 amd64 XSLT 1.0 processing library - runtime +ii libxss1:amd64 1:1.2.2-1+b2 amd64 X11 Screen Saver extension library +ii libyaml-0-2:amd6 0.1.7-2 amd64 Fast YAML 1.1 parser and emitter libra +ii libzmq5:amd64 4.2.3-1+b1 amd64 lightweight messaging kernel (shared l +ii libzstd1 1.3.3+dfsg-1 amd64 fast lossless compression algorithm +ii linux-libc-dev:a 4.15.4-1 amd64 Linux support headers for userspace de +ii login 1:4.4-4.1 amd64 system login tools +ii lsb-base 9.20161125 all Linux Standard Base init script functi +ii make 4.1-9.1 amd64 utility for directing compilation +ii manpages 4.15-1 all Manual pages about using a GNU/Linux s +ii manpages-dev 4.15-1 all Manual pages about using GNU/Linux for +ii mawk 1.3.3-17+b3 amd64 a pattern scanning and text processing +ii mime-support 3.60 all MIME files 'mime.types' & 'mailcap', a +ii mount 2.29.2-1+deb9 amd64 tools for mounting and manipulating fi +ii multiarch-suppor 2.24-11+deb9u amd64 Transitional package to ensure multiar +ii ncurses-base 6.0+20161126- all basic terminal type definitions +ii ncurses-bin 6.0+20161126- amd64 terminal-related programs and man page +ii netbase 5.4 all Basic TCP/IP networking system +ii openssl 1.1.0g-2 amd64 Secure Sockets Layer toolkit - cryptog +ii pandoc 1.19.2.4~dfsg amd64 general markup converter +ii pandoc-data 1.19.2.4~dfsg all general markup converter - data files +ii passwd 1:4.4-4.1 amd64 change and administer password and gro +ii patch 2.7.6-1 amd64 Apply a diff file to an original +ii perl 5.26.1-5 amd64 Larry Wall's Practical Extraction and +ii perl-base 5.26.1-5 amd64 minimal Perl system +ii perl-modules-5.2 5.26.1-5 all Core Perl modules +ii pinentry-curses 1.1.0-1 amd64 curses-based PIN or pass-phrase entry +ii python 2.7.14-4 amd64 interactive high-level object-oriented +ii python-matplotli 2.1.1-2 all Python based plotting system (data pac +ii python-minimal 2.7.14-4 amd64 minimal subset of the Python language +ii python-pip-whl 9.0.1-2 all Python package installer +ii python-tables-da 3.4.2-4 all hierarchical database for Python based +ii python2.7 2.7.14-6 amd64 Interactive high-level object-oriented +ii python2.7-minima 2.7.14-6 amd64 Minimal subset of the Python language +ii python3 3.6.4-1 amd64 interactive high-level object-oriented +ii python3-asn1cryp 0.24.0-1 all Fast ASN.1 parser and serializer (Pyth +ii python3-bleach 2.1.3-1 all whitelist-based HTML-sanitizing librar +ii python3-bs4 4.6.0-1 all error-tolerant HTML parser for Python +ii python3-cffi-bac 1.11.5-1 amd64 Foreign Function Interface for Python +ii python3-chardet 3.0.4-1 all universal character encoding detector +ii python3-crypto 2.6.1-8 amd64 cryptographic algorithms and protocols +ii python3-cryptogr 2.1.4-1 amd64 Python library exposing cryptographic +ii python3-cvxopt 1.1.9+dfsg-2+ amd64 Python3 package for convex optimizatio +ii python3-cycler 0.10.0-1 all composable kwarg iterator (Python 3) +ii python3-dateutil 2.6.1-1 all powerful extensions to the standard Py +ii python3-dbus 1.2.6-1 amd64 simple interprocess messaging system ( +ii python3-decorato 4.1.2-1 all simplify usage of Python decorators by +ii python3-dev 3.6.4-1 amd64 header files and a static library for +ii python3-distutil 3.6.4-4 all distutils package for Python 3.x +ii python3-entrypoi 0.2.3-1 all Discover and load entry points from in +ii python3-gi 3.26.1-2 amd64 Python 3 bindings for gobject-introspe +ii python3-html5lib 0.999999999-1 all HTML parser/tokenizer based on the WHA +ii python3-idna 2.6-1 all Python IDNA2008 (RFC 5891) handling (P +ii python3-ipykerne 4.8.2-2 all IPython kernel for Jupyter (Python 3) +ii python3-ipython 5.5.0-1 all Enhanced interactive Python shell (Pyt +ii python3-ipython- 0.2.0-1 all IPython vestigial utilities for Python +ii python3-jinja2 2.10-1 all small but fast and easy to use stand-a +ii python3-joblib 0.11-1 all tools to provide lightweight pipelinin +ii python3-jsonsche 2.6.0-2 all An(other) implementation of JSON Schem +ii python3-jupyter- 5.2.2-1 all Jupyter protocol client APIs (Python 3 +ii python3-jupyter- 4.4.0-2 all Core common functionality of Jupyter p +ii python3-keyring 10.6.0-1 all store and access your passwords safely +ii python3-keyrings 3.0-1 all alternate backend implementations for +ii python3-lib2to3 3.6.4-4 all Interactive high-level object-oriented +ii python3-lxml 4.1.0-1 amd64 pythonic binding for the libxml2 and l +ii python3-markupsa 1.0-1+b1 amd64 HTML/XHTML/XML string library for Pyth +ii python3-matplotl 2.1.1-2 amd64 Python based plotting system in a styl +ii python3-minimal 3.6.4-1 amd64 minimal subset of the Python language +ii python3-mistune 0.8.3-2 all Markdown parser for Python 3 +ii python3-nbconver 5.3.1-1 all Jupyter notebook conversion (Python 3) +ii python3-nbformat 4.4.0-1 all Jupyter notebook format (Python 3) +ii python3-numexpr 2.6.4-1 amd64 Fast numerical array expression evalua +ii python3-numpy 1:1.13.3-2 amd64 Fast array facility to the Python 3 la +ii python3-olefile 0.45.1-1 all Python module to read/write MS OLE2 fi +ii python3-pandas 0.20.3-11 all data structures for "relational" or "l +ii python3-pandas-l 0.20.3-11 amd64 low-level implementations and bindings +ii python3-pandocfi 1.4.2-1 all python3 bindings for Pandoc's filters +ii python3-patsy 0.4.1+git34-g all statistical models in Python using sym +ii python3-pexpect 4.2.1-1 all Python 3 module for automating interac +ii python3-picklesh 0.7.4-2 all File system based database that uses P +ii python3-pil:amd6 4.3.0-2 amd64 Python Imaging Library (Python3) +ii python3-pip 9.0.1-2 all Python package installer +ii python3-pkg-reso 38.4.0-1 all Package Discovery and Resource Access +ii python3-prompt-t 1.0.15-1 all library for building interactive comma +ii python3-ptyproce 0.5.2-1 all Run a subprocess in a pseudo terminal +ii python3-py 1.5.2-1 all Advanced Python development support li +ii python3-pygments 2.2.0+dfsg-1 all syntax highlighting package written in +ii python3-pyparsin 2.2.0+dfsg1-2 all alternative to creating and executing +ii python3-pytest 3.2.5-2 all Simple, powerful testing in Python3 +ii python3-scipy 0.19.1-2 amd64 scientific tools for Python 3 +ii python3-secretst 2.3.1-2 all Python module for storing secrets - Py +ii python3-setuptoo 38.4.0-1 all Python3 Distutils Enhancements +ii python3-simplege 0.8.1-1 all simple generic functions for Python3 +ii python3-simplejs 3.13.2-1 amd64 simple, fast, extensible JSON encoder/ +ii python3-six 1.11.0-2 all Python 2 and 3 compatibility library ( +ii python3-statsmod 0.8.0-6 all Python3 module for the estimation of s +ii python3-statsmod 0.8.0-6 amd64 Python3 low-level implementations and +ii python3-tables 3.4.2-4 all hierarchical database for Python3 base +ii python3-tables-l 3.4.2-4 amd64 hierarchical database for Python3 base +ii python3-testpath 0.3.1+dfsg-3 all Utilities for Python 3 code working wi +ii python3-tk:amd64 3.6.4-4 amd64 Tkinter - Writing Tk applications with +ii python3-tornado 4.5.3-1 amd64 scalable, non-blocking web server and +ii python3-traitlet 4.3.2-1 all Lightweight Traits-like package for Py +ii python3-tz 2018.3-2 all Python3 version of the Olson timezone +ii python3-wcwidth 0.1.7+dfsg1-1 all determine printable width of a string +ii python3-webencod 0.5-2 all Python implementation of the WHATWG En +ii python3-wheel 0.30.0-0.2 all built-package format for Python +ii python3-xdg 0.25-4 all Python 3 library to access freedesktop +ii python3-zmq 16.0.2-2+b1 amd64 Python3 bindings for 0MQ library +ii python3.6 3.6.4-4 amd64 Interactive high-level object-oriented +ii python3.6-dev 3.6.4-4 amd64 Header files and a static library for +ii python3.6-minima 3.6.4-4 amd64 Minimal subset of the Python language +ii readline-common 7.0-3 all GNU readline and history libraries, co +ii sed 4.4-1 amd64 GNU stream editor for filtering/transf +ii sensible-utils 0.0.9+deb9u1 all Utilities for sensible alternative sel +ii shared-mime-info 1.9-2 amd64 FreeDesktop.org shared MIME database a +ii sysvinit-utils 2.88dsf-59.9 amd64 System-V-like utilities +ii tar 1.29b-1.1 amd64 GNU version of the tar archiving utili +ii tk8.6-blt2.5 2.5.3+dfsg-4 amd64 graphics extension library for Tcl/Tk +ii ttf-bitstream-ve 1.10-8 all The Bitstream Vera family of free True +ii tzdata 2019a-0+deb9u all time zone and daylight-saving time dat +ii ucf 3.0038 all Update Configuration File(s): preserve +ii util-linux 2.29.2-1+deb9 amd64 miscellaneous system utilities +ii x11-common 1:7.7+19 all X Window System (X.Org) infrastructure +ii xdg-user-dirs 0.16-1 amd64 tool to manage well known user directo +ii xz-utils 5.2.2-1.3 amd64 XZ-format compression utilities +ii zlib1g:amd64 1:1.2.8.dfsg- amd64 compression library - runtime +#+end_example + +#+begin_src shell :results output :exports both +docker ps +#+end_src + +#+RESULTS: +: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +: 3e302c4c2ed7 debian:stretch-20190708-slim "bash" 7 hours ago Up 7 hours dazzling_nobel +: 71cd67954552 alegrand38/moocrr_jupyter "bash" 29 hours ago Up 29 hours nervous_shaw + +#+begin_src shell :results output :exports both +docker commit 3e302c4c2ed7 debian_stretch_20180310_python3_statsmodels +#+end_src + +#+RESULTS: +: sha256:e86b1c50e7a8896bb44686f827a85d5375d192560e25ad2a1533cde7dfac8b1a + +* Ressources +** Rstudio +https://hub.docker.com/r/rocker/rstudio/ +** Emacs +https://github.com/JAremko/docker-emacs +https://hub.docker.com/r/jare/emacs + +#+begin_src shell :results output :exports both +docker run -ti -v /tmp/.X11-unix:/tmp/.X11-unix:ro -e DISPLAY="unix$DISPLAY" -e UNAME="alegrand" -e GNAME="alegrand" -e UID="1000" -e GID="1000" -v ~/Work/Documents/Enseignements/RR_MOOC/gitlab-inria/mooc-rr-ressources/module2/ressources/rr_org:/home/emacs/.emacs.d -v /tmp/:/mnt/workspace jare/emacs emacs +#+end_src + +#+RESULTS: + +** Docker for windows +https://docs.docker.com/docker-for-windows/