X-Git-Url: http://git.ipfire.org/?p=people%2Fteissler%2Fipfire-2.x.git;a=blobdiff_plain;f=lfs%2Fstage2;h=956f58953c36a8a393af00b4a15bb0b2a12e7950;hp=97923e979a4ca6eb1b0c5a58c754ff9059dc4100;hb=73372ed4e6b573c4a1078b771df4f6623fc79927;hpb=f3bbb213fa0821065511ba2750cf97d1f2781587 diff --git a/lfs/stage2 b/lfs/stage2 index 97923e979..956f58953 100644 --- a/lfs/stage2 +++ b/lfs/stage2 @@ -1,22 +1,20 @@ ############################################################################### -# This file is part of the IPCop Firewall. # # # -# IPCop is free software; you can redistribute it and/or modify # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # -# the Free Software Foundation; either version 2 of the License, or # +# the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # -# IPCop is distributed in the hope that it will be useful, # +# This program is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # -# along with IPCop; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Makefiles are based on LFSMake, which is # -# Copyright (C) 2002 Rod Roard # +# along with this program. If not, see . # # # ############################################################################### @@ -51,7 +49,7 @@ $(TARGET) : @$(PREBUILD) # Create directories - -mkdir -pv /{bin,boot,etc/opt,etc/modprobe.d,home,lib,mnt,opt} + -mkdir -pv /{bin,boot,etc/opt,etc/modprobe.d,home,lib,mnt,opt,run} -mkdir -pv /{media/{floppy,cdrom,usbkey},sbin,srv,var} -install -dv -m 0750 /root -install -dv -m 1777 /tmp /var/tmp @@ -62,18 +60,21 @@ $(TARGET) : #-for dir in /usr /usr/local; do \ # ln -sv share/{man,doc,info} $$dir; \ #done + + # Symlink /var/run -> /run. + ln -svf ../run /var/run # Symlinks # for this reason, stage2 rebuild will broke the iso:perl, grubbatch - -ln -sv /tools/bin/{bash,cat,grep,pwd,stty} /bin + -ln -sv /tools/bin/{bash,cat,echo,pwd,stty} /bin -ln -sv /tools/bin/perl /usr/bin -ln -sv /tools/lib/libgcc_s.so{,.1} /usr/lib + -ln -sv /tools/lib/libstdc++.so{,.6} /usr/lib + sed 's/tools/usr/' /tools/lib/libstdc++.la > /usr/lib/libstdc++.la -ln -sv bash /bin/sh # Config files - for i in $(DIR_SRC)/config/etc/*; do \ - [ -f $$i ] && cp $$i /etc; \ - done + cp -rvf $(DIR_SRC)/config/etc/* /etc; touch /etc/mtab echo "$(NAME) v$(VERSION) - $(SLOGAN)" > /etc/issue echo "===============================" >> /etc/issue @@ -84,6 +85,12 @@ $(TARGET) : for i in $(DIR_SRC)/config/profile.d/*; do \ [ -f $$i ] && cp $$i /etc/profile.d; \ done + chmod 755 /etc/bashrc + + # Install root's bash files. + for i in $(DIR_SRC)/config/bash/dot_*; do \ + [ -f $$i ] && cp $$i /root/$$(basename $${i/dot_/\.}); \ + done # Scripts for i in `find $(DIR_SRC)/src/scripts -maxdepth 1 -type f`; do \ @@ -91,18 +98,44 @@ $(TARGET) : chmod 755 /usr/local/bin/`basename $$i`; \ done + # Move script to correct place. + mv -vf /usr/local/bin/ovpn-ccd-convert /usr/sbin/ + + # Install firewall scripts. + mkdir -pv /usr/lib/firewall + install -m 755 $(DIR_SRC)/config/firewall/rules.pl \ + /usr/lib/firewall/rules.pl + install -m 644 $(DIR_SRC)/config/firewall/firewall-lib.pl \ + /usr/lib/firewall/firewall-lib.pl + # Nobody user -mkdir -p /home/nobody chown -R nobody:nobody /home/nobody # Create /var dirs and files - -mkdir -v /var/{lock,log,mail,run,spool,empty} + -mkdir -v /var/{lock,log,mail,spool,empty} -mkdir -pv /var/{opt,cache,lib/{misc,locate},local} - touch /var/run/utmp /var/log/{btmp,lastlog,wtmp,counter} - chgrp -v utmp /var/run/utmp /var/log/lastlog - chmod -v 664 /var/run/utmp /var/log/lastlog + -mkdir -pv /var/log/{counter,calamaris} + chown nobody.nobody /var/log/calamaris + touch /var/log/{btmp,lastlog,wtmp,net-traffic.log} + chgrp -v utmp /var/log/lastlog + chmod -v 664 /var/log/lastlog # Permissions chmod 0711 /var/empty + + # A small hack to include /root to the iso but not all of it's files. + touch /root/ipfire + + # License agreement + -mkdir -pv /usr/share/doc/licenses/ + cp -vf $(DIR_SRC)/doc/COPYING /usr/share/doc/licenses/GPLv3 + + # System release + echo "$(SYSTEM_RELEASE)" > /etc/system-release + + # Pakfire + -mkdir -pv /opt/pakfire/db/core + echo "$(PAKFIRE_CORE)" > /opt/pakfire/db/core/mine @$(POSTBUILD)