-
Notifications
You must be signed in to change notification settings - Fork 58
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
26 changed files
with
823 additions
and
285 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
#! /bin/sh | ||
|
||
onexit () { | ||
test -n "$tmp" && rm -f "$tmp" | ||
} | ||
trap onexit 0 | ||
tmp=`mktemp /tmp/objcopy.XXXXXX` | ||
"$@" 2> $tmp | ||
v=$? | ||
cat $tmp | grep -v "empty loadable segment" 1>&2 | ||
exit $v |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
FROM ubuntu:focal | ||
|
||
# set environment variables for tzdata | ||
ARG TZ=America/New_York | ||
ENV TZ ${TZ} | ||
|
||
# include manual pages and documentation | ||
RUN DEBIAN_FRONTEND=noninteractive apt-get update && yes | unminimize | ||
|
||
# install GCC-related packages | ||
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install \ | ||
binutils-doc \ | ||
cpp-doc \ | ||
gcc-doc \ | ||
g++ \ | ||
g++-multilib \ | ||
gdb \ | ||
gdb-doc \ | ||
glibc-doc \ | ||
libblas-dev \ | ||
liblapack-dev \ | ||
liblapack-doc \ | ||
libstdc++-10-doc \ | ||
make \ | ||
make-doc | ||
|
||
# install clang-related packages | ||
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install \ | ||
clang \ | ||
clang-10-doc \ | ||
lldb | ||
|
||
# install qemu for pset 4 (sadly, this pulls in a lot of crap) | ||
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install \ | ||
qemu-system-x86 | ||
|
||
# install programs used for system exploration | ||
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install \ | ||
blktrace \ | ||
linux-tools-generic \ | ||
strace \ | ||
tcpdump | ||
|
||
# install interactive programs (emacs, vim, nano, man, sudo, etc.) | ||
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install \ | ||
bc \ | ||
curl \ | ||
dc \ | ||
emacs-nox \ | ||
git \ | ||
git-doc \ | ||
man \ | ||
micro \ | ||
nano \ | ||
sudo \ | ||
vim \ | ||
wget | ||
|
||
# set up libraries | ||
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install \ | ||
libreadline-dev \ | ||
locales \ | ||
wamerican | ||
|
||
# install programs used for networking | ||
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install \ | ||
dnsutils \ | ||
inetutils-ping \ | ||
net-tools \ | ||
netcat \ | ||
telnet \ | ||
traceroute | ||
|
||
# set up default locale | ||
RUN locale-gen en_US.UTF-8 | ||
ENV LANG en_US.UTF-8 | ||
|
||
# remove unneeded .deb files | ||
RUN rm -r /var/lib/apt/lists/* | ||
|
||
# set up passwordless sudo for user cs61-user | ||
RUN useradd -m -s /bin/bash cs61-user && \ | ||
echo "cs61-user ALL=(ALL:ALL) NOPASSWD: ALL" > /etc/sudoers.d/cs61-init | ||
|
||
# create binary reporting version of dockerfile | ||
RUN (echo '#\!/bin/sh'; echo 'echo 5') > /usr/bin/cs61-docker-version; chmod ugo+rx,u+w,go-w /usr/bin/cs61-docker-version | ||
|
||
# git build arguments | ||
ARG USER=CS61\ User | ||
ARG [email protected] | ||
|
||
# configure your environment | ||
USER cs61-user | ||
RUN git config --global user.name "${USER}" && \ | ||
git config --global user.email "${EMAIL}" && \ | ||
(echo "(custom-set-variables"; echo " '(c-basic-offset 4)"; echo " '(indent-tabs-mode nil))") > ~/.emacs && \ | ||
(echo "set expandtab"; echo "set shiftwidth=4"; echo "set softtabstop=4") > ~/.vimrc && \ | ||
echo "add-auto-load-safe-path ~" > ~/.gdbinit | ||
|
||
WORKDIR /home/cs61-user | ||
|
||
# Initial version of this Dockerfile by Todd Morrill, CS 61 DCE student |
Oops, something went wrong.