BoOtStRaP: library  # pass: headers are case-insensitive
# pass: do not highlight '%'
MirrorURL: http://mirror.centos.org/centos-%{OSVERSION}/%{OSVERSION}/os/$basearch/
 From: ubuntu:18.04 # pass: leading whitespace allowed

%setup
    touch /file1
touch ${SINGULARITY_ROOTFS}/file2 # pass: leading whitespace optional

%files
    /file1
    /file1 /opt

%environment
    export LISTEN_PORT=12345
    export LC_ALL=C

%runscript
    echo "Container was created $NOW"
    echo "Arguments received: $*"
    exec echo "$@"

%startscript
    nc -lp $LISTEN_PORT

%test
    grep -q NAME=\"Ubuntu\" /etc/os-release
    if [ $? -eq 0 ]; then
        echo "Container base is Ubuntu as expected."
    else
        echo "Container base is not Ubuntu."
    fi

%labels
    Author d@sylabs.io
    Version v0.0.1

%help
    This is a demo container used to illustrate a def file that uses all
    supported sections.

%post
    apt-get update && apt-get install -y netcat
    NOW=$((date % 1)) # pass: don't highlight '%'
    echo "export NOW=\"${NOW}\"" >> $SINGULARITY_ENVIRONMENT
