Merge branch 'current' of github.com:vyos/vyos-build into current

This commit is contained in:
Daniil Baturin 2016-02-03 10:22:22 -05:00
commit 9e49a104fd
18 changed files with 402 additions and 1 deletions

View File

@ -0,0 +1,22 @@
#!/bin/sh
# create the buildid file
etcdir=/opt/vyatta/etc
[ -d $etcdir ] || mkdir -p -m 0755 $etcdir
rm -f $etcdir/build.txt $etcdir/iso-build.txt $etc/iso-submodules.txt
## NOTE: on live image build, these files are in the chroot/root
## however, during install, these are in /cdrom
for f in iso-build.txt iso-submodules.txt ; do
if [ -f /cdrom/$f ] ; then
cp /cdrom/$f $etcdir
elif [ -f /$f ] ; then
cp /$f $etcdir
else
>$etcdir/$f
fi
done
# backwards compatible symlink
ln -s iso-build.txt $etcdir/build.txt

View File

@ -0,0 +1,12 @@
#!/bin/sh
if ! grep '^auto lo' /etc/network/interfaces &> /dev/null ; then
mkdir -p -m 0755 /etc/network
cat >> /etc/network/interfaces <<-EOF
# The loopback network interface
auto lo
iface lo inet loopback
EOF
fi

View File

@ -0,0 +1,10 @@
#!/bin/sh
echo I: Rewriting /etc/issue and /etc/issue.net
cat <<EOF > etc/issue
Welcome to VyOS - \n \l
EOF
cat <<EOF > etc/issue.net
Welcome to VyOS
EOF

View File

@ -0,0 +1,10 @@
#!/bin/sh
grep -q '\(^[^#]*\)\(\.\|source\) /etc/bash_completion' root/.bashrc || \
cat <<-EOF >> root/.bashrc
source /etc/bash_completion
EOF
sed -i 's/set $BASH_COMPLETION_ORIGINAL_V_VALUE/builtin set $BASH_COMPLETION_ORIGINAL_V_VALUE/g' /usr/share/bash-completion/bash_completion

View File

@ -0,0 +1,8 @@
#!/bin/sh
echo I: Set default locale
cat <<EOF >etc/default/locale
LANG=en_US.UTF-8
LC_ALL=C
EOF

View File

@ -0,0 +1,34 @@
#!/bin/sh
if [ -r etc/event.d/tty1 ] ; then
echo I: Delay getty until rcX completes
sed -i 's/start on runlevel /start on stopped rc/' \
etc/event.d/tty[1-6]
if [ ! -r etc/event.d/ttyS0 ] && [ -c dev/ttyS0 ] ; then
echo I: Enable serial console login
cat <<-EOF > etc/event.d/ttyS0
# ttyS0 - getty
#
# This service maintains a getty on ttyS0 from the point the system is
# started until it is shut down again.
start on stopped rc2
start on stopped rc3
start on stopped rc4
start on stopped rc5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /sbin/getty 9600 ttyS0 vt100
EOF
fi
fi
if [ -r etc/inittab ] && [ -c dev/ttyS0 ] && grep -q '^#T0:.*getty.*ttyS0' etc/inittab ; then
echo I: Enable serial console login
sed -i '/^#T0:/s|^#.*$|T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100|' etc/inittab
fi

View File

@ -0,0 +1,8 @@
#!/bin/sh
if [ -e /cdrom/vyatta-pubkey.gpg ] ; then
apt-key add /cdrom/vyatta-pubkey.gpg
elif [ -e /vyatta-pubkey.gpg ] ; then
apt-key add /vyatta-pubkey.gpg
rm -f /vyatta-pubkey.gpg
fi

View File

@ -0,0 +1,47 @@
#!/bin/sh
for conf in motd.tail syslog.conf; do
cp -f /opt/vyatta/etc/$conf /etc/$conf
done
cp -f /opt/vyatta/etc/default_ssh /etc/default/ssh
>/etc/pam_radius_auth.conf
update_sysctl_conf ()
{
var=$1
val=$2
comment=$3
sysctl_conf=/etc/sysctl.conf
if grep -q "^${var}[[:space:]]*=" $sysctl_conf ; then
sed -i "/^${var}[[:space:]]*=/ s,=.*,= ${val}," $sysctl_conf
elif grep -q "^#[[:space:]]*${var}[[:space:]]*=" $sysctl_conf ; then
sed -i "/^#[[:space:]]*${var}[[:space:]]*=/ { s,^#[[:space:]]*,, ; s,[[:space:]]*=.*, = ${val},} " $sysctl_conf
else
cat <<-EOF >> $sysctl_conf
# $comment
$var = $val
EOF
fi
}
update_sysctl_conf kernel.printk "4 4 1 7" \
"the following stops low-level messages on console"
update_sysctl_conf net.ipv4.conf.default.arp_filter 1 \
"reset promiscous arp response"
update_sysctl_conf net.ipv4.conf.all.promote_secondaries 1 \
"promote secondaries with removal of primary address"
update_sysctl_conf net.ipv4.ip_forward 1 \
"enable ipv4 forwarding"
# FIXME! need to load or staticly link ipv6 module before adding this.
# update_sysctl_conf net.ipv6.conf.all.forwarding 1 \
# "enable ipv6 forwarding"
update_sysctl_conf net.core.rmem_max 223232 \
"maximize netlink buffers"
# Local Variables:
# mode: shell-script
# sh-indentation: 4
# End:

View File

@ -0,0 +1,6 @@
#!/bin/sh
# hack live script that tries to mount ext[23] floppies as root
sed -e '/ln -s "${devname}"/,/return 0/ s/^/: FIXME/' \
-i /usr/share/initramfs-tools/scripts/live

View File

@ -0,0 +1,12 @@
#!/bin/sh
# hack umountfs script to cleanly unmount live systems
sed \
-e '/proc|procfs|linprocfs/ s/)/|squashfs|iso9660)/' \
-e '/tmpfs)/ a\
[ "$MTPT" != "/media" ] && \
[ "$MTPT" != "/live" ] && \
[ "$MTPT" != "/live/cow" ] &&
' \
-i /etc/init.d/umountfs

View File

@ -0,0 +1,183 @@
#!/bin/sh
# create busybox alternatives
bb=`which busybox`
applets=$(busybox | sed '1,/^Currently defined functions:/d; s/[\[,]//g; s/ / /g; s/$/ /g')
bb_alternative ()
{
full=$1
full_bb=${full}.bb
app=${full##*/}
if [ ! -x $full ] && (echo -n "$applets" | grep -q " $app "); then
ln -s $bb $full_bb
update-alternatives --install $full $app $full_bb 10
fi
}
bb_alternative /bin/bunzip2
bb_alternative /bin/bzcat
bb_alternative /bin/cat
bb_alternative /bin/chgrp
bb_alternative /bin/chmod
bb_alternative /bin/chown
bb_alternative /bin/cp
bb_alternative /bin/cpio
bb_alternative /bin/date
bb_alternative /bin/dd
bb_alternative /bin/df
bb_alternative /bin/dmesg
bb_alternative /bin/echo
bb_alternative /bin/egrep
bb_alternative /bin/false
bb_alternative /bin/fgrep
bb_alternative /bin/grep
bb_alternative /bin/gunzip
bb_alternative /bin/gzip
bb_alternative /bin/hostname
bb_alternative /bin/ip
bb_alternative /bin/kill
bb_alternative /bin/ln
bb_alternative /bin/login
bb_alternative /bin/ls
bb_alternative /bin/mkdir
bb_alternative /bin/mknod
bb_alternative /bin/mktemp
bb_alternative /bin/more
bb_alternative /bin/mount
bb_alternative /bin/mt
bb_alternative /bin/mv
bb_alternative /bin/nc
bb_alternative /bin/netstat
bb_alternative /bin/pidof
bb_alternative /bin/ping
bb_alternative /bin/ping6
bb_alternative /bin/ps
bb_alternative /bin/pwd
bb_alternative /bin/readlink
bb_alternative /bin/rm
bb_alternative /bin/rmdir
bb_alternative /bin/run-parts
bb_alternative /bin/sed
bb_alternative /bin/sh
bb_alternative /bin/sleep
bb_alternative /bin/stty
bb_alternative /bin/sync
bb_alternative /bin/tar
bb_alternative /bin/touch
bb_alternative /bin/true
bb_alternative /bin/umount
bb_alternative /bin/uname
bb_alternative /bin/uncompress
bb_alternative /bin/which
bb_alternative /bin/zcat
bb_alternative /sbin/ifconfig
bb_alternative /sbin/ip
bb_alternative /sbin/iptunnel
bb_alternative /sbin/klogd
bb_alternative /sbin/losetup
bb_alternative /sbin/nameif
bb_alternative /sbin/route
bb_alternative /sbin/start-stop-daemon
bb_alternative /sbin/swapoff
bb_alternative /sbin/swapon
bb_alternative /sbin/syslogd
bb_alternative /usr/bin/adjtimex
bb_alternative /usr/bin/ar
bb_alternative /usr/bin/arping
bb_alternative /usr/bin/awk
bb_alternative /usr/bin/basename
bb_alternative /usr/bin/cal
bb_alternative /usr/bin/chvt
bb_alternative /usr/bin/clear
bb_alternative /usr/bin/cmp
bb_alternative /usr/bin/cut
bb_alternative /usr/bin/dc
bb_alternative /usr/bin/deallocvt
bb_alternative /usr/bin/dirname
bb_alternative /usr/bin/dos2unix
bb_alternative /usr/bin/dumpkmap
bb_alternative /usr/bin/du
bb_alternative /usr/bin/env
bb_alternative /usr/bin/expr
bb_alternative /usr/bin/find
bb_alternative /usr/bin/fold
bb_alternative /usr/bin/free
bb_alternative /usr/bin/ftpget
bb_alternative /usr/bin/ftpput
bb_alternative /usr/bin/getopt
bb_alternative /usr/bin/head
bb_alternative /usr/bin/hexdump
bb_alternative /usr/bin/hostid
bb_alternative /usr/bin/id
bb_alternative /usr/bin/ipaddr
bb_alternative /usr/bin/ipcalc
bb_alternative /usr/bin/iplink
bb_alternative /usr/bin/iproute
bb_alternative /usr/bin/killall
bb_alternative /usr/bin/last
bb_alternative /usr/bin/loadfont
bb_alternative /usr/bin/loadkmap
bb_alternative /usr/bin/logger
bb_alternative /usr/bin/logname
bb_alternative /usr/bin/logread
bb_alternative /usr/bin/md5sum
bb_alternative /usr/bin/mkfifo
bb_alternative /usr/bin/nslookup
bb_alternative /usr/bin/od
bb_alternative /usr/bin/openvt
bb_alternative /usr/bin/patch
bb_alternative /usr/bin/printf
bb_alternative /usr/bin/rdate
bb_alternative /usr/bin/realpath
bb_alternative /usr/bin/rpm
bb_alternative /usr/bin/rpm2cpio
bb_alternative /usr/bin/renice
bb_alternative /usr/bin/reset
bb_alternative /usr/bin/setkeycodes
bb_alternative /usr/bin/sha1sum
bb_alternative /usr/bin/sort
bb_alternative /usr/bin/strings
bb_alternative /usr/bin/tail
bb_alternative /usr/bin/tee
bb_alternative /usr/bin/test
bb_alternative /usr/bin/tftp
bb_alternative /usr/bin/time
bb_alternative /usr/bin/top
bb_alternative /usr/bin/touch
bb_alternative /usr/bin/tr
bb_alternative /usr/bin/traceroute
bb_alternative /usr/bin/tty
bb_alternative /usr/bin/uniq
bb_alternative /usr/bin/unix2dos
bb_alternative /usr/bin/unzip
bb_alternative /usr/bin/uptime
bb_alternative /usr/bin/usleep
bb_alternative /usr/bin/uudecode
bb_alternative /usr/bin/uuencode
bb_alternative /usr/bin/vi
bb_alternative /usr/bin/watch
bb_alternative /usr/bin/wc
bb_alternative /usr/bin/wget
bb_alternative /usr/bin/which
bb_alternative /usr/bin/who
bb_alternative /usr/bin/whoami
bb_alternative /usr/bin/xargs
bb_alternative /usr/bin/yes
bb_alternative /usr/sbin/chroot
bb_alternative /usr/sbin/dumpleases
bb_alternative /usr/sbin/httpd
bb_alternative /usr/sbin/telnetd
bb_alternative /usr/sbin/traceroute
bb_alternative /usr/sbin/udhcpc
bb_alternative /usr/sbin/udhcpd
bb_alternative /usr/sbin/watchdog
# Local Variables:
# mode: shell-script
# sh-indentation: 4
# End:

View File

@ -0,0 +1,9 @@
#!/bin/sh
# this was a "local patch" but patch generates a .orig file if it doesn't
# apply cleanly, which is not good when all files in the hook directory are
# executed. just use sed to hack the udev hook here.
sed -i 's/^\(mount -n -o move \/dev .*\/dev\)$/\1 2>\/dev\/null/' \
/usr/share/initramfs-tools/scripts/init-bottom/udev

View File

@ -0,0 +1,4 @@
#!/bin/sh
rm -f /etc/apt/sources.list.d/*.list >/dev/null 2>&1 || true

View File

@ -0,0 +1,4 @@
#!/bin/sh
sed -i 's/#user_allow_other/user_allow_other/g' /etc/fuse.conf
chmod a+r /etc/fuse.conf

View File

@ -0,0 +1,4 @@
#!/bin/sh
echo I: Create initramfs if it does not exist.
update-initramfs -c -k `ls /boot | grep vmlinuz- | sed 's/vmlinuz-//g'`

View File

@ -0,0 +1,27 @@
#!/bin/sh
echo I: Disabling services.
systemctl disable exim4
/usr/sbin/update-rc.d -f exim4 remove
systemctl disable isc-dhcp-server
/usr/sbin/update-rc.d -f isc-dhcp-server remove
systemctl disable isc-dhcp-relay
/usr/sbin/update-rc.d -f isc-dhcp-relay remove
systemctl disable nfacctd
/usr/sbin/update-rc.d -f nfacctd remove
systemctl disable pmacctd
/usr/sbin/update-rc.d -f pmacctd remove
systemctl disable sfacctd
/usr/sbin/update-rc.d -f sfacctd remove
systemctl disable uacctd
/usr/sbin/update-rc.d -f uacctd remove
systemctl disable lighttpd
/usr/sbin/update-rc.d -f lighttpd remove
systemctl disable ssh
/usr/sbin/update-rc.d -f ssh remove
systemctl disable openvpn
/usr/sbin/update-rc.d -f openvpn remove
systemctl disable dnsmasq
/usr/sbin/update-rc.d -f dnsmasq remove
systemctl disable lldpd
/usr/sbin/update-rc.d -f lldpd remove

View File

@ -1 +0,0 @@
user_allow_other

View File

@ -35,6 +35,8 @@ lb_config_tmpl = """
lb config noauto \ lb config noauto \
--architectures {{architecture}} \ --architectures {{architecture}} \
--bootappend-live "boot=live components hostname=vyos username=live nopersistence noautologin nonetworking union=overlay" \ --bootappend-live "boot=live components hostname=vyos username=live nopersistence noautologin nonetworking union=overlay" \
--linux-flavours {{architecture}}-vyos \
--linux-packages linux-image-4.4.1 \
--bootloader syslinux \ --bootloader syslinux \
--binary-images iso-hybrid \ --binary-images iso-hybrid \
--debian-installer false \ --debian-installer false \