├── .gitignore ├── .travis.yml ├── Dockerfile ├── LICENSE ├── README.md ├── conf ├── 10-custom-get_ipython_system.py ├── ansible.cfg ├── bash_env ├── custom.css ├── ipython_config.py ├── jupyter_notebook_config.py ├── kernels │ ├── bash-wrapper │ │ └── kernel.json │ └── python3-wrapper │ │ └── kernel.json ├── logo.png ├── nbextension-config.json ├── nbsearch │ ├── launch.sh │ ├── update-index │ └── update-index.lua ├── ssh-agent.sh └── wrapper-kernels │ ├── bash │ └── kernel.json │ └── python3 │ └── kernel.json └── sample-notebooks ├── 01_About NII Extensions - NII謹製の機能拡張について.ipynb ├── 02_AWS操作用ツールのインストール.ipynb ├── 03_Notebookの検索.ipynb ├── 97_Test nbextensions.ipynb ├── 99_Test python3 env.ipynb ├── README.md ├── images ├── LC_wrapper_mov-iloveimg-compressed.gif ├── LC_wrapper_mov.gif ├── literate_computing-logo.png ├── multi_outputs.png ├── run_through.png ├── run_through_Frozen.png ├── run_through_Frozen2.png ├── run_through_NG.png └── run_through_OK.png └── resources └── bootstrap.log /.gitignore: -------------------------------------------------------------------------------- 1 | .ipynb_checkpoints 2 | .lc_wrapper_regex.txt 3 | .DS_Store 4 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: generic 2 | 3 | services: 4 | - docker 5 | 6 | before_install: 7 | - docker build -t niicloudoperation/notebook . 8 | 9 | script: 10 | - docker run --rm niicloudoperation/notebook jupyter notebook --version 11 | - docker run --rm niicloudoperation/notebook papermill '/home/jovyan/97_Test nbextensions.ipynb' /tmp/Result.ipynb 12 | - docker run --rm niicloudoperation/notebook papermill '/home/jovyan/99_Test python3 env.ipynb' /tmp/Result.ipynb 13 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM jupyter/scipy-notebook:lab-3.6.3 2 | MAINTAINER https://github.com/NII-cloud-operation 3 | 4 | USER root 5 | # Install tools and fonts 6 | RUN apt-get update && apt-get install -yq --no-install-recommends \ 7 | git \ 8 | vim \ 9 | jed \ 10 | emacs \ 11 | unzip \ 12 | libsm6 \ 13 | pandoc \ 14 | texlive-latex-base \ 15 | texlive-latex-extra \ 16 | texlive-fonts-extra \ 17 | texlive-fonts-recommended \ 18 | texlive-plain-generic \ 19 | libxrender1 \ 20 | inkscape \ 21 | wget \ 22 | curl \ 23 | fonts-ipafont-gothic fonts-ipafont-mincho \ 24 | && apt-get clean && \ 25 | rm -rf /var/lib/apt/lists/* 26 | 27 | # Copy config files 28 | ADD conf /tmp/ 29 | RUN mkdir -p $CONDA_DIR/etc/jupyter && \ 30 | cp -f /tmp/jupyter_notebook_config.py \ 31 | $CONDA_DIR/etc/jupyter/jupyter_notebook_config.py 32 | 33 | SHELL ["/bin/bash", "-c"] 34 | 35 | ### ansible 36 | RUN apt-get update && \ 37 | apt-get -y install sshpass openssl ipmitool libssl-dev libffi-dev && \ 38 | apt-get clean && rm -rf /var/lib/apt/lists/* && \ 39 | mamba install --quiet --yes requests paramiko ansible && \ 40 | mamba clean --all -f -y 41 | 42 | ### Utilities 43 | RUN apt-get update && apt-get install -y virtinst dnsutils zip tree jq rsync iputils-ping && \ 44 | apt-get clean && rm -rf /var/lib/apt/lists/* && \ 45 | mamba install --quiet --yes papermill && \ 46 | pip --no-cache-dir install netaddr pyapi-gitlab runipy pysnmp pysnmp-mibs && \ 47 | mamba clean --all -f -y 48 | 49 | ### Add files 50 | RUN mkdir -p /etc/ansible && cp /tmp/ansible.cfg /etc/ansible/ansible.cfg 51 | 52 | #### Visualization 53 | RUN pip --no-cache-dir install folium 54 | 55 | ### extensions for jupyter 56 | #### jupyter_nbextensions_configurator 57 | #### jupyter_contrib_nbextensions 58 | #### Jupyter-LC_nblineage (NII) - https://github.com/NII-cloud-operation/Jupyter-LC_nblineage 59 | #### Jupyter-LC_through (NII) - https://github.com/NII-cloud-operation/Jupyter-LC_run_through 60 | #### Jupyter-LC_wrapper (NII) - https://github.com/NII-cloud-operation/Jupyter-LC_wrapper 61 | #### Jupyter-multi_outputs (NII) - https://github.com/NII-cloud-operation/Jupyter-multi_outputs 62 | #### Jupyter-LC_index (NII) - https://github.com/NII-cloud-operation/Jupyter-LC_index 63 | RUN pip --no-cache-dir install jupyter_nbextensions_configurator && \ 64 | pip --no-cache-dir install six bash_kernel \ 65 | https://github.com/NII-cloud-operation/jupyter_contrib_nbextensions/tarball/master \ 66 | https://github.com/NII-cloud-operation/Jupyter-LC_nblineage/tarball/master \ 67 | https://github.com/NII-cloud-operation/Jupyter-LC_run_through/tarball/master \ 68 | https://github.com/NII-cloud-operation/Jupyter-LC_wrapper/tarball/master \ 69 | git+https://github.com/NII-cloud-operation/Jupyter-multi_outputs \ 70 | git+https://github.com/NII-cloud-operation/Jupyter-LC_index.git \ 71 | git+https://github.com/NII-cloud-operation/Jupyter-LC_notebook_diff.git \ 72 | git+https://github.com/NII-cloud-operation/sidestickies.git \ 73 | git+https://github.com/NII-cloud-operation/nbsearch.git \ 74 | git+https://github.com/NII-cloud-operation/nbwhisper.git 75 | 76 | 77 | RUN jupyter contrib nbextension install --sys-prefix && \ 78 | jupyter nblineage quick-setup --sys-prefix && \ 79 | jupyter nbclassic-extension install --py lc_run_through --sys-prefix && \ 80 | jupyter nbclassic-extension enable --py lc_run_through --sys-prefix && \ 81 | jupyter nbclassic-extension install --py lc_multi_outputs --sys-prefix && \ 82 | jupyter nbclassic-extension enable --py lc_multi_outputs --sys-prefix && \ 83 | jupyter nbclassic-extension install --py notebook_index --sys-prefix && \ 84 | jupyter nbclassic-extension enable --py notebook_index --sys-prefix && \ 85 | jupyter nbclassic-extension install --py lc_wrapper --sys-prefix && \ 86 | jupyter nbclassic-extension enable --py lc_wrapper --sys-prefix && \ 87 | jupyter nbclassic-extension install --py lc_notebook_diff --sys-prefix && \ 88 | jupyter nbclassic-extension install --py nbtags --sys-prefix && \ 89 | jupyter nbclassic-serverextension enable --py nbtags --sys-prefix && \ 90 | jupyter nbclassic-extension install --py nbsearch --sys-prefix && \ 91 | jupyter nbclassic-serverextension enable --py nbsearch --sys-prefix && \ 92 | jupyter nbclassic-extension install --py nbwhisper --sys-prefix && \ 93 | jupyter nbclassic-serverextension enable --py nbwhisper --sys-prefix && \ 94 | jupyter nbclassic-extension install --py jupyter_nbextensions_configurator --sys-prefix && \ 95 | jupyter nbclassic-extension enable --py jupyter_nbextensions_configurator --sys-prefix && \ 96 | jupyter nbclassic-serverextension enable --py jupyter_nbextensions_configurator --sys-prefix && \ 97 | jupyter nbclassic-extension enable contrib_nbextensions_help_item/main --sys-prefix && \ 98 | jupyter nbclassic-extension enable collapsible_headings/main --sys-prefix && \ 99 | jupyter nbclassic-extension enable toc2/main --sys-prefix && \ 100 | python -m bash_kernel.install --sys-prefix && \ 101 | jupyter kernelspec install /tmp/kernels/python3-wrapper --sys-prefix && \ 102 | jupyter kernelspec install /tmp/kernels/bash-wrapper --sys-prefix && \ 103 | jupyter wrapper-kernelspec install /tmp/wrapper-kernels/python3 --sys-prefix && \ 104 | jupyter wrapper-kernelspec install /tmp/wrapper-kernels/bash --sys-prefix && \ 105 | fix-permissions /home/$NB_USER 106 | 107 | ### nbconfig 108 | RUN mkdir -p $CONDA_DIR/etc/jupyter/nbconfig/notebook.d && \ 109 | cp /tmp/nbextension-config.json $CONDA_DIR/etc/jupyter/nbconfig/notebook.d/nbextension-config.json 110 | 111 | ### notebooks dir 112 | ADD sample-notebooks /home/$NB_USER 113 | RUN fix-permissions /home/$NB_USER 114 | 115 | ### Bash Strict Mode 116 | RUN cp /tmp/bash_env /etc/bash_env 117 | 118 | ### Theme for jupyter 119 | RUN CUSTOM_DIR=$(python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())')/nbclassic/static/custom && \ 120 | cat /tmp/custom.css >> $CUSTOM_DIR/custom.css && \ 121 | cp /tmp/logo.png $CUSTOM_DIR/logo.png && \ 122 | mkdir -p $CUSTOM_DIR/codemirror/addon/merge/ && \ 123 | curl -fL https://raw.githubusercontent.com/cytoscape/cytoscape.js/master/dist/cytoscape.min.js > $CUSTOM_DIR/cytoscape.min.js && \ 124 | curl -fL https://raw.githubusercontent.com/iVis-at-Bilkent/cytoscape.js-view-utilities/master/cytoscape-view-utilities.js > $CUSTOM_DIR/cytoscape-view-utilities.js && \ 125 | curl -fL https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_notebook_diff/master/html/jupyter-notebook-diff.js > $CUSTOM_DIR/jupyter-notebook-diff.js && \ 126 | curl -fL https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_notebook_diff/master/html/jupyter-notebook-diff.css > $CUSTOM_DIR/jupyter-notebook-diff.css && \ 127 | curl -fL https://cdnjs.cloudflare.com/ajax/libs/diff_match_patch/20121119/diff_match_patch.js > $CUSTOM_DIR/diff_match_patch.js && \ 128 | curl -fL https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.35.0/addon/merge/merge.js > $CUSTOM_DIR/codemirror/addon/merge/merge.js && \ 129 | curl -fL https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.35.0/addon/merge/merge.min.css > $CUSTOM_DIR/merge.min.css 130 | 131 | ### Custom get_ipython().system() to control error propagation of shell commands 132 | RUN mkdir -p $CONDA_DIR/etc/ipython/startup/ && \ 133 | cp /tmp/ipython_config.py $CONDA_DIR/etc/ipython/ && \ 134 | cp /tmp/10-custom-get_ipython_system.py $CONDA_DIR/etc/ipython/startup/ 135 | 136 | ### Add run-hooks 137 | RUN mkdir -p /usr/local/bin/before-notebook.d && \ 138 | cp /tmp/ssh-agent.sh /usr/local/bin/before-notebook.d/ 139 | 140 | ### Install lsyncd for nbsearch 141 | RUN apt-get update && apt-get install -yq lsyncd \ 142 | && apt-get clean \ 143 | && rm -rf /var/lib/apt/lists/* \ 144 | && mkdir -p /opt/nbsearch \ 145 | && cp /tmp/nbsearch/launch.sh /usr/local/bin/before-notebook.d/nbsearch-launch.sh \ 146 | && cp /tmp/nbsearch/update-index* /opt/nbsearch/ \ 147 | && chmod +x /usr/local/bin/before-notebook.d/nbsearch-launch.sh /opt/nbsearch/update-index 148 | 149 | # Make classic notebook the default 150 | ENV DOCKER_STACKS_JUPYTER_CMD=nbclassic 151 | 152 | USER $NB_USER 153 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | BSD 3-Clause License 2 | 3 | Copyright (c) 2017, National Institute of Informatics. 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without 7 | modification, are permitted provided that the following conditions are met: 8 | 9 | * Redistributions of source code must retain the above copyright notice, this 10 | list of conditions and the following disclaimer. 11 | 12 | * Redistributions in binary form must reproduce the above copyright notice, 13 | this list of conditions and the following disclaimer in the documentation 14 | and/or other materials provided with the distribution. 15 | 16 | * Neither the name of the copyright holder nor the names of its 17 | contributors may be used to endorse or promote products derived from 18 | this software without specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 23 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 24 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 26 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 27 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Jupyter Notebook for *Literate Computing for Reproducible Infrastructure* [![Build Status](https://travis-ci.org/NII-cloud-operation/Jupyter-LC_docker.svg?branch=master)](https://travis-ci.org/NII-cloud-operation/Jupyter-LC_docker) [![badge](https://img.shields.io/badge/launch-binder-579ACA.svg?logo=data:image/png;base64,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)](https://mybinder.org/v2/gh/NII-cloud-operation/Jupyter-LC_docker/master?urlpath=tree) 2 | 3 | Jupyter Notebook server which bundles a set of tools for *Literate Computing for Reproducible Infrastructure*. This bundle shows how to implement robust and reliable operational procedure rather than explorative procedure within Jupyter’s GUI. 4 | 5 | The goals for Literate Computing tools are: 6 | * Preventing miss-operation; once a cell has been executed, it “freezes” against unintended execution. Also you can “lock” cells for unintended modification. 7 | * Adding a perspective into a notebook; markdown’s hierarchy is collapsible as document according to your focus. However, embedded cells underneath are represented as dots and run through with a click as a routine procedure. 8 | * Enables collaborative annotation onto Jupyter Notebooks, where your ideas and communications stay in context and grow. 9 | 10 | ## What it Gives You 11 | 12 | - Jupyter Notebook 6.0.x 13 | - Python3 and bash kernel with LC_wrapper https://github.com/NII-cloud-operation/Jupyter-LC_wrapper 14 | - Extensions 15 | - multi_outputs https://github.com/NII-cloud-operation/Jupyter-multi_outputs 16 | - run_through https://github.com/NII-cloud-operation/Jupyter-LC_run_through 17 | - nblineage https://github.com/NII-cloud-operation/Jupyter-LC_nblineage 18 | - index https://github.com/NII-cloud-operation/Jupyter-LC_index 19 | - sidestickies https://github.com/NII-cloud-operation/sidestickies 20 | - nbsearch https://github.com/NII-cloud-operation/nbsearch 21 | 22 | ## Basic Use 23 | 24 | You can start the Notebook server on port 8888 with the following command. 25 | 26 | ``` 27 | docker run -it --rm -p 8888:8888 niicloudoperation/notebook 28 | ``` 29 | 30 | You can login the Notebook server with the authentication token in the startup message. 31 | 32 | If you would like to use [NBSearch](https://github.com/NII-cloud-operation/nbsearch), use Solr container like the following: 33 | 34 | ``` 35 | # Launch Solr 36 | git clone https://github.com/NII-cloud-operation/nbsearch /tmp/nbsearch 37 | docker run -d --name nbsearch-solr -v /tmp/nbsearch:/tmp/nbsearch --rm solr:8 \ 38 | bash -c "precreate-core jupyter-notebook /tmp/nbsearch/solr/jupyter-notebook/ && \ 39 | precreate-core jupyter-cell /tmp/nbsearch/solr/jupyter-cell/ && \ 40 | solr-foreground" 41 | 42 | # Launch MinIO 43 | docker run -d --rm -e MINIO_ACCESS_KEY=nbsearchak -e MINIO_SECRET_KEY=nbsearchsk \ 44 | --name nbsearch-minio minio/minio:latest server /data --compat 45 | 46 | # Launch Notebook 47 | docker run -it --rm --link nbsearch-solr:solr --link nbsearch-minio:minio \ 48 | -e NBSEARCHDB_SOLR_BASE_URL=http://solr:8983 -e NBSEARCHDB_S3_ENDPOINT_URL=http://minio:9000 \ 49 | -e NBSEARCHDB_S3_ACCESS_KEY=nbsearchak -e NBSEARCHDB_S3_SECRET_KEY=nbsearchsk \ 50 | -p 8888:8888 niicloudoperation/notebook 51 | ``` 52 | 53 | To enable the NBSearch extension, refer `03_Notebookの検索.ipynb` in the container. 54 | 55 | ## Docker Options 56 | 57 | You may customize the execution of Docker container and the Notebook server contained with the following optional arguments. 58 | 59 | - `-e lc_wrapper_force=on` - Force summarizing mode of lc_wrapper (via env) 60 | - `-e TZ=JST-9` - Specify the container timezone 61 | - `-e PASSWORD=MY_UNBREAKABLE_PASS` - Set a initial password 62 | - `-v /some/host/folder/for/work:/home/jovyan` - Mounts the host directory to the working directory in the container 63 | 64 | ### Using sidestickies 65 | 66 | You can use [sidestickies](https://github.com/NII-cloud-operation/sidestickies) by either of the following steps. 67 | 68 | Using Scrapbox https://scrapbox.io/: 69 | - Add `-e SIDESTICKIES_SCRAPBOX_PROJECT_ID=value -e SIDESTICKIES_SCRAPBOX_COOKIE_CONNECT_SID=value` to docker options - Specify Scrapbox account to [sidestickies](https://github.com/NII-cloud-operation/sidestickies). 70 | - Enable the sidestickies extension via the Nbextensions tab. 71 | *Note: you need to enable both "Sidestickies for file tree" and "Sidestickies for notebook" nbextensions.* 72 | 73 | Using ep_weave(Etherpad) https://github.com/NII-cloud-operation/ep_weave : 74 | - Add `-e SIDESTICKIES_EP_WEAVE_URL=http://ep_weave:9001 -e SIDESTICKIES_EP_WEAVE_API_KEY=YOUR_ETHERPAD_APIKEY` to docker options. 75 | - Enable the sidestickies extension via the Nbextensions tab. 76 | *Note: you need to enable both "Sidestickies for file tree" and "Sidestickies for notebook" nbextensions.* 77 | 78 | ### Using NBSearch 79 | 80 | You can use [NBSearch](https://github.com/NII-cloud-operation/nbsearch) by enabling the NBSearch extension via the Nbextensions tab. 81 | After the page of Jupyter is reloaded, the `NBSearch` tab appears on the page of Jupyter. 82 | 83 | NBSearch uses Solr and S3 Compatible Storage to store and search notebooks. 84 | You will be able to use NBSearch once you set up your Solr and S3 compatible storage configurations, set the following environment variables to the options. 85 | 86 | - `-e NBSEARCHDB_SOLR_BASE_URL=your_solr_url` - The base URL of Solr(default: `http://localhost:8983`) 87 | - `-e NBSEARCHDB_SOLR_BASIC_AUTH_USERNAME=your_solr_username`, `-e NBSEARCHDB_SOLR_BASIC_AUTH_PASSWORD=your_solr_password` - The username and password for Solr(if needed) 88 | - `-e NBSEARCHDB_S3_ENDPOINT_URL=your_database_name` - The URL of S3(default: http://localhost:9000) 89 | - `-e NBSEARCHDB_S3_ACCESS_KEY=your_s3_access_key`, `-e NBSEARCHDB_S3_SECRET_KEY=your_s3_secret_key` - The access key and secret key for S3(required) 90 | - `-e NBSEARCHDB_S3_REGION_NAME=your_s3_region_name` - The region name of S3(if needed) 91 | - `-e NBSEARCHDB_S3_BUCKET_NAME=your_s3_bucket_name` - The bucket on S3(required) 92 | - `-e NBSEARCHDB_SOLR_NOTEBOOK=your_solr_notebook_core` - The core for notebooks on Solr(default: `jupyter-notebook`) 93 | - `-e NBSEARCHDB_SOLR_CELL=your_solr_cell_core` - The core for cells on Solr(default: `jupyter-cell`) 94 | - `-e NBSEARCHDB_BASE_DIR=your_notebook_home_dir` - Notebook directory to be searchable(default: `/home/$NB_USER`) 95 | - `-e NBSEARCHDB_MY_SERVER_URL=your_notebook_server_url` - URL of my server, used to identify the notebooks on this server(default: `http://localhost:8888/`) 96 | - `-e NBSEARCHDB_AUTO_UPDATE=1` - Launch lsyncd process to update the index of Solr when local files are updated automatically 97 | - `-e NBSEARCHDB_OWNER=username` - The value of owner field for updating solr index(default: the value of environment variable `JUPYTERHUB_USER` or `NB_USER`) 98 | - `-e NBSEARCHDB_UPDATE_INDEX_OPT` - Options for the `update-index` NBSearch command invoked by the lsyncd process 99 | 100 | ### Using NBWhisper 101 | 102 | You can use [NBWhisper](https://github.com/NII-cloud-operation/nbwhisper) by enabling the NBWhisper extension via the Nbextensions tab. 103 | 104 | To use NBWhisper, you need an API token of the SkyWay (WebRTC) service. It can be specified from environment variables as follows. 105 | (For more information, see https://github.com/NII-cloud-operation/nbwhisper/ .) 106 | 107 | - `-e NBWHISPER_SKYWAY_API_TOKEN` - An api token for SkyWay. This nbextension is not compatible with new SkyWay service, but old one. You can get an api token from your old SkyWay admin page. https://console-webrtc-free.ecl.ntt.com/users/login 108 | - `-e NBWHISPER_ROOM_MODE_FOR_WAITING_ROOM` - Room mode for waiting room. Input "sfu" or "mesh" as waiting room mode you want to use. 109 | - `-e NBWHISPER_ROOM_MODE_FOR_TALKING_ROOM` - Room mode for talking room. Input "sfu" or "mesh" as talking room mode you want to use. 110 | -------------------------------------------------------------------------------- /conf/10-custom-get_ipython_system.py: -------------------------------------------------------------------------------- 1 | # To install, execute the following command 2 | # ipython profile create 3 | # Copy this file to .ipython/profile_default/startup 4 | from IPython import get_ipython 5 | 6 | save_get_ipython_system = get_ipython().system 7 | get_ipython().system = lambda x: get_ipython_system(x) 8 | 9 | # interactiveshell.py's system_piped() function comment saids: 10 | # "we store the exit_code in user_ns." 11 | # this function check the exit_code and raise exception if it is not 0. 12 | def get_ipython_system(_cmd): 13 | save_get_ipython_system(_cmd) 14 | if get_ipython().user_ns['_exit_code'] != 0: 15 | raise RuntimeError('Unexpected exit code: %d' % get_ipython().user_ns['_exit_code']) 16 | -------------------------------------------------------------------------------- /conf/ansible.cfg: -------------------------------------------------------------------------------- 1 | [defaults] 2 | forks = 3 3 | -------------------------------------------------------------------------------- /conf/bash_env: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -euo pipefail 3 | 4 | -------------------------------------------------------------------------------- /conf/custom.css: -------------------------------------------------------------------------------- 1 | /* 2 | Placeholder for custom user CSS 3 | 4 | mainly to be overridden in profile/static/custom/custom.css 5 | 6 | This will always be an empty file in IPython 7 | */ 8 | 9 | @import url(https://fonts.googleapis.com/css?family=Source+Code+Pro); 10 | 11 | #ipython_notebook img{ 12 | display:block; 13 | background: url(logo.png) no-repeat; 14 | background-size: contain; 15 | width: 150px; 16 | height: 28px; 17 | padding-left: 150px; 18 | -moz-box-sizing: border-box; 19 | box-sizing: border-box; 20 | } 21 | 22 | .CodeMirror pre { /* area of code cell */ 23 | font-family: "Source Code Pro", monospace; 24 | } 25 | 26 | .output_text > pre { /* pre formatted area in output of code cell */ 27 | font-family: "Source Code Pro", monospace; 28 | } 29 | 30 | .text_cell pre, .text_cell code { /* pre formatted area in markdown cell */ 31 | font-family: "Source Code Pro", monospace; 32 | } 33 | 34 | .terminal { 35 | font-family: "Source Code Pro", monospace !important; 36 | } 37 | 38 | .text_cell { 39 | font-family: Georgia, YuMincho, '游明朝', serif; 40 | } 41 | 42 | 43 | h1 { 44 | font-family: Meiryo, sans-serif; 45 | } 46 | 47 | h2 { 48 | font-family: Verdana, YuGothic, '游ゴシック', sans-serif; 49 | } 50 | 51 | h3 { 52 | font-family: Verdana, YuGothic, '游ゴシック', sans-serif; 53 | } 54 | 55 | .output_area .ui-tabs-anchor { 56 | font-size: 0.6em; 57 | } 58 | 59 | .output_area .output_subarea { 60 | border: none; 61 | max-width: none; 62 | } 63 | 64 | .output_area .ui-tabs-nav { 65 | border-top: none; 66 | border-left: none; 67 | border-right: none; 68 | border-bottom-left-radius: 0px; 69 | border-bottom-right-radius: 0px; 70 | background: transparent; 71 | } 72 | 73 | .output_area .ui-tabs-nav button.ui-button-icon-only { 74 | border: none; 75 | background: transparent; 76 | } 77 | 78 | .output_area li.ui-state-default { 79 | background: #CCC !important; 80 | } 81 | 82 | .output_area li.ui-state-default a { 83 | color: #AAA; 84 | } 85 | 86 | .output_area li.ui-state-active { 87 | background: white !important; 88 | } 89 | 90 | .output_area li.ui-state-active a { 91 | color: black; 92 | } 93 | 94 | .text_cell em { 95 | font-family: Verdana, YuGothic, '游ゴシック', sans-serif; 96 | } 97 | 98 | .text_cell strong { 99 | font-family: Verdana, YuGothic, '游ゴシック', sans-serif; 100 | } 101 | -------------------------------------------------------------------------------- /conf/ipython_config.py: -------------------------------------------------------------------------------- 1 | import glob 2 | import sys 3 | import os.path 4 | 5 | c.InteractiveShellApp.exec_files = glob.glob(os.path.join(sys.prefix, 'etc', 'ipython', '[0-9][0-9]*.py')) 6 | 7 | -------------------------------------------------------------------------------- /conf/jupyter_notebook_config.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | def is_env_var_defined(varname): 4 | return len(os.environ.get(varname, '')) > 0 5 | 6 | c.NotebookApp.ip = '*' 7 | c.NotebookApp.allow_remote_access = True 8 | c.MultiKernelManager.kernel_manager_class = 'lc_wrapper.AsyncLCWrapperKernelManager' 9 | c.KernelManager.shutdown_wait_time = 10.0 10 | c.FileContentsManager.delete_to_trash = False 11 | c.NotebookApp.quit_button = False 12 | c.NotebookApp.kernel_spec_manager_class = 'lc_wrapper.LCWrapperKernelSpecManager' 13 | 14 | if is_env_var_defined('PASSWORD'): 15 | from notebook.auth import passwd 16 | c.NotebookApp.password = passwd(os.environ['PASSWORD']) 17 | del os.environ['PASSWORD'] 18 | 19 | if is_env_var_defined('SIDESTICKIES_SCRAPBOX_COOKIE_CONNECT_SID'): 20 | c.ScrapboxAPI.cookie_connect_sid = os.environ['SIDESTICKIES_SCRAPBOX_' 21 | 'COOKIE_CONNECT_SID'] 22 | del os.environ['SIDESTICKIES_SCRAPBOX_COOKIE_CONNECT_SID'] 23 | 24 | if is_env_var_defined('SIDESTICKIES_SCRAPBOX_PROJECT_ID'): 25 | c.ScrapboxAPI.project_id = os.environ['SIDESTICKIES_SCRAPBOX_PROJECT_ID'] 26 | 27 | if is_env_var_defined('SIDESTICKIES_EP_WEAVE_URL'): 28 | # Enables EpWeaveAPI 29 | c.SidestickiesAPI.api_class = "nbtags.api.EpWeaveAPI" 30 | c.EpWeaveAPI.url = os.environ['SIDESTICKIES_EP_WEAVE_URL'] 31 | 32 | if is_env_var_defined('SIDESTICKIES_EP_WEAVE_API_KEY'): 33 | c.EpWeaveAPI.apikey = os.environ['SIDESTICKIES_EP_WEAVE_API_KEY'] 34 | del os.environ['SIDESTICKIES_EP_WEAVE_API_KEY'] 35 | 36 | if is_env_var_defined('SIDESTICKIES_EP_WEAVE_API_URL'): 37 | c.EpWeaveAPI.api_url = os.environ['SIDESTICKIES_EP_WEAVE_API_URL'] 38 | 39 | if is_env_var_defined('NBSEARCHDB_SOLR_BASE_URL'): 40 | c.NBSearchDB.solr_base_url = os.environ['NBSEARCHDB_SOLR_BASE_URL'] 41 | 42 | if is_env_var_defined('NBSEARCHDB_S3_ENDPOINT_URL'): 43 | c.NBSearchDB.s3_endpoint_url = os.environ['NBSEARCHDB_S3_ENDPOINT_URL'] 44 | 45 | if is_env_var_defined('NBSEARCHDB_SOLR_BASIC_AUTH_USERNAME'): 46 | c.NBSearchDB.solr_basic_auth_username = os.environ['NBSEARCHDB_SOLR_BASIC_AUTH_USERNAME'] 47 | del os.environ['NBSEARCHDB_SOLR_BASIC_AUTH_USERNAME'] 48 | 49 | if is_env_var_defined('NBSEARCHDB_SOLR_BASIC_AUTH_PASSWORD'): 50 | c.NBSearchDB.solr_basic_auth_password = os.environ['NBSEARCHDB_SOLR_BASIC_AUTH_PASSWORD'] 51 | del os.environ['NBSEARCHDB_SOLR_BASIC_AUTH_PASSWORD'] 52 | 53 | if is_env_var_defined('NBSEARCHDB_SOLR_NOTEBOOK'): 54 | c.NBSearchDB.solr_notebook = os.environ['NBSEARCHDB_SOLR_NOTEBOOK'] 55 | del os.environ['NBSEARCHDB_SOLR_NOTEBOOK'] 56 | 57 | if is_env_var_defined('NBSEARCHDB_SOLR_CELL'): 58 | c.NBSearchDB.solr_cell = os.environ['NBSEARCHDB_SOLR_CELL'] 59 | del os.environ['NBSEARCHDB_SOLR_CELL'] 60 | 61 | if is_env_var_defined('NBSEARCHDB_S3_ACCESS_KEY'): 62 | c.NBSearchDB.s3_access_key = os.environ['NBSEARCHDB_S3_ACCESS_KEY'] 63 | del os.environ['NBSEARCHDB_S3_ACCESS_KEY'] 64 | 65 | if is_env_var_defined('NBSEARCHDB_S3_SECRET_KEY'): 66 | c.NBSearchDB.s3_secret_key = os.environ['NBSEARCHDB_S3_SECRET_KEY'] 67 | del os.environ['NBSEARCHDB_S3_SECRET_KEY'] 68 | 69 | if is_env_var_defined('NBSEARCHDB_S3_REGION_NAME'): 70 | c.NBSearchDB.s3_region_name = os.environ['NBSEARCHDB_S3_REGION_NAME'] 71 | del os.environ['NBSEARCHDB_S3_REGION_NAME'] 72 | 73 | if is_env_var_defined('NBSEARCHDB_S3_BUCKET_NAME'): 74 | c.NBSearchDB.s3_bucket_name = os.environ['NBSEARCHDB_S3_BUCKET_NAME'] 75 | del os.environ['NBSEARCHDB_S3_BUCKET_NAME'] 76 | 77 | c.LocalSource.base_dir = os.environ['NBSEARCHDB_BASE_DIR'] \ 78 | if is_env_var_defined('NBSEARCHDB_BASE_DIR') else \ 79 | '/home/{}'.format(os.environ['NB_USER']) 80 | 81 | c.LocalSource.server = os.environ['NBSEARCHDB_MY_SERVER_URL'] \ 82 | if is_env_var_defined('NBSEARCHDB_MY_SERVER_URL') else \ 83 | 'http://localhost:8888/' 84 | 85 | # owner field for updating solr index: NBSEARCHDB_OWNER (primary) -> JUPYTERHUB_USER -> NB_USER 86 | if is_env_var_defined('NBSEARCHDB_OWNER'): 87 | c.LocalSource.owner = os.environ['NBSEARCHDB_OWNER'] 88 | elif is_env_var_defined('JUPYTERHUB_USER'): 89 | c.LocalSource.owner = os.environ['JUPYTERHUB_USER'] 90 | elif is_env_var_defined('NB_USER'): 91 | c.LocalSource.owner = os.environ['NB_USER'] 92 | 93 | if is_env_var_defined('NBWHISPER_SKYWAY_API_TOKEN'): 94 | c.NBWhisper.skyway_api_token = os.environ['NBWHISPER_SKYWAY_API_TOKEN'] 95 | # Secrets removed from environment variables 96 | del os.environ['NBWHISPER_SKYWAY_API_TOKEN'] 97 | 98 | if is_env_var_defined('NBWHISPER_ROOM_MODE_FOR_WAITING_ROOM'): 99 | c.NBWhisper.room_mode_for_waiting_room = os.environ['NBWHISPER_ROOM_MODE_FOR_WAITING_ROOM'] 100 | 101 | if is_env_var_defined('NBWHISPER_ROOM_MODE_FOR_TALKING_ROOM'): 102 | c.NBWhisper.room_mode_for_talking_room = os.environ['NBWHISPER_ROOM_MODE_FOR_TALKING_ROOM'] -------------------------------------------------------------------------------- /conf/kernels/bash-wrapper/kernel.json: -------------------------------------------------------------------------------- 1 | { 2 | "display_name": "Bash (LC_wrapper)", 3 | "language": "bash", 4 | "argv": [ 5 | "/opt/conda/bin/python", 6 | "-m", 7 | "lc_wrapper.bash", 8 | "-f", 9 | "{connection_file}" 10 | ], 11 | "env": { 12 | "PS1": "$" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /conf/kernels/python3-wrapper/kernel.json: -------------------------------------------------------------------------------- 1 | { 2 | "display_name": "Python 3 (LC_wrapper)", 3 | "language": "python", 4 | "argv": [ 5 | "/opt/conda/bin/python", 6 | "-m", 7 | "lc_wrapper", 8 | "-f", 9 | "{connection_file}" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /conf/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/conf/logo.png -------------------------------------------------------------------------------- /conf/nbextension-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "RunThrough": { 3 | "frozen_color": "#6495ed" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /conf/nbsearch/launch.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -xe 4 | 5 | # Launch auto updater 6 | if [[ "${NBSEARCHDB_AUTO_UPDATE:-}" -eq 1 ]] ; then 7 | if [ $(id -u) == 0 ] ; then 8 | sudo -E -u $NB_USER lsyncd /opt/nbsearch/update-index.lua 9 | else 10 | lsyncd /opt/nbsearch/update-index.lua 11 | fi 12 | fi 13 | -------------------------------------------------------------------------------- /conf/nbsearch/update-index: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | file="$1" 4 | 5 | if [ ! ${file: -6} == ".ipynb" ] ; then 6 | exit 0 7 | fi 8 | 9 | jupyter nbsearch update-index $CONDA_DIR/etc/jupyter/jupyter_notebook_config.py ${NBSEARCHDB_UPDATE_INDEX_OPT} local $file 10 | echo "Updated $file $?" 11 | exit 0 12 | -------------------------------------------------------------------------------- /conf/nbsearch/update-index.lua: -------------------------------------------------------------------------------- 1 | update_index = { 2 | maxProcesses = 1, 3 | delay = 1, 4 | onCreate = "/opt/nbsearch/update-index ^pathname", 5 | onModify = "/opt/nbsearch/update-index ^pathname", 6 | onMove = "/opt/nbsearch/update-index ^d.pathname", 7 | } 8 | 9 | settings { 10 | logfile = "/tmp/lsyncd.log", 11 | statusFile = "/tmp/lsyncd.status", 12 | nodaemon = false, 13 | } 14 | 15 | sync{update_index, source=os.getenv("NBSEARCHDB_BASE_DIR") or ("/home/" .. os.getenv("NB_USER"))} 16 | -------------------------------------------------------------------------------- /conf/ssh-agent.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | if [ $(id -u) == 0 ] ; then 4 | eval "$(sudo -u $NB_USER ssh-agent)" 5 | else 6 | eval "$(ssh-agent)" 7 | fi 8 | -------------------------------------------------------------------------------- /conf/wrapper-kernels/bash/kernel.json: -------------------------------------------------------------------------------- 1 | { 2 | "display_name": "Bash", 3 | "language": "bash", 4 | "argv": [ 5 | "/opt/conda/bin/python", 6 | "-m", 7 | "lc_wrapper.bash", 8 | "-f", 9 | "{connection_file}" 10 | ], 11 | "env": { 12 | "PS1": "$" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /conf/wrapper-kernels/python3/kernel.json: -------------------------------------------------------------------------------- 1 | { 2 | "display_name": "Python 3", 3 | "language": "python", 4 | "argv": [ 5 | "/opt/conda/bin/python", 6 | "-m", 7 | "lc_wrapper", 8 | "-f", 9 | "{connection_file}" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /sample-notebooks/02_AWS操作用ツールのインストール.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": { 6 | "lc_cell_meme": { 7 | "current": "fe210874-deff-11e7-9edb-0242ac110002", 8 | "history": [], 9 | "next": "fe2109dc-deff-11e7-9edb-0242ac110002", 10 | "previous": null 11 | } 12 | }, 13 | "source": [ 14 | "# About: AWS操作用ツールのインストール\n", 15 | "\n", 16 | "----\n", 17 | "\n", 18 | "AWSをJupyter Notebook環境からコントロールできるよう、ツールをインストールします。" 19 | ] 20 | }, 21 | { 22 | "cell_type": "markdown", 23 | "metadata": { 24 | "lc_cell_meme": { 25 | "current": "fe2109dc-deff-11e7-9edb-0242ac110002", 26 | "history": [], 27 | "next": "fe210b08-deff-11e7-9edb-0242ac110002", 28 | "previous": "fe210874-deff-11e7-9edb-0242ac110002" 29 | } 30 | }, 31 | "source": [ 32 | "## *Operation Note*\n", 33 | "\n", 34 | "*This is a cell for your own recording. ここに経緯を記述*" 35 | ] 36 | }, 37 | { 38 | "cell_type": "markdown", 39 | "metadata": { 40 | "lc_cell_meme": { 41 | "current": "fe210b08-deff-11e7-9edb-0242ac110002", 42 | "history": [], 43 | "next": "fe210c2a-deff-11e7-9edb-0242ac110002", 44 | "previous": "fe2109dc-deff-11e7-9edb-0242ac110002" 45 | } 46 | }, 47 | "source": [ 48 | "# AWS CLIのインストール\n", 49 | "\n", 50 | "Jupyter NotebookからAWSに対する操作は、AWS CLI https://aws.amazon.com/jp/cli/ を用いて実施します。\n", 51 | "\n", 52 | "ここでは、AWS CLIに必要なパッケージ(`groff`)をインストールした後、`awscli`パッケージをインストールしています。\n", 53 | "\n", 54 | "> Notebook(Python Kernel)中では、 `!` を行頭に書くことで、Shellコマンドを実行することができます。" 55 | ] 56 | }, 57 | { 58 | "cell_type": "code", 59 | "execution_count": null, 60 | "metadata": { 61 | "lc_cell_meme": { 62 | "current": "fe210c2a-deff-11e7-9edb-0242ac110002", 63 | "history": [], 64 | "next": "fe210d42-deff-11e7-9edb-0242ac110002", 65 | "previous": "fe210b08-deff-11e7-9edb-0242ac110002" 66 | }, 67 | "scrolled": true 68 | }, 69 | "outputs": [], 70 | "source": [ 71 | "!sudo apt-get update && sudo apt-get install -y groff\n", 72 | "!sudo pip install awscli" 73 | ] 74 | }, 75 | { 76 | "cell_type": "markdown", 77 | "metadata": { 78 | "lc_cell_meme": { 79 | "current": "fe210d42-deff-11e7-9edb-0242ac110002", 80 | "history": [], 81 | "next": "fe210e50-deff-11e7-9edb-0242ac110002", 82 | "previous": "fe210c2a-deff-11e7-9edb-0242ac110002" 83 | } 84 | }, 85 | "source": [ 86 | "コマンド名は `aws` です。インストールされていることを確認します。" 87 | ] 88 | }, 89 | { 90 | "cell_type": "code", 91 | "execution_count": null, 92 | "metadata": { 93 | "lc_cell_meme": { 94 | "current": "fe210e50-deff-11e7-9edb-0242ac110002", 95 | "history": [], 96 | "next": "fe210f68-deff-11e7-9edb-0242ac110002", 97 | "previous": "fe210d42-deff-11e7-9edb-0242ac110002" 98 | } 99 | }, 100 | "outputs": [], 101 | "source": [ 102 | "!which aws" 103 | ] 104 | }, 105 | { 106 | "cell_type": "markdown", 107 | "metadata": { 108 | "lc_cell_meme": { 109 | "current": "fe210f68-deff-11e7-9edb-0242ac110002", 110 | "history": [], 111 | "next": "fe211076-deff-11e7-9edb-0242ac110002", 112 | "previous": "fe210e50-deff-11e7-9edb-0242ac110002" 113 | } 114 | }, 115 | "source": [ 116 | "使い方は `help` サブコマンドで参照することができます。" 117 | ] 118 | }, 119 | { 120 | "cell_type": "code", 121 | "execution_count": null, 122 | "metadata": { 123 | "lc_cell_meme": { 124 | "current": "fe211076-deff-11e7-9edb-0242ac110002", 125 | "history": [], 126 | "next": "fe211184-deff-11e7-9edb-0242ac110002", 127 | "previous": "fe210f68-deff-11e7-9edb-0242ac110002" 128 | } 129 | }, 130 | "outputs": [], 131 | "source": [ 132 | "!aws help" 133 | ] 134 | }, 135 | { 136 | "cell_type": "markdown", 137 | "metadata": { 138 | "lc_cell_meme": { 139 | "current": "fe211184-deff-11e7-9edb-0242ac110002", 140 | "history": [], 141 | "next": "fe211292-deff-11e7-9edb-0242ac110002", 142 | "previous": "fe211076-deff-11e7-9edb-0242ac110002" 143 | } 144 | }, 145 | "source": [ 146 | "# AWS CLIの設定\n" 147 | ] 148 | }, 149 | { 150 | "cell_type": "markdown", 151 | "metadata": { 152 | "lc_cell_meme": { 153 | "current": "fe211292-deff-11e7-9edb-0242ac110002", 154 | "history": [], 155 | "next": "fe2113a0-deff-11e7-9edb-0242ac110002", 156 | "previous": "fe211184-deff-11e7-9edb-0242ac110002" 157 | } 158 | }, 159 | "source": [ 160 | "## Regionの設定\n", 161 | "\n", 162 | "AWS CLIに対しては、デフォルトの操作対象リージョンを設定することができます。\n", 163 | "ここでは例として、東京リージョン(ap-northeast-1)を使うことを、AWS CLIに対して設定します。" 164 | ] 165 | }, 166 | { 167 | "cell_type": "code", 168 | "execution_count": null, 169 | "metadata": { 170 | "lc_cell_meme": { 171 | "current": "fe2113a0-deff-11e7-9edb-0242ac110002", 172 | "history": [], 173 | "next": "fe2114ae-deff-11e7-9edb-0242ac110002", 174 | "previous": "fe211292-deff-11e7-9edb-0242ac110002" 175 | } 176 | }, 177 | "outputs": [], 178 | "source": [ 179 | "target_region = 'ap-northeast-1'\n", 180 | "target_region" 181 | ] 182 | }, 183 | { 184 | "cell_type": "markdown", 185 | "metadata": { 186 | "lc_cell_meme": { 187 | "current": "fe2114ae-deff-11e7-9edb-0242ac110002", 188 | "history": [], 189 | "next": "fe2115bc-deff-11e7-9edb-0242ac110002", 190 | "previous": "fe2113a0-deff-11e7-9edb-0242ac110002" 191 | } 192 | }, 193 | "source": [ 194 | "セルにはPythonコードを記述することができ、上記のように変数として各種環境に関する値を定義した上で、以下のようにその値をコマンドに与えることができます。" 195 | ] 196 | }, 197 | { 198 | "cell_type": "code", 199 | "execution_count": null, 200 | "metadata": { 201 | "lc_cell_meme": { 202 | "current": "fe2115bc-deff-11e7-9edb-0242ac110002", 203 | "history": [], 204 | "next": "fe2116c0-deff-11e7-9edb-0242ac110002", 205 | "previous": "fe2114ae-deff-11e7-9edb-0242ac110002" 206 | } 207 | }, 208 | "outputs": [], 209 | "source": [ 210 | "!aws configure set default.region {target_region}" 211 | ] 212 | }, 213 | { 214 | "cell_type": "markdown", 215 | "metadata": { 216 | "lc_cell_meme": { 217 | "current": "fe2116c0-deff-11e7-9edb-0242ac110002", 218 | "history": [], 219 | "next": "fe2117ce-deff-11e7-9edb-0242ac110002", 220 | "previous": "fe2115bc-deff-11e7-9edb-0242ac110002" 221 | } 222 | }, 223 | "source": [ 224 | "## Output formatの設定\n", 225 | "\n", 226 | "Output formatは、Notebook上のPythonコードでのパースしやすさを考慮し、JSONを利用します。人間が確認するためだけなら、text, tableなどでも問題ありません。用途によって使い分けてください。" 227 | ] 228 | }, 229 | { 230 | "cell_type": "code", 231 | "execution_count": null, 232 | "metadata": { 233 | "lc_cell_meme": { 234 | "current": "fe2117ce-deff-11e7-9edb-0242ac110002", 235 | "history": [], 236 | "next": "fe2118e6-deff-11e7-9edb-0242ac110002", 237 | "previous": "fe2116c0-deff-11e7-9edb-0242ac110002" 238 | } 239 | }, 240 | "outputs": [], 241 | "source": [ 242 | "!aws configure set default.output json" 243 | ] 244 | }, 245 | { 246 | "cell_type": "markdown", 247 | "metadata": { 248 | "lc_cell_meme": { 249 | "current": "fe2118e6-deff-11e7-9edb-0242ac110002", 250 | "history": [], 251 | "next": "fe2119f4-deff-11e7-9edb-0242ac110002", 252 | "previous": "fe2117ce-deff-11e7-9edb-0242ac110002" 253 | } 254 | }, 255 | "source": [ 256 | "## Credentialsの設定\n", 257 | "\n", 258 | "AWS CLIが、どのような認証情報をともなってAWS APIを呼び出すかを設定する必要があります。\n", 259 | "認証情報の設定方法は、利用される状況により異なります。" 260 | ] 261 | }, 262 | { 263 | "cell_type": "markdown", 264 | "metadata": { 265 | "lc_cell_meme": { 266 | "current": "fe2119f4-deff-11e7-9edb-0242ac110002", 267 | "history": [], 268 | "next": "fe211b02-deff-11e7-9edb-0242ac110002", 269 | "previous": "fe2118e6-deff-11e7-9edb-0242ac110002" 270 | } 271 | }, 272 | "source": [ 273 | "### Access Key / Secret Keyを用いる場合\n", 274 | "\n", 275 | "認証情報の与え方として、AWS consoleから発行できるAccess Key, Secret Keyを用いる方法があります。\n", 276 | "コマンドに対する対話的な操作が必要ですから、JupyterのTerminal(treeページの[New] - [Terminal]から選択できます)から、 `aws configure` を実施してください。\n", 277 | "\n", 278 | "`aws configure` の実施例:\n", 279 | "\n", 280 | "```\n", 281 | "$ aws configure\n", 282 | "AWS Access Key ID [None]: (自身のアカウントのアクセスキー)\n", 283 | "AWS Secret Access Key [None]: (自身のアカウントのシークレットアクセスキー)\n", 284 | "Default region name [None]: (Enter)\n", 285 | "Default output format [None]: (Enter)\n", 286 | "```" 287 | ] 288 | }, 289 | { 290 | "cell_type": "markdown", 291 | "metadata": { 292 | "lc_cell_meme": { 293 | "current": "fe211b02-deff-11e7-9edb-0242ac110002", 294 | "history": [], 295 | "next": "fe211c10-deff-11e7-9edb-0242ac110002", 296 | "previous": "fe2119f4-deff-11e7-9edb-0242ac110002" 297 | } 298 | }, 299 | "source": [ 300 | "### インスタンスロールを用いる場合\n", 301 | "\n", 302 | "このJupyter Notebook環境をAWS上のVMで動作させている場合、このVMにインスタンスロールを割り当てることで、AWS CLIには認証情報を与えずAWSのAPIにアクセスすることが可能です。\n" 303 | ] 304 | }, 305 | { 306 | "cell_type": "markdown", 307 | "metadata": { 308 | "lc_cell_meme": { 309 | "current": "fe211c10-deff-11e7-9edb-0242ac110002", 310 | "history": [], 311 | "next": "fe211d1e-deff-11e7-9edb-0242ac110002", 312 | "previous": "fe211b02-deff-11e7-9edb-0242ac110002" 313 | } 314 | }, 315 | "source": [ 316 | "# AWS CLIの接続確認\n", 317 | "\n", 318 | "AWS CLIに必要な設定を与えたら、試しに、アカウントの属性値取得コマンドをAWS CLIにて実施してみます。" 319 | ] 320 | }, 321 | { 322 | "cell_type": "markdown", 323 | "metadata": { 324 | "lc_cell_meme": { 325 | "current": "fe211d1e-deff-11e7-9edb-0242ac110002", 326 | "history": [], 327 | "next": "fe211e2c-deff-11e7-9edb-0242ac110002", 328 | "previous": "fe211c10-deff-11e7-9edb-0242ac110002" 329 | } 330 | }, 331 | "source": [ 332 | "\n", 333 | "> これが失敗する場合、(以下のタブ `Out[6]`のようになります)認証情報が正しく設定されていない可能性があります。" 334 | ] 335 | }, 336 | { 337 | "cell_type": "code", 338 | "execution_count": null, 339 | "metadata": { 340 | "lc_cell_meme": { 341 | "current": "fe211e2c-deff-11e7-9edb-0242ac110002", 342 | "history": [], 343 | "next": "fe211f3a-deff-11e7-9edb-0242ac110002", 344 | "previous": "fe211d1e-deff-11e7-9edb-0242ac110002" 345 | }, 346 | "pinned_outputs": [ 347 | { 348 | "execution_count": 6, 349 | "outputs": [ 350 | { 351 | "name": "stdout", 352 | "output_type": "stream", 353 | "text": "Unable to locate credentials. You can configure credentials by running \"aws configure\".\r\n" 354 | }, 355 | { 356 | "ename": "RuntimeError", 357 | "evalue": "Unexpected exit code: -127", 358 | "output_type": "error", 359 | "traceback": [ 360 | "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", 361 | "\u001b[0;31mRuntimeError\u001b[0m Traceback (most recent call last)", 362 | "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mget_ipython\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msystem\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'aws ec2 describe-account-attributes'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", 363 | "\u001b[0;32m~/.ipython/profile_default/startup/10-custom-get_ipython_system.py\u001b[0m in \u001b[0;36m\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0msave_get_ipython_system\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mget_ipython\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msystem\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0mget_ipython\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msystem\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mlambda\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mget_ipython_system\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 8\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0;31m# interactiveshell.py's system_piped() function comment saids:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", 364 | "\u001b[0;32m~/.ipython/profile_default/startup/10-custom-get_ipython_system.py\u001b[0m in \u001b[0;36mget_ipython_system\u001b[0;34m(cmd)\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[0msave_get_ipython_system\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcmd\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 14\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mget_ipython\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0muser_ns\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'_exit_code'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m!=\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 15\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mRuntimeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Unexpected exit code: %d'\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0mget_ipython\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0muser_ns\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'_exit_code'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", 365 | "\u001b[0;31mRuntimeError\u001b[0m: Unexpected exit code: -127" 366 | ] 367 | } 368 | ] 369 | } 370 | ], 371 | "scrolled": true 372 | }, 373 | "outputs": [], 374 | "source": [ 375 | "!aws ec2 describe-account-attributes" 376 | ] 377 | }, 378 | { 379 | "cell_type": "markdown", 380 | "metadata": { 381 | "lc_cell_meme": { 382 | "current": "fe211f3a-deff-11e7-9edb-0242ac110002", 383 | "history": [], 384 | "next": "fe212048-deff-11e7-9edb-0242ac110002", 385 | "previous": "fe211e2c-deff-11e7-9edb-0242ac110002" 386 | } 387 | }, 388 | "source": [ 389 | "以上でJupyter Notebookから、AWS操作用ツールを実行できるようになります。" 390 | ] 391 | }, 392 | { 393 | "cell_type": "code", 394 | "execution_count": null, 395 | "metadata": { 396 | "lc_cell_meme": { 397 | "current": "fe212048-deff-11e7-9edb-0242ac110002", 398 | "history": [], 399 | "next": null, 400 | "previous": "fe211f3a-deff-11e7-9edb-0242ac110002" 401 | } 402 | }, 403 | "outputs": [], 404 | "source": [] 405 | } 406 | ], 407 | "metadata": { 408 | "kernelspec": { 409 | "display_name": "Python 3", 410 | "language": "python", 411 | "name": "python3" 412 | }, 413 | "language_info": { 414 | "file_extension": ".py", 415 | "mimetype": "text/x-python", 416 | "name": "python", 417 | "nbconvert_exporter": "python", 418 | "pygments_lexer": "ipython3", 419 | "version": "3.5.2" 420 | }, 421 | "lc_notebook_meme": { 422 | "current": "fe2104d2-deff-11e7-9edb-0242ac110002", 423 | "history": [], 424 | "lc_server_signature": { 425 | "current": { 426 | "notebook_dir": "/home/jovyan", 427 | "notebook_path": "/sample-notebooks", 428 | "server_url": "http://localhost:8888/", 429 | "signature_id": "faa3f1b2-86aa-11e9-86e0-0242ac110002" 430 | }, 431 | "history": [] 432 | }, 433 | "root_cells": [ 434 | "fe210874-deff-11e7-9edb-0242ac110002", 435 | "fe2109dc-deff-11e7-9edb-0242ac110002", 436 | "fe210b08-deff-11e7-9edb-0242ac110002", 437 | "fe210c2a-deff-11e7-9edb-0242ac110002", 438 | "fe210d42-deff-11e7-9edb-0242ac110002", 439 | "fe210e50-deff-11e7-9edb-0242ac110002", 440 | "fe210f68-deff-11e7-9edb-0242ac110002", 441 | "fe211076-deff-11e7-9edb-0242ac110002", 442 | "fe211184-deff-11e7-9edb-0242ac110002", 443 | "fe211292-deff-11e7-9edb-0242ac110002", 444 | "fe2113a0-deff-11e7-9edb-0242ac110002", 445 | "fe2114ae-deff-11e7-9edb-0242ac110002", 446 | "fe2115bc-deff-11e7-9edb-0242ac110002", 447 | "fe2116c0-deff-11e7-9edb-0242ac110002", 448 | "fe2117ce-deff-11e7-9edb-0242ac110002", 449 | "fe2118e6-deff-11e7-9edb-0242ac110002", 450 | "fe2119f4-deff-11e7-9edb-0242ac110002", 451 | "fe211b02-deff-11e7-9edb-0242ac110002", 452 | "fe211c10-deff-11e7-9edb-0242ac110002", 453 | "fe211d1e-deff-11e7-9edb-0242ac110002", 454 | "fe211e2c-deff-11e7-9edb-0242ac110002", 455 | "fe211f3a-deff-11e7-9edb-0242ac110002", 456 | "fe212048-deff-11e7-9edb-0242ac110002" 457 | ] 458 | }, 459 | "toc": { 460 | "base_numbering": 1, 461 | "nav_menu": {}, 462 | "number_sections": true, 463 | "sideBar": true, 464 | "skip_h1_title": false, 465 | "title_cell": "Table of Contents", 466 | "title_sidebar": "Contents", 467 | "toc_cell": false, 468 | "toc_position": {}, 469 | "toc_section_display": "block", 470 | "toc_window_display": true 471 | } 472 | }, 473 | "nbformat": 4, 474 | "nbformat_minor": 2 475 | } 476 | -------------------------------------------------------------------------------- /sample-notebooks/97_Test nbextensions.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": { 6 | "lc_cell_meme": { 7 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 8 | "history": [ 9 | { 10 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 11 | "next": null, 12 | "previous": null 13 | }, 14 | { 15 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 16 | "next": "6d5d95aa-2927-11e9-b46c-0242ac110002", 17 | "previous": null 18 | }, 19 | { 20 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 21 | "next": "fc68b4b4-2927-11e9-b46c-0242ac110002", 22 | "previous": null 23 | }, 24 | { 25 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 26 | "next": "0430b086-32b3-11e9-808f-0242ac130002", 27 | "previous": null 28 | } 29 | ], 30 | "next": "d01d4e7e-32b4-11e9-964e-0242ac110002", 31 | "previous": null 32 | } 33 | }, 34 | "source": [ 35 | "このNotebookは、このイメージにインストールされたNotebook Extensionが予期した通りにインストールされていることをチェックするものです。Travis CI上でpapermillにより実行されます。\n", 36 | "\n", 37 | "This notebooks tests whether the installed extensions work expectedly, and can be executed by papermill on Travis CI." 38 | ] 39 | }, 40 | { 41 | "cell_type": "markdown", 42 | "metadata": { 43 | "lc_cell_meme": { 44 | "current": "d01d4e7e-32b4-11e9-964e-0242ac110002", 45 | "next": "8897ae28-32b4-11e9-964e-0242ac110002", 46 | "previous": "e9a77cf0-2924-11e9-b46c-0242ac110002" 47 | } 48 | }, 49 | "source": [ 50 | "# Installed extensions" 51 | ] 52 | }, 53 | { 54 | "cell_type": "code", 55 | "execution_count": 1, 56 | "metadata": { 57 | "lc_cell_meme": { 58 | "current": "8897ae28-32b4-11e9-964e-0242ac110002", 59 | "history": [ 60 | { 61 | "current": "8897ae28-32b4-11e9-964e-0242ac110002", 62 | "next": "8897b26a-32b4-11e9-964e-0242ac110002", 63 | "previous": null 64 | }, 65 | { 66 | "current": "8897ae28-32b4-11e9-964e-0242ac110002", 67 | "next": "8897b26a-32b4-11e9-964e-0242ac110002", 68 | "previous": "d01d4e7e-32b4-11e9-964e-0242ac110002" 69 | } 70 | ], 71 | "next": "17a5a52a-32b5-11e9-964e-0242ac110002", 72 | "previous": "d01d4e7e-32b4-11e9-964e-0242ac110002" 73 | } 74 | }, 75 | "outputs": [ 76 | { 77 | "data": { 78 | "text/plain": [ 79 | "['Known nbextensions:',\n", 80 | " ' config dir: /home/bit_kun/.jupyter/nbconfig',\n", 81 | " ' notebook section',\n", 82 | " ' nbextensions_configurator/config_menu/main \\x1b[32m enabled \\x1b[0m',\n", 83 | " ' toc2/main \\x1b[32m enabled \\x1b[0m',\n", 84 | " ' multi_outputs/main \\x1b[32m enabled \\x1b[0m',\n", 85 | " ' dragdrop/main \\x1b[32m enabled \\x1b[0m',\n", 86 | " ' collapsible_headings/main \\x1b[32m enabled \\x1b[0m',\n", 87 | " ' nbextension_i18n_cells/main \\x1b[32m enabled \\x1b[0m',\n", 88 | " ' nblineage/main \\x1b[32m enabled \\x1b[0m',\n", 89 | " ' contrib_nbextensions_help_item/main \\x1b[32m enabled \\x1b[0m',\n", 90 | " ' run_through/main \\x1b[32m enabled \\x1b[0m',\n", 91 | " ' tree section',\n", 92 | " ' nbextensions_configurator/tree_tab/main \\x1b[32m enabled \\x1b[0m',\n", 93 | " ' notebook_index/main \\x1b[32m enabled \\x1b[0m',\n", 94 | " ' config dir: /usr/local/etc/jupyter/nbconfig',\n", 95 | " ' notebook section',\n", 96 | " ' jupyter-js-widgets/extension \\x1b[32m enabled \\x1b[0m']" 97 | ] 98 | }, 99 | "execution_count": 1, 100 | "metadata": {}, 101 | "output_type": "execute_result" 102 | } 103 | ], 104 | "source": [ 105 | "nbextensions = !jupyter nbextension list 2>>/dev/null\n", 106 | "nbextensions" 107 | ] 108 | }, 109 | { 110 | "cell_type": "code", 111 | "execution_count": 2, 112 | "metadata": { 113 | "lc_cell_meme": { 114 | "current": "17a5a52a-32b5-11e9-964e-0242ac110002", 115 | "history": [ 116 | { 117 | "current": "17a5a52a-32b5-11e9-964e-0242ac110002", 118 | "next": "8897b26a-32b4-11e9-964e-0242ac110002", 119 | "previous": "8897ae28-32b4-11e9-964e-0242ac110002" 120 | } 121 | ], 122 | "next": "a6b2f970-32b5-11e9-964e-0242ac110002", 123 | "previous": "8897ae28-32b4-11e9-964e-0242ac110002" 124 | } 125 | }, 126 | "outputs": [ 127 | { 128 | "data": { 129 | "text/plain": [ 130 | "{'nbextensions_configurator/config_menu/main': 'enabled',\n", 131 | " 'multi_outputs/main': 'enabled',\n", 132 | " 'dragdrop/main': 'enabled',\n", 133 | " 'collapsible_headings/main': 'enabled',\n", 134 | " 'nblineage/main': 'enabled',\n", 135 | " 'contrib_nbextensions_help_item/main': 'enabled',\n", 136 | " 'run_through/main': 'enabled',\n", 137 | " 'nbextensions_configurator/tree_tab/main': 'enabled',\n", 138 | " 'notebook_index/main': 'enabled'}" 139 | ] 140 | }, 141 | "execution_count": 2, 142 | "metadata": {}, 143 | "output_type": "execute_result" 144 | } 145 | ], 146 | "source": [ 147 | "import re\n", 148 | "indent_pat = re.compile(r'^(\\s+)([a-zA-Z\\/_]+)\\s+\\S+\\s+(.*)\\s+\\S+')\n", 149 | "ext_status = [indent_pat.match(l) for l in nbextensions if indent_pat.match(l) and len(indent_pat.match(l).group(1)) == 6]\n", 150 | "ext_status = dict([(m.group(2), m.group(3)) for m in ext_status])\n", 151 | "ext_status" 152 | ] 153 | }, 154 | { 155 | "cell_type": "code", 156 | "execution_count": 3, 157 | "metadata": { 158 | "lc_cell_meme": { 159 | "current": "a6b2f970-32b5-11e9-964e-0242ac110002", 160 | "history": [ 161 | { 162 | "current": "a6b2f970-32b5-11e9-964e-0242ac110002", 163 | "next": "8897b26a-32b4-11e9-964e-0242ac110002", 164 | "previous": "17a5a52a-32b5-11e9-964e-0242ac110002" 165 | } 166 | ], 167 | "next": "d0a730a2-32b5-11e9-964e-0242ac110002", 168 | "previous": "17a5a52a-32b5-11e9-964e-0242ac110002" 169 | } 170 | }, 171 | "outputs": [], 172 | "source": [ 173 | "assert ext_status['multi_outputs/main'] == 'enabled'\n", 174 | "assert ext_status['collapsible_headings/main'] == 'enabled'\n", 175 | "assert ext_status['nblineage/main'] == 'enabled'\n", 176 | "assert ext_status['run_through/main'] == 'enabled'\n", 177 | "assert ext_status['notebook_index/main'] == 'enabled'" 178 | ] 179 | }, 180 | { 181 | "cell_type": "code", 182 | "execution_count": null, 183 | "metadata": { 184 | "lc_cell_meme": { 185 | "current": "d0a730a2-32b5-11e9-964e-0242ac110002", 186 | "next": null, 187 | "previous": "a6b2f970-32b5-11e9-964e-0242ac110002" 188 | } 189 | }, 190 | "outputs": [], 191 | "source": [] 192 | } 193 | ], 194 | "metadata": { 195 | "kernelspec": { 196 | "display_name": "Python 3", 197 | "language": "python", 198 | "name": "python3" 199 | }, 200 | "language_info": { 201 | "file_extension": ".py", 202 | "mimetype": "text/x-python", 203 | "name": "python", 204 | "nbconvert_exporter": "python", 205 | "pygments_lexer": "ipython3", 206 | "version": "3.7.3" 207 | }, 208 | "lc_notebook_meme": { 209 | "current": "8897a806-32b4-11e9-964e-0242ac110002", 210 | "lc_server_signature": { 211 | "current": { 212 | "notebook_dir": "/home/jovyan", 213 | "notebook_path": "/sample-notebooks", 214 | "server_url": "http://localhost:8888/", 215 | "signature_id": "faa3f1b2-86aa-11e9-86e0-0242ac110002" 216 | }, 217 | "history": [ 218 | { 219 | "notebook_dir": "/notebooks", 220 | "notebook_path": "/", 221 | "server_url": "http://localhost:9999/", 222 | "signature_id": "355f8bcc-32b4-11e9-964e-0242ac110002" 223 | } 224 | ] 225 | } 226 | }, 227 | "toc": { 228 | "base_numbering": 1, 229 | "nav_menu": {}, 230 | "number_sections": true, 231 | "sideBar": true, 232 | "skip_h1_title": false, 233 | "title_cell": "Table of Contents", 234 | "title_sidebar": "Contents", 235 | "toc_cell": false, 236 | "toc_position": {}, 237 | "toc_section_display": true, 238 | "toc_window_display": false 239 | } 240 | }, 241 | "nbformat": 4, 242 | "nbformat_minor": 2 243 | } 244 | -------------------------------------------------------------------------------- /sample-notebooks/99_Test python3 env.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": { 6 | "lc_cell_meme": { 7 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 8 | "history": [ 9 | { 10 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 11 | "next": null, 12 | "previous": null 13 | }, 14 | { 15 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 16 | "next": "6d5d95aa-2927-11e9-b46c-0242ac110002", 17 | "previous": null 18 | }, 19 | { 20 | "current": "e9a77cf0-2924-11e9-b46c-0242ac110002", 21 | "next": "fc68b4b4-2927-11e9-b46c-0242ac110002", 22 | "previous": null 23 | } 24 | ], 25 | "next": "0430b086-32b3-11e9-808f-0242ac130002", 26 | "previous": null 27 | } 28 | }, 29 | "source": [ 30 | "このNotebookは、このイメージにインストールされたライブラリ/ツールが予期した通りにインストールされていることをチェックするものです。Travis CI上でpapermillにより実行されます。\n", 31 | "\n", 32 | "This notebooks tests whether the installed apps work expectedly, and can be executed by papermill on Travis CI." 33 | ] 34 | }, 35 | { 36 | "cell_type": "code", 37 | "execution_count": 1, 38 | "metadata": { 39 | "lc_cell_meme": { 40 | "current": "0430b086-32b3-11e9-808f-0242ac130002", 41 | "next": "fc68b4b4-2927-11e9-b46c-0242ac110002", 42 | "previous": "e9a77cf0-2924-11e9-b46c-0242ac110002" 43 | }, 44 | "lc_wrapper": { 45 | "log_history": [ 46 | "/home/jovyan/.log/20190423/20190423-080359-0674.log" 47 | ] 48 | } 49 | }, 50 | "outputs": [], 51 | "source": [ 52 | "import sys\n", 53 | "assert sys.version_info[0] == 3" 54 | ] 55 | }, 56 | { 57 | "cell_type": "markdown", 58 | "metadata": { 59 | "lc_cell_meme": { 60 | "current": "fc68b4b4-2927-11e9-b46c-0242ac110002", 61 | "history": [ 62 | { 63 | "current": "fc68b4b4-2927-11e9-b46c-0242ac110002", 64 | "next": "fc68b63a-2927-11e9-b46c-0242ac110002", 65 | "previous": "e9a77cf0-2924-11e9-b46c-0242ac110002" 66 | }, 67 | { 68 | "current": "fc68b4b4-2927-11e9-b46c-0242ac110002", 69 | "next": "8b7481e2-2928-11e9-b46c-0242ac110002", 70 | "previous": "e9a77cf0-2924-11e9-b46c-0242ac110002" 71 | } 72 | ], 73 | "next": "8b7481e2-2928-11e9-b46c-0242ac110002", 74 | "previous": "0430b086-32b3-11e9-808f-0242ac130002" 75 | } 76 | }, 77 | "source": [ 78 | "# Libraries" 79 | ] 80 | }, 81 | { 82 | "cell_type": "markdown", 83 | "metadata": { 84 | "lc_cell_meme": { 85 | "current": "8b7481e2-2928-11e9-b46c-0242ac110002", 86 | "next": "fc68b63a-2927-11e9-b46c-0242ac110002", 87 | "previous": "fc68b4b4-2927-11e9-b46c-0242ac110002" 88 | } 89 | }, 90 | "source": [ 91 | "numpy and matplotlib to draw charts" 92 | ] 93 | }, 94 | { 95 | "cell_type": "code", 96 | "execution_count": 2, 97 | "metadata": { 98 | "lc_cell_meme": { 99 | "current": "fc68b63a-2927-11e9-b46c-0242ac110002", 100 | "history": [ 101 | { 102 | "current": "fc68b63a-2927-11e9-b46c-0242ac110002", 103 | "next": "fc68b716-2927-11e9-b46c-0242ac110002", 104 | "previous": "fc68b4b4-2927-11e9-b46c-0242ac110002" 105 | } 106 | ], 107 | "next": "fc68b716-2927-11e9-b46c-0242ac110002", 108 | "previous": "8b7481e2-2928-11e9-b46c-0242ac110002" 109 | }, 110 | "lc_wrapper": { 111 | "log_history": [ 112 | "/notebooks/.log/20190205/20190205-092502-0406.log", 113 | "/notebooks/.log/20190205/20190205-094234-0264.log", 114 | "/home/jovyan/.log/20190423/20190423-080359-0688.log" 115 | ] 116 | } 117 | }, 118 | "outputs": [], 119 | "source": [ 120 | "%matplotlib inline" 121 | ] 122 | }, 123 | { 124 | "cell_type": "code", 125 | "execution_count": 3, 126 | "metadata": { 127 | "lc_cell_meme": { 128 | "current": "fc68b716-2927-11e9-b46c-0242ac110002", 129 | "history": [ 130 | { 131 | "current": "fc68b716-2927-11e9-b46c-0242ac110002", 132 | "next": "fc68b7de-2927-11e9-b46c-0242ac110002", 133 | "previous": "fc68b63a-2927-11e9-b46c-0242ac110002" 134 | } 135 | ], 136 | "next": "a98d3308-2929-11e9-b46c-0242ac110002", 137 | "previous": "fc68b63a-2927-11e9-b46c-0242ac110002" 138 | }, 139 | "lc_wrapper": { 140 | "log_history": [ 141 | "/notebooks/.log/20190205/20190205-092629-0411.log", 142 | "/notebooks/.log/20190205/20190205-092733-0710.log", 143 | "/notebooks/.log/20190205/20190205-092742-0845.log", 144 | "/notebooks/.log/20190205/20190205-092752-0476.log", 145 | "/notebooks/.log/20190205/20190205-092802-0318.log", 146 | "/notebooks/.log/20190205/20190205-092815-0327.log", 147 | "/notebooks/.log/20190205/20190205-092825-0227.log", 148 | "/notebooks/.log/20190205/20190205-094234-0447.log", 149 | "/home/jovyan/.log/20190423/20190423-080359-0888.log" 150 | ] 151 | } 152 | }, 153 | "outputs": [ 154 | { 155 | "data": { 156 | "text/plain": [ 157 | "[]" 158 | ] 159 | }, 160 | "execution_count": 3, 161 | "metadata": {}, 162 | "output_type": "execute_result" 163 | }, 164 | { 165 | "data": { 166 | "image/png": "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\n", 167 | "text/plain": [ 168 | "
" 169 | ] 170 | }, 171 | "metadata": { 172 | "needs_background": "light" 173 | }, 174 | "output_type": "display_data" 175 | } 176 | ], 177 | "source": [ 178 | "import matplotlib.pyplot as plt\n", 179 | "import numpy as np\n", 180 | "\n", 181 | "x = np.arange(0.0, 10.0, 0.1)\n", 182 | "plt.plot(x, np.sin(x))" 183 | ] 184 | }, 185 | { 186 | "cell_type": "markdown", 187 | "metadata": { 188 | "lc_cell_meme": { 189 | "current": "a98d3308-2929-11e9-b46c-0242ac110002", 190 | "next": "fc68b7de-2927-11e9-b46c-0242ac110002", 191 | "previous": "fc68b716-2927-11e9-b46c-0242ac110002" 192 | } 193 | }, 194 | "source": [ 195 | "pandas to display tables" 196 | ] 197 | }, 198 | { 199 | "cell_type": "code", 200 | "execution_count": 4, 201 | "metadata": { 202 | "lc_cell_meme": { 203 | "current": "fc68b7de-2927-11e9-b46c-0242ac110002", 204 | "history": [ 205 | { 206 | "current": "fc68b7de-2927-11e9-b46c-0242ac110002", 207 | "next": "6d5d95aa-2927-11e9-b46c-0242ac110002", 208 | "previous": "fc68b716-2927-11e9-b46c-0242ac110002" 209 | } 210 | ], 211 | "next": "6d5d95aa-2927-11e9-b46c-0242ac110002", 212 | "previous": "a98d3308-2929-11e9-b46c-0242ac110002" 213 | }, 214 | "lc_wrapper": { 215 | "log_history": [ 216 | "/notebooks/.log/20190205/20190205-092518-0209.log", 217 | "/notebooks/.log/20190205/20190205-092828-0212.log", 218 | "/notebooks/.log/20190205/20190205-094234-0622.log", 219 | "/home/jovyan/.log/20190423/20190423-080400-0045.log" 220 | ] 221 | } 222 | }, 223 | "outputs": [ 224 | { 225 | "data": { 226 | "text/html": [ 227 | "
\n", 228 | "\n", 241 | "\n", 242 | " \n", 243 | " \n", 244 | " \n", 245 | " \n", 246 | " \n", 247 | " \n", 248 | " \n", 249 | " \n", 250 | " \n", 251 | " \n", 252 | " \n", 253 | " \n", 254 | " \n", 255 | " \n", 256 | " \n", 257 | " \n", 258 | " \n", 259 | " \n", 260 | " \n", 261 | "
AB
001
123
\n", 262 | "
" 263 | ], 264 | "text/plain": [ 265 | " A B\n", 266 | "0 0 1\n", 267 | "1 2 3" 268 | ] 269 | }, 270 | "execution_count": 4, 271 | "metadata": {}, 272 | "output_type": "execute_result" 273 | } 274 | ], 275 | "source": [ 276 | "import pandas as pd\n", 277 | "\n", 278 | "pd.DataFrame([(0, 1), (2, 3)], columns=['A', 'B'])" 279 | ] 280 | }, 281 | { 282 | "cell_type": "markdown", 283 | "metadata": { 284 | "lc_cell_meme": { 285 | "current": "6d5d95aa-2927-11e9-b46c-0242ac110002", 286 | "history": [ 287 | { 288 | "current": "6d5d95aa-2927-11e9-b46c-0242ac110002", 289 | "next": "6d5d9758-2927-11e9-b46c-0242ac110002", 290 | "previous": "e9a77cf0-2924-11e9-b46c-0242ac110002" 291 | } 292 | ], 293 | "next": "6d5d9758-2927-11e9-b46c-0242ac110002", 294 | "previous": "fc68b7de-2927-11e9-b46c-0242ac110002" 295 | } 296 | }, 297 | "source": [ 298 | "# Utilities" 299 | ] 300 | }, 301 | { 302 | "cell_type": "code", 303 | "execution_count": 5, 304 | "metadata": { 305 | "lc_cell_meme": { 306 | "current": "6d5d9758-2927-11e9-b46c-0242ac110002", 307 | "history": [ 308 | { 309 | "current": "6d5d9758-2927-11e9-b46c-0242ac110002", 310 | "next": null, 311 | "previous": "6d5d95aa-2927-11e9-b46c-0242ac110002" 312 | } 313 | ], 314 | "next": "b4e35658-2927-11e9-b46c-0242ac110002", 315 | "previous": "6d5d95aa-2927-11e9-b46c-0242ac110002" 316 | }, 317 | "lc_wrapper": { 318 | "log_history": [ 319 | "/notebooks/.log/20190205/20190205-092211-0057.log", 320 | "/notebooks/.log/20190205/20190205-094234-0780.log", 321 | "/home/jovyan/.log/20190423/20190423-080400-0224.log" 322 | ] 323 | } 324 | }, 325 | "outputs": [ 326 | { 327 | "name": "stdout", 328 | "output_type": "stream", 329 | "text": [ 330 | "/opt/conda/bin/ansible\r\n" 331 | ] 332 | } 333 | ], 334 | "source": [ 335 | "!which ansible" 336 | ] 337 | }, 338 | { 339 | "cell_type": "code", 340 | "execution_count": 6, 341 | "metadata": { 342 | "lc_cell_meme": { 343 | "current": "b4e35658-2927-11e9-b46c-0242ac110002", 344 | "next": "b4e35aea-2927-11e9-b46c-0242ac110002", 345 | "previous": "6d5d9758-2927-11e9-b46c-0242ac110002" 346 | }, 347 | "lc_wrapper": { 348 | "log_history": [ 349 | "/notebooks/.log/20190205/20190205-092228-0139.log", 350 | "/notebooks/.log/20190205/20190205-094235-0129.log", 351 | "/home/jovyan/.log/20190423/20190423-080400-0569.log" 352 | ] 353 | } 354 | }, 355 | "outputs": [ 356 | { 357 | "name": "stdout", 358 | "output_type": "stream", 359 | "text": [ 360 | "/usr/bin/wget\r\n" 361 | ] 362 | } 363 | ], 364 | "source": [ 365 | "!which wget" 366 | ] 367 | }, 368 | { 369 | "cell_type": "code", 370 | "execution_count": 7, 371 | "metadata": { 372 | "lc_cell_meme": { 373 | "current": "b4e35aea-2927-11e9-b46c-0242ac110002", 374 | "next": "b4e35bd0-2927-11e9-b46c-0242ac110002", 375 | "previous": "b4e35658-2927-11e9-b46c-0242ac110002" 376 | }, 377 | "lc_wrapper": { 378 | "log_history": [ 379 | "/notebooks/.log/20190205/20190205-092236-0224.log", 380 | "/notebooks/.log/20190205/20190205-094235-0470.log", 381 | "/home/jovyan/.log/20190423/20190423-080400-0914.log" 382 | ] 383 | } 384 | }, 385 | "outputs": [ 386 | { 387 | "name": "stdout", 388 | "output_type": "stream", 389 | "text": [ 390 | "/usr/bin/curl\r\n" 391 | ] 392 | } 393 | ], 394 | "source": [ 395 | "!which curl" 396 | ] 397 | }, 398 | { 399 | "cell_type": "code", 400 | "execution_count": 8, 401 | "metadata": { 402 | "lc_cell_meme": { 403 | "current": "b4e35bd0-2927-11e9-b46c-0242ac110002", 404 | "history": [ 405 | { 406 | "current": "b4e35bd0-2927-11e9-b46c-0242ac110002", 407 | "next": "b4e35f68-2927-11e9-b46c-0242ac110002", 408 | "previous": "b4e35aea-2927-11e9-b46c-0242ac110002" 409 | } 410 | ], 411 | "next": "8b748372-2928-11e9-b46c-0242ac110002", 412 | "previous": "b4e35aea-2927-11e9-b46c-0242ac110002" 413 | }, 414 | "lc_wrapper": { 415 | "log_history": [ 416 | "/notebooks/.log/20190205/20190205-092330-0927.log", 417 | "/notebooks/.log/20190205/20190205-094235-0818.log", 418 | "/home/jovyan/.log/20190423/20190423-080401-0253.log" 419 | ] 420 | } 421 | }, 422 | "outputs": [ 423 | { 424 | "name": "stdout", 425 | "output_type": "stream", 426 | "text": [ 427 | "/opt/conda/bin/papermill\r\n" 428 | ] 429 | } 430 | ], 431 | "source": [ 432 | "!which papermill" 433 | ] 434 | }, 435 | { 436 | "cell_type": "code", 437 | "execution_count": 9, 438 | "metadata": { 439 | "lc_cell_meme": { 440 | "current": "8b748372-2928-11e9-b46c-0242ac110002", 441 | "history": [ 442 | { 443 | "current": "8b748372-2928-11e9-b46c-0242ac110002", 444 | "next": null, 445 | "previous": "b4e35f68-2927-11e9-b46c-0242ac110002" 446 | }, 447 | { 448 | "current": "8b748372-2928-11e9-b46c-0242ac110002", 449 | "next": null, 450 | "previous": "b4e35bd0-2927-11e9-b46c-0242ac110002" 451 | } 452 | ], 453 | "next": "5d1b28ca-659e-11e9-aa46-0242ac110002", 454 | "previous": "b4e35bd0-2927-11e9-b46c-0242ac110002" 455 | }, 456 | "lc_wrapper": { 457 | "log_history": [ 458 | "/home/jovyan/.log/20190423/20190423-080401-0587.log" 459 | ] 460 | } 461 | }, 462 | "outputs": [ 463 | { 464 | "name": "stdout", 465 | "output_type": "stream", 466 | "text": [ 467 | "/bin/ping\r\n" 468 | ] 469 | } 470 | ], 471 | "source": [ 472 | "!which ping" 473 | ] 474 | }, 475 | { 476 | "cell_type": "code", 477 | "execution_count": null, 478 | "metadata": { 479 | "lc_cell_meme": { 480 | "current": "5d1b28ca-659e-11e9-aa46-0242ac110002", 481 | "next": null, 482 | "previous": "8b748372-2928-11e9-b46c-0242ac110002" 483 | } 484 | }, 485 | "outputs": [], 486 | "source": [] 487 | } 488 | ], 489 | "metadata": { 490 | "kernelspec": { 491 | "display_name": "Python 3", 492 | "language": "python", 493 | "name": "python3" 494 | }, 495 | "language_info": { 496 | "file_extension": ".py", 497 | "mimetype": "text/x-python", 498 | "name": "python", 499 | "nbconvert_exporter": "python", 500 | "pygments_lexer": "ipython3", 501 | "version": "3.7.3" 502 | }, 503 | "lc_notebook_meme": { 504 | "current": "e9a77b2e-2924-11e9-b46c-0242ac110002", 505 | "lc_server_signature": { 506 | "current": { 507 | "notebook_dir": "/home/jovyan", 508 | "notebook_path": "/sample-notebooks", 509 | "server_url": "http://localhost:8888/", 510 | "signature_id": "faa3f1b2-86aa-11e9-86e0-0242ac110002" 511 | }, 512 | "history": [ 513 | { 514 | "notebook_dir": "/notebooks", 515 | "notebook_path": "/", 516 | "server_url": "http://localhost:9999/", 517 | "signature_id": "90e6b91e-2924-11e9-b46c-0242ac110002" 518 | }, 519 | { 520 | "notebook_dir": "/notebooks", 521 | "notebook_path": "/lc", 522 | "server_url": "http://localhost:8888/", 523 | "signature_id": "b23c7464-93a1-11e8-9980-0242ac130002" 524 | }, 525 | { 526 | "notebook_dir": "/notebooks", 527 | "notebook_path": "/", 528 | "server_url": "http://localhost:9999/", 529 | "signature_id": "b00a4f5c-32b3-11e9-8e9e-0242ac110002" 530 | }, 531 | { 532 | "notebook_dir": "/home/jovyan", 533 | "notebook_path": "/", 534 | "server_url": "http://localhost:8888/", 535 | "signature_id": "168d68ea-5fff-11e9-a589-0242ac110002" 536 | }, 537 | { 538 | "notebook_dir": "/home/jovyan", 539 | "notebook_path": "/", 540 | "server_url": "http://localhost:8888/", 541 | "signature_id": "502d2410-659e-11e9-aa46-0242ac110002" 542 | } 543 | ] 544 | } 545 | }, 546 | "toc": { 547 | "base_numbering": 1, 548 | "nav_menu": {}, 549 | "number_sections": true, 550 | "sideBar": true, 551 | "skip_h1_title": false, 552 | "title_cell": "Table of Contents", 553 | "title_sidebar": "Contents", 554 | "toc_cell": false, 555 | "toc_position": {}, 556 | "toc_section_display": true, 557 | "toc_window_display": false 558 | } 559 | }, 560 | "nbformat": 4, 561 | "nbformat_minor": 2 562 | } 563 | -------------------------------------------------------------------------------- /sample-notebooks/README.md: -------------------------------------------------------------------------------- 1 | # Jupyter Notebook for *Literate Computing for Reproducible Infrastructure* 2 | 3 | *Literate Computing for Reproducible Infrastructure(LC4RI)* 実践のためのJupyter Notebook環境です。 4 | 5 | https://literate-computing.github.io 6 | 7 | - [01_About NII Extensions - NII謹製の機能拡張について](01_About%20NII%20Extensions%20-%20NII謹製の機能拡張について.ipynb) 8 | - このNotebook環境にインストールされたツール類の説明です 9 | - [02_AWS操作用ツールのインストール](02_AWS操作用ツールのインストール.ipynb) 10 | - AWS CLIをこのJupyter Notebook環境にインストールし、利用可能にする例です 11 | - [03_Notebookの検索](03_Notebookの検索.ipynb) 12 | - NBSearch拡張を有効化し、Notebookの検索を行う例です 13 | -------------------------------------------------------------------------------- /sample-notebooks/images/LC_wrapper_mov-iloveimg-compressed.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/LC_wrapper_mov-iloveimg-compressed.gif -------------------------------------------------------------------------------- /sample-notebooks/images/LC_wrapper_mov.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/LC_wrapper_mov.gif -------------------------------------------------------------------------------- /sample-notebooks/images/literate_computing-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/literate_computing-logo.png -------------------------------------------------------------------------------- /sample-notebooks/images/multi_outputs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/multi_outputs.png -------------------------------------------------------------------------------- /sample-notebooks/images/run_through.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/run_through.png -------------------------------------------------------------------------------- /sample-notebooks/images/run_through_Frozen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/run_through_Frozen.png -------------------------------------------------------------------------------- /sample-notebooks/images/run_through_Frozen2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/run_through_Frozen2.png -------------------------------------------------------------------------------- /sample-notebooks/images/run_through_NG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/run_through_NG.png -------------------------------------------------------------------------------- /sample-notebooks/images/run_through_OK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NII-cloud-operation/Jupyter-LC_docker/e22ea2e31815db7d46e73b0ef92f73056a367e0a/sample-notebooks/images/run_through_OK.png -------------------------------------------------------------------------------- /sample-notebooks/resources/bootstrap.log: -------------------------------------------------------------------------------- 1 | gpgv: Signature made Sat May 6 05:15:04 2017 PDT 2 | gpgv: using RSA key 8B48AD6246925553 3 | gpgv: Good signature from "Debian Archive Automatic Signing Key (7.0/wheezy) " 4 | gpgv: Signature made Sat May 6 05:15:04 2017 PDT 5 | gpgv: using RSA key 7638D0442B90D010 6 | gpgv: Good signature from "Debian Archive Automatic Signing Key (8/jessie) " 7 | gpgv: Signature made Sat May 6 05:28:49 2017 PDT 8 | gpgv: using RSA key CBF8D6FD518E17E1 9 | gpgv: Good signature from "Jessie Stable Release Key " 10 | dpkg: warning: parsing file '/var/lib/dpkg/status' near line 5 package 'dpkg': 11 | missing description 12 | dpkg: warning: parsing file '/var/lib/dpkg/status' near line 5 package 'dpkg': 13 | missing architecture 14 | Selecting previously unselected package base-passwd. 15 | (Reading database ... 0 files and directories currently installed.) 16 | Preparing to unpack .../base-passwd_3.5.37_amd64.deb ... 17 | Unpacking base-passwd (3.5.37) ... 18 | dpkg: base-passwd: dependency problems, but configuring anyway as you requested: 19 | base-passwd depends on libc6 (>= 2.8); however: 20 | Package libc6 is not installed. 21 | base-passwd depends on libdebconfclient0 (>= 0.145); however: 22 | Package libdebconfclient0 is not installed. 23 | 24 | Setting up base-passwd (3.5.37) ... 25 | dpkg: warning: parsing file '/var/lib/dpkg/status' near line 24 package 'dpkg': 26 | missing description 27 | dpkg: warning: parsing file '/var/lib/dpkg/status' near line 24 package 'dpkg': 28 | missing architecture 29 | Selecting previously unselected package base-files. 30 | dpkg: regarding .../base-files_8+deb8u8_amd64.deb containing base-files, pre-dependency problem: 31 | base-files pre-depends on awk 32 | awk is not installed. 33 | 34 | dpkg: warning: ignoring pre-dependency problem! 35 | (Reading database ... 41 files and directories currently installed.) 36 | Preparing to unpack .../base-files_8+deb8u8_amd64.deb ... 37 | Unpacking base-files (8+deb8u8) ... 38 | dpkg: base-files: dependency problems, but configuring anyway as you requested: 39 | base-files depends on awk; however: 40 | Package awk is not installed. 41 | 42 | Setting up base-files (8+deb8u8) ... 43 | dpkg: warning: parsing file '/var/lib/dpkg/status' near line 50 package 'dpkg': 44 | missing description 45 | dpkg: warning: parsing file '/var/lib/dpkg/status' near line 50 package 'dpkg': 46 | missing architecture 47 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 48 | dpkg pre-depends on libbz2-1.0 49 | libbz2-1.0 is not installed. 50 | 51 | dpkg: warning: ignoring pre-dependency problem! 52 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 53 | dpkg pre-depends on libc6 (>= 2.14) 54 | libc6 is not installed. 55 | 56 | dpkg: warning: ignoring pre-dependency problem! 57 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 58 | dpkg pre-depends on liblzma5 (>= 5.1.1alpha+20120614) 59 | liblzma5 is not installed. 60 | 61 | dpkg: warning: ignoring pre-dependency problem! 62 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 63 | dpkg pre-depends on libselinux1 (>= 2.3) 64 | libselinux1 is not installed. 65 | 66 | dpkg: warning: ignoring pre-dependency problem! 67 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 68 | dpkg pre-depends on zlib1g (>= 1:1.1.4) 69 | zlib1g is not installed. 70 | 71 | dpkg: warning: ignoring pre-dependency problem! 72 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 73 | dpkg pre-depends on tar (>= 1.23) 74 | tar is not installed. 75 | 76 | dpkg: warning: ignoring pre-dependency problem! 77 | (Reading database ... 117 files and directories currently installed.) 78 | Preparing to unpack .../dpkg_1.17.27_amd64.deb ... 79 | Unpacking dpkg (1.17.27) over (1.17.27) ... 80 | dpkg: dpkg: dependency problems, but configuring anyway as you requested: 81 | dpkg depends on libbz2-1.0; however: 82 | Package libbz2-1.0 is not installed. 83 | dpkg depends on libc6 (>= 2.14); however: 84 | Package libc6 is not installed. 85 | dpkg depends on liblzma5 (>= 5.1.1alpha+20120614); however: 86 | Package liblzma5 is not installed. 87 | dpkg depends on libselinux1 (>= 2.3); however: 88 | Package libselinux1 is not installed. 89 | dpkg depends on zlib1g (>= 1:1.1.4); however: 90 | Package zlib1g is not installed. 91 | dpkg depends on tar (>= 1.23); however: 92 | Package tar is not installed. 93 | 94 | Setting up dpkg (1.17.27) ... 95 | Selecting previously unselected package libc6:amd64. 96 | (Reading database ... 380 files and directories currently installed.) 97 | Preparing to unpack .../libc6_2.19-18+deb8u9_amd64.deb ... 98 | Unpacking libc6:amd64 (2.19-18+deb8u9) ... 99 | dpkg: libc6:amd64: dependency problems, but configuring anyway as you requested: 100 | libc6:amd64 depends on libgcc1; however: 101 | Package libgcc1 is not installed. 102 | 103 | Setting up libc6:amd64 (2.19-18+deb8u9) ... 104 | Selecting previously unselected package perl-base. 105 | (Reading database ... 697 files and directories currently installed.) 106 | Preparing to unpack .../perl-base_5.20.2-3+deb8u6_amd64.deb ... 107 | Unpacking perl-base (5.20.2-3+deb8u6) ... 108 | Setting up perl-base (5.20.2-3+deb8u6) ... 109 | Selecting previously unselected package mawk. 110 | (Reading database ... 1272 files and directories currently installed.) 111 | Preparing to unpack .../mawk_1.3.3-17_amd64.deb ... 112 | Unpacking mawk (1.3.3-17) ... 113 | Setting up mawk (1.3.3-17) ... 114 | Selecting previously unselected package acl. 115 | (Reading database ... 1291 files and directories currently installed.) 116 | Preparing to unpack .../acl_2.2.52-2_amd64.deb ... 117 | Unpacking acl (2.2.52-2) ... 118 | Selecting previously unselected package libacl1:amd64. 119 | dpkg: regarding .../libacl1_2.2.52-2_amd64.deb containing libacl1:amd64, pre-dependency problem: 120 | libacl1 pre-depends on multiarch-support 121 | multiarch-support is not installed. 122 | 123 | dpkg: warning: ignoring pre-dependency problem! 124 | Preparing to unpack .../libacl1_2.2.52-2_amd64.deb ... 125 | Unpacking libacl1:amd64 (2.2.52-2) ... 126 | Selecting previously unselected package adduser. 127 | Preparing to unpack .../adduser_3.113+nmu3_all.deb ... 128 | Unpacking adduser (3.113+nmu3) ... 129 | Selecting previously unselected package libattr1:amd64. 130 | dpkg: regarding .../libattr1_1%3a2.4.47-2_amd64.deb containing libattr1:amd64, pre-dependency problem: 131 | libattr1 pre-depends on multiarch-support 132 | multiarch-support is not installed. 133 | 134 | dpkg: warning: ignoring pre-dependency problem! 135 | Preparing to unpack .../libattr1_1%3a2.4.47-2_amd64.deb ... 136 | Unpacking libattr1:amd64 (1:2.4.47-2) ... 137 | Selecting previously unselected package libaudit-common. 138 | Preparing to unpack .../libaudit-common_1%3a2.4-1_all.deb ... 139 | Unpacking libaudit-common (1:2.4-1) ... 140 | Selecting previously unselected package libaudit1:amd64. 141 | dpkg: regarding .../libaudit1_1%3a2.4-1+b1_amd64.deb containing libaudit1:amd64, pre-dependency problem: 142 | libaudit1 pre-depends on multiarch-support 143 | multiarch-support is not installed. 144 | 145 | dpkg: warning: ignoring pre-dependency problem! 146 | Preparing to unpack .../libaudit1_1%3a2.4-1+b1_amd64.deb ... 147 | Unpacking libaudit1:amd64 (1:2.4-1+b1) ... 148 | Preparing to unpack .../base-files_8+deb8u8_amd64.deb ... 149 | Unpacking base-files (8+deb8u8) over (8+deb8u8) ... 150 | Preparing to unpack .../base-passwd_3.5.37_amd64.deb ... 151 | Unpacking base-passwd (3.5.37) over (3.5.37) ... 152 | Selecting previously unselected package bash. 153 | dpkg: regarding .../bash_4.3-11+deb8u1_amd64.deb containing bash, pre-dependency problem: 154 | bash pre-depends on dash (>= 0.5.5.1-2.2) 155 | dash is not installed. 156 | 157 | dpkg: warning: ignoring pre-dependency problem! 158 | dpkg: regarding .../bash_4.3-11+deb8u1_amd64.deb containing bash, pre-dependency problem: 159 | bash pre-depends on libncurses5 (>= 5.5-5~) 160 | libncurses5 is not installed. 161 | 162 | dpkg: warning: ignoring pre-dependency problem! 163 | dpkg: regarding .../bash_4.3-11+deb8u1_amd64.deb containing bash, pre-dependency problem: 164 | bash pre-depends on libtinfo5 165 | libtinfo5 is not installed. 166 | 167 | dpkg: warning: ignoring pre-dependency problem! 168 | Preparing to unpack .../bash_4.3-11+deb8u1_amd64.deb ... 169 | Unpacking bash (4.3-11+deb8u1) ... 170 | Selecting previously unselected package libbz2-1.0:amd64. 171 | dpkg: regarding .../libbz2-1.0_1.0.6-7+b3_amd64.deb containing libbz2-1.0:amd64, pre-dependency problem: 172 | libbz2-1.0 pre-depends on multiarch-support 173 | multiarch-support is not installed. 174 | 175 | dpkg: warning: ignoring pre-dependency problem! 176 | Preparing to unpack .../libbz2-1.0_1.0.6-7+b3_amd64.deb ... 177 | Unpacking libbz2-1.0:amd64 (1.0.6-7+b3) ... 178 | Selecting previously unselected package libdebconfclient0:amd64. 179 | dpkg: regarding .../libdebconfclient0_0.192_amd64.deb containing libdebconfclient0:amd64, pre-dependency problem: 180 | libdebconfclient0 pre-depends on multiarch-support 181 | multiarch-support is not installed. 182 | 183 | dpkg: warning: ignoring pre-dependency problem! 184 | Preparing to unpack .../libdebconfclient0_0.192_amd64.deb ... 185 | Unpacking libdebconfclient0:amd64 (0.192) ... 186 | Selecting previously unselected package coreutils. 187 | dpkg: regarding .../coreutils_8.23-4_amd64.deb containing coreutils, pre-dependency problem: 188 | coreutils pre-depends on libacl1 (>= 2.2.51-8) 189 | libacl1:amd64 is unpacked, but has never been configured. 190 | 191 | dpkg: warning: ignoring pre-dependency problem! 192 | dpkg: regarding .../coreutils_8.23-4_amd64.deb containing coreutils, pre-dependency problem: 193 | coreutils pre-depends on libattr1 (>= 1:2.4.46-8) 194 | libattr1:amd64 is unpacked, but has never been configured. 195 | 196 | dpkg: warning: ignoring pre-dependency problem! 197 | dpkg: regarding .../coreutils_8.23-4_amd64.deb containing coreutils, pre-dependency problem: 198 | coreutils pre-depends on libselinux1 (>= 2.1.13) 199 | libselinux1 is not installed. 200 | 201 | dpkg: warning: ignoring pre-dependency problem! 202 | Preparing to unpack .../coreutils_8.23-4_amd64.deb ... 203 | Unpacking coreutils (8.23-4) ... 204 | Selecting previously unselected package libcryptsetup4:amd64. 205 | Preparing to unpack .../libcryptsetup4_2%3a1.6.6-5_amd64.deb ... 206 | Unpacking libcryptsetup4:amd64 (2:1.6.6-5) ... 207 | Selecting previously unselected package dash. 208 | Preparing to unpack .../dash_0.5.7-4+b1_amd64.deb ... 209 | Adding 'diversion of /bin/sh to /bin/sh.distrib by dash' 210 | Adding 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash' 211 | Unpacking dash (0.5.7-4+b1) ... 212 | Selecting previously unselected package libdb5.3:amd64. 213 | dpkg: regarding .../libdb5.3_5.3.28-9_amd64.deb containing libdb5.3:amd64, pre-dependency problem: 214 | libdb5.3 pre-depends on multiarch-support 215 | multiarch-support is not installed. 216 | 217 | dpkg: warning: ignoring pre-dependency problem! 218 | Preparing to unpack .../libdb5.3_5.3.28-9_amd64.deb ... 219 | Unpacking libdb5.3:amd64 (5.3.28-9) ... 220 | Selecting previously unselected package debconf. 221 | Preparing to unpack .../debconf_1.5.56_all.deb ... 222 | Unpacking debconf (1.5.56) ... 223 | Selecting previously unselected package debconf-i18n. 224 | Preparing to unpack .../debconf-i18n_1.5.56_all.deb ... 225 | Unpacking debconf-i18n (1.5.56) ... 226 | Selecting previously unselected package debianutils. 227 | Preparing to unpack .../debianutils_4.4+b1_amd64.deb ... 228 | Unpacking debianutils (4.4+b1) ... 229 | Selecting previously unselected package diffutils. 230 | Preparing to unpack .../diffutils_1%3a3.3-1+b1_amd64.deb ... 231 | Unpacking diffutils (1:3.3-1+b1) ... 232 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 233 | dpkg pre-depends on libbz2-1.0 234 | libbz2-1.0:amd64 is unpacked, but has never been configured. 235 | 236 | dpkg: warning: ignoring pre-dependency problem! 237 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 238 | dpkg pre-depends on liblzma5 (>= 5.1.1alpha+20120614) 239 | liblzma5 is not installed. 240 | 241 | dpkg: warning: ignoring pre-dependency problem! 242 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 243 | dpkg pre-depends on libselinux1 (>= 2.3) 244 | libselinux1 is not installed. 245 | 246 | dpkg: warning: ignoring pre-dependency problem! 247 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 248 | dpkg pre-depends on zlib1g (>= 1:1.1.4) 249 | zlib1g is not installed. 250 | 251 | dpkg: warning: ignoring pre-dependency problem! 252 | dpkg: regarding .../dpkg_1.17.27_amd64.deb containing dpkg, pre-dependency problem: 253 | dpkg pre-depends on tar (>= 1.23) 254 | tar is not installed. 255 | 256 | dpkg: warning: ignoring pre-dependency problem! 257 | Preparing to unpack .../dpkg_1.17.27_amd64.deb ... 258 | Unpacking dpkg (1.17.27) over (1.17.27) ... 259 | Selecting previously unselected package e2fslibs:amd64. 260 | dpkg: regarding .../e2fslibs_1.42.12-2+b1_amd64.deb containing e2fslibs:amd64, pre-dependency problem: 261 | e2fslibs pre-depends on multiarch-support 262 | multiarch-support is not installed. 263 | 264 | dpkg: warning: ignoring pre-dependency problem! 265 | Preparing to unpack .../e2fslibs_1.42.12-2+b1_amd64.deb ... 266 | Unpacking e2fslibs:amd64 (1.42.12-2+b1) ... 267 | Selecting previously unselected package e2fsprogs. 268 | dpkg: regarding .../e2fsprogs_1.42.12-2+b1_amd64.deb containing e2fsprogs, pre-dependency problem: 269 | e2fsprogs pre-depends on e2fslibs (= 1.42.12-2+b1) 270 | e2fslibs:amd64 is unpacked, but has never been configured. 271 | 272 | dpkg: warning: ignoring pre-dependency problem! 273 | dpkg: regarding .../e2fsprogs_1.42.12-2+b1_amd64.deb containing e2fsprogs, pre-dependency problem: 274 | e2fsprogs pre-depends on libblkid1 (>= 2.17.2) 275 | libblkid1 is not installed. 276 | 277 | dpkg: warning: ignoring pre-dependency problem! 278 | dpkg: regarding .../e2fsprogs_1.42.12-2+b1_amd64.deb containing e2fsprogs, pre-dependency problem: 279 | e2fsprogs pre-depends on libcomerr2 (>= 1.42~WIP-2011-10-05-1) 280 | libcomerr2 is not installed. 281 | 282 | dpkg: warning: ignoring pre-dependency problem! 283 | dpkg: regarding .../e2fsprogs_1.42.12-2+b1_amd64.deb containing e2fsprogs, pre-dependency problem: 284 | e2fsprogs pre-depends on libss2 (>= 1.34-1) 285 | libss2 is not installed. 286 | 287 | dpkg: warning: ignoring pre-dependency problem! 288 | dpkg: regarding .../e2fsprogs_1.42.12-2+b1_amd64.deb containing e2fsprogs, pre-dependency problem: 289 | e2fsprogs pre-depends on libuuid1 (>= 2.16) 290 | libuuid1 is not installed. 291 | 292 | dpkg: warning: ignoring pre-dependency problem! 293 | dpkg: regarding .../e2fsprogs_1.42.12-2+b1_amd64.deb containing e2fsprogs, pre-dependency problem: 294 | e2fsprogs pre-depends on util-linux (>= 2.15~rc1-1) 295 | util-linux is not installed. 296 | 297 | dpkg: warning: ignoring pre-dependency problem! 298 | Preparing to unpack .../e2fsprogs_1.42.12-2+b1_amd64.deb ... 299 | Unpacking e2fsprogs (1.42.12-2+b1) ... 300 | Selecting previously unselected package libcomerr2:amd64. 301 | dpkg: regarding .../libcomerr2_1.42.12-2+b1_amd64.deb containing libcomerr2:amd64, pre-dependency problem: 302 | libcomerr2 pre-depends on multiarch-support 303 | multiarch-support is not installed. 304 | 305 | dpkg: warning: ignoring pre-dependency problem! 306 | Preparing to unpack .../libcomerr2_1.42.12-2+b1_amd64.deb ... 307 | Unpacking libcomerr2:amd64 (1.42.12-2+b1) ... 308 | Selecting previously unselected package libss2:amd64. 309 | dpkg: regarding .../libss2_1.42.12-2+b1_amd64.deb containing libss2:amd64, pre-dependency problem: 310 | libss2 pre-depends on multiarch-support 311 | multiarch-support is not installed. 312 | 313 | dpkg: warning: ignoring pre-dependency problem! 314 | Preparing to unpack .../libss2_1.42.12-2+b1_amd64.deb ... 315 | Unpacking libss2:amd64 (1.42.12-2+b1) ... 316 | Selecting previously unselected package findutils. 317 | Preparing to unpack .../findutils_4.4.2-9+b1_amd64.deb ... 318 | Unpacking findutils (4.4.2-9+b1) ... 319 | Selecting previously unselected package gcc-4.8-base:amd64. 320 | Preparing to unpack .../gcc-4.8-base_4.8.4-1_amd64.deb ... 321 | Unpacking gcc-4.8-base:amd64 (4.8.4-1) ... 322 | Selecting previously unselected package gcc-4.9-base:amd64. 323 | Preparing to unpack .../gcc-4.9-base_4.9.2-10_amd64.deb ... 324 | Unpacking gcc-4.9-base:amd64 (4.9.2-10) ... 325 | Selecting previously unselected package libgcc1:amd64. 326 | dpkg: regarding .../libgcc1_1%3a4.9.2-10_amd64.deb containing libgcc1:amd64, pre-dependency problem: 327 | libgcc1 pre-depends on multiarch-support 328 | multiarch-support is not installed. 329 | 330 | dpkg: warning: ignoring pre-dependency problem! 331 | Preparing to unpack .../libgcc1_1%3a4.9.2-10_amd64.deb ... 332 | Unpacking libgcc1:amd64 (1:4.9.2-10) ... 333 | Selecting previously unselected package libc-bin. 334 | Preparing to unpack .../libc-bin_2.19-18+deb8u9_amd64.deb ... 335 | Unpacking libc-bin (2.19-18+deb8u9) ... 336 | Preparing to unpack .../libc6_2.19-18+deb8u9_amd64.deb ... 337 | Unpacking libc6:amd64 (2.19-18+deb8u9) over (2.19-18+deb8u9) ... 338 | Selecting previously unselected package multiarch-support. 339 | Preparing to unpack .../multiarch-support_2.19-18+deb8u9_amd64.deb ... 340 | Unpacking multiarch-support (2.19-18+deb8u9) ... 341 | Selecting previously unselected package grep. 342 | dpkg: regarding .../grep_2.20-4.1_amd64.deb containing grep, pre-dependency problem: 343 | grep pre-depends on libpcre3 (>= 1:8.35) 344 | libpcre3 is not installed. 345 | 346 | dpkg: warning: ignoring pre-dependency problem! 347 | Preparing to unpack .../grep_2.20-4.1_amd64.deb ... 348 | Unpacking grep (2.20-4.1) ... 349 | Selecting previously unselected package gzip. 350 | Preparing to unpack .../archives/gzip_1.6-4_amd64.deb ... 351 | Unpacking gzip (1.6-4) ... 352 | Selecting previously unselected package hostname. 353 | Preparing to unpack .../hostname_3.15_amd64.deb ... 354 | Unpacking hostname (3.15) ... 355 | Selecting previously unselected package init. 356 | dpkg: regarding .../archives/init_1.22_amd64.deb containing init, pre-dependency problem: 357 | init pre-depends on systemd-sysv | sysvinit-core | upstart 358 | systemd-sysv is not installed. 359 | sysvinit-core is not installed. 360 | upstart is not installed. 361 | 362 | dpkg: warning: ignoring pre-dependency problem! 363 | Preparing to unpack .../archives/init_1.22_amd64.deb ... 364 | Unpacking init (1.22) ... 365 | Selecting previously unselected package insserv. 366 | Preparing to unpack .../insserv_1.14.0-5_amd64.deb ... 367 | Unpacking insserv (1.14.0-5) ... 368 | Selecting previously unselected package libkmod2:amd64. 369 | dpkg: regarding .../libkmod2_18-3_amd64.deb containing libkmod2:amd64, pre-dependency problem: 370 | libkmod2 pre-depends on multiarch-support 371 | multiarch-support is unpacked, but has never been configured. 372 | 373 | dpkg: warning: ignoring pre-dependency problem! 374 | Preparing to unpack .../libkmod2_18-3_amd64.deb ... 375 | Unpacking libkmod2:amd64 (18-3) ... 376 | Selecting previously unselected package libcap2:amd64. 377 | dpkg: regarding .../libcap2_1%3a2.24-8_amd64.deb containing libcap2:amd64, pre-dependency problem: 378 | libcap2 pre-depends on multiarch-support 379 | multiarch-support is unpacked, but has never been configured. 380 | 381 | dpkg: warning: ignoring pre-dependency problem! 382 | Preparing to unpack .../libcap2_1%3a2.24-8_amd64.deb ... 383 | Unpacking libcap2:amd64 (1:2.24-8) ... 384 | Selecting previously unselected package libcap2-bin. 385 | Preparing to unpack .../libcap2-bin_1%3a2.24-8_amd64.deb ... 386 | Unpacking libcap2-bin (1:2.24-8) ... 387 | Selecting previously unselected package libgcrypt20:amd64. 388 | dpkg: regarding .../libgcrypt20_1.6.3-2+deb8u2_amd64.deb containing libgcrypt20:amd64, pre-dependency problem: 389 | libgcrypt20 pre-depends on multiarch-support 390 | multiarch-support is unpacked, but has never been configured. 391 | 392 | dpkg: warning: ignoring pre-dependency problem! 393 | Preparing to unpack .../libgcrypt20_1.6.3-2+deb8u2_amd64.deb ... 394 | Unpacking libgcrypt20:amd64 (1.6.3-2+deb8u2) ... 395 | Selecting previously unselected package libgpg-error0:amd64. 396 | dpkg: regarding .../libgpg-error0_1.17-3_amd64.deb containing libgpg-error0:amd64, pre-dependency problem: 397 | libgpg-error0 pre-depends on multiarch-support 398 | multiarch-support is unpacked, but has never been configured. 399 | 400 | dpkg: warning: ignoring pre-dependency problem! 401 | Preparing to unpack .../libgpg-error0_1.17-3_amd64.deb ... 402 | Unpacking libgpg-error0:amd64 (1.17-3) ... 403 | Selecting previously unselected package liblocale-gettext-perl. 404 | Preparing to unpack .../liblocale-gettext-perl_1.05-8+b1_amd64.deb ... 405 | Unpacking liblocale-gettext-perl (1.05-8+b1) ... 406 | Selecting previously unselected package libselinux1:amd64. 407 | dpkg: regarding .../libselinux1_2.3-2_amd64.deb containing libselinux1:amd64, pre-dependency problem: 408 | libselinux1 pre-depends on multiarch-support 409 | multiarch-support is unpacked, but has never been configured. 410 | 411 | dpkg: warning: ignoring pre-dependency problem! 412 | Preparing to unpack .../libselinux1_2.3-2_amd64.deb ... 413 | Unpacking libselinux1:amd64 (2.3-2) ... 414 | Selecting previously unselected package libsemanage-common. 415 | Preparing to unpack .../libsemanage-common_2.3-1_all.deb ... 416 | Unpacking libsemanage-common (2.3-1) ... 417 | Selecting previously unselected package libsemanage1:amd64. 418 | dpkg: regarding .../libsemanage1_2.3-1+b1_amd64.deb containing libsemanage1:amd64, pre-dependency problem: 419 | libsemanage1 pre-depends on multiarch-support 420 | multiarch-support is unpacked, but has never been configured. 421 | 422 | dpkg: warning: ignoring pre-dependency problem! 423 | Preparing to unpack .../libsemanage1_2.3-1+b1_amd64.deb ... 424 | Unpacking libsemanage1:amd64 (2.3-1+b1) ... 425 | Selecting previously unselected package libsepol1:amd64. 426 | dpkg: regarding .../libsepol1_2.3-2_amd64.deb containing libsepol1:amd64, pre-dependency problem: 427 | libsepol1 pre-depends on multiarch-support 428 | multiarch-support is unpacked, but has never been configured. 429 | 430 | dpkg: warning: ignoring pre-dependency problem! 431 | Preparing to unpack .../libsepol1_2.3-2_amd64.deb ... 432 | Unpacking libsepol1:amd64 (2.3-2) ... 433 | Selecting previously unselected package libtext-charwidth-perl. 434 | Preparing to unpack .../libtext-charwidth-perl_0.04-7+b3_amd64.deb ... 435 | Unpacking libtext-charwidth-perl (0.04-7+b3) ... 436 | Selecting previously unselected package libtext-iconv-perl. 437 | Preparing to unpack .../libtext-iconv-perl_1.7-5+b2_amd64.deb ... 438 | Unpacking libtext-iconv-perl (1.7-5+b2) ... 439 | Selecting previously unselected package libtext-wrapi18n-perl. 440 | Preparing to unpack .../libtext-wrapi18n-perl_0.06-7_all.deb ... 441 | Unpacking libtext-wrapi18n-perl (0.06-7) ... 442 | Selecting previously unselected package lsb-base. 443 | Preparing to unpack .../lsb-base_4.1+Debian13+nmu1_all.deb ... 444 | Unpacking lsb-base (4.1+Debian13+nmu1) ... 445 | Selecting previously unselected package dmsetup. 446 | Preparing to unpack .../dmsetup_2%3a1.02.90-2.2+deb8u1_amd64.deb ... 447 | Unpacking dmsetup (2:1.02.90-2.2+deb8u1) ... 448 | Selecting previously unselected package libdevmapper1.02.1:amd64. 449 | dpkg: regarding .../libdevmapper1.02.1_2%3a1.02.90-2.2+deb8u1_amd64.deb containing libdevmapper1.02.1:amd64, pre-dependency problem: 450 | libdevmapper1.02.1 pre-depends on multiarch-support 451 | multiarch-support is unpacked, but has never been configured. 452 | 453 | dpkg: warning: ignoring pre-dependency problem! 454 | Preparing to unpack .../libdevmapper1.02.1_2%3a1.02.90-2.2+deb8u1_amd64.deb ... 455 | Unpacking libdevmapper1.02.1:amd64 (2:1.02.90-2.2+deb8u1) ... 456 | Preparing to unpack .../mawk_1.3.3-17_amd64.deb ... 457 | Unpacking mawk (1.3.3-17) over (1.3.3-17) ... 458 | Selecting previously unselected package libncurses5:amd64. 459 | dpkg: regarding .../libncurses5_5.9+20140913-1+b1_amd64.deb containing libncurses5:amd64, pre-dependency problem: 460 | libncurses5 pre-depends on multiarch-support 461 | multiarch-support is unpacked, but has never been configured. 462 | 463 | dpkg: warning: ignoring pre-dependency problem! 464 | dpkg: regarding .../libncurses5_5.9+20140913-1+b1_amd64.deb containing libncurses5:amd64, pre-dependency problem: 465 | libncurses5 pre-depends on libtinfo5 (>= 5.9-3) 466 | libtinfo5 is not installed. 467 | 468 | dpkg: warning: ignoring pre-dependency problem! 469 | Preparing to unpack .../libncurses5_5.9+20140913-1+b1_amd64.deb ... 470 | Unpacking libncurses5:amd64 (5.9+20140913-1+b1) ... 471 | Selecting previously unselected package libncursesw5:amd64. 472 | dpkg: regarding .../libncursesw5_5.9+20140913-1+b1_amd64.deb containing libncursesw5:amd64, pre-dependency problem: 473 | libncursesw5 pre-depends on multiarch-support 474 | multiarch-support is unpacked, but has never been configured. 475 | 476 | dpkg: warning: ignoring pre-dependency problem! 477 | Preparing to unpack .../libncursesw5_5.9+20140913-1+b1_amd64.deb ... 478 | Unpacking libncursesw5:amd64 (5.9+20140913-1+b1) ... 479 | Selecting previously unselected package libtinfo5:amd64. 480 | dpkg: regarding .../libtinfo5_5.9+20140913-1+b1_amd64.deb containing libtinfo5:amd64, pre-dependency problem: 481 | libtinfo5 pre-depends on multiarch-support 482 | multiarch-support is unpacked, but has never been configured. 483 | 484 | dpkg: warning: ignoring pre-dependency problem! 485 | Preparing to unpack .../libtinfo5_5.9+20140913-1+b1_amd64.deb ... 486 | Unpacking libtinfo5:amd64 (5.9+20140913-1+b1) ... 487 | Selecting previously unselected package ncurses-base. 488 | Preparing to unpack .../ncurses-base_5.9+20140913-1_all.deb ... 489 | Unpacking ncurses-base (5.9+20140913-1) ... 490 | Selecting previously unselected package ncurses-bin. 491 | dpkg: regarding .../ncurses-bin_5.9+20140913-1+b1_amd64.deb containing ncurses-bin, pre-dependency problem: 492 | ncurses-bin pre-depends on libtinfo5 (>= 5.9+20130119) 493 | libtinfo5:amd64 is unpacked, but has never been configured. 494 | 495 | dpkg: warning: ignoring pre-dependency problem! 496 | Preparing to unpack .../ncurses-bin_5.9+20140913-1+b1_amd64.deb ... 497 | Unpacking ncurses-bin (5.9+20140913-1+b1) ... 498 | Selecting previously unselected package libpam-modules:amd64. 499 | dpkg: regarding .../libpam-modules_1.1.8-3.1+deb8u2_amd64.deb containing libpam-modules:amd64, pre-dependency problem: 500 | libpam-modules pre-depends on libaudit1 (>= 1:2.2.1) 501 | libaudit1:amd64 is unpacked, but has never been configured. 502 | 503 | dpkg: warning: ignoring pre-dependency problem! 504 | dpkg: regarding .../libpam-modules_1.1.8-3.1+deb8u2_amd64.deb containing libpam-modules:amd64, pre-dependency problem: 505 | libpam-modules pre-depends on libdb5.3 506 | libdb5.3:amd64 is unpacked, but has never been configured. 507 | 508 | dpkg: warning: ignoring pre-dependency problem! 509 | dpkg: regarding .../libpam-modules_1.1.8-3.1+deb8u2_amd64.deb containing libpam-modules:amd64, pre-dependency problem: 510 | libpam-modules pre-depends on libpam0g (>= 1.1.3-2) 511 | libpam0g is not installed. 512 | 513 | dpkg: warning: ignoring pre-dependency problem! 514 | dpkg: regarding .../libpam-modules_1.1.8-3.1+deb8u2_amd64.deb containing libpam-modules:amd64, pre-dependency problem: 515 | libpam-modules pre-depends on libselinux1 (>= 2.1.9) 516 | libselinux1:amd64 is unpacked, but has never been configured. 517 | 518 | dpkg: warning: ignoring pre-dependency problem! 519 | dpkg: regarding .../libpam-modules_1.1.8-3.1+deb8u2_amd64.deb containing libpam-modules:amd64, pre-dependency problem: 520 | libpam-modules pre-depends on debconf (>= 0.5) | debconf-2.0 521 | debconf is unpacked, but has never been configured. 522 | debconf provides debconf-2.0 but is unpacked but not configured. 523 | 524 | dpkg: warning: ignoring pre-dependency problem! 525 | dpkg: regarding .../libpam-modules_1.1.8-3.1+deb8u2_amd64.deb containing libpam-modules:amd64, pre-dependency problem: 526 | libpam-modules pre-depends on libpam-modules-bin (= 1.1.8-3.1+deb8u2) 527 | libpam-modules-bin is not installed. 528 | 529 | dpkg: warning: ignoring pre-dependency problem! 530 | Preparing to unpack .../libpam-modules_1.1.8-3.1+deb8u2_amd64.deb ... 531 | Unpacking libpam-modules:amd64 (1.1.8-3.1+deb8u2) ... 532 | Selecting previously unselected package libpam-modules-bin. 533 | Preparing to unpack .../libpam-modules-bin_1.1.8-3.1+deb8u2_amd64.deb ... 534 | Unpacking libpam-modules-bin (1.1.8-3.1+deb8u2) ... 535 | Selecting previously unselected package libpam-runtime. 536 | Preparing to unpack .../libpam-runtime_1.1.8-3.1+deb8u2_all.deb ... 537 | Unpacking libpam-runtime (1.1.8-3.1+deb8u2) ... 538 | Selecting previously unselected package libpam0g:amd64. 539 | dpkg: regarding .../libpam0g_1.1.8-3.1+deb8u2_amd64.deb containing libpam0g:amd64, pre-dependency problem: 540 | libpam0g pre-depends on multiarch-support 541 | multiarch-support is unpacked, but has never been configured. 542 | 543 | dpkg: warning: ignoring pre-dependency problem! 544 | Preparing to unpack .../libpam0g_1.1.8-3.1+deb8u2_amd64.deb ... 545 | Unpacking libpam0g:amd64 (1.1.8-3.1+deb8u2) ... 546 | Selecting previously unselected package libpcre3:amd64. 547 | dpkg: regarding .../libpcre3_2%3a8.35-3.3+deb8u4_amd64.deb containing libpcre3:amd64, pre-dependency problem: 548 | libpcre3 pre-depends on multiarch-support 549 | multiarch-support is unpacked, but has never been configured. 550 | 551 | dpkg: warning: ignoring pre-dependency problem! 552 | Preparing to unpack .../libpcre3_2%3a8.35-3.3+deb8u4_amd64.deb ... 553 | Unpacking libpcre3:amd64 (2:8.35-3.3+deb8u4) ... 554 | Preparing to unpack .../perl-base_5.20.2-3+deb8u6_amd64.deb ... 555 | Unpacking perl-base (5.20.2-3+deb8u6) over (5.20.2-3+deb8u6) ... 556 | Selecting previously unselected package libprocps3:amd64. 557 | dpkg: regarding .../libprocps3_2%3a3.3.9-9_amd64.deb containing libprocps3:amd64, pre-dependency problem: 558 | libprocps3 pre-depends on multiarch-support 559 | multiarch-support is unpacked, but has never been configured. 560 | 561 | dpkg: warning: ignoring pre-dependency problem! 562 | Preparing to unpack .../libprocps3_2%3a3.3.9-9_amd64.deb ... 563 | Unpacking libprocps3:amd64 (2:3.3.9-9) ... 564 | Selecting previously unselected package procps. 565 | Preparing to unpack .../procps_2%3a3.3.9-9_amd64.deb ... 566 | Unpacking procps (2:3.3.9-9) ... 567 | Selecting previously unselected package sed. 568 | dpkg: regarding .../sed_4.2.2-4+deb8u1_amd64.deb containing sed, pre-dependency problem: 569 | sed pre-depends on libselinux1 (>= 1.32) 570 | libselinux1:amd64 is unpacked, but has never been configured. 571 | 572 | dpkg: warning: ignoring pre-dependency problem! 573 | Preparing to unpack .../sed_4.2.2-4+deb8u1_amd64.deb ... 574 | Unpacking sed (4.2.2-4+deb8u1) ... 575 | Selecting previously unselected package sensible-utils. 576 | Preparing to unpack .../sensible-utils_0.0.9_all.deb ... 577 | Unpacking sensible-utils (0.0.9) ... 578 | Selecting previously unselected package login. 579 | dpkg: regarding .../login_1%3a4.2-3+deb8u3_amd64.deb containing login, pre-dependency problem: 580 | login pre-depends on libaudit1 (>= 1:2.2.1) 581 | libaudit1:amd64 is unpacked, but has never been configured. 582 | 583 | dpkg: warning: ignoring pre-dependency problem! 584 | dpkg: regarding .../login_1%3a4.2-3+deb8u3_amd64.deb containing login, pre-dependency problem: 585 | login pre-depends on libpam0g (>= 0.99.7.1) 586 | libpam0g:amd64 is unpacked, but has never been configured. 587 | 588 | dpkg: warning: ignoring pre-dependency problem! 589 | dpkg: regarding .../login_1%3a4.2-3+deb8u3_amd64.deb containing login, pre-dependency problem: 590 | login pre-depends on libpam-runtime 591 | libpam-runtime is unpacked, but has never been configured. 592 | 593 | dpkg: warning: ignoring pre-dependency problem! 594 | dpkg: regarding .../login_1%3a4.2-3+deb8u3_amd64.deb containing login, pre-dependency problem: 595 | login pre-depends on libpam-modules (>= 1.1.8-1) 596 | libpam-modules:amd64 is unpacked, but has never been configured. 597 | 598 | dpkg: warning: ignoring pre-dependency problem! 599 | Preparing to unpack .../login_1%3a4.2-3+deb8u3_amd64.deb ... 600 | Unpacking login (1:4.2-3+deb8u3) ... 601 | Selecting previously unselected package passwd. 602 | Preparing to unpack .../passwd_1%3a4.2-3+deb8u3_amd64.deb ... 603 | Unpacking passwd (1:4.2-3+deb8u3) ... 604 | Selecting previously unselected package libslang2:amd64. 605 | dpkg: regarding .../libslang2_2.3.0-2_amd64.deb containing libslang2:amd64, pre-dependency problem: 606 | libslang2 pre-depends on multiarch-support 607 | multiarch-support is unpacked, but has never been configured. 608 | 609 | dpkg: warning: ignoring pre-dependency problem! 610 | Preparing to unpack .../libslang2_2.3.0-2_amd64.deb ... 611 | Unpacking libslang2:amd64 (2.3.0-2) ... 612 | Selecting previously unselected package startpar. 613 | Preparing to unpack .../startpar_0.59-3_amd64.deb ... 614 | Unpacking startpar (0.59-3) ... 615 | Selecting previously unselected package libsystemd0:amd64. 616 | dpkg: regarding .../libsystemd0_215-17+deb8u7_amd64.deb containing libsystemd0:amd64, pre-dependency problem: 617 | libsystemd0 pre-depends on libgcrypt20 (>= 1.6.1) 618 | libgcrypt20:amd64 is unpacked, but has never been configured. 619 | 620 | dpkg: warning: ignoring pre-dependency problem! 621 | dpkg: regarding .../libsystemd0_215-17+deb8u7_amd64.deb containing libsystemd0:amd64, pre-dependency problem: 622 | libsystemd0 pre-depends on liblzma5 (>= 5.1.1alpha+20120614) 623 | liblzma5 is not installed. 624 | 625 | dpkg: warning: ignoring pre-dependency problem! 626 | dpkg: regarding .../libsystemd0_215-17+deb8u7_amd64.deb containing libsystemd0:amd64, pre-dependency problem: 627 | libsystemd0 pre-depends on multiarch-support 628 | multiarch-support is unpacked, but has never been configured. 629 | 630 | dpkg: warning: ignoring pre-dependency problem! 631 | Preparing to unpack .../libsystemd0_215-17+deb8u7_amd64.deb ... 632 | Unpacking libsystemd0:amd64 (215-17+deb8u7) ... 633 | Selecting previously unselected package libudev1:amd64. 634 | dpkg: regarding .../libudev1_215-17+deb8u7_amd64.deb containing libudev1:amd64, pre-dependency problem: 635 | libudev1 pre-depends on multiarch-support 636 | multiarch-support is unpacked, but has never been configured. 637 | 638 | dpkg: warning: ignoring pre-dependency problem! 639 | Preparing to unpack .../libudev1_215-17+deb8u7_amd64.deb ... 640 | Unpacking libudev1:amd64 (215-17+deb8u7) ... 641 | Selecting previously unselected package systemd. 642 | dpkg: regarding .../systemd_215-17+deb8u7_amd64.deb containing systemd, pre-dependency problem: 643 | systemd pre-depends on libgcrypt20 (>= 1.6.1) 644 | libgcrypt20:amd64 is unpacked, but has never been configured. 645 | 646 | dpkg: warning: ignoring pre-dependency problem! 647 | dpkg: regarding .../systemd_215-17+deb8u7_amd64.deb containing systemd, pre-dependency problem: 648 | systemd pre-depends on liblzma5 (>= 5.1.1alpha+20120614) 649 | liblzma5 is not installed. 650 | 651 | dpkg: warning: ignoring pre-dependency problem! 652 | dpkg: regarding .../systemd_215-17+deb8u7_amd64.deb containing systemd, pre-dependency problem: 653 | systemd pre-depends on libselinux1 (>= 1.32) 654 | libselinux1:amd64 is unpacked, but has never been configured. 655 | 656 | dpkg: warning: ignoring pre-dependency problem! 657 | Preparing to unpack .../systemd_215-17+deb8u7_amd64.deb ... 658 | Unpacking systemd (215-17+deb8u7) ... 659 | Selecting previously unselected package systemd-sysv. 660 | dpkg: regarding .../systemd-sysv_215-17+deb8u7_amd64.deb containing systemd-sysv, pre-dependency problem: 661 | systemd-sysv pre-depends on systemd 662 | systemd is unpacked, but has never been configured. 663 | 664 | dpkg: warning: ignoring pre-dependency problem! 665 | Preparing to unpack .../systemd-sysv_215-17+deb8u7_amd64.deb ... 666 | Unpacking systemd-sysv (215-17+deb8u7) ... 667 | Selecting previously unselected package udev. 668 | dpkg: regarding .../udev_215-17+deb8u7_amd64.deb containing udev, pre-dependency problem: 669 | udev pre-depends on debconf (>= 1.4.69) | debconf-2.0 670 | debconf is unpacked, but has never been configured. 671 | debconf provides debconf-2.0 but is unpacked but not configured. 672 | 673 | dpkg: warning: ignoring pre-dependency problem! 674 | Preparing to unpack .../udev_215-17+deb8u7_amd64.deb ... 675 | Unpacking udev (215-17+deb8u7) ... 676 | Selecting previously unselected package initscripts. 677 | Preparing to unpack .../initscripts_2.88dsf-59_amd64.deb ... 678 | Unpacking initscripts (2.88dsf-59) ... 679 | Selecting previously unselected package sysv-rc. 680 | Preparing to unpack .../sysv-rc_2.88dsf-59_all.deb ... 681 | Unpacking sysv-rc (2.88dsf-59) ... 682 | Selecting previously unselected package sysvinit-utils. 683 | Preparing to unpack .../sysvinit-utils_2.88dsf-59_amd64.deb ... 684 | Unpacking sysvinit-utils (2.88dsf-59) ... 685 | Selecting previously unselected package tar. 686 | dpkg: regarding .../tar_1.27.1-2+deb8u1_amd64.deb containing tar, pre-dependency problem: 687 | tar pre-depends on libacl1 (>= 2.2.51-8) 688 | libacl1:amd64 is unpacked, but has never been configured. 689 | 690 | dpkg: warning: ignoring pre-dependency problem! 691 | dpkg: regarding .../tar_1.27.1-2+deb8u1_amd64.deb containing tar, pre-dependency problem: 692 | tar pre-depends on libselinux1 (>= 1.32) 693 | libselinux1:amd64 is unpacked, but has never been configured. 694 | 695 | dpkg: warning: ignoring pre-dependency problem! 696 | Preparing to unpack .../tar_1.27.1-2+deb8u1_amd64.deb ... 697 | Unpacking tar (1.27.1-2+deb8u1) ... 698 | Selecting previously unselected package tzdata. 699 | Preparing to unpack .../tzdata_2017b-0+deb8u1_all.deb ... 700 | Unpacking tzdata (2017b-0+deb8u1) ... 701 | Selecting previously unselected package libustr-1.0-1:amd64. 702 | dpkg: regarding .../libustr-1.0-1_1.0.4-3+b2_amd64.deb containing libustr-1.0-1:amd64, pre-dependency problem: 703 | libustr-1.0-1 pre-depends on multiarch-support 704 | multiarch-support is unpacked, but has never been configured. 705 | 706 | dpkg: warning: ignoring pre-dependency problem! 707 | Preparing to unpack .../libustr-1.0-1_1.0.4-3+b2_amd64.deb ... 708 | Unpacking libustr-1.0-1:amd64 (1.0.4-3+b2) ... 709 | Selecting previously unselected package bsdutils. 710 | dpkg: regarding .../bsdutils_1%3a2.25.2-6_amd64.deb containing bsdutils, pre-dependency problem: 711 | bsdutils pre-depends on libsystemd0 712 | libsystemd0:amd64 is unpacked, but has never been configured. 713 | 714 | dpkg: warning: ignoring pre-dependency problem! 715 | Preparing to unpack .../bsdutils_1%3a2.25.2-6_amd64.deb ... 716 | Unpacking bsdutils (1:2.25.2-6) ... 717 | Selecting previously unselected package libblkid1:amd64. 718 | dpkg: regarding .../libblkid1_2.25.2-6_amd64.deb containing libblkid1:amd64, pre-dependency problem: 719 | libblkid1 pre-depends on multiarch-support 720 | multiarch-support is unpacked, but has never been configured. 721 | 722 | dpkg: warning: ignoring pre-dependency problem! 723 | Preparing to unpack .../libblkid1_2.25.2-6_amd64.deb ... 724 | Unpacking libblkid1:amd64 (2.25.2-6) ... 725 | Selecting previously unselected package libmount1:amd64. 726 | dpkg: regarding .../libmount1_2.25.2-6_amd64.deb containing libmount1:amd64, pre-dependency problem: 727 | libmount1 pre-depends on multiarch-support 728 | multiarch-support is unpacked, but has never been configured. 729 | 730 | dpkg: warning: ignoring pre-dependency problem! 731 | Preparing to unpack .../libmount1_2.25.2-6_amd64.deb ... 732 | Unpacking libmount1:amd64 (2.25.2-6) ... 733 | Selecting previously unselected package libsmartcols1:amd64. 734 | dpkg: regarding .../libsmartcols1_2.25.2-6_amd64.deb containing libsmartcols1:amd64, pre-dependency problem: 735 | libsmartcols1 pre-depends on multiarch-support 736 | multiarch-support is unpacked, but has never been configured. 737 | 738 | dpkg: warning: ignoring pre-dependency problem! 739 | Preparing to unpack .../libsmartcols1_2.25.2-6_amd64.deb ... 740 | Unpacking libsmartcols1:amd64 (2.25.2-6) ... 741 | Selecting previously unselected package libuuid1:amd64. 742 | dpkg: regarding .../libuuid1_2.25.2-6_amd64.deb containing libuuid1:amd64, pre-dependency problem: 743 | libuuid1 pre-depends on multiarch-support 744 | multiarch-support is unpacked, but has never been configured. 745 | 746 | dpkg: warning: ignoring pre-dependency problem! 747 | Preparing to unpack .../libuuid1_2.25.2-6_amd64.deb ... 748 | Unpacking libuuid1:amd64 (2.25.2-6) ... 749 | Selecting previously unselected package mount. 750 | dpkg: regarding .../mount_2.25.2-6_amd64.deb containing mount, pre-dependency problem: 751 | mount pre-depends on libmount1 (>= 2.25) 752 | libmount1:amd64 is unpacked, but has never been configured. 753 | 754 | dpkg: warning: ignoring pre-dependency problem! 755 | dpkg: regarding .../mount_2.25.2-6_amd64.deb containing mount, pre-dependency problem: 756 | mount pre-depends on libselinux1 (>= 2.0.15) 757 | libselinux1:amd64 is unpacked, but has never been configured. 758 | 759 | dpkg: warning: ignoring pre-dependency problem! 760 | dpkg: regarding .../mount_2.25.2-6_amd64.deb containing mount, pre-dependency problem: 761 | mount pre-depends on libsmartcols1 (>= 2.25) 762 | libsmartcols1:amd64 is unpacked, but has never been configured. 763 | 764 | dpkg: warning: ignoring pre-dependency problem! 765 | Preparing to unpack .../mount_2.25.2-6_amd64.deb ... 766 | Unpacking mount (2.25.2-6) ... 767 | Selecting previously unselected package util-linux. 768 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 769 | util-linux pre-depends on libblkid1 (>= 2.25) 770 | libblkid1:amd64 is unpacked, but has never been configured. 771 | 772 | dpkg: warning: ignoring pre-dependency problem! 773 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 774 | util-linux pre-depends on libmount1 (>= 2.25) 775 | libmount1:amd64 is unpacked, but has never been configured. 776 | 777 | dpkg: warning: ignoring pre-dependency problem! 778 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 779 | util-linux pre-depends on libncurses5 (>= 5.5-5~) 780 | libncurses5:amd64 is unpacked, but has never been configured. 781 | 782 | dpkg: warning: ignoring pre-dependency problem! 783 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 784 | util-linux pre-depends on libpam0g (>= 0.99.7.1) 785 | libpam0g:amd64 is unpacked, but has never been configured. 786 | 787 | dpkg: warning: ignoring pre-dependency problem! 788 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 789 | util-linux pre-depends on libselinux1 (>= 1.32) 790 | libselinux1:amd64 is unpacked, but has never been configured. 791 | 792 | dpkg: warning: ignoring pre-dependency problem! 793 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 794 | util-linux pre-depends on libslang2 (>= 2.2.4) 795 | libslang2:amd64 is unpacked, but has never been configured. 796 | 797 | dpkg: warning: ignoring pre-dependency problem! 798 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 799 | util-linux pre-depends on libsmartcols1 (>= 2.25) 800 | libsmartcols1:amd64 is unpacked, but has never been configured. 801 | 802 | dpkg: warning: ignoring pre-dependency problem! 803 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 804 | util-linux pre-depends on libtinfo5 805 | libtinfo5:amd64 is unpacked, but has never been configured. 806 | 807 | dpkg: warning: ignoring pre-dependency problem! 808 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 809 | util-linux pre-depends on libuuid1 (>= 2.16) 810 | libuuid1:amd64 is unpacked, but has never been configured. 811 | 812 | dpkg: warning: ignoring pre-dependency problem! 813 | dpkg: regarding .../util-linux_2.25.2-6_amd64.deb containing util-linux, pre-dependency problem: 814 | util-linux pre-depends on zlib1g (>= 1:1.1.4) 815 | zlib1g is not installed. 816 | 817 | dpkg: warning: ignoring pre-dependency problem! 818 | Preparing to unpack .../util-linux_2.25.2-6_amd64.deb ... 819 | Unpacking util-linux (2.25.2-6) ... 820 | Selecting previously unselected package liblzma5:amd64. 821 | dpkg: regarding .../liblzma5_5.1.1alpha+20120614-2+b3_amd64.deb containing liblzma5:amd64, pre-dependency problem: 822 | liblzma5 pre-depends on multiarch-support 823 | multiarch-support is unpacked, but has never been configured. 824 | 825 | dpkg: warning: ignoring pre-dependency problem! 826 | Preparing to unpack .../liblzma5_5.1.1alpha+20120614-2+b3_amd64.deb ... 827 | Unpacking liblzma5:amd64 (5.1.1alpha+20120614-2+b3) ... 828 | Selecting previously unselected package zlib1g:amd64. 829 | dpkg: regarding .../zlib1g_1%3a1.2.8.dfsg-2+b1_amd64.deb containing zlib1g:amd64, pre-dependency problem: 830 | zlib1g pre-depends on multiarch-support 831 | multiarch-support is unpacked, but has never been configured. 832 | 833 | dpkg: warning: ignoring pre-dependency problem! 834 | Preparing to unpack .../zlib1g_1%3a1.2.8.dfsg-2+b1_amd64.deb ... 835 | Unpacking zlib1g:amd64 (1:1.2.8.dfsg-2+b1) ... 836 | Setting up gcc-4.8-base:amd64 (4.8.4-1) ... 837 | Setting up lsb-base (4.1+Debian13+nmu1) ... 838 | Setting up sensible-utils (0.0.9) ... 839 | Setting up ncurses-base (5.9+20140913-1) ... 840 | Setting up libsemanage-common (2.3-1) ... 841 | Setting up gcc-4.9-base:amd64 (4.9.2-10) ... 842 | Setting up libaudit-common (1:2.4-1) ... 843 | Setting up libc6:amd64 (2.19-18+deb8u9) ... 844 | Setting up startpar (0.59-3) ... 845 | Setting up libc-bin (2.19-18+deb8u9) ... 846 | Setting up diffutils (1:3.3-1+b1) ... 847 | Setting up insserv (1.14.0-5) ... 848 | Setting up findutils (4.4.2-9+b1) ... 849 | Setting up debianutils (4.4+b1) ... 850 | Setting up hostname (3.15) ... 851 | Setting up multiarch-support (2.19-18+deb8u9) ... 852 | Setting up mawk (1.3.3-17) ... 853 | Setting up libprocps3:amd64 (2:3.3.9-9) ... 854 | Setting up libpcre3:amd64 (2:8.35-3.3+deb8u4) ... 855 | Setting up libbz2-1.0:amd64 (1.0.6-7+b3) ... 856 | Setting up libkmod2:amd64 (18-3) ... 857 | Setting up libgpg-error0:amd64 (1.17-3) ... 858 | Setting up base-files (8+deb8u8) ... 859 | Setting up libdebconfclient0:amd64 (0.192) ... 860 | Setting up libselinux1:amd64 (2.3-2) ... 861 | Setting up libcomerr2:amd64 (1.42.12-2+b1) ... 862 | Setting up libslang2:amd64 (2.3.0-2) ... 863 | Setting up libsepol1:amd64 (2.3-2) ... 864 | Setting up libgcc1:amd64 (1:4.9.2-10) ... 865 | Setting up libustr-1.0-1:amd64 (1.0.4-3+b2) ... 866 | Setting up libsmartcols1:amd64 (2.25.2-6) ... 867 | Setting up libaudit1:amd64 (1:2.4-1+b1) ... 868 | Setting up libtinfo5:amd64 (5.9+20140913-1+b1) ... 869 | Setting up libudev1:amd64 (215-17+deb8u7) ... 870 | Setting up libattr1:amd64 (1:2.4.47-2) ... 871 | Setting up libss2:amd64 (1.42.12-2+b1) ... 872 | Setting up liblzma5:amd64 (5.1.1alpha+20120614-2+b3) ... 873 | Setting up base-passwd (3.5.37) ... 874 | Setting up e2fslibs:amd64 (1.42.12-2+b1) ... 875 | Setting up libgcrypt20:amd64 (1.6.3-2+deb8u2) ... 876 | Setting up libncursesw5:amd64 (5.9+20140913-1+b1) ... 877 | Setting up libdb5.3:amd64 (5.3.28-9) ... 878 | Setting up zlib1g:amd64 (1:1.2.8.dfsg-2+b1) ... 879 | Setting up libcap2:amd64 (1:2.24-8) ... 880 | Setting up libsystemd0:amd64 (215-17+deb8u7) ... 881 | Setting up libdevmapper1.02.1:amd64 (2:1.02.90-2.2+deb8u1) ... 882 | Setting up libsemanage1:amd64 (2.3-1+b1) ... 883 | Setting up sysvinit-utils (2.88dsf-59) ... 884 | Setting up libacl1:amd64 (2.2.52-2) ... 885 | Setting up ncurses-bin (5.9+20140913-1+b1) ... 886 | Setting up acl (2.2.52-2) ... 887 | Setting up libncurses5:amd64 (5.9+20140913-1+b1) ... 888 | Setting up libcap2-bin (1:2.24-8) ... 889 | Setting up bsdutils (1:2.25.2-6) ... 890 | Setting up coreutils (8.23-4) ... 891 | Setting up tar (1.27.1-2+deb8u1) ... 892 | update-alternatives: using /usr/sbin/rmt-tar to provide /usr/sbin/rmt (rmt) in auto mode 893 | Setting up dpkg (1.17.27) ... 894 | Setting up sed (4.2.2-4+deb8u1) ... 895 | Setting up perl-base (5.20.2-3+deb8u6) ... 896 | Setting up grep (2.20-4.1) ... 897 | Setting up debconf (1.5.56) ... 898 | Setting up tzdata (2017b-0+deb8u1) ... 899 | 900 | Current default time zone: 'Etc/UTC' 901 | Local time is now: Mon May 8 21:56:06 UTC 2017. 902 | Universal Time is now: Mon May 8 21:56:06 UTC 2017. 903 | Run 'dpkg-reconfigure tzdata' if you wish to change it. 904 | 905 | Setting up gzip (1.6-4) ... 906 | Setting up dash (0.5.7-4+b1) ... 907 | Setting up libtext-iconv-perl (1.7-5+b2) ... 908 | Setting up sysv-rc (2.88dsf-59) ... 909 | Setting up liblocale-gettext-perl (1.05-8+b1) ... 910 | Setting up libtext-charwidth-perl (0.04-7+b3) ... 911 | Setting up libpam0g:amd64 (1.1.8-3.1+deb8u2) ... 912 | Setting up libpam-modules-bin (1.1.8-3.1+deb8u2) ... 913 | Setting up bash (4.3-11+deb8u1) ... 914 | update-alternatives: using /usr/share/man/man7/bash-builtins.7.gz to provide /usr/share/man/man7/builtins.7.gz (builtins.7.gz) in auto mode 915 | Setting up libtext-wrapi18n-perl (0.06-7) ... 916 | Setting up libpam-modules:amd64 (1.1.8-3.1+deb8u2) ... 917 | Setting up libpam-runtime (1.1.8-3.1+deb8u2) ... 918 | Setting up debconf-i18n (1.5.56) ... 919 | Setting up passwd (1:4.2-3+deb8u3) ... 920 | Shadow passwords are now on. 921 | Setting up login (1:4.2-3+deb8u3) ... 922 | Setting up adduser (3.113+nmu3) ... 923 | Setting up libuuid1:amd64 (2.25.2-6) ... 924 | Setting up libblkid1:amd64 (2.25.2-6) ... 925 | Setting up libmount1:amd64 (2.25.2-6) ... 926 | Setting up libcryptsetup4:amd64 (2:1.6.6-5) ... 927 | Setting up mount (2.25.2-6) ... 928 | Setting up initscripts (2.88dsf-59) ... 929 | invoke-rc.d: policy-rc.d denied execution of start. 930 | Setting up util-linux (2.25.2-6) ... 931 | update-alternatives: using /bin/more to provide /usr/bin/pager (pager) in auto mode 932 | Setting up e2fsprogs (1.42.12-2+b1) ... 933 | Setting up procps (2:3.3.9-9) ... 934 | update-alternatives: using /usr/bin/w.procps to provide /usr/bin/w (w) in auto mode 935 | invoke-rc.d: policy-rc.d denied execution of start. 936 | Setting up udev (215-17+deb8u7) ... 937 | Adding group `input' (GID 101) ... 938 | Done. 939 | A chroot environment has been detected, udev not started. 940 | Setting up systemd (215-17+deb8u7) ... 941 | Initializing machine ID from random generator. 942 | Adding group `systemd-journal' (GID 102) ... 943 | Done. 944 | Created symlink from /etc/systemd/system/getty.target.wants/getty@tty1.service to /lib/systemd/system/getty@.service. 945 | Created symlink from /etc/systemd/system/multi-user.target.wants/remote-fs.target to /lib/systemd/system/remote-fs.target. 946 | Created symlink from /etc/systemd/system/reboot.target.wants/hwclock-save.service to /lib/systemd/system/hwclock-save.service. 947 | Created symlink from /etc/systemd/system/halt.target.wants/hwclock-save.service to /lib/systemd/system/hwclock-save.service. 948 | Created symlink from /etc/systemd/system/poweroff.target.wants/hwclock-save.service to /lib/systemd/system/hwclock-save.service. 949 | Setting up dmsetup (2:1.02.90-2.2+deb8u1) ... 950 | Setting up systemd-sysv (215-17+deb8u7) ... 951 | Setting up init (1.22) ... 952 | Processing triggers for libc-bin (2.19-18+deb8u9) ... 953 | (Reading database ... 7073 files and directories currently installed.) 954 | Preparing to unpack .../apt_1.0.9.8.4_amd64.deb ... 955 | Unpacking apt (1.0.9.8.4) ... 956 | Preparing to unpack .../libapt-pkg4.12_1.0.9.8.4_amd64.deb ... 957 | Unpacking libapt-pkg4.12:amd64 (1.0.9.8.4) ... 958 | Preparing to unpack .../debian-archive-keyring_2014.3_all.deb ... 959 | Unpacking debian-archive-keyring (2014.3) ... 960 | Preparing to unpack .../libstdc++6_4.9.2-10_amd64.deb ... 961 | Unpacking libstdc++6:amd64 (4.9.2-10) ... 962 | Preparing to unpack .../gnupg_1.4.18-7+deb8u3_amd64.deb ... 963 | Unpacking gnupg (1.4.18-7+deb8u3) ... 964 | Preparing to unpack .../gpgv_1.4.18-7+deb8u3_amd64.deb ... 965 | Unpacking gpgv (1.4.18-7+deb8u3) ... 966 | Preparing to unpack .../inetutils-ping_2%3a1.9.2.39.3a460-3_amd64.deb ... 967 | Unpacking inetutils-ping (2:1.9.2.39.3a460-3) ... 968 | Preparing to unpack .../iproute2_3.16.0-2_amd64.deb ... 969 | Unpacking iproute2 (3.16.0-2) ... 970 | Preparing to unpack .../libusb-0.1-4_2%3a0.1.12-25_amd64.deb ... 971 | Unpacking libusb-0.1-4:amd64 (2:0.1.12-25) ... 972 | Preparing to unpack .../archives/netbase_5.3_all.deb ... 973 | Unpacking netbase (5.3) ... 974 | Preparing to unpack .../libreadline6_6.3-8+b3_amd64.deb ... 975 | Unpacking libreadline6:amd64 (6.3-8+b3) ... 976 | Preparing to unpack .../readline-common_6.3-8_all.deb ... 977 | Unpacking readline-common (6.3-8) ... 978 | Setting up readline-common (6.3-8) ... 979 | Setting up gpgv (1.4.18-7+deb8u3) ... 980 | Setting up iproute2 (3.16.0-2) ... 981 | Setting up debian-archive-keyring (2014.3) ... 982 | Setting up libstdc++6:amd64 (4.9.2-10) ... 983 | Setting up libapt-pkg4.12:amd64 (1.0.9.8.4) ... 984 | Setting up libusb-0.1-4:amd64 (2:0.1.12-25) ... 985 | Setting up libreadline6:amd64 (6.3-8+b3) ... 986 | Setting up netbase (5.3) ... 987 | Setting up inetutils-ping (2:1.9.2.39.3a460-3) ... 988 | Setting up gnupg (1.4.18-7+deb8u3) ... 989 | Setting up apt (1.0.9.8.4) ... 990 | Processing triggers for libc-bin (2.19-18+deb8u9) ... 991 | --------------------------------------------------------------------------------