User Tools

Site Tools


vm:changelog

VM Changelog

202122.3

Date: May 12, 2022

Fixed APT sources (did not include the focal-updates sources):

  deb http://us.archive.ubuntu.com/ubuntu/ focal main universe restricted multiverse
  deb http://security.ubuntu.com/ubuntu/ focal-security main restricted multiverse universe
  deb http://us.archive.ubuntu.com/ubuntu/ focal-updates main restricted multiverse universe
  deb http://us.archive.ubuntu.com/ubuntu/ focal-backports main restricted multiverse universe

Updated software:

sudo apt update
sudo apt upgrade
sudo apt autoremove

Installed latest VirtualBox Guest Additions (VirtualBox "Devices" menu → Insert Guest Additions CD image)

202122.2

Date: January 29, 2022

Updated existing software:

sudo apt update
sudo apt upgrade
sudo apt autoremove

Installed mininet:

cd /tmp
wget https://github.com/mininet/mininet/archive/refs/tags/2.3.0.tar.gz
tar xvzf 2.3.0.tar.gz
mv mininet-2.3.0/ mininet
sudo PYTHON=python3 mininet/util/install.sh -nfv

Installed Ryu:

sudo apt install libssl-dev libxml2-dev libxslt1-dev
cd /opt
sudo git clone https://github.com/faucetsdn/ryu.git
cd ryu
sudo pip3 install .

202122.1

Date: January 7, 2022

This is a new Ubuntu 20.04 image built from scratch. The initial image was created following this Ubuntu tutorial. After that, we performed the setup described below.

Updated sources and packages:

sudo apt update
sudo apt upgrade

Disable unattended upgrades:

sudo apt-get remove unattended-upgrades

Additionally, manually disabled automatic check for upgrades (prevents Ubuntu from asking students if they want to upgrade any software)

Installed VirtualBox Guest Additions (VirtualBox "Devices" menu → Insert Guest Additions CD image)

Installed most of the software that was present in the 16.04 version of the VM image:

sudo apt install -y git mc openssh-server texinfo qemu texlive graphviz libgraphviz-dev libffi7 libffi-dev traceroute cmake libyaml-0-2 libyaml-dev libtool libncurses5-dev libncursesw5-dev clang clang-format protobuf-compiler protobuf-c-compiler libprotoc-dev libprotobuf-c-dev python3-pip python3-dev 
sudo -H pip3 install pytest-json pytest-html pandas numpy scipy matplotlib jupyter ipython emoji tabulate twitter cairocffi pygraphviz networkx pydot_ng pydot sklearn pylint setuptools pip click pyyaml pycryptodome 

Installed Visual Studio Code:

sudo snap install code --classic

The Criterion test framework doesn't have an 20.04 package, but the 18.04 one appears to work fine:

wget http://ppa.launchpad.net/snaipewastaken/ppa/ubuntu/pool/main/c/criterion/criterion_2.3.2-6-ubuntu1~bionic1_amd64.deb
wget http://ppa.launchpad.net/snaipewastaken/ppa/ubuntu/pool/main/c/criterion/criterion-dev_2.3.2-6-ubuntu1~bionic1_amd64.deb
sudo dpkg -i criterion_2.3.2-6-ubuntu1~bionic1_amd64.deb
sudo dpkg -i criterion-dev_2.3.2-6-ubuntu1~bionic1_amd64.deb

Added the clean-vm.sh script.

201920.3

Date: April 16, 2020

Updated existing software:

sudo apt update
sudo apt dist-upgrade -u
sudo apt autoremove
sudo snap refresh
update-cs-software

Installed Visual Studio Code:

sudo snap install code --classic

Installed latest version of CMake:

wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | sudo apt-key add -
sudo apt-add-repository 'deb https://apt.kitware.com/ubuntu/ xenial main'
sudo apt-get update
sudo apt-get install -y cmake

Installed missing libraries needed by CMSC 22000:

sudo apt-get install -y libyaml-0-2 libyaml-dev libncurses5-dev libncursesw5-dev

Updated VM cleaning script (the latest version of this file can now be found on the wiki)

201920.2

Date: September 24, 2019

Updated pyyaml and installed pycryptodome:

sudo -H pip3 install pyyaml pycryptodome --upgrade

Removed leftover hello.py file in the student home directory.

201920.1

Date: September 24, 2019

Updated click and the CS setup script:

sudo -H pip3 install click uchicago_cs_setup_script --upgrade

201920.1-rc1

Date: September 23, 2019

Updated existing software:

sudo apt update
sudo apt dist-upgrade -u
sudo apt autoremove

Updated VirtualBox Guest Additions to version 5.2.18 (VirtualBox "Devices" menu → Insert Guest Additions CD image)

Updated pip and setuptools:

sudo -H pip3 install setuptools pip --upgrade

Updated chisubmit:

sudo -H pip3 install chisubmit --upgrade

Updated software used in CMSC 12100:

sudo -H pip3 install --upgrade pandas numpy scipy matplotlib jupyter ipython emoji tabulate twitter cairocffi pygraphviz networkx pydot_ng pydot sklearn pylint

201819.2

Date: January 5, 2019

Remove imagemagick package, which usually causes issues in CS 121 (because of its import command):

  sudo apt remove imagemagick

Install CMake and traceroute:

  sudo apt install cmake traceroute

Install clang:

  wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
  sudo apt-add-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main"
  sudo apt update
  sudo apt install clang-7 clang-format-7 clang-tidy-7

201819.1

Date: September 26, 2018

Upgrade the UChicago CS Setup Script:

sudo -H pip3 install uchicago-cs-setup-script --upgrade

Removed user-local Python packages and executables that seemed to have been installed a long time ago, and which would likely conflict with system-wide packages.

rm -rf .local/lib/python3.5/
rm -rf .local/bin/

201819.1-rc2

Date: September 24, 2018

Removed Sublime Text 2:

rm -rf /home/student/Software/
rm -rf /home/student/bin/
rm -rf /home/student/.config/sublime-text-2
# Removed subl alias from .bashrc_cs

Added Sublime Text 3:

wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -
sudo apt-get install apt-transport-https
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt-get update
sudo apt-get install sublime-text
# Add 'rm -rf ~student/.config/sublime-text-3' to /root/clean-vm.sh

Added PyCharm:

sudo snap install pycharm-community --classic

Installed pylint:

sudo pip3 install pylint

Added the following to clean-vm.sh to clear caches and reduce VM image size:

echo "Clearing caches..."
apt clean
rm -rf ~student/.cache
rm -rf /root/.cache

201819.1-rc1

Date: September 19, 2018

Added xenial-updates package sources:

deb http://us.archive.ubuntu.com/ubuntu xenial-updates main restricted
deb http://us.archive.ubuntu.com/ubuntu xenial-updates universe
deb http://us.archive.ubuntu.com/ubuntu xenial-updates multiverse

Updated existing software:

sudo apt update
sudo apt dist-upgrade -u
sudo apt autoremove

Updated VirtualBox Guest Additions to version 5.2.18 (VirtualBox "Devices" menu → Insert Guest Additions CS)

Updated pip and setuptools:

sudo -H pip2 install setuptools pip --upgrade
sudo -H pip3 install setuptools pip --upgrade

Updated chisubmit to 2.0:

sudo -H pip2 uninstall chisubmit
sudo -H pip3 install chisubmit

Updated /usr/local/bin/update-cs-software to update chisubmit with pip3 instead of pip2

Updated software used in CMSC 12100:

sudo -H pip3 install --upgrade pandas numpy matplotlib jupyter
sudo -H pip3 install --upgrade emoji tabulate twitter

Added packages needed by CMSC 12100:

sudo apt install graphviz graphviz-dev libffi6 libffi-dev
sudo -H pip3 install cairocffi pygraphviz networkx pydot_ng pydot sklearn

201718.3

Date: January 2, 2018

Updated existing software:

sudo apt update
sudo apt dist-upgrade -u
sudo apt autoremove

Added Python packages needed by CMSC 23300:

sudo -H pip3 install pytest-json pytest-html
sudo -H pip2 install ipaddress --upgrade

Added packages needed by CMSC 23300:

sudo apt install libtool protobuf-compiler protobuf-c-compiler libprotoc-dev mininet

sudo add-apt-repository ppa:snaipewastaken/ppa
sudo apt-get update
sudo apt-get install criterion-dev

201718.2

Date: September 20, 2017

Updated the Guest OS tools (select Devices → "Install Guest Additions CD image"; run)

Disabled automatic updates (Settings → Software & Updates → Updates; unchecked "updates from…" boxes; set "Automatically check for updates" to Never; set "Notify me of a new Ubuntu version" to Never)

Added multiverse and universe sources to apt

201718.1

Date: September 18, 2017

No changes. Version update only to indicate this is no longer a release candidate.

201718.1-rc3

Date: August 31, 2017

Updated existing software:

sudo apt-get update
sudo apt-get dist-upgrade -u

Added Python packages needed by CMSC 12100:

sudo -H pip3 install emoji pandas tabulate twitter

Added alias to ~student/.bashrc_cs

alias subl=sublime_text

Modified /root/clean-vm.sh to remove the Sublime Text history:

rm ~student/.config/sublime-text-2/Settings/Session.sublime_session

201718.1-rc2

Date: August 25, 2017

Changed default Java version to 1.8.0_131 (instead of Java 9)

Updated to chisubmit 1.3.0 (ran update-cs-software)

Installed additional packages:

apt-get install mono-runtime mono-mcs php7.0-cli

Installed Pintos following these instructions.

Modified /root/clean-vm.sh to do additional cleanup, and to add mit.cs.uchicago.edu to trusted SSH hosts:

rm -rf /tmp/*

rm -rf ~student/.vim
rm -rf ~student/.emacs.d
rm -rf ~student/.gitconfig

ssh-keyscan -H mit.cs.uchicago.edu > ~student/.ssh/known_hosts
ssh-keyscan -H $(dig +short mit.cs.uchicago.edu) >> ~student/.ssh/known_hosts
chown -R student.student ~student/.ssh

201718.1-rc1

Date: August 23, 2017

Changed hostname to "cs-vm" (updated /etc/hostname and /etc/hosts)

Manually updated applications on Ubuntu launcher

Disabled unattended upgrades:

sudo apt-get remove unattended-upgrades

Manually disabled automatic check for upgrades (prevents Ubuntu from asking students if they want to upgrade any software)

Updated existing software:

sudo apt-get update
sudo apt-get dist-upgrade -u
sudo apt-get autoremove

Added new packages:

sudo apt-get install eclipse eclipse-cdt mc texinfo qemu texlive

Updated pip:

sudo -H pip2 install pip --upgrade
sudo -H pip3 install pip --upgrade

Installed chisubmit and uchicagocs-setup-script:

sudo -H pip2 install chisubmit --upgrade
sudo -H pip3 install uchicago-cs-setup-script ipython --upgrade

Added .chisubmitconf file in /home/student:

api-url: https://chisubmit-backend.cs.uchicago.edu/api/v1/

Updated certificates:

wget http://crt.usertrust.com/USERTrustRSAAddTrustCA.crt -O - | sudo openssl x509 -inform DER -outform PEM -out /usr/local/share/ca-certificates/USERTrustRSAAddTrustCA.crt
wget http://crt.incommon-rsa.org/InCommonRSAServerCA_2.crt -O - | sudo openssl x509 -inform DER -outform PEM -out /usr/local/share/ca-certificates/InCommonRSAServerCA_2.crt
sudo update-ca-certificates

Added /usr/local/bin/update-cs-software:

#!/bin/bash

sudo -H pip2 install chisubmit --upgrade
sudo -H pip3 install uchicago-cs-setup-script --upgrade

sudo chmod a+x /usr/local/bin/update-cs-software

Removed root-owned files in /home/student

Added /root/clean-vm.sh to clean VM before producing a golden image:

#!/bin/bash

echo "Cleaning logs..."
# Stop logging service
service rsyslog stop
# Clear logs
logrotate -f /etc/logrotate.conf
rm /var/log/*.gz /var/log/*.1
  
echo "Cleaning /var/tmp..."
rm -rf /var/tmp/*
  
echo "Removing SSH keys..."
rm -rf ~student/.ssh
rm -rf ~root/.ssh

echo "Removing configuration files and histories..."
rm -rf ~root/.bash_history
rm -rf ~student/.bash_history
rm -rf ~student/.mozilla/firefox
rm -rf ~student/.ipython
rm -rf ~student/.chisubmit

201718.0

This was a base Ubuntu 16.04 image created by Techstaff.

/var/lib/dokuwiki/data/pages/vm/changelog.txt · Last modified: 2022/05/12 08:56 by borja

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki