* Add ACCEPT_KEYWORDS Makefile option
* kde: Works now in ~amd64 also * gnome: (Hopefully) works now in ~amd64 also * Add xfce virtual appliance * Add HEADLESS Makefile option that configures grub.conf and /etc/inittab to use serial console
This commit is contained in:
parent
4606d5a997
commit
b95132a264
19
Makefile
19
Makefile
|
@ -12,6 +12,8 @@ CHROOT=chroot
|
|||
ARCH=amd64
|
||||
MAKEOPTS=-j4
|
||||
PRUNE_CRITICAL=NO
|
||||
HEADLESS=NO
|
||||
ACCEPT_KEYWORDS="amd64"
|
||||
|
||||
INSTALL=install
|
||||
M4=m4
|
||||
|
@ -82,6 +84,7 @@ stage3: chroot
|
|||
|
||||
compile_options: make.conf locale.gen $(PACKAGE_FILES)
|
||||
cp make.conf $(CHROOT)/etc/make.conf
|
||||
echo ACCEPT_KEYWORDS=$(ACCEPT_KEYWORDS) >> $(CHROOT)/etc/make.conf
|
||||
cp locale.gen $(CHROOT)/etc/locale.gen
|
||||
chroot $(CHROOT) locale-gen
|
||||
mkdir -p $(CHROOT)/etc/portage
|
||||
|
@ -93,9 +96,6 @@ compile_options: make.conf locale.gen $(PACKAGE_FILES)
|
|||
base_system: mounts compile_options
|
||||
touch base_system
|
||||
|
||||
kernel: $(CHROOT)/boot/vmlinuz
|
||||
|
||||
|
||||
$(CHROOT)/boot/vmlinuz: base_system kernel.config
|
||||
chroot $(CHROOT) cp /usr/share/zoneinfo/$(TIMEZONE) /etc/localtime
|
||||
chroot $(CHROOT) emerge -N sys-kernel/$(KERNEL)
|
||||
|
@ -119,8 +119,12 @@ sysconfig: preproot fstab
|
|||
echo HOSTNAME=$(HOSTNAME) > $(CHROOT)/etc/conf.d/hostname
|
||||
sed -i 's/^#TIMEZONE=.*/TIMEZONE="$(TIMEZONE)"/' $(CHROOT)/etc/conf.d/clock
|
||||
sed -i 's/^#s0:/s0:/' $(CHROOT)/etc/inittab
|
||||
if [ "$(HEADLESS)" == "YES" ] ; then \
|
||||
sed -i 's/^\(c[0-9]:\)/#\1/' $(CHROOT)/etc/inittab ; \
|
||||
fi
|
||||
echo 'config_eth0=( "dhcp" )' > $(CHROOT)/etc/conf.d/net
|
||||
chroot $(CHROOT) rc-update add net.eth0 default
|
||||
chroot $(CHROOT) rc-update del consolefont boot
|
||||
touch sysconfig
|
||||
|
||||
systools: sysconfig compile_options
|
||||
|
@ -131,12 +135,15 @@ systools: sysconfig compile_options
|
|||
chroot $(CHROOT) emerge -n $(USEPKG) net-misc/dhcpcd
|
||||
touch systools
|
||||
|
||||
grub: systools grub.conf kernel
|
||||
grub: systools grub.conf $(CHROOT)/boot/vmlinuz
|
||||
chroot $(CHROOT) emerge -nN $(USEPKG) sys-boot/grub
|
||||
cp grub.conf $(CHROOT)/boot/grub/grub.conf
|
||||
if [ "$(VIRTIO)" == "YES" ] ; then \
|
||||
sed -i 's/sda/vda/' $(CHROOT)/boot/grub/grub.conf ; \
|
||||
fi
|
||||
if [ "$(HEADLESS)" == "YES" ] ; then \
|
||||
sed -i -f grub-headless.sed $(CHROOT)/boot/grub/grub.conf ; \
|
||||
fi
|
||||
touch grub
|
||||
|
||||
software: systools issue etc-update.conf $(CRITICAL) $(WORLD) $(PREINSTALL) $(POSTINSTALL)
|
||||
|
@ -196,12 +203,12 @@ $(VMDK_IMAGE): $(RAW_IMAGE) image
|
|||
|
||||
vmdk: $(VMDK_IMAGE)
|
||||
|
||||
.PHONY: kernel qcow vmdk clean
|
||||
.PHONY: qcow vmdk clean
|
||||
|
||||
clean:
|
||||
umount $(CHROOT)/usr/portage $(CHROOT)/var/tmp $(CHROOT)/dev $(CHROOT)/proc || true
|
||||
rm -f mounts compile_options base_system portage
|
||||
rm -f parted grub stage3 software preproot sysconfig systools image kernel partitions device-map
|
||||
rm -f parted grub stage3 software preproot sysconfig systools image partitions device-map
|
||||
rm -rf loop
|
||||
rm -rf gentoo
|
||||
rm -rf $(CHROOT)
|
||||
|
|
|
@ -14,6 +14,7 @@ net-libs/libsoup gnome
|
|||
net-misc/curl ssl
|
||||
sys-apps/dbus X
|
||||
sys-apps/parted device-mapper
|
||||
sys-block/parted device-mapper
|
||||
sys-auth/consolekit policykit
|
||||
sys-fs/udev extras
|
||||
x11-libs/cairo svg X
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
1iserial --speed=9600 --unit=0 --word=8 --parity=no --stop=1\
|
||||
1iterminal --timeout=2 serial console\
|
||||
s/^\(kernel .*\)$/\1 console=ttyS0/
|
|
@ -16,3 +16,6 @@ app-text/poppler utils
|
|||
dev-libs/xmlrpc-c curl
|
||||
media-libs/xine-lib xcb
|
||||
net-misc/curl ssl
|
||||
|
||||
# KDE 4.5
|
||||
>=dev-libs/soprano-2.4.64 raptor redland
|
||||
|
|
|
@ -10,5 +10,9 @@ cp "$APPLIANCE"/kdmrc "$APPLIANCE"/Xaccess "$CHROOT"/usr/share/config/kdm
|
|||
chroot "$CHROOT" rc-update add dbus default
|
||||
|
||||
# enable kdm
|
||||
sed -i 's/^DISPLAYMANAGER=.*/DISPLAYMANAGER="kdm"/' "$CHROOT"/etc/conf.d/xdm
|
||||
chroot "$CHROOT" rc-update add xdm default
|
||||
if [ -e "$CHROOT"/etc/conf.d/xdm ] ; then
|
||||
sed -i 's/^DISPLAYMANAGER=.*/DISPLAYMANAGER="kdm"/' "$CHROOT"/etc/conf.d/xdm
|
||||
chroot "$CHROOT" rc-update add xdm default
|
||||
else
|
||||
echo "/usr/bin/kdm -daemon" >> "$CHROOT"/etc/conf.d/local.start
|
||||
fi
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
app-editors/nano
|
||||
net-misc/openssh
|
||||
net-misc/rsync
|
||||
net-misc/wget
|
||||
sys-kernel/gentoo-sources
|
||||
sys-kernel/linux-headers
|
||||
sys-devel/gcc
|
||||
sys-devel/automake
|
||||
sys-devel/bison
|
||||
sys-devel/make
|
||||
sys-devel/flex
|
||||
sys-devel/automake-wrapper
|
||||
sys-devel/autoconf-wrapper
|
||||
sys-devel/autoconf
|
||||
sys-devel/m4
|
||||
sys-devel/gcc-config
|
||||
sys-devel/libtool
|
||||
sys-devel/binutils
|
||||
sys-devel/binutils-config
|
||||
sys-devel/patch
|
||||
sys-devel/gnuconfig
|
||||
app-admin/python-updater
|
||||
app-admin/perl-cleaner
|
||||
sys-apps/man-pages
|
||||
sys-apps/man
|
||||
sys-apps/file
|
||||
sys-apps/less
|
||||
sys-apps/texinfo
|
||||
sys-apps/busybox
|
||||
sys-apps/debianutils
|
||||
sys-apps/man-pages-posix
|
||||
sys-apps/sandbox
|
||||
sys-apps/which
|
||||
dev-lang/perl
|
||||
sys-devel/libperl
|
||||
sys-apps/portage
|
|
@ -0,0 +1,12 @@
|
|||
app-editors/nano ncurses
|
||||
dev-lang/python ssl threads xml
|
||||
sys-kernel/gentoo-sources symlink
|
||||
x11-terms/terminal
|
||||
x11-libs/cairo X svg
|
||||
xfce-base/thunar xfce_plugins_trash
|
||||
xfce-base/xfce4-meta svg
|
||||
xfce-base/xfwm4 xcomposite
|
||||
xfce-extra/xfce4-cpugraph-plugin
|
||||
xfce-extra/xfce4-screenshooter
|
||||
xfce-extra/xfce4-systemload-plugin
|
||||
xfce-extra/xfce4-taskmanager
|
|
@ -0,0 +1,11 @@
|
|||
#!/bin/sh
|
||||
|
||||
CHROOT="$1"
|
||||
APPLIANCE="`dirname $0`"
|
||||
|
||||
cp "${APPLIANCE}"/xdm/* "${CHROOT}"/etc/X11/xdm
|
||||
echo "XSESSION=Xfce4" > "${CHROOT}"/etc/env.d/99local
|
||||
chroot "${CHROOT}" env-update
|
||||
chroot "${CHROOT}" rc-update add xdm default
|
||||
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/sh
|
||||
|
||||
CHROOT="$1"
|
|
@ -0,0 +1,9 @@
|
|||
net-misc/dhcpcd
|
||||
x11-apps/xdm
|
||||
x11-terms/terminal
|
||||
xfce-base/thunar
|
||||
xfce-base/xfce4-meta
|
||||
xfce-extra/xfce4-cpugraph-plugin
|
||||
xfce-extra/xfce4-screenshooter
|
||||
xfce-extra/xfce4-systemload-plugin
|
||||
xfce-extra/xfce4-taskmanager
|
|
@ -0,0 +1,101 @@
|
|||
# $XdotOrg: Xaccess,v 1.3 2000/08/17 19:54:17 cpqbld Exp $
|
||||
# $Xorg: Xaccess,v 1.3 2000/08/17 19:54:17 cpqbld Exp $
|
||||
# $XFree86: xc/programs/xdm/config/Xaccess,v 1.4 2003/07/09 15:27:40 tsi Exp $
|
||||
#
|
||||
# Access control file for XDMCP connections
|
||||
#
|
||||
# To control Direct and Broadcast access:
|
||||
#
|
||||
# pattern
|
||||
#
|
||||
# To control Indirect queries:
|
||||
#
|
||||
# pattern list of hostnames and/or macros ...
|
||||
#
|
||||
# To use the chooser:
|
||||
#
|
||||
# pattern CHOOSER BROADCAST
|
||||
#
|
||||
# or
|
||||
#
|
||||
# pattern CHOOSER list of hostnames and/or macros ...
|
||||
#
|
||||
# To define macros:
|
||||
#
|
||||
# %name list of hosts ...
|
||||
#
|
||||
# To control which addresses xdm listens for requests on:
|
||||
#
|
||||
# LISTEN address [list of multicast groups ... ]
|
||||
#
|
||||
# The first form tells xdm which displays to respond to itself.
|
||||
# The second form tells xdm to forward indirect queries from hosts matching
|
||||
# the specified pattern to the indicated list of hosts.
|
||||
# The third form tells xdm to handle indirect queries using the chooser;
|
||||
# the chooser is directed to send its own queries out via the broadcast
|
||||
# address and display the results on the terminal.
|
||||
# The fourth form is similar to the third, except instead of using the
|
||||
# broadcast address, it sends DirectQuerys to each of the hosts in the list
|
||||
# The fifth form tells xdm which addresses to listen for incoming connections
|
||||
# on. If present, xdm will only listen for connections on the specified
|
||||
# interfaces and/or multicast groups.
|
||||
#
|
||||
# In all cases, xdm uses the first entry which matches the terminal;
|
||||
# for IndirectQuery messages only entries with right hand sides can
|
||||
# match, for Direct and Broadcast Query messages, only entries without
|
||||
# right hand sides can match.
|
||||
#
|
||||
|
||||
* #any host can get a login window
|
||||
|
||||
#
|
||||
# To hardwire a specific terminal to a specific host, you can
|
||||
# leave the terminal sending indirect queries to this host, and
|
||||
# use an entry of the form:
|
||||
#
|
||||
|
||||
#terminal-a host-a
|
||||
|
||||
|
||||
#
|
||||
# The nicest way to run the chooser is to just ask it to broadcast
|
||||
# requests to the network - that way new hosts show up automatically.
|
||||
# Sometimes, however, the chooser can't figure out how to broadcast,
|
||||
# so this may not work in all environments.
|
||||
#
|
||||
|
||||
#* CHOOSER BROADCAST #any indirect host can get a chooser
|
||||
|
||||
#
|
||||
# If you'd prefer to configure the set of hosts each terminal sees,
|
||||
# then just uncomment these lines (and comment the CHOOSER line above)
|
||||
# and edit the %hostlist line as appropriate
|
||||
#
|
||||
|
||||
#%hostlist host-a host-b
|
||||
|
||||
#* CHOOSER %hostlist #
|
||||
|
||||
#
|
||||
# If you have a machine with multiple network interfaces or IP addresses
|
||||
# you can control which interfaces accept XDMCP packets by listing a LISTEN
|
||||
# line for each interface you want to listen on. You can additionally list
|
||||
# one or more multicast groups after each address to listen on those groups
|
||||
# on that address.
|
||||
#
|
||||
# If no LISTEN is specified, the default is the same as "LISTEN *" - listen on
|
||||
# all unicast interfaces, but not for multicast packets. If any LISTEN lines
|
||||
# are specified, then only the listed interfaces will be listened on.
|
||||
#
|
||||
# IANA has assigned FF0X:0:0:0:0:0:0:12B as the permanently assigned
|
||||
# multicast addresses for XDMCP, where X in the prefix may be replaced
|
||||
# by any valid scope identifier, such as 1 for Node-Local, 2 for Link-Local,
|
||||
# 5 for Site-Local, and so on. The default is equivalent to the example shown
|
||||
# here using the Link-Local version to most closely match the old IPv4 subnet
|
||||
# broadcast behavior.
|
||||
#
|
||||
# LISTEN * ff02:0:0:0:0:0:0:12b
|
||||
|
||||
# This example shows listening for multicast on all scopes up to site-local
|
||||
#
|
||||
# LISTEN * ff01:0:0:0:0:0:0:12b ff02:0:0:0:0:0:0:12b ff03:0:0:0:0:0:0:12b ff04:0:0:0:0:0:0:12b ff05:0:0:0:0:0:0:12b
|
|
@ -0,0 +1,13 @@
|
|||
# $Xorg: Xserv.ws.cpp,v 1.3 2000/08/17 19:54:17 cpqbld Exp $
|
||||
#
|
||||
# Xservers file, workstation prototype
|
||||
#
|
||||
# This file should contain an entry to start the server on the
|
||||
# local display; if you have more than one display (not screen),
|
||||
# you can add entries to the list (one per line). If you also
|
||||
# have some X terminals connected which do not support XDMCP,
|
||||
# you can add them here as well. Each X terminal line should
|
||||
# look like:
|
||||
# XTerminalName:0 foreign
|
||||
#
|
||||
#:0 local /usr/bin/X :0 vt7
|
|
@ -0,0 +1,41 @@
|
|||
! $Xorg: xdm-conf.cpp,v 1.3 2000/08/17 19:54:17 cpqbld Exp $
|
||||
! $XdotOrg: $
|
||||
!
|
||||
!
|
||||
!
|
||||
!
|
||||
! $XFree86: xc/programs/xdm/config/xdm-conf.cpp,v 1.10 2002/11/30 19:11:32 herrb Exp $
|
||||
!
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
DisplayManager.errorLogFile: /var/log/xdm.log
|
||||
DisplayManager.pidFile: /var/run/xdm.pid
|
||||
DisplayManager.keyFile: /etc/X11/xdm/xdm-keys
|
||||
DisplayManager.servers: /etc/X11/xdm/Xservers
|
||||
DisplayManager.accessFile: /etc/X11/xdm/Xaccess
|
||||
DisplayManager*resources: /etc/X11/xdm/Xresources
|
||||
DisplayManager.willing: /usr/lib64/X11/xdm/Xwilling
|
||||
! All displays should use authorization, but we cannot be sure
|
||||
! X terminals may not be configured that way, so they will require
|
||||
! individual resource settings.
|
||||
DisplayManager*authorize: true
|
||||
!
|
||||
DisplayManager*chooser: /usr/lib64/X11/xdm/chooser
|
||||
DisplayManager*startup: /usr/lib64/X11/xdm/Xstartup
|
||||
DisplayManager*session: /usr/lib64/X11/xdm/Xsession
|
||||
DisplayManager*reset: /usr/lib64/X11/xdm/Xreset
|
||||
DisplayManager*authComplain: true
|
||||
! The following three resources set up display :0 as the console.
|
||||
DisplayManager._0.setup: /usr/lib64/X11/xdm/Xsetup_0
|
||||
DisplayManager._0.startup: /usr/lib64/X11/xdm/GiveConsole
|
||||
DisplayManager._0.reset: /usr/lib64/X11/xdm/TakeConsole
|
||||
|
||||
DisplayManager*loginmoveInterval: 10
|
||||
|
||||
! SECURITY: do not listen for XDMCP or Chooser requests
|
||||
! Comment out this line if you want to manage X terminals with xdm
|
||||
! DisplayManager.requestPort: 0
|
Loading…
Reference in New Issue