Changes between Version 17 and Version 18 of User Guide/Disk Images


Ignore:
Timestamp:
May 10, 2020, 11:57:13 PM (4 years ago)
Author:
msherman
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • User Guide/Disk Images

    v17 v18  
    159159
    160160==== Baseline UHD
    161 Baseline UHD has UHD images downloaded, and uhd3.14 installed from source.
     161Baseline UHD starts from Baseline, then installs UHD3.15 installed from source, and downloads the fpga images with uhd_images_downloader
     162[[CollapsibleStart(Reference Dockerfile)]]
     163{{{#!dockerfile
     164FROM container_bare:latest as baseline
     165ENV DEBIAN_FRONTEND=noninteractive \
     166    TERM=linux
     167
     168RUN apt update && apt -y install \
     169    ruby ruby-dev iw \
     170    cmake \
     171    debhelper \
     172    doxygen \
     173    dpdk-dev \
     174    libboost-date-time-dev \
     175    libboost-dev \
     176    libboost-filesystem-dev \
     177    libboost-program-options-dev \
     178    libboost-regex-dev \
     179    libboost-serialization-dev \
     180    libboost-system-dev \
     181    libboost-test-dev \
     182    libboost-thread-dev \
     183    libncurses5-dev \
     184    libusb-1.0-0-dev \
     185    pkg-config \
     186    python3-apt \
     187    python3-pip \
     188    python3-dev \
     189    python3-mako \
     190    python3-numpy \
     191    python3-requests
     192
     193#install UHD
     194ARG UHD_VERSION=3.15.0
     195ARG UHD_PATCH=$UHD_VERSION.0
     196ARG UHD_TAG=v$UHD_PATCH
     197WORKDIR /opt/
     198RUN git clone https://github.com/EttusResearch/uhd -b $UHD_TAG --single-branch
     199RUN cd uhd/host && mkdir build && cd build && \
     200cmake .. && make -j`nproc`
     201RUN cd uhd/host/build && make test
     202RUN cd /opt/uhd/host/build && make install
     203
     204#clean up build dir
     205RUN rm -rf /opt/uhd
     206
     207#trick apt into thinking uhd was installed from repo
     208RUN apt update && apt install -y \
     209    equivs
     210RUN equivs-control libuhd-dev.control && \
     211    sed -i "s/<package name; defaults to equivs-dummy>/libuhd-dev/g" libuhd-dev.control && \
     212    sed -i "s/# Version: <enter version here; defaults to 1.0>/Version: $UHD_PATCH/g" libuhd-dev.control && \
     213    equivs-build libuhd-dev.control && \
     214    dpkg -i libuhd-dev*.deb
     215RUN equivs-control libuhd$UHD_VERSION.control && \
     216    sed -i "s/<package name; defaults to equivs-dummy>/libuhd$UHD_VERSION/g" libuhd$UHD_VERSION.control && \
     217    sed -i "s/# Version: <enter version here; defaults to 1.0>/Version: $UHD_PATCH/g" libuhd$UHD_VERSION.control && \
     218    equivs-build libuhd$UHD_VERSION.control && \
     219    dpkg -i libuhd$UHD_VERSION*.deb
     220RUN rm -f /opt/*.control && rm -f /opt/*.deb
     221
     222#enable libraries and download images
     223RUN ldconfig
     224RUN uhd_images_downloader
     225
     226#install usrp PCIe drivers
     227WORKDIR /opt/
     228ADD files/usrp/niusrprio-installer-18.0.0.tar.gz /opt/
     229#tell it how to log, set kernel target to latest installed
     230#handle exit 2 for some reason..
     231RUN cp ./niusrprio_installer/niusrprio_pcie /usr/local/bin/ && \
     232    KERNELTARGET=$(ls -tr /lib/modules | tail -1) \
     233    LOG_MSD_STDERR=true \
     234    /opt/niusrprio_installer/INSTALL --accept-license --no-prompt; \
     235    if [ "$?" -eq 2 ]; then exit 0; fi
     236#install unit file and udev rule
     237COPY files/usrp/niusrprio.service /etc/systemd/system/
     238COPY files/usrp/99-usrprio.rules /etc/udev/rules.d/
     239
     240#add UHD related sysctls to system
     241RUN echo "net.core.rmem_max=33554432" >> /etc/sysctl.conf && \
     242    echo "net.core.wmem_max=33554432" >> /etc/sysctl.conf
     243
     244#Install OMF6 RC
     245
     246#fix dependencies
     247RUN gem install hashie:'~>2' facter:'~>2' omf_rc:'6.2.3'
     248#manually patch omf_rc
     249COPY files/omf/config.yml /var/lib/gems/2.5.0/gems/omf_rc-6.2.3/config/config.yml
     250COPY files/omf/environment /var/lib/gems/2.5.0/gems/omf_rc-6.2.3/init/
     251COPY files/omf/omf_rc.service /var/lib/gems/2.5.0/gems/omf_rc-6.2.3/init/
     252COPY files/omf/install_omf_rc /usr/local/bin/install_omf_rc
     253RUN install_omf_rc -i -c
     254
     255#copy misc files needed
     256COPY files/blacklist/* /etc/modprobe.d/
     257COPY files/prepare.sh /root/prepare.sh
     258
     259#clean up build
     260RUN rm -f /etc/apt/apt.conf.d/01proxy && \
     261    rm -rf /var/lib/apt/lists/* && \
     262    apt clean && \
     263    apt autoclean
     264}}}
     265
     266[[CollapsibleEnd]]
    162267
    163268==== Baseline GR