Generate a virtualbox machine from scratch for deal.II and ASPECT
binaries available online at http://www.math.clemson.edu/~heister/dealvm/
- 
Get candi: git clone https://github.com/dealii/candi
- 
Get vagrant from https://www.vagrantup.com/ and the vagrant disksize plugin: vagrant plugin install vagrant-disksize vagrant up
- 
compilation: cd ~/libs && ./setup.sh cd ~/deal.II/ && ./setup.sh && make clean cd ~/aspect && ./_setup.sh && make && mv aspect aspect.debug && make clean && mv aspect.debug aspect
- 
Manual setup: 
- 
add shortcuts to terminal, firefox, leafpad to menu bar 
- 
settings->power: disable all energy saving stuff 
- 
terminal: - disable scroll on output
 
- 
in firefox: - show bookmark bar
- default homepage: info.html
- dealii.org
- deal.II docs: https://dealii.org/current/doxygen/deal.II/index.html
- ASPECT: https://aspect.geodynamics.org/
- about:config browser.sessionstore.resume_from_crash = false
 
- 
download aspect manual.pdf and put on desktop: cd Desktop; wget https://github.com/geodynamics/aspect/releases/download/v2.2.0/aspect-manual-2.2.0.pdf 
- 
add firefox to autostart: settings->session and startup->add 
- 
disable screensaver in "settings" 
- 
install https://github.com/rfjakob/earlyoom and test 
- 
install vscode https://code.visualstudio.com/download plugins: c/c++, cmake, cmake tools apply fix: max fs watches 
- 
edit /etc/default/grub.d/50-cloudimg-settings.cfg and remove console=ttyS0 sudo update-grub and then disable serial port 1 in machine settings also remove cidata second hd image 
- 
set reasonable defaults for txt, prm, cc files (mousepad, vscode) 
- 
install clang format: cd deal.II && ./contrib/utilities/download_clang_format && cd clang-6/ && mv clang-format ~/bin/ 
- For releasing the image:
- update software: apt-get update && apt-get upgrade && apt-get autoremove && apt-get autoclean
- remove deal.II build files
- delete candi/trilinos/bin/*
- run zerofree to remove disk size (need to boot into safe mode using ESC): reboot into recovery systemctl stop systemd-journald.socket systemctl stop systemd-journald.service echo u >/proc/sysrq-trigger mount -n -o remount,ro -t ext4 /dev/sda1 / zerofree -v /dev/sda1 also see https://wiki.ubuntu.com/RecoveryMode
- remove shared vagrant folder
- set to 2 cores, 7GB RAM
- serial port: disconnected
- export virtual machine after shutting down: product URL: https://www.math.clemson.edu/~heister/dealvm/ name: deal.II VM
- git tag -s -m "Version 1.15.0" v1.15.0 && git push mygithub HEAD v1.15.0