ITL Linux Build

From CSLabsWiki
Jump to: navigation, search
ITL Linux Build
Contact Person: xperia64
Last Update: Fall 2015
Services: ITL Static Image


This page summarizes how the ITL Linux Build is maintained.

Currently the build is running Debian Jessie. When packages requested by the instructors or security updates are required, they are applied to one machine and then cloned out to the rest of the machines. This process occurs roughly at the beginning of every semester. The ITL is the only student run lab on campus.

This build also forms the basis for the COSI Linux Build.

Installed packages

(This is the output from "apt-mark showmanual")

acl acpi acpi-support-base acpid adduser alsa-utils ant apt apt-listbugs apt-listchanges apt-utils aptitude aptitude-common arandr at audacity base-files base-passwd bash bash-completion bc beep bind9-host bison blender bsd-mailx bsdgames bsdgames-nonfree bsdmainutils bsdutils btrfs-tools busybox bzip2 chromium clang-3.5 clearlooks-phenix-theme codeblocks console-setup coq coreutils cpio cron curl dash db5.1-util dbus dc debconf debconf-i18n debian-archive-keyring debian-faq debianutils default-jdk-doc dia diffutils discover dmidecode dmsetup dnsutils doc-debian dpkg e2fslibs e2fsprogs eclipse eject elinks emacs evince feh file findutils firmware-linux firmware-linux-free firmware-linux-nonfree flashplugin-nonfree flex fonts-dejavu fonts-liberation fonts-sil-gentium-basic freeglut3-dev ftp g++ gcc-4.8-base gcc-4.9-base gcc-multilib gconf-service gconf2 gettext-base gfortran gimp git gnome-mime-data gnupg golang-go gpgv grep groff-base grub-common grub-pc gzip host hostname htop iceweasel ifupdown info init init-system-helpers initramfs-tools initscripts insserv install-info installation-report iproute iproute2 iptables iputils-ping isc-dhcp-client isc-dhcp-common javacc keyboard-configuration kile kmod krb5-locales laptop-detect less libacl1 libapt-inst1.5 libapt-pkg4.12 libattr1 libaudit-common libaudit1 libavahi-glib1 libblkid1 libbonobo2-0 libboost-iostreams1.55.0 libbz2-1.0 libc-bin libc6 libcap2 libcap2-bin libclass-isa-perl libcomerr2 libcryptsetup4 libcwidget3 libdb5.3 libdebconfclient0 libdevmapper1.02.1 libdns-export100 libept1.4.12 libestr0 libffi6 libfuse-dev libgcc-4.9-dev libgcc1 libgconf2-4 libgcrypt20 libgdbm3 libgfortran-4.9-dev libglew-dev libglfw3-dev libgmp10 libgnome-2-0 libgnome2-0 libgnome2-bin libgnome2-common libgnomevfs2-0 libgnomevfs2-common libgnomevfs2-extra libgnutls-deb0-28 libgnutls-openssl27 libgpg-error0 libhogweed2 libhsqldb1.8.0-java libicu52 libidn11 libirs-export91 libisc-export95 libisccfg-export90 libjson-c2 libkmod2 liblocale-gettext-perl liblockfile-bin liblogging-stdlog0 liblognorm1 liblzma5 libmnl0 libmount1 libncurses5 libncurses5-dev libncursesw5 libnetfilter-acct1 libnettle4 libnewt0.52 libnfnetlink0 libntl-dev libp11-kit0 libpam-modules libpam-modules-bin libpam-runtime libpam0g libpango1.0-0 libpangox-1.0-0 libpangoxft-1.0-0 libpcre3 libpipeline1 libpopt0 libprocps3 libpsl0 libreadline-dev libreadline6 libreoffice libreoffice-base libreoffice-calc libreoffice-draw libreoffice-impress libreoffice-report-builder-bin libsdl2-dev libselinux1 libsemanage-common libsemanage1 libsepol1 libservlet2.5-java libsigc++-2.0-0c2a libslang2 libsmartcols1 libsqlite3-0 libss2 libssl1.0.0 libstdc++-4.8-doc libstdc++-4.9-dev libstdc++6 libsvnkit-java libswitch-perl libsystemd0 libtasn1-6 libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libtinfo5 libudev1 libusb-0.1-4 libustr-1.0-1 libuuid1 libwxbase3.0-0 libwxgtk3.0-0 libxapian22 libxtables10 linux-image-amd64 locales login logrotate lsb-base lsof m4 man-db manpages manpages-posix manpages-posix-dev mawk mime-support mit-scheme mlocate mount mousepad mplayer2 mtr multiarch-support mutt nano nbd-client ncurses-base ncurses-bin ncurses-term net-tools netbase netbeans netcat-traditional nfacct nfs-common nmap ntp octave okular openjdk-7-doc openjdk-7-jdk openssh-client openssh-server p7zip-full passwd patch pcaputils pciutils pepperflashplugin-nonfree perl perl-base perl-modules pgf pidgin policykit-1-gnome procmail procps python python-apt python-gobject-2 python-matplotlib python-minimal python-numpy python-pip python-reportbug python-scapy python-scipy python-support python2.7 python3 qemu qemu-kvm racket readline-common reportbug ristretto rpcbind rsyslog screen sed sendmail sendmail-bin sensible-utils slim sshfs startpar sudo systemd systemd-sysv sysv-rc sysvinit sysvinit-utils tar task-english tasksel tasksel-data telnet texinfo texlive texlive-latex-extra texlive-pictures texmaker time tmux traceroute tzdata ucf udev unzip usbutils util-linux valgrind vim vim-common vim-tiny virtualbox vlc w3m wamerican wget whiptail whois wireshark xchat xfce4 xfce4-goodies xfce4-terminal xz-utils zip zlib1g lvm2

Wanted packages

Add any packages you might need here!

  1. R and R-Studio

Misc Weirdness

Netbeans and codeblocks are not in Jessie, so they have been installed from sid. Some work was done to allow non-root users to use wireshark. In order to get the audio to work right on the ITL machines, some work was done in /etc/modprobe.d/alsa-base.conf.

# alsa-base.conf

# Keep snd-usb-audio from being loaded as the first soundcard
options snd-usb-audio index=-2

# Disable the HDMI card which shows up first, but enable PCH
options snd-hda-intel enable=0,1

Also remember to set up hosts.allow and hosts.deny for security.

XFCE rolls up a window if you scroll up while hovering over the top bar. To fix this, open the Settings Editor, open the xfwm4 channel on the left, scroll down to the mousewheel_rollup property, and uncheck the checkbox.

Also, /root/cosify.sh will cosify the image. See that file for details of what cosification means.

Fixing Debian Firefox/Iceweasel OpenH264

Debian purposefully broke the installation of the OpenH264 plugin in Firefox ESR/Iceweasel because it was a "security flaw", despite keeping the placeholder in the Plugins menu.

This can be fixed by entering about:config into the address bar and searching for "gmp"

The value of media.gmp-manager.url.override should be replaced with the value of media.gmp-manager.url

If that key does not exist or also appears to be invalid, the current correct value for both should be https://aus5.mozilla.org/update/3/GMP/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml

vimrc

set nu
syntax on
filetype indent on
set autoindent
set smartindent
colors desert

To Do

  • Make an addition in the bashrc to delete the global git config (username / email).