#!/bin/bash

# This file is automatically updated run by /etc/init.d/S99RSS.  The
# main job of this is after the first reboot we do some automatic
# setup from this script.
#
# This script runs anytime ALREADY_CONFIGURED_FILE does not have the
# value VERSION_NUMBER.  Make sure anything you put in here is ok to
# run multiple times.
#
# Script originally authored by Carrick Detweiler spring 2009

#File whose presence indicates that the machine is already configured
export ALREADY_CONFIGURED_FILE=/etc/rss_configured

#Version number, update this to cause machine to be reconfigured on reboot
export VERSION_NUMBER=9

#If it is already configured do some things, otherwise do others 
if [ $(cat $ALREADY_CONFIGURED_FILE) -eq $VERSION_NUMBER ]; then
  ln -s /dev/ttyS0 /dev/orc
  chmod 777 /dev/ttyS0


  ##### Create guest account ####
  rm -rf /home-guest
  mkdir /home-guest
  rsync -a /etc/skel/ /home-guest/
  chown -R 1001:1001 /home-guest

else

################################################################################
#################### START LAPTOP/SUN SPECIFIC THINGS ##########################
################################################################################

##################### Do laptop specific things ##############################
#kind of a hack to see if we are a laptop
if (grep "M processor" /proc/cpuinfo); then
    
############setup /etc/passwd#############

#only update /etc/passwd on laptops if they haven't been configured
#yet, this allows users to change thier password without messing things
#up
if [ -e $ALREADY_CONFIGURED_FILE ]; then
  echo "";
else
cat <<'EOF' > /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
dhcp:x:101:102::/nonexistent:/bin/false
syslog:x:102:103::/home/syslog:/bin/false
klog:x:103:104::/home/klog:/bin/false
hplip:x:104:7:HPLIP system user,,,:/var/run/hplip:/bin/false
avahi-autoipd:x:105:113:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
gdm:x:106:114:Gnome Display Manager:/var/lib/gdm:/bin/false
pulse:x:107:116:PulseAudio daemon,,,:/var/run/pulse:/bin/false
messagebus:x:108:119::/var/run/dbus:/bin/false
avahi:x:109:120:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
polkituser:x:110:122:PolicyKit,,,:/var/run/PolicyKit:/bin/false
haldaemon:x:111:123:Hardware abstraction layer,,,:/var/run/hald:/bin/false
statd:x:112:65534::/var/lib/nfs:/bin/false
ntp:x:113:124::/home/ntp:/bin/false
sshd:x:114:65534::/var/run/sshd:/usr/sbin/nologin
rss-staff:x:1000:1000:RSS Staff,,,:/home/rss-staff:/bin/bash
rss-guest:$1$7kDpzfI8$7qOQSbl9OtnQHngqq1O6V0:1001:1001:RSS Guest,,,:/home-guest:/bin/bash
EOF

#Add users baed on the group they are in
if [ `hostname` == "rss-1" ]; then
cat <<'EOF' >> /etc/passwd
hmuar:$1$oiOsMhDQ$2RIlHGu2bZK6cxXCQFfey0:30482:1011:,,,:/home/hmuar:/bin/bash
bralower:$1$2VOjGWKG$mxD/1qOvtXbQ7VQgrh7ue/:21965:1011:,,,:/home/bralower:/bin/bash
amustafa:$1$l1gQOqeG$jUI5kPTk.nH5JJFR7rZ441:26797:1011:,,,:/home/amustafa:/bin/bash
zuzka:$1$WVEssUV8$ub1YKkyxd.jz02T6N3caM1:64221:1011:,,,:/home/zuzka:/bin/bash
EOF
for name in hmuar bralower amustafa zuzka; do
  mkdir /home/$name ;rsync -a /etc/skel/ /home/$name ;chown -R $name:group-1 /home/$name
done
fi
if [ `hostname` == "rss-2" ]; then
cat <<'EOF' >> /etc/passwd
maarnold:$1$hdWzFlNV$c3icTl0ci2D7i4wQDTjdM1:39512:1012:,,,:/home/maarnold:/bin/bash
raflores:$1$rLzld9t/$rqXoAxFQ2iSLH7zb8qz551:25793:1012:,,,:/home/raflores:/bin/bash
jagarcia:$1$EHtRXqCh$MG.DbfKLN5LWQ8ef0mDWJ.:37247:1012:,,,:/home/jagarcia:/bin/bash
atruck11:$1$drIEZmsZ$px7D8bNg1biIjJr3BbhQP/:37973:1012:,,,:/home/atruck11:/bin/bash
EOF
for name in maarnold raflores jagarcia atruck11; do
  mkdir /home/$name ;rsync -a /etc/skel/ /home/$name ;chown -R $name:group-2 /home/$name
done
fi
if [ `hostname` == "rss-3" ]; then
cat <<'EOF' >> /etc/passwd
ejflores:$1$1SEoT1gT$LwmDRVJA6mDj9u.PtVksh/:29226:1013:,,,:/home/ejflores:/bin/bash
tjfrank:$1$kgCBOD9I$G0G07ewIsq7JlDS5Vml34/:60363:1013:,,,:/home/tjfrank:/bin/bash
dkmita:$1$PONMxroL$xfGkLpw6TzfDDDuCexM/I/:38563:1013:,,,:/home/dkmita:/bin/bash
aeram00:$1$cQ2RvvMV$gmB4Zz5uNYqs7BOSoxJvw1:29512:1013:,,,:/home/aeram00:/bin/bash
EOF
for name in ejflores tjfrank dkmita aeram00; do
  mkdir /home/$name ;rsync -a /etc/skel/ /home/$name ;chown -R $name:group-3 /home/$name
done
fi
if [ `hostname` == "rss-4" ]; then
cat <<'EOF' >> /etc/passwd
stevend:$1$wwBYaAjS$yONu9WX24JAWmoIYZfrjt1:48243:1014:,,,:/home/stevend:/bin/bash
addcat:$1$SRT13C4I$QSINxYOjHVE9S2Q763j3l.:41447:1014:,,,:/home/addcat:/bin/bash
tvald:$1$s1HLqyLt$s8HlYvb4NBAIqeGVwqboa/:46940:1014:,,,:/home/tvald:/bin/bash
EOF
for name in stevend addcat basant tvald; do
  mkdir /home/$name ;rsync -a /etc/skel/ /home/$name ;chown -R $name:group-4 /home/$name
done
fi
if [ `hostname` == "rss-5" ]; then
cat <<'EOF' >> /etc/passwd
brentm:$1$XIINjAV6$CC4i9FhMAwwfrLtY7wMsN0:30528:1015:,,,:/home/brentm:/bin/bash
pmiyazak:$1$pHf1LA/6$tRlYE0jN.TPtGZjJIZTeQ/:30694:1015:,,,:/home/pmiyazak:/bin/bash
stein:$1$.6RCgNUT$4u3YRAC8Qq4sE015FQf3s0:1179:1015:,,,:/home/stein:/bin/bash
kakaner:$1$0P12iarn$SCVsWsERluHZu7vnxj2WA.:40126:1015:,,,:/home/kakaner:/bin/bash
EOF
for name in brentm pmiyazak stein kakaner; do
  mkdir /home/$name ;rsync -a /etc/skel/ /home/$name ;chown -R $name:group-5 /home/$name
done
fi
if [ `hostname` == "rss-6" ]; then
cat <<'EOF' >> /etc/passwd
scalcutt:$1$nK.LqmdM$aV5oUfep9Q81T1AeK6G041:73972:1016:,,,:/home/scalcutt:/bin/bash
iwerks:$1$IVn4zNQc$K.ajGEDf866ez4h8wqdmw1:42517:1016:,,,:/home/iwerks:/bin/bash
rayma:$1$ewgAutO3$FXwvzL22NOBSUK4oDMSqR0:44602:1016:,,,:/home/rayma:/bin/bash
wangaj:$1$jFi0P7ix$.5.yl3IR5XTGO3HOzQDTT1:46928:1016:,,,:/home/wangaj:/bin/bash
EOF
for name in scalcutt iwerks rayma wangaj; do
  mkdir /home/$name ;rsync -a /etc/skel/ /home/$name ;chown -R $name:group-6 /home/$name
done
fi
if [ `hostname` == "rss-7" ]; then
cat <<'EOF' >> /etc/passwd
dbutler:$1$nZvrae5y$Cq/tfP6AzKrfgvAqZC4pb.:60587:1017:,,,:/home/dbutler:/bin/bash
nes:$1$.GxYn.QV$bJB1MK.1E5c7D2pTApDRl0:30348:1017:,,,:/home/nes:/bin/bash
asugaya:$1$n.bA788C$5odbOS5.unnK2KNQ.p.G8/:23683:1017:,,,:/home/asugaya:/bin/bash
redbaron:$1$wUJksUMm$Hu9rubgHdjI7sdyFgCWhn0:39407:1017:,,,:/home/redbaron:/bin/bash
EOF
for name in dbutler nes asugaya redbaron; do
  mkdir /home/$name ;rsync -a /etc/skel/ /home/$name ;chown -R $name:group-7 /home/$name
done
fi
if [ `hostname` == "rss-8" ]; then
cat <<'EOF' >> /etc/passwd
damonh:$1$fVfsIX7S$U0ArhOU2FbQphjRmnaFHW1:44483:1018:,,,:/home/damonh:/bin/bash
kjackson:$1$dS50rUCK$U4HkJSkuxgE07JNxn8xgZ/:30662:1018:,,,:/home/kjackson:/bin/bash
paigep:$1$sHy70cOk$rF267LChhAEgt20rRIky3.:40158:1018:,,,:/home/paigep:/bin/bash
basant:$1$h3J96j6y$eTqOSkl4QPMT3oxefW0p0/:23665:1018:,,,:/home/basant:/bin/bash
EOF
for name in damonh kjackson paigep basant; do
  mkdir /home/$name ;rsync -a /etc/skel/ /home/$name ;chown -R $name:group-8 /home/$name
done
fi

fi #end update of /etc/passwd if we have never configured the machine

############setup /etc/group###########
##TBD!!! added usernames to video group
cat <<'EOF' >/etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:rss-staff
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:rss-staff
fax:x:21:
voice:x:22:
cdrom:x:24:rss-staff
floppy:x:25:rss-staff
tape:x:26:
sudo:x:27:
audio:x:29:pulse,rss-staff
dip:x:30:rss-staff
www-data:x:33:
backup:x:34:
operator:x:37:
list:x:38:
irc:x:39:
src:x:40:
gnats:x:41:
shadow:x:42:
utmp:x:43:
video:x:44:rss-staff
sasl:x:45:
plugdev:x:46:rss-staff
staff:x:50:
games:x:60:
users:x:100:
nogroup:x:65534:
libuuid:x:101:
dhcp:x:102:
syslog:x:103:
klog:x:104:
scanner:x:105:hplip
nvram:x:106:
fuse:x:107:rss-staff
ssl-cert:x:108:
lpadmin:x:109:rss-staff
crontab:x:110:
mlocate:x:111:
ssh:x:112:
avahi-autoipd:x:113:
gdm:x:114:
admin:x:115:carrick,rss-staff
pulse:x:116:
pulse-access:x:117:
pulse-rt:x:118:
messagebus:x:119:
avahi:x:120:
netdev:x:121:
polkituser:x:122:
haldaemon:x:123:
ntp:x:124:
rss-staff:x:1000:
sambashare:x:125:rss-staff
rss-guest:x:1001:
group-0:x:1010:
group-1:x:1011:
group-2:x:1012:
group-3:x:1013:
group-4:x:1014:
group-5:x:1015:
group-6:x:1016:
group-7:x:1017:
group-8:x:1018:
EOF

##### Add certificate for csail to the directory #####
#this is needed so we can do a checkout below
mkdir -p /root/.subversion/auth/svn.ssl.server/
cat <<'EOF' > /root/.subversion/auth/svn.ssl.server/d79443cad751ced66b43edce30caa175
K 10
ascii_cert
V 1800
MIIFQDCCBCigAwIBAgICATcwDQYJKoZIhvcNAQEFBQAwgYoxCzAJBgNVBAYTAlVTMRYwFAYDVQQIEw1NYXNzYWNodXNldHRzMRIwEAYDVQQHEwlDYW1icmlkZ2UxOzA5BgNVBAoUMk1JVCBDb21wdXRlciBTY2llbmNlICYgQXJ0aWZpY2lhbCBJbnRlbGxpZ2VuY2UgTGFiMRIwEAYDVQQDEwlTZXJ2ZXIgQ0EwHhcNMDgwNjE4MTcyMDAwWhcNMDkwNjE4MTcyMDAwWjCBrzELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDU1hc3NhY2h1c2V0dHMxEjAQBgNVBAcMCUNhbWJyaWRnZTFCMEAGA1UECgw5TUlUIENvbXB1dGVyIFNjaWVuY2UgJiBBcnRpZmljaWFsIEludGVsbGlnZW5jZSBMYWJvcmF0b3J5MRQwEgYDVQQLDAtTU0wgU2VydmVyczEaMBgGA1UEAwwRc3ZuLmNzYWlsLm1pdC5lZHUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCmv2A9TlS4PPdhLM0J+N9VJq1tesQibLT8PQdIvkz6xUAkkrkz2n45FGShqf8UfPOnoRZQmXj7RTmB2GqmgVaEl8scIqjuORNlUosjWUKn7CS53baTkB7M0MlRx+JZKAP1s1eHCU5nazKXqmPz+6ELBygt/UtO53Z2L/qe0O7N2CoFzJ0kvgPfvk4G2JkhaWJ3YoFCZVXzbQTYBaTWLSdGCfq1ySgfbv/q3hE9ZtmsnyTlQquqn7psGKTPDZ7GJQ/GLH7KjodGNrDIHdXCYOrqwbl4IMc6FTmQ9U/zd4YXCCoMtc+wxCfN/WySnhqo4auTOw4sRlzN5Zm02eHPidE/AgMBAAGjggGHMIIBgzAOBgNVHQ8BAf8EBAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwEQYJYIZIAYb4QgEBBAQDAgZAMAkGA1UdEwQCMAAwTAYDVR0gBEUwQzBBBgoqhkiG9xIDAQICMDMwMQYIKwYBBQUHAgEWJWh0dHA6Ly9jYS5jc2FpbC5taXQuZWR1L0NTQUlMLWNwcy50eHQwNwYDVR0fBDAwLjAsoCqgKIYmaHR0cDovL2NhLmNzYWlsLm1pdC5lZHUvY3JsL3NlcnZlci5jcmwwNAYIKwYBBQUHAQEEKDAmMCQGCCsGAQUFBzAChhhodHRwOi8vY2EuY3NhaWwubWl0LmVkdS8wHQYDVR0OBBYEFPbjNBLRHEEhpRWi2/s+8sfbTkoFMB8GA1UdIwQYMBaAFA6kv8cUXZlYPdU4RDC1urKcUaVrMBwGA1UdEQQVMBOCEXN2bi5jc2FpbC5taXQuZWR1MCMGCiqGSIb3EgMBAQIEFRYTbm9haG1AQ1NBSUwuTUlULkVEVTANBgkqhkiG9w0BAQUFAAOCAQEAn6u2s5DpyRUoV/3r2VpY3dqb7diTWgFsP0pmy2Jk3wUbUdHmcYeFtWpwD7Z+KyHiUmqRXn5pYshCIj3kW6ZTq0OfTV87I+Fv3b8WsBtCICPYmISr9cjD4CSiZOiFYMXXQdj1a9dHrhiR/Ow314Ilumq8jOubDXklWp9Dl4FSLD6hdyiTjR8ZK/DNBDA1DB+ercWkaD1lHvadcaj00ZBpOs9QZ3Dh76fkbuOl1X1db9zXJ9bMaL9f5QsRCLeN08oXOJ+3Np/qRp0jzuTWYLQgG1Jbp8XYSsHF8YZ19ao0G+w9uaryvmJUcPpDcVcOYcV/eTjseAG+wuMqtQxFlKH9gg==
K 8
failures
V 1
8
K 15
svn:realmstring
V 29
https://svn.csail.mit.edu:443
END
EOF

#### Do the first checkout ####
#if it already exists just do an update to save time
if [ -e /home/rss-staff/RSS-I-pub ]; then
  svn update --non-interactive --username=rss-student --password=hal2000 /home/rss-staff/RSS-I-pub
else
  svn checkout --non-interactive --username=rss-student --password=hal2000 https://svn.csail.mit.edu/rss/data/spring2010/pub /home/rss-staff/RSS-I-pub
fi

#### Add ifup script to update repository on network connect ####
#this updates the rss-i-pub directory whenever a new network connection is detected
cat <<'EOF' > /etc/network/if-up.d/rss-pub-update
#!/bin/bash

svn cleanup /home/rss-staff/RSS-I-pub
svn update --non-interactive --username=rss-student --password=hal2000 /home/rss-staff/RSS-I-pub

EOF
chmod a+x /etc/network/if-up.d/rss-pub-update


#### Mark as laptop ####
touch /etc/laptop

else
##################### Do sun specific things ##############################

########### setup fstab to use nfs on sun ##########
 cat <<'EOF' > /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/sda1 	/               ext3    relatime,errors=remount-ro 0       1
/dev/sda5 	none            swap    sw              0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec,utf8 0       0

192.168.1.10:/home /home nfs auto 0 0

EOF

############setup /etc/passwd#############
#the funky stuff at the end of the file is for nis
cat <<'EOF' > /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
dhcp:x:101:102::/nonexistent:/bin/false
syslog:x:102:103::/home/syslog:/bin/false
klog:x:103:104::/home/klog:/bin/false
hplip:x:104:7:HPLIP system user,,,:/var/run/hplip:/bin/false
avahi-autoipd:x:105:113:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
gdm:x:106:114:Gnome Display Manager:/var/lib/gdm:/bin/false
pulse:x:107:116:PulseAudio daemon,,,:/var/run/pulse:/bin/false
messagebus:x:108:119::/var/run/dbus:/bin/false
avahi:x:109:120:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
polkituser:x:110:122:PolicyKit,,,:/var/run/PolicyKit:/bin/false
haldaemon:x:111:123:Hardware abstraction layer,,,:/var/run/hald:/bin/false
statd:x:112:65534::/var/lib/nfs:/bin/false
ntp:x:113:124::/home/ntp:/bin/false
sshd:x:114:65534::/var/run/sshd:/usr/sbin/nologin
rss-staff:x:1000:1000:RSS Staff,,,:/home/rss-staff:/bin/bash
+::::::
EOF

############setup /etc/group###########
#the funky stuff at the end of the file is for nis
cat <<'EOF' >/etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:rss-staff
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:rss-staff
fax:x:21:
voice:x:22:
cdrom:x:24:rss-staff
floppy:x:25:rss-staff
tape:x:26:
sudo:x:27:
audio:x:29:pulse,rss-staff
dip:x:30:rss-staff
www-data:x:33:
backup:x:34:
operator:x:37:
list:x:38:
irc:x:39:
src:x:40:
gnats:x:41:
shadow:x:42:
utmp:x:43:
video:x:44:rss-staff
sasl:x:45:
plugdev:x:46:rss-staff
staff:x:50:
games:x:60:
users:x:100:
nogroup:x:65534:
libuuid:x:101:
dhcp:x:102:
syslog:x:103:
klog:x:104:
scanner:x:105:hplip
nvram:x:106:
fuse:x:107:rss-staff
ssl-cert:x:108:
lpadmin:x:109:rss-staff
crontab:x:110:
mlocate:x:111:
ssh:x:112:
avahi-autoipd:x:113:
gdm:x:114:
admin:x:115:carrick,rss-staff,vinayak,llwhite,mmtanner
pulse:x:116:
pulse-access:x:117:
pulse-rt:x:118:
messagebus:x:119:
avahi:x:120:
netdev:x:121:
polkituser:x:122:
haldaemon:x:123:
ntp:x:124:
rss-staff:x:1000:
sambashare:x:125:rss-staff
+::::::
EOF

mkdir /rss-backups
chown rss-backups:rss-staff /rss-backups
chmod o-rwx /rss-backups

fi
##############################################################################
#################### END LAPTOP/SUN SPECIFIC THINGS ##########################
##############################################################################

#setup the hosts file (taken from post-install-laptop.sh from /home/rss-staff/computer-setup)
######################### RECREATE THE /etc/hosts file #################################
echo "127.0.0.1     localhost" > /etc/hosts
echo "127.0.1.1     $HOSTNAME" >> /etc/hosts

cat <<'EOF' >> /etc/hosts
# Wireless Access Point
192.168.1.5     rss-b
192.168.1.6     rss-g

# Sun Workstations
192.168.1.100   rss-sun-0
192.168.1.101   rss-sun-1
192.168.1.102   rss-sun-2
192.168.1.103   rss-sun-3
192.168.1.104   rss-sun-4
192.168.1.105   rss-sun-5
192.168.1.106   rss-sun-6
192.168.1.107   rss-sun-7
192.168.1.108   rss-sun-8

# DHCP Pool
# The DHCP pool is from 192.168.1.150 - 192.168.1.199

# Laptops
192.168.1.200   rss-0
192.168.1.201   rss-1
192.168.1.202   rss-2
192.168.1.203   rss-3
192.168.1.204   rss-4
192.168.1.205   rss-5
192.168.1.206   rss-6
192.168.1.207   rss-7
192.168.1.208   rss-8
192.168.1.209   rss-9
192.168.1.210   rss-10
192.168.1.211   rss-11
192.168.1.212   rss-12

# Alternate IP's for Laptops on Wired Networks
# (Note that Linux will recognize either IP on either interface)
192.168.1.220   rss-0-wired
192.168.1.221   rss-1-wired
192.168.1.222   rss-2-wired
192.168.1.223   rss-3-wired
192.168.1.224   rss-4-wired
192.168.1.225   rss-5-wired
192.168.1.226   rss-6-wired
192.168.1.227   rss-7-wired
192.168.1.228   rss-8-wired
192.168.1.229   rss-9-wired
192.168.1.230   rss-10-wired
192.168.1.231   rss-11-wired
192.168.1.232   rss-12-wired

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
EOF

############################# setup sudoers ##############################
cat <<'EOF' > /etc/sudoers

# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
# Defaults

Defaults        !lecture,tty_tickets,!fqdn

# Uncomment to allow members of group sudo to not need a password
# %sudo ALL=NOPASSWD: ALL

# Host alias specification

# User alias specification

# Cmnd alias specification
User_Alias      STUDENTS =      rss-guest, %group-0, %group-1, %group-2, %group-3, %group-4, %group-5, %group-6, %group-7, %group-8

# Cmnd alias specification
Cmnd_Alias      CARMEN = /home/rss-staff/RSS-I-pub/scripts/carmen-kill-real.sh

# User privilege specification
root    ALL=(ALL) ALL
rss-staff       ALL=(ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

STUDENTS ALL = (root) NOPASSWD: CARMEN

EOF


##############setup /etc/profile to be correct#######################
 cat <<'EOF' > /etc/profile
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi

if [ "$PS1" ]; then
  if [ "$BASH" ]; then
    PS1='\u@\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
        . /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

umask 022
# include rss startup file if it exists
if [ -f ~/RSS-I-pub/scripts/bash-profile-sun.sh ]; then
  . ~/RSS-I-pub/scripts/bash-profile-sun.sh
fi

EOF

############## Create the skel directory for default new users ###################
mkdir -p /etc/skel/RSS-I-group
chmod o-rwx  /etc/skel/RSS-I-group
ln -s /home/rss-staff/RSS-I-pub /etc/skel/RSS-I-pub

############ Disable compiz by default as orcspy doesn't play well with it #############
gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --set "/desktop/gnome/applications/window_manager/default" --type string "/usr/bin/metacity"


######################### Update Java Configs #####################################
update-alternatives --set java /usr/lib/jvm/java-1.5.0-sun/jre/bin/java
update-alternatives --set javac /usr/lib/jvm/java-1.5.0-sun/bin/javac

####################### Install eclipse ####################################
#don't reinstall eclipse if it is already there as this takes awhile
if [ -e /usr/local/eclipse ]; then
    echo 
else
    mount 192.168.1.10:/home /home
    cd /usr/local/
    rm -rf /usr/local/eclipse
    tar -xzf /home/rss-staff/eclipse/eclipse-SDK-3.4.1-linux-gtk.tar.gz 
    chown -R root:root /usr/local/eclipse
fi


##################### Set configured file and reboot ###############################
 echo $VERSION_NUMBER > $ALREADY_CONFIGURED_FILE
 reboot
fi



