From 49973291c4f2cd9b97ac90c3bbd0cb32a4ea9324 Mon Sep 17 00:00:00 2001 From: Denis Lehmann Date: Thu, 11 Mar 2021 13:03:41 +0100 Subject: [PATCH] add logging --- README.org | 15 ++++++++++----- node_environment/shell.nix | 26 ++++++++++++++++++++++++-- python_environment/shell.nix | 19 +++++++++++++++++++ 3 files changed, 53 insertions(+), 7 deletions(-) diff --git a/README.org b/README.org index 39eebe3..47d8e80 100644 --- a/README.org +++ b/README.org @@ -10,14 +10,19 @@ ** node_environment - 1. Create a directory =.npm= - 2. If the file =global_packages.txt= is present, install the packages via *npm* globally in the =.npm= directory - 3. Run ~npm install~ if a file =package.json= is present - 4. Add the =.npm= directory to the ~$PATH~ variable + 1. Create a directory =.npm/bin= if not existent + 2. Add the =.npm/bin= directory to the ~$PATH~ variable + 3. Upgrade npm to the latest version + 4. If the file =global_packages.txt= is present, install the packages via npm into the =.npm= directory + 5. Run ~npm install~ if a file =package.json= is present ** python_environment - 1. Create a new python virtualenv in the folder =.venv= + 1. Create a new python virtualenv in the folder =.venv= if not existent 2. Source the virtual environment 3. Upgrade pip to the latest version 4. If present, install the packages from the file =requirements.txt= via pip + +** rust_environment + + 1. Run ~cargo build~ if =Cargo.toml= is present diff --git a/node_environment/shell.nix b/node_environment/shell.nix index 8979379..ed68d7c 100644 --- a/node_environment/shell.nix +++ b/node_environment/shell.nix @@ -5,13 +5,35 @@ pkgs.mkShell { nodejs ]; shellHook = '' - mkdir -p .npm + function log_header { + echo -ne "==> \e[32m\e[1m$1\e[0m\n\n" + } + function log_subheader { + echo -ne "--> \e[33m\e[1m$1\e[0m\n\n" + } + function log { + echo -ne " $1\n" + } + + echo "" + log_header "node_environment" + mkdir -p .npm/bin + export PATH=$PWD/.npm/bin:$PATH + log_subheader "upgrading npm" + npm install -g npm --prefix $PWD/.npm + echo "" if [ -s global_packages.txt ]; then + log_subheader "found global_packages.txt, installing packages" cat global_packages.txt | xargs npm install -g --prefix $PWD/.npm + echo "" fi if [ -s package.json ]; then + log_subheader "found package.json, running 'npm install'" npm install + echo "" fi - export PATH=$PWD/.npm/bin:$PATH + log_header "package versions" + log "node $(node --version)" + log "npm $(npm --version)" ''; } diff --git a/python_environment/shell.nix b/python_environment/shell.nix index 378fe0f..19883f6 100644 --- a/python_environment/shell.nix +++ b/python_environment/shell.nix @@ -6,13 +6,32 @@ pkgs.mkShell { python3Packages.virtualenv ]; shellHook = '' + function log_header { + echo -ne "==> \e[32m\e[1m$1\e[0m\n\n" + } + function log_subheader { + echo -ne "--> \e[33m\e[1m$1\e[0m\n\n" + } + function log { + echo -ne " $1\n" + } + + echo "" + log_header "python_environment" if [ ! -d .venv ]; then python -m venv .venv fi source .venv/bin/activate + log_subheader "upgrading pip" pip install --upgrade pip + echo "" if [ -s requirements.txt ]; then + log_subheader "found requirements.txt, installing packages" pip install -r requirements.txt + echo "" fi + log_header "package versions" + log "$(python --version)" + log "$(pip --version)" ''; }