diff options
author | 2008-07-01 20:42:40 -0400 | |
---|---|---|
committer | 2008-07-01 20:42:40 -0400 | |
commit | 3d2c2067fb5dc390ec8c78762b06ebffa265ce95 (patch) | |
tree | 551ededf9c986d8e9d374457012da05739f2a59e | |
download | clustering-livecd-3d2c2067fb5dc390ec8c78762b06ebffa265ce95.tar.gz clustering-livecd-3d2c2067fb5dc390ec8c78762b06ebffa265ce95.tar.bz2 clustering-livecd-3d2c2067fb5dc390ec8c78762b06ebffa265ce95.zip |
Initial commit
31 files changed, 1373 insertions, 0 deletions
@@ -0,0 +1,14 @@ +catalyst/ + This folder contains the required .spec files, kernel config and scripts necessary to generate and run the Gentoo Clustering LiveCD + +overlay/ + This folder contains the overlay you'd typicaly would add to make.conf to use it's ebuilds. + See overlay/Chahgelog to know which ebuilds should actually work (I haven't hard masked my exploratory ebuilds yet). + +profile/ + This profile directory is meant to be used as portage_confdir: /etc/portage for catalyst. + It is mainly used to unmask required pacakges to get GCC-4.3.x into the LiveCD throughout the stage building. + +README + I'll let you guess... + diff --git a/catalyst/README b/catalyst/README new file mode 100644 index 0000000..6132e0e --- /dev/null +++ b/catalyst/README @@ -0,0 +1,3 @@ +This folder contains the spec files used to create the Gentoo Clustering LiveCD. +Currently only spec files for amd64 are available + diff --git a/catalyst/releases/2008.0/ChangeLog b/catalyst/releases/2008.0/ChangeLog new file mode 100644 index 0000000..cc72af8 --- /dev/null +++ b/catalyst/releases/2008.0/ChangeLog @@ -0,0 +1,13 @@ +# ChangeLog for Cluster LiveCD repo + + 01 Jul 2008; Eric Thibodeau <kyron@neuralbs.com> + +/releases/2008.0/specs/amd64/stage3-desktop.spec + +/releases/2008.0/specs/amd64/stage1.spec + +/releases/2008.0/specs/amd64/livecd-stage1.spec + +/releases/2008.0/specs/amd64/livecd-stage2.spec + +/releases/2008.0/specs/amd64/stage2-desktop.spec + Initial commit to the git repo on git.overlays.gentoo.org, These + files are a lazy copy from releng with little to no modifications and + still rely on the existence of /var/svnroot/releng/ files. + + diff --git a/catalyst/releases/2008.0/specs/amd64/livecd-stage1.spec b/catalyst/releases/2008.0/specs/amd64/livecd-stage1.spec new file mode 100644 index 0000000..bdd8419 --- /dev/null +++ b/catalyst/releases/2008.0/specs/amd64/livecd-stage1.spec @@ -0,0 +1,185 @@ +subarch: amd64 +version_stamp: installer-2008.0 +target: livecd-stage1 +rel_type: default +profile: default/linux/amd64/2008.0/desktop +snapshot: 20080629 +source_subpath: default/stage3-amd64-desktop-2008.0 + +# Kyron: +portage_confdir: ../../../../../profile/ +pkgcache_path: /var/tmp/catalyst/packages/amd64 +### end + +# Kyron: added +# openmp (might as well since we have gcc-4.3.1 +# -minimal (for openldap to be used as auth server) +# -fam to fix circular dependancy preventing the build +livecd/use: + branding + livecd + loop-aes + socks5 + ldap + openmp + -minimal + -fam + +livecd/packages: + app-accessibility/brltty + app-admin/hddtemp + app-admin/ide-smart + app-admin/logrotate + app-admin/passook + app-admin/pwgen + app-admin/sudo + app-admin/syslog-ng + app-arch/mt-st + app-benchmarks/cpuburn +# app-cdr/cdrkit + app-crypt/gnupg +# app-editors/emacs + app-editors/vim + app-misc/mc + app-misc/screen + app-misc/vlock +# app-office/openoffice-bin +# app-office/openoffice + app-portage/gentoolkit + app-portage/mirrorselect + app-portage/ufed + app-text/wgetpaste + dev-util/ccache + dev-util/cvs + dev-util/git + dev-util/subversion + gnome-base/gdm +# gnome-base/gnome + xfce-base/xfce4 +# mail-client/mozilla-thunderbird +# mail-client/mozilla-thunderbird-bin + media-gfx/fbgrab +# media-sound/audacious + net-analyzer/netcat + net-analyzer/nmap + net-analyzer/tcpdump +# net-analyzer/tcptraceroute + net-analyzer/traceroute + net-dialup/mingetty + net-dialup/minicom +### Masked (no keywords) +# net-dialup/penggy + net-dialup/pptpclient + net-dialup/rp-pppoe + net-firewall/iptables + net-fs/mount-cifs + net-fs/nfs-utils + net-im/pidgin + net-irc/irssi + net-irc/xchat + net-misc/bridge-utils + net-misc/dhcpcd + net-misc/iputils + net-misc/ntp + net-misc/rdate + net-misc/rdesktop + net-misc/vconfig + net-misc/vpnc + net-misc/whois + net-p2p/bittorrent + net-proxy/dante + net-proxy/ntlmaps + net-proxy/tsocks +### Masked (~amd64) +# net-wireless/b43-fwcutter +### Masked (~amd64) +# net-wireless/bcm43xx-fwcutter + net-wireless/ipw2100-firmware + net-wireless/ipw2200-firmware + net-wireless/iwl3945-ucode + net-wireless/iwl4965-ucode + net-wireless/prism54-firmware + net-wireless/wireless-tools + net-wireless/wpa_supplicant + net-wireless/zd1201-firmware + net-wireless/zd1211-firmware +### Masked (no keywords) +# sys-apps/apmd + sys-apps/eject + sys-apps/ethtool + sys-apps/fxload + sys-apps/gli + sys-apps/hdparm + sys-apps/hwsetup +### Masked (no keywords) +# sys-apps/ibm-powerpc-utils +### Masked (no keywords) +# sys-apps/ibm-powerpc-utils-papr + sys-apps/iproute2 +### Masked (no keywords) +# sys-apps/lssbus + sys-apps/memtester + sys-apps/netplug + sys-apps/parted +### Masked (no keywords) +# sys-apps/powerpc-utils + sys-apps/sdparm + sys-apps/sg3_utils + sys-apps/slocate + sys-apps/smartmontools + sys-block/aoetools + sys-block/disktype +### Masked (-amd64) +# sys-block/gpart +### Masked (~amd64) +# sys-block/partimage + sys-block/qla-fc-firmware +### Masked (no keywords) +# sys-boot/aboot +### Masked (no keywords) +# sys-boot/elilo + sys-boot/grub +# sys-boot/lilo + sys-boot/syslinux +### Masked (no keywords) +# sys-boot/yaboot +### Masked (no keywords) +# sys-devel/binutils-hppa64 + sys-devel/distcc +### Masked (no keywords) +# sys-devel/gcc-hppa64 + sys-fs/cryptsetup + sys-fs/dmraid + sys-fs/dosfstools + sys-fs/e2fsprogs + sys-fs/evms + sys-fs/hfsplusutils + sys-fs/hfsutils +### Masked (no keywords) +# sys-fs/iprutils + sys-fs/jfsutils + sys-fs/lsscsi + sys-fs/lvm2 +# sys-fs/lvm-user + sys-fs/mac-fdisk + sys-fs/mdadm + sys-fs/ntfsprogs + sys-fs/reiserfsprogs + sys-fs/xfsprogs + sys-kernel/genkernel + sys-libs/gpm + sys-power/acpid + sys-process/htop + sys-process/vixie-cron + www-client/links +# www-client/mozilla-firefox + www-client/mozilla-firefox-bin + x11-base/xorg-server + x11-base/xorg-x11 + x11-drivers/synaptics + x11-themes/gdm-themes-livecd + x11-themes/gentoo-artwork-livecd +## Kyron: +# sys-cluster/clustercd + app-portage/portage-utils + diff --git a/catalyst/releases/2008.0/specs/amd64/livecd-stage2.spec b/catalyst/releases/2008.0/specs/amd64/livecd-stage2.spec new file mode 100644 index 0000000..ee38c1f --- /dev/null +++ b/catalyst/releases/2008.0/specs/amd64/livecd-stage2.spec @@ -0,0 +1,71 @@ +subarch: amd64 +version_stamp: 2008.0 +target: livecd-stage2 +rel_type: default +profile: default/linux/amd64/2008.0/desktop +snapshot: 20080629 +source_subpath: default/livecd-stage1-amd64-installer-2008.0 + +# Kyron: +portage_confdir: ../../../../../profile/ +pkgcache_path: /var/tmp/catalyst/packages/amd64 +### end + +livecd/bootargs: dokeymap +livecd/cdtar: /usr/lib/catalyst/livecd/cdtar/isolinux-elilo-memtest86+-cdtar.tar.bz2 +livecd/fsscript: /var/svnroot/releng/trunk/releases/2008.0/scripts/livecd.sh +livecd/fstype: squashfs +livecd/gk_mainargs: --lvm --dmraid --evms --mdadm --makeopts=-j5 +livecd/iso: /release/buildroot/amd64-default/builds/default/livecd-amd64-installer-2008.0.iso +livecd/type: gentoo-release-livecd +livecd/volid: x86_64 Gentoo Clustering LiveCD +livecd/xsession: xfce +livecd/xdm: gdm + +livecd/overlay: /var/svnroot/releng/trunk/releases/2008.0/overlays/common/overlay/livecd +livecd/root_overlay: /var/svnroot/releng/trunk/releases/2008.0/overlays/common/root_overlay + +boot/kernel: gentoo +boot/kernel/gentoo/sources: gentoo-sources +boot/kernel/gentoo/config: /var/svnroot/releng/trunk/releases/2008.0/kconfig/amd64/livecd-2.6.24.config +boot/kernel/gentoo/use: atm fbcondecor mng png truetype usb +boot/kernel/gentoo/packages: + media-libs/alsa-oss + media-sound/alsa-utils +### Masked (~amd64) +# net-dialup/fcdsl +### Masked (~amd64) +# net-dialup/fritzcapi + net-dialup/globespan-adsl +### Masked (~amd64) +# net-dialup/slmodem + net-misc/br2684ctl +### Masked (~amd64) +# net-wireless/acx + net-wireless/hostap-utils +# net-wireless/ipw3945 +# net-wireless/madwifi-ng-tools +# net-wireless/rt2500 +### Masked (~amd64) +# net-wireless/rtl8187 + sys-apps/pcmciautils + sys-fs/ntfs3g + +livecd/empty: + /var/tmp + /var/empty + /var/run + /var/state + /var/cache/edb/dep + /tmp + /usr/portage + /usr/src + /root/.ccache + /usr/share/genkernel/pkg/x86/cpio + +livecd/rm: + /etc/*- + /etc/*.old + /root/.viminfo + /var/log/*.log + /usr/share/genkernel/pkg/x86/*.bz2 diff --git a/catalyst/releases/2008.0/specs/amd64/stage1.spec b/catalyst/releases/2008.0/specs/amd64/stage1.spec new file mode 100644 index 0000000..117343c --- /dev/null +++ b/catalyst/releases/2008.0/specs/amd64/stage1.spec @@ -0,0 +1,12 @@ +subarch: amd64 +target: stage1 +version_stamp: 2008.0 +rel_type: default +profile: default/linux/amd64/2008.0 +snapshot: 20080629 +source_subpath: drobbins/stage3-amd64-2008.06.27 + +# Kyron: +portage_confdir: ../../../../../profile/ +pkgcache_path: /var/tmp/catalyst/packages/amd64 + diff --git a/catalyst/releases/2008.0/specs/amd64/stage2-desktop.spec b/catalyst/releases/2008.0/specs/amd64/stage2-desktop.spec new file mode 100644 index 0000000..df15df8 --- /dev/null +++ b/catalyst/releases/2008.0/specs/amd64/stage2-desktop.spec @@ -0,0 +1,11 @@ +subarch: amd64 +target: stage2 +version_stamp: desktop-2008.0 +rel_type: default +profile: default/linux/amd64/2008.0/desktop +snapshot: 20080629 +source_subpath: default/stage1-amd64-2008.0 + +# Kyron: +portage_confdir: ../../../../../profile/ +pkgcache_path: /var/tmp/catalyst/packages/amd64 diff --git a/catalyst/releases/2008.0/specs/amd64/stage3-desktop.spec b/catalyst/releases/2008.0/specs/amd64/stage3-desktop.spec new file mode 100644 index 0000000..c4b3d31 --- /dev/null +++ b/catalyst/releases/2008.0/specs/amd64/stage3-desktop.spec @@ -0,0 +1,11 @@ +subarch: amd64 +target: stage3 +version_stamp: desktop-2008.0 +rel_type: default +profile: default/linux/amd64/2008.0/desktop +snapshot: 20080629 +source_subpath: default/stage2-amd64-desktop-2008.0 + +# Kyron: +portage_confdir: ../../../../../profile/ +pkgcache_path: /var/tmp/catalyst/packages/amd64 diff --git a/overlay/app-admin/diradm/ChangeLog b/overlay/app-admin/diradm/ChangeLog new file mode 100644 index 0000000..314977d --- /dev/null +++ b/overlay/app-admin/diradm/ChangeLog @@ -0,0 +1,136 @@ +# ChangeLog for app-admin/diradm +# Copyright 2000-2008 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/app-admin/diradm/ChangeLog,v 1.32 2008/02/20 23:03:36 robbat2 Exp $ + + 30 Jun 2008; Eric Thibodeau <kyron@neuralbs.com> diradm-2.9.3-r1.ebuild: + Add diradm-2.9.3-emptyUID.patch to fix empty UID bug. + + 20 Feb 2008; Robin H. Johnson <robbat2@gentoo.org> diradm-2.9.3.ebuild: + Stable on amd64 per misplaced bug #181562. + + 14 Jun 2007; Tobias Scherbaum <dertobi123@gentoo.org> diradm-2.9.3.ebuild: + ppc stable, bug #181562 + + 12 Jun 2007; Markus Ullmann <jokey@gentoo.org> diradm-2.9.3.ebuild: + Stable on x86 wrt bug #181562 + + 11 Jun 2007; Markus Rothe <corsair@gentoo.org> diradm-2.9.3.ebuild: + Stable on ppc64; bug #181562 + + 07 Jun 2007; Christian Faulhammer <opfer@gentoo.org> ChangeLog: + modified ChangeLog to meet common standards + + 26 Apr 2007; Robin H. Johnson <robbat2@gentoo.org> diradm-2.1.ebuild, + diradm-2.2.ebuild, diradm-2.3.ebuild, diradm-2.4.ebuild, + diradm-2.5.ebuild, diradm-2.8.2.ebuild, diradm-2.9.ebuild, + diradm-2.9.1.ebuild, diradm-2.9.3.ebuild: + Clean up all usage of HOMEPAGE in SRC_URI, as well as not installing COPYING. + + 10 Apr 2007; Robin H. Johnson <robbat2@gentoo.org> diradm-2.9.ebuild: + Refix #172174. + +*diradm-2.9.3 (30 Mar 2007) + + 30 Mar 2007; Robin H. Johnson <robbat2@gentoo.org> diradm-2.9.1.ebuild, + +diradm-2.9.3.ebuild: + Bump for new upstream version, and also fix bug #172174 for IUSE. + +*diradm-2.9.1 (22 Mar 2007) + + 22 Mar 2007; Robin H. Johnson <robbat2@gentoo.org> diradm-2.9.ebuild, + +diradm-2.9.1.ebuild: + Add 2.9.1 release with a last minute upstream fix. + +*diradm-2.9 (22 Mar 2007) + + 22 Mar 2007; Robin H. Johnson <robbat2@gentoo.org> +diradm-2.9.ebuild: + Add 2.9 version to the tree, read the release notes and changelog!. + +*diradm-2.8.2 (22 Mar 2007) + + 22 Mar 2007; Robin H. Johnson <robbat2@gentoo.org> diradm-2.5.ebuild, + +diradm-2.8.2.ebuild: + Add ~amd64 and bump diradm to 2.8.2, after a long series of private-use + releases. 2.8 and later releases bring in an automated test suite. Also read + KNOWN-BUGS for places where LDAP is just plain incompatible with POSIX, and + workarounds for this. + + 24 Jan 2007; Marius Mauch <genone@gentoo.org> diradm-1.1.ebuild, + diradm-1.1-r1.ebuild, diradm-1.2.ebuild, diradm-2.1.ebuild, + diradm-2.2.ebuild, diradm-2.3.ebuild, diradm-2.4.ebuild, + diradm-2.5.ebuild: + Replacing einfo with elog + + 04 Jan 2007; Steve Dibb <beandog@gentoo.org> diradm-1.1.ebuild, + diradm-1.1-r1.ebuild, diradm-1.2.ebuild, diradm-2.1.ebuild, + diradm-2.2.ebuild, diradm-2.3.ebuild, diradm-2.4.ebuild, + diradm-2.5.ebuild: + ebuild cleanup, bug 157661 + + 11 Feb 2006; Michael Cummings <mcummings@gentoo.org> diradm-2.1.ebuild, + diradm-2.2.ebuild, diradm-2.3.ebuild, diradm-2.4.ebuild, + diradm-2.5.ebuild: + Setting virtual for MIME-Base64 + +*diradm-2.5 (30 Aug 2005) + + 30 Aug 2005; Robin H. Johnson <robbat2@gentoo.org> +diradm-2.5.ebuild: + New upstream version. + + 13 Aug 2005; Michael Hanselmann <hansmi@gentoo.org> diradm-2.4.ebuild: + Stable on ppc. + + 12 Aug 2005; Robin H. Johnson <robbat2@gentoo.org> diradm-1.2.ebuild, + diradm-2.4.ebuild: + Stabilize 1.2 and 2.4 on x86. + +*diradm-2.4 (04 Jul 2005) + + 04 Jul 2005; Robin H. Johnson <robbat2@gentoo.org> +diradm-2.4.ebuild: + Version bump. + + 25 May 2005; Michael Cummings <mcummings@gentoo.org> diradm-2.3.ebuild: + dev-perl/MIME-Base64 => perl-core/MIME-Base64 migration + + 25 May 2005; Michael Cummings <mcummings@gentoo.org> diradm-2.2.ebuild: + dev-perl/MIME-Base64 => perl-core/MIME-Base64 migration + + 25 May 2005; Michael Cummings <mcummings@gentoo.org> diradm-2.1.ebuild: + dev-perl/MIME-Base64 => perl-core/MIME-Base64 migration + +*diradm-2.3 (09 Jan 2005) + + 09 Jan 2005; Robin H. Johnson <robbat2@gentoo.org> +diradm-2.3.ebuild: + new version. + +*diradm-2.2 (09 Jan 2005) + + 09 Jan 2005; Robin H. Johnson <robbat2@gentoo.org> +diradm-2.2.ebuild: + New version. + +*diradm-2.1 (23 Dec 2004) + + 23 Dec 2004; Robin H. Johnson <robbat2@gentoo.org> +diradm-2.1.ebuild: + New major revision, from a forked tree (by myself). + + 05 Oct 2004; Pieter Van den Abeele <pvdabeel@gentoo.org> diradm-1.2.ebuild: + Masked diradm-1.2.ebuild stable for ppc + + 21 Jul 2004; David Holm <dholm@gentoo.org> diradm-1.2.ebuild: + Added to ~ppc. + +*diradm-1.2 (19 Jul 2004) +*diradm-1.1-r1 (19 Jul 2004) + + 19 Jul 2004; Robin H. Johnson <robbat2@gentoo.org> diradm-1.1-r1.ebuild, + diradm-1.2.ebuild, metadata.xml: + ebuild cleanup, version bump. + + 12 Mar 2004; Michael Sterrett <mr_bones_@gentoo.org> diradm-1.1.ebuild: + Don't assign default to S; header fix + +*diradm-1.1 (05 Jul 2003) + + 05 Jul 2003; Robin H. Johnson <robbat2@gentoo.org> diradm-1.1.ebuild: + Initial commit + diff --git a/overlay/app-admin/diradm/Manifest b/overlay/app-admin/diradm/Manifest new file mode 100644 index 0000000..024d868 --- /dev/null +++ b/overlay/app-admin/diradm/Manifest @@ -0,0 +1,4 @@ +AUX diradm-2.9.3-emptyUID.patch 402 RMD160 67d06408d2dea38a8fe27cab30ce1338ebf8c66f SHA1 45103f49c5bbbed4703bd3548181c10c6b138a12 SHA256 3f08354844e55a0fe0d7d05806244be4efd9158afd709c0038af8ac8ed0395aa +DIST diradm-2.9.3.tar.bz2 105362 RMD160 b4c24bbcecfd8f092f510663eb512b600f1c4ce2 SHA1 8451ff3023bd18c7b29200bc495db8a22f1f8935 SHA256 4bd8261c11916caab989b596c78f648510225de4d52af3c9a425ef92bf6a096d +EBUILD diradm-2.9.3-r1.ebuild 2133 RMD160 545f71372e8c529e44d635822045202dbebcdf7d SHA1 e0b4ab6e49f639dfc00eb4a31a87fda13b55567a SHA256 51fbd7ab8eb2d116903c0ad65a85dbf6ced1edf20817237e7383ef4bedc860b4 +MISC ChangeLog 4760 RMD160 378e53d71a636caad2aced83a0b883bef8a9be2f SHA1 749ef3669fa410e7d8a918eb3aaee4a5a680e544 SHA256 8ec5a9d29de2fa9b08f4564b25844d5553944c03f5591abf1e8f0a741dbc148e diff --git a/overlay/app-admin/diradm/diradm-2.9.3-r1.ebuild b/overlay/app-admin/diradm/diradm-2.9.3-r1.ebuild new file mode 100644 index 0000000..954e0c9 --- /dev/null +++ b/overlay/app-admin/diradm/diradm-2.9.3-r1.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-admin/diradm/diradm-2.9.3.ebuild,v 1.6 2008/02/20 23:03:36 robbat2 Exp $ + +inherit eutils + +DESCRIPTION="diradm is a nearly complete nss/shadow suite for managing POSIX users/groups/data in LDAP." +#HOMEPAGE="http://research.iat.sfu.ca/custom-software/diradm/" +#SRC_URI="${HOMEPAGE}/${P}.tar.bz2" +HOMEPAGE="http://orbis-terrarum.net/~robbat2/" +SRC_URI="http://orbis-terrarum.net/~robbat2/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc ppc64 x86" +IUSE="samba irixpasswd automount test" +DEPEND="net-nds/openldap + sys-apps/gawk + sys-apps/coreutils + sys-apps/grep + dev-lang/perl + app-shells/bash + sys-apps/sed + virtual/perl-MIME-Base64 + samba? ( + dev-perl/Crypt-SmbHash + >=net-fs/samba-3.0.6 + ) + test? ( dev-perl/Crypt-SmbHash >=net-fs/samba-3.0.6 dev-util/dejagnu )" + +src_unpack() { + unpack ${A} + cd "${S}/src" + epatch "${FILESDIR}"/diradm-2.9.3-emptyUID.patch +} +pkg_setup() { + if use test; then + if built_with_use net-nds/openldap minimal ; then + die "You MUST have a non-minimal build of OpenLDAP to use the testcases!" + fi + elog "Warning, for test usage, diradm is built with all optional features!" + fi +} + +src_compile() { + local myconf + if use test; then + myconf="--enable-samba --enable-automount --enable-irixpasswd" + else + myconf="`use_enable samba` `use_enable automount` `use_enable irixpasswd`" + fi + econf ${myconf} || die "econf failed" + emake || die "emake failed" +} + +src_install() { + emake install DESTDIR="${D}" || die "emake install failed" + dodoc CHANGES* README AUTHORS ChangeLog NEWS README.prefork THANKS TODO KNOWN-BUGS + if use irixpasswd; then + insinto /etc/openldap/schema + doins irixpassword.schema + fi +} + +pkg_postinst() { + elog "The new diradm pulls many settings from your LDAP configuration." + elog "But don't forget to customize /etc/diradm.conf for other settings." + elog "Please see the README to instructions if you problems." +} + +src_test() { + use test || die "You must build diradm with USE=test to run the testcases!" + emake -j1 check +} diff --git a/overlay/app-admin/diradm/files/diradm-2.9.3-emptyUID.patch b/overlay/app-admin/diradm/files/diradm-2.9.3-emptyUID.patch new file mode 100644 index 0000000..6bc86c2 --- /dev/null +++ b/overlay/app-admin/diradm/files/diradm-2.9.3-emptyUID.patch @@ -0,0 +1,12 @@ +--- src/diradm.user.sh.in 2007-03-30 06:44:10.000000000 -0400 ++++ src.new/diradm.user.sh.in 2008-06-30 12:31:53.986106620 -0400 +@@ -59,8 +59,8 @@ + exit 4 + fi + else +- UIDNUMBER="${UIDNUMBERMIN}" + UIDNUMBER="$(usernextfreeuid)" ++ [ -z "${UIDNUMBER}" ] && UIDNUMBER="${UIDNUMBERMIN}" + if [ "${UIDNUMBER}" -gt "${UIDNUMBERMAX}" ]; then + echo "${modulename}: Can't get unique uid" + exit 4 diff --git a/overlay/net-nds/lat/Manifest b/overlay/net-nds/lat/Manifest new file mode 100644 index 0000000..b826451 --- /dev/null +++ b/overlay/net-nds/lat/Manifest @@ -0,0 +1,2 @@ +DIST lat-1.2.3.tar.gz 463225 RMD160 56fad3d30ad19bfc267403368547c4d53a481b87 SHA1 52e2de528d2fa35519b2d67cd2937d4d524001de SHA256 8071bcacb3f5be5b10f7a154cf64f007670b67415f986e0794202643ab52e16e +EBUILD lat-1.2.3.ebuild 1249 RMD160 8b602a71c213def241788ba14f48dab549c18a12 SHA1 840c3049d082e141fd7291d3b114db698754eb2c SHA256 e6a905b2519160d390f8cb0a302fb6512ad29e352325a4cf3431ade27a97d085 diff --git a/overlay/net-nds/lat/lat-1.2.3.ebuild b/overlay/net-nds/lat/lat-1.2.3.ebuild new file mode 100644 index 0000000..7e1db14 --- /dev/null +++ b/overlay/net-nds/lat/lat-1.2.3.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-nds/lat/lat-1.2.2.ebuild,v 1.1 2007/04/08 18:38:31 bass Exp $ + +inherit gnome2 mono versionator + +KEYWORDS="~amd64 x86" + +DESCRIPTION="LDAP Administration Tool, allows you to browse LDAP-based directories and add/edit/delete entries." +HOMEPAGE="http://dev.mmgsecurity.com/projects/lat" +SRC_URI="http://dev.mmgsecurity.com/downloads/${PN}/$(get_version_component_range 1-2)/${P}.tar.gz" +LICENSE="GPL-2" +IUSE="avahi dbus" +SLOT="0" + +RDEPEND=">=dev-lang/mono-1.1.13 + >=dev-dotnet/gtk-sharp-2.8 + >=dev-dotnet/gnome-sharp-2.8 + >=dev-dotnet/glade-sharp-2.8 + >=dev-dotnet/gconf-sharp-2.8 + >=gnome-base/gnome-keyring-0.4 + sys-apps/dbus + avahi? ( net-dns/avahi )" +DEPEND="${RDEPEND} + app-text/scrollkeeper + dev-util/pkgconfig" + +src_compile() { + econf \ + $(use_enable avahi) \ + || die "econf failed" + emake || die "emake failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc AUTHORS ChangeLog NEWS README TODO +} + +pkg_postinst() { + if use avahi ; then + ewarn "You've enabled avahi support." + ewarn "Make sure the avahi daemon is running before you try to start ${PN}" + fi +} diff --git a/overlay/net-nds/ldap-auth/Manifest b/overlay/net-nds/ldap-auth/Manifest new file mode 100644 index 0000000..caab865 --- /dev/null +++ b/overlay/net-nds/ldap-auth/Manifest @@ -0,0 +1,2 @@ +AUX cluster_ldap_skel.conf 3737 RMD160 eb82a475caa338f29dbd7bc64d0de659829d52f7 SHA1 bf5cbca83cec4633442523506123c92862d27623 SHA256 d03ddca79b751e182c44d346c555c7bd08f411cd87c32608915964de9664810b +EBUILD ldap-auth-0.1.ebuild 12734 RMD160 cc4869546234d9496beff0318afa22a037e7b734 SHA1 bacacc1425cdd63fd5a5140f1d445c795734d8e8 SHA256 5b18dc255b9c96fc26422ef96bd9d73d36b13934b713a4342ba18413d41b2b0a diff --git a/overlay/net-nds/ldap-auth/files/cluster_ldap_skel.conf b/overlay/net-nds/ldap-auth/files/cluster_ldap_skel.conf new file mode 100644 index 0000000..83c2e42 --- /dev/null +++ b/overlay/net-nds/ldap-auth/files/cluster_ldap_skel.conf @@ -0,0 +1,91 @@ +#!/bin/bash +# By Eric Thibodeau +# 01 July 2008 +# +# NOTES: +# * it is usually suggested to keep all LDAP definitions in +# _lower case_... but do as youi wish! +# * all *_DESC variables are optionnal and are simply used +# in the description field of the LDAP db. + +# The following is to tell pkg_config that this files has been revised +# Set it to "yes" once you're done +CONFIG_OK="no" + +# What is the name you want to give the LDAP domain? +# say we wanted the domain to be gentoo.local you would +# put the following: +#DOMAIN="gentoo.local" +# or, in a more automated-generally-speaking sense: +#DOMAIN=$(hostname -d) +# Since this is the Clustering template, our Domain Context +# is actually more like : "machine.domain.com". ASSuming +# the machine is set up right, we can pull that in autmatically +# using the following: +DOMAIN=$(hostname -f) +DOMAIN_DESC="This the LDAP server residing on $DOMAIN" + +# Which part of your organisation is this machine filling in +# for? In the present example, this is the cluster so we'll call +# this Organizational Unit (ou) cluster: +OU="cluster" +OU_DESC="Clustering department branch. All units defined under this branch are for use by the cluster" + +# We will create some specific branches under that cluster, +# logically, we'll have users and groups to manage these, so +# we will minimally impose the definition of these two: +USERS_OU="users" +USERS_OU_DESC="Cluster specific Users" +GROUPS_OU="groups" +GROUPS_OU_DESC="Cluster specific Groups" + +# OUTHER_OU is parsed to automatically create other sub-OU under +# the one defined above (as OU). This could be, for example: +#OTHER_OU="aliases networks hosts" + +# if you want descriptions to be added to each of these groups +# automatically in the LDAP database, dedine a separate _DESC +# vairable for each. For example: +#aliases_DESC="This is the container for user aliases" +#hosts_DESC="This is the container for static host descriptions" + +# Although this is often a philosophical debate, we'll stick +# with having an admin for the ldap user database and one +# for managing it's contents. Here is the dirrerence in their +# role: +# +# The ADMIN_DN will be the user used to create the ldap db +# and have total control over it. This user is typically useful +# only at creation and dumping/migration of the database. This +# user _always_ has TOTAL access to the LDAP db where it's +# defined. One typically _doesn't_ use this user to mange the +# LDAP database, the user defined in ADMIN_DN is the one to use. +# +LDAP_ADMIN_DN="admin" +# This is the paswsord to use for LDAP management tasks and is the +# one that is stored in /etc/openldap/slapd.conf (but we at least +# hash it ;) +LDAP_ADMIN_DN_PWD="default" + +# The following user will essentially be identical to root, you're better +# off not renaming him. +ADMIN_DN="root" +ADMIN_DN_DESC="root account (under LDAP)" + +# The following is the name of the group used to identify people +# with full access to the LDAP db. One advantage is that the members +# of this group can be dynamically changed within the LDAP db. NOTE: +# Since it's given the same gid as wheel, it's functionnaly equivalent!!! +ADMIN_GROUP_DN="wheel" +ADMIN_GROUP_DN_DESC="Users in this group can freely modify the LDAP directory at will" + +# The following is the place to put the resulting generated files +# usually we'd want this to be ROOT="/" ...if you trust the script +# entirely ;). We use the environment's $ROOT if one is available... +[[ -z $ROOT ]] && ROOT="/" + +# The LDIF_OUT defines the name of the ldif file that will be automatically +# created by the script. It's only really useful if you want to keep that file +# afterwards for xyz reason (obviously, LDIF_OUT_KEEP has to be set to yes): +LDIF_OUT="./create_db.ldif" +LDIF_OUT_KEEP="yes" diff --git a/overlay/net-nds/ldap-auth/ldap-auth-0.1.ebuild b/overlay/net-nds/ldap-auth/ldap-auth-0.1.ebuild new file mode 100644 index 0000000..459c4e7 --- /dev/null +++ b/overlay/net-nds/ldap-auth/ldap-auth-0.1.ebuild @@ -0,0 +1,435 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +DESCRIPTION="This meta ebuild automates the configuration of OpenLDAP as the authentification backend" +HOMEPAGE="http://code.google.com/soc/2008/gentoo/appinfo.html?csaid=79DB497BA0D95148" +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ~x86" +IUSE="autoconfigure authmaster" + +DEPEND="" +RDEPEND="sys-auth/nss_ldap + sys-auth/pam_ldap + app-admin/diradm" + +inherit confutils + +CONFIG_FILE="/etc/conf.d/ldap_auth.conf" +TEMPLATE_FILE="${FILESDIR}/cluster_ldap_skel.conf" + +pkg_setup() { + if use authmaster; then + if built_with_use net-nds/openldap minimal ; then + die "You MUST have a non-minimal build of OpenLDAP to use ${P}!" + fi + fi +} + +src_install() +{ + if use authmaster; then + cp $TEMPLATE_FILE ./ldap_auth.conf + doconfd ./ldap_auth.conf + if ! use autoconfigure; then + elog "You need to edit $CONFIG_FILE to your likings" + elog "Once you are done, set CONFIG_OK=\"yes\" in there and" + elog "call emerge --config =${CATEGORY}/${PF}" + fi + fi +} + +parse_config() +{ + . $1 + # Derived VARs: + DC="dc=${DOMAIN//\./,dc=}" + BASE_DN="ou=$OU,$DC" + BASE_DN_DESC="$OU_DESC" + USR_DN="ou=$USERS_OU,$BASE_DN" + GRP_DN="ou=$GROUPS_OU,$BASE_DN" + ROOTDN="cn=$LDAP_ADMIN_DN,$DC" + ROOTDNPWD="$LDAP_ADMIN_DN_PWD" + DBDIR="/var/lib/openldap-${DOMAIN}-data" + + # Config Files: + SLAPDCONF="${ROOT}/etc/openldap/slapd.conf" + ETCSLAP="${ROOT}/etc/ldap.conf" + [ -f $SLAPDCONF ] || mkdir -p $(dirname $SLAPDCONF) + [ -f $ETCSLAP ] || mkdir -p $(dirname $ETCSLAP) + +} + +make_slapd_conf() +{ + [ -f $SLAPDCONF ] && mv $SLAPDCONF ${SLAPDCONF}.${PN}.bak + cat > $SLAPDCONF <<-EOF + # + # Based on instructoins from: http://www.gentoo.org/doc/en/ldap-howto.xml + # See slapd.conf(5) for details on configuration options. + # This file should NOT be world readable. + # + + # Schema definitions, these are order sensitive + include /etc/openldap/schema/core.schema + include /etc/openldap/schema/cosine.schema + include /etc/openldap/schema/inetorgperson.schema + include /etc/openldap/schema/nis.schema + + + # Do not enable referrals until AFTER you have a working directory + # service AND an understanding of referrals. + #referral ldap://root.openldap.org + + pidfile /var/run/openldap/slapd.pid + argsfile /var/run/openldap/slapd.args + + # Define global ACLs to disable default read access. + + # Sample security restrictions + # Require integrity protection (prevent hijacking) + # Require 112-bit (3DES or better) encryption for updates + # Require 63-bit encryption for simple bind + # security ssf=1 update_ssf=112 simple_bind=64 + + # Sample access control policy: + # Root DSE: allow anyone to read it + # Subschema (sub)entry DSE: allow anyone to read it + # Other DSEs: + # Allow self write access + # Allow authenticated users read access + # Allow anonymous users to authenticate + # Directives needed to implement policy: + # access to dn.base="" by * read + # access to dn.base="cn=Subschema" by * read + # access to * + # by self write + # by users read + # by anonymous auth + # + # if no access controls are present, the default policy + # allows anyone and everyone to read anything but restricts + # updates to rootdn. (e.g., "access to * by * read") + # + # rootdn can always read and write EVERYTHING! + + # We define ACLs on a per-DB basis below, so no access as a default: + access to * by * none + + # Database definitions (only have one here but you could have more than 1): + + database hdb + suffix "$DC" + # <kbyte> <min> + checkpoint 32 30 + rootdn "$ROOTDN" + # Cleartext passwords, especially for the rootdn, should + # be avoid. See slappasswd(8) and slapd.conf(5) for details. + # Use of strong authentication encouraged. + rootpw $(slappasswd -s $ROOTDNPWD) + # The database directory MUST exist prior to running slapd AND + # should only be accessible by the slapd and slap tools. + # Mode 700 recommended. + directory $DBDIR + # Indices to maintain + index objectClass,uid,uidNumber eq + + # Auto-Generated ACL definitions: + + access to attrs=userPassword + by set="[cn=$ADMIN_GROUP_DN,$GRP_DN]/member* & user" write + by dn="uid=$ADMIN_DN,$USR_DN" write + by self write + by anonymous auth + by * none + + access to * + by set="[cn=$ADMIN_GROUP_DN,$GRP_DN]/member* & user" write + by dn="uid=$ADMIN_DN,$USR_DN" write + by * read + + EOF + +} + +make_lapd_confs() +{ + # etc/openldap/ldap.conf file: + cat > ${ROOT}/etc/openldap/ldap.conf <<-EOF + # Autogenerated by $0 + base $BASE_DN + uri ldap://$(hostname -f):389/ + rootbinddn $ROOTDN + EOF + + # etc/ldap.conf file: + [[ -f ${ROOT}/etc/ldap.conf ]] && cp ${ROOT}/etc/ldap.conf ${ROOT}/etc/ldap.conf.orig + cat > ${ROOT}/etc/ldap.conf <<-EOF + host $(hostname -f) + base $BASE_DN + uri ldap://$(hostname -f):389/ + + # The distinguished name to bind to the server with + # if the effective user ID is root. Password is + # stored in /etc/ldap.secret (mode 600) + #rootbinddn $ROOTDN + + # The search scope. + scope sub + #scope one + #scope base + + # Reconnect policy: + # hard_open: reconnect to DSA with exponential backoff if + # opening connection failed + # hard_init: reconnect to DSA with exponential backoff if + # initializing connection failed + # hard: alias for hard_open + # soft: return immediately on server failure + bind_policy hard + + ldap_version 3 + + # Use the OpenLDAP password change + # extended operation to update the password. + pam_password exop + #pam_filter objectclass=posixAccount + pam_login_attribute uid + pam_member_attribute gid + pam_password md5 + + #RFC2307bis naming contexts + # Syntax: + # nss_base_XXX base?scope?filter + # where scope is {base,one,sub} + # and filter is a filter to be &'d with the + # default filter. + # You can omit the suffix eg: + # nss_base_passwd ou=People, + # to append the default base DN but this + # may incur a small performance impact. + nss_base_passwd ou=users,$BASE_DN?one + nss_base_shadow ou=users,$BASE_DN?one + nss_base_group ou=groups,$BASE_DN?one + #nss_base_hosts ou=Hosts,$BASE_DN?one + #nss_base_services ou=Services,$BASE_DN?one + #nss_base_networks ou=Networks,$BASE_DN?one + #nss_base_protocols ou=Protocols,$BASE_DN?one + #nss_base_rpc ou=Rpc,$BASE_DN?one + #nss_base_ethers ou=Ethers,$BASE_DN?one + #nss_base_netmasks ou=Networks,$BASE_DN?ne + #nss_base_bootparams ou=Ethers,$BASE_DN?one + #nss_base_aliases ou=Aliases,$BASE_DN?one + #nss_base_netgroup ou=Netgroup,$BASE_DN?one + + # For Gentoo's distribution of nss_ldap, as of 250-r1, we use these values + # (The hardwired constants in the code are changed to them as well): + #nss_reconnect_tries 4 # number of times to double the sleep time + #nss_reconnect_sleeptime 1 # initial sleep value + #nss_reconnect_maxsleeptime 16 # max sleep value to cap at + #nss_reconnect_maxconntries 2 # how many tries before sleeping + # This leads to a delay of 15 seconds (1+2+4+8=15) + + # If you are impatient, and know your LDAP server is reliable, fast or local, + # you may wish to use these values instead: + nss_reconnect_tries 1 # number of times to double the sleep time + nss_reconnect_sleeptime 1 # initial sleep value + nss_reconnect_maxsleeptime 1 # max sleep value to cap at + nss_reconnect_maxconntries 3 # how many tries before sleeping + # This leads to a delay of 1 second. + EOF +} + +install_pam_auth() +{ + SYSAUTH="${ROOT}/etc/pam.d/system-auth" + if [[ ! -f $SYSAUTH ]] + then + mkdir -p $(dirname $SYSAUTH) + cp /etc/pam.d/system-auth $SYSAUTH + fi + cp $SYSAUTH ${SYSAUTH}.${PN}.bak + + einfo "OVERWRITING $SYSAUTH" + cat > $SYSAUTH <<-EOF + #%PAM-1.0 + # Savagely copied over from http://gentoo-wiki.com/HOWTO_LDAPv3#Configuration :P + + auth required pam_env.so + auth [success=ignore default=1] pam_localuser.so + auth [success=done new_authtok_reqd=done default=1] pam_unix.so likeauth nullok try_first_pass + auth sufficient pam_ldap.so try_first_pass + auth required pam_deny.so + + account sufficient pam_unix.so + account sufficient pam_ldap.so + + password required pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2 retry=3 + password sufficient pam_unix.so nullok md5 shadow use_authtok + password sufficient pam_ldap.so use_authtok + password required pam_deny.so + + session required pam_limits.so + session required pam_unix.so + #Creates the home directories if they do not exist + session required pam_mkhomedir.so skel=/etc/skel/ umask=0022 + session optional pam_ldap.so + EOF +} + +install_nssswitch() +{ + NNSSWITCH="${ROOT}/etc/nsswitch.conf" + if [[ ! -f $NNSSWITCH ]] + then + mkdir -p $(dirname $NNSSWITCH) + cp /etc/nsswitch.conf $NNSSWITCH + fi + cp $NNSSWITCH ${NNSSWITCH}.${PN}.bak + einfo "Modifying $NNSSWITCH" + for I in passwd shadow group $OTHER_OU + do + sed -i -e"s:\(^${I}.*\):\1 ldap:" $NNSSWITCH + done +} + +make_ldif() +{ + # NOTE: LDIF_OUT is defined in the config file + cat > $LDIF_OUT <<-EOF + dn: $DC + o: $DOMAIN + objectClass: organization + objectClass: dcObject + description: $DOMAIN_DESC + + dn: $BASE_DN + ou: $OU + objectClass: top + objectClass: organizationalUnit + description: $BASE_DN_DESC + + #dn: cn=${LDAP_ADMIN_DN},$DC + #objectClass: person + #cn: $LDAP_ADMIN_DN + #sn: $LDAP_ADMIN_DN + EOF + + for OU in $USERS_OU $GROUPS_OU $OTHER_OU + do + DESC=$(eval echo "$"${I}_DESC) + cat >> $LDIF_OUT <<-EOF + + dn: ou=${OU},$BASE_DN + ou: $OU + objectClass: top + objectClass: organizationalUnit + EOF + [[ ! -z $DESC ]] && echo " description: $DESC" >> $LDIF_OUT + done + + # We need to define at least one user with GODlike rights :) + cat >> $LDIF_OUT <<-EOF + + dn: cn=${ADMIN_DN},$USR_DN + cn: $ADMIN_DN + sn: $ADMIN_DN + gidNumber: 0 + uid: $ADMIN_DN + uidNumber: 0 + homeDirectory: /home/root + loginShell: /bin/bash + # we need at least one STRUCTURAL objectClass: so we choose inetOrgPerson + # as it is the most popular in such a context and will require less fscking + # around of the management tools (such as lat) + objectClass: inetOrgPerson + objectClass: posixAccount + objectClass: shadowAccount + description: $ADMIN_DN_DESC + EOF + + # Let's provide for multiple diety possibilies O_o! + # This is a group explicitly linked to wheel + cat >> $LDIF_OUT <<-EOF + + dn: cn=${ADMIN_GROUP_DN},$GRP_DN + gidNumber: $(getent group wheel | cut -f3 -d:) + cn: $ADMIN_GROUP_DN + # RFCs will eventually define posixGroup as an AUXILIARY class and + # not a STRUCTURAL class, then we'll have to uncomment groupOfNames + #objectClass: groupOfNames + objectClass: posixGroup + description: $DESC NOTE: This group OVERLAPS the local wheel account + EOF +} + +creade_db() +{ + # NOTE: setting ${ROOT} here is irrelevant since this function should not be + # called unless ROOT=/ + + # This is bad, I know...all of this should be done using the installed + # openldap version (don't know how to get the installed version from portage) + einfo "Adding default DB_CONFIG file do DB directory." + mkdir -p $DBDIR + bzcat /usr/share/doc/openldap-*/DB_CONFIG.fast.example.bz2 > /$DBDIR/DB_CONFIG + + einfo "Initiating the database" + slapadd -v -b $ROOTDN -l $LDIF_OUT + # had ldap been online: + #ldapadd -x -D $ROOTDN -w $ROOTDNPWD -f $LDIF_OUT + + einfo "Ensuring proper permissions are set for the data dir." + #chown -R ldap: `awk '/^directory/ {print $2}' $SLAPDCONF` + chown -R ldap: $DBDIR + + einfo "Starting slapd" + /etc/init.d/slapd start || ewarn "Failed to start slapd, check /var/log/messages"; + + einfo "Adding slapd to default runlevel" + rc-update add slapd default +} + +config_diradm() +{ + # diradm has questionnable defaults, we bring them back to + # what most users will expect: + sed -i -e's:HOMEBASE="/home/users":HOMEBASE="/home":' \ + -e 's:DEFAULT_LOGINSHELL="/bin/localshell":DEFAULT_LOGINSHELL="/bin/bash":' \ + ${ROOT}/etc/diradm.conf + + # When we enable automount, we'll add the stuff here +} + + +pkg_config() +{ + [[ -f ${CONFIG_FILE} ]] || die "${CONFIG_FILE} missing!!! re-emerge ${PF}" + if ! use autoconfigure; then + . ${CONFIG_FILE} + [[ $CONFIG_OK != "yes" ]] && die "You need to edit ${CONFIG_FILE} and set CONFIG_OK=\"yes\"" + fi + parse_config ${CONFIG_FILE} + if use authmaster; then + make_slapd_conf + make_ldif + config_diradm + # Don't create the DB on a live system if that's not + # where we want to install + [[ ${ROOT} == "/" ]] && creade_db + [[ $LDIF_OUT_KEEP != "yes" ]] && rm $LDIF_OUT + fi + make_lapd_confs + + # commented for irrelevancy in this ebuild. + #if [[ $LDAP_AS_AUTH == "yes" ]] + #then + install_pam_auth + install_nssswitch + #fi + +} + diff --git a/overlay/sys-cluster/beowulf-head/beowulf-head-0.1.ebuild b/overlay/sys-cluster/beowulf-head/beowulf-head-0.1.ebuild new file mode 100644 index 0000000..6f223ca --- /dev/null +++ b/overlay/sys-cluster/beowulf-head/beowulf-head-0.1.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +DESCRIPTION="This is a meta ebuild that pulls in the packages and some config +scripts/files for building the Gentoo Clustering Master node" +HOMEPAGE="http://code.google.com/soc/2008/gentoo/appinfo.html?csaid=79DB497BA0D95148" +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ~x86" +IUSE="" + +DEPEND="" +RDEPEND="net-nds/ldap-auth + sys-boot/syslinux + net-dns/dnsmasq + app-admin/sudo + net-misc/sipcalc + net-fs/nfs-utils" + +gent_ip_config() +{ + CLUSTER_ETH_IP=$(sipcalc $CLUSTER_ETH | egrep 'Host address\W*-' | cut -d- -f2) + RANGE_START=$(sipcalc $CLUSTER_ETH | egrep 'Host address\W*-' | cut -d- -f2) + IPSTART="${RANGE_START#*.}.$(( ${RANGE_START##*.} +1 ))" + IPSTOP=$(sipcalc $CLUSTER_ETH | egrep 'Usable range\W*-' | cut -d- -f3) + SUBNET=$(sipcalc $CLUSTER_ETH | egrep 'Network mask\W*-' | cut -d- -f2) + NETADDR=$(sipcalc $CLUSTER_ETH | egrep 'Network address' | cut -d- -f2) +} + +dnsmasq_conf() +{ + cat > ${ROOT}/etc/dnsmasq.conf <<-EOF + + # Public interface + except-interface=$ETH + + # Set up the local-only domain + local=/${LOCALDOMAINNAME}/ + domain=$LOCALDOMAINNAME + expand-hosts + + # Some netiquette: + domain-needed + bogus-priv + + # Send RFC-3397 DNS domain search DHCP option. WARNING: Your DHCP client + # probably doesn't support this...... (option 119) + dhcp-option=119,$LOCALDOMAINNAME + # Domain DNS name + dhcp-option=15,$LOCALDOMAINNAME + + enable-tftp + tftp-root=${TFTPROOT} + + dhcp-authoritative + + ### Node definitions, this could be in a separate file + # Turn on the DHCP server, pass out addresses from $IPSTART to $IPSTOP + # with subnet mask of $SUBNET with a 12-hour lease + dhcp-range=nodes,$IPSTART,$IPSTOP,$SUBNET,12h + + # Override the default route supplied by dnsmasq, which assumes the + # router is the same machine as the one running dnsmasq. + dhcp-option=3,$CLUSTER_ETH_IP + + # This tells the clients the hostname and IP of the TFTP server + dhcp-boot=${PXELINUX},$(hostname),$CLUSTER_ETH_IP + + # We are the authoritative DHCP server for this network + dhcp-authoritative + + # address and root path of NFS server + dhcp-option=17,$CLUSTER_ETH_IP:${NFSROOT} + + EOF +} + +pxe_conf() +{ + PROFNAME="$(uname -m)_node" + BOOTPATH="${NFSROOT##$TFTPROOT}" + BOOTPATH="${BOOTPATH#/}/boot" + + mkdir -p ${TFTPROOT}/pxelinux.cfg + cat >> ${TFTPROOT}/pxelinux.cfg/default <<-EOF + prompt 1 + timeout 50 + say Press F1 for boot profiles, default is $PROFNAME in 5 seconds... + F1 BootProfiles + default $PROFNAME + + label $PROFNAME + kernel ${BOOTPATH}/vmlinuz + append initrd=/initramfs ramdisk=8192 ip=dhcp root=nfs;tmpfs + + label local + localboot 0 + + EOF + + cat >> ${TFTPROOT}/BootProfiles <<-EOF + ^L + Type $PROFNAME for regular bootup (default after 5 seconds) + Type local to boot on the local HDD + EOF + + ln -s ${ROOT}/usr/lib/syslinux/pxelinux.0 ${TFTPROOT}/pxelinux.0 + +} + +nfs_root_conf() +{ + cat >> ${ROOT}/etc/exportfs <<-EOF + ${NFSROOT} $NETADDR/$SUBNET(ro,no_root_squash,async,no_subtree_check) + EOF + + mkdir -p ${NFSROOT} + einfo "${NFSROOT} has been populated, all configs point to this root" + einfo "to boot, firthermore, the fonfigs expect the kernel to be" + einfo "${NFSROOT}/boot/vmlinuz" +} + +pkg_config() +{ + dnsmasq_conf + pxe_conf + nfs_root_conf + + for I in dnsmasq netmount; + do + rc-update add $I + done +} diff --git a/overlay/sys-cluster/beowulf-head/files/beowulf_cluster.conf b/overlay/sys-cluster/beowulf-head/files/beowulf_cluster.conf new file mode 100644 index 0000000..7b223d5 --- /dev/null +++ b/overlay/sys-cluster/beowulf-head/files/beowulf_cluster.conf @@ -0,0 +1,36 @@ +# Clustering template configuration file +# Eric Thibodeau June 2008 + +# PUBETH is the public-side ETH, which means dnsmasq won't listen on this +# interfaces, any other interface will be taken in charge by dnsmasq. +PUBETH="eth0" + +# CLUSTER_ETH defines the interface connected to the cluster's +# _PRIVATE_ network. All relevant information is derived automatically +# from this interface's configuration to create the proper address +# mapping using net-misc/sipcalc +# IMPORTANT, it is ASSumed the interface has an address of NETWORKSADDR+1 +# this means that, if the cluster network base is 10.0.0.0/24, we assume +# eth1 to be 10.0.0.1, other configurations are beyond the scope of this +# automation script and you shouldn't even be using it in this case ;) +CLUSTER_ETH="eth1" + +# Not sure we want this to be (auto)configurable since +# we are building an isolated (true) Beowulf cluster +# where the nodes aren't supposed to be accessible from +# the outside. For the same reason, we don't set up +# routing on the head server. +LOCALDOMAINNAME="cluster.local" + +# This is where the boot images and boot files are stored, +# including pxelinux and kernel stuff. +TFTPROOT="/tftproot" + +# This is the location of the pxelinux.0 file used for booting. +# The file is provided by sys-boot/syslinux. +PXELINUX="${TFTPROOT}/pxelinux.0" + +# This is where the NFS booted image resides, for practical reasons, +# this is kept within TFTPROOT: +NFSROOT="${TFTPROOT}/nfsroot/$(uname -m)" + diff --git a/profile/package.keywords/gcc b/profile/package.keywords/gcc new file mode 100644 index 0000000..4480eb9 --- /dev/null +++ b/profile/package.keywords/gcc @@ -0,0 +1,4 @@ +=sys-devel/gcc-4.3.1 ** +# required for sys-devel/gcc-4.3.0: +~sys-libs/glibc-2.7:2.2 ** +#~sys-libs/glibc-2.8_p20080602 ** diff --git a/profile/package.keywords/liveDVD b/profile/package.keywords/liveDVD new file mode 100644 index 0000000..e3a6749 --- /dev/null +++ b/profile/package.keywords/liveDVD @@ -0,0 +1,39 @@ +#Bug 204610 for gcc 4.3 +>=dev-libs/elfutils-0.131-r2 ** +#Bug 206063 for gcc 4.3, 2.0.18 not working, trying 2.2.2 +>=dev-libs/libsigc++-2.2.2 ** +>=media-libs/netpbm-10.42.0 ** +# Bug 204681 +>=dev-cpp/glibmm-2.16.0 ** +# Above pulls in below: +>=dev-libs/glib-2.16 +# Bug 204152 +>=media-libs/musicbrainz-3.0.1 ** +# bug 218489 +>=app-arch/rpm-4.4.7-r3 ** +# Bug 210427 +>=dev-libs/boost-1.35.0 ** + +# Were required for gnome but dropped gnome... +#=media-sound/sound-juicer-2.22.0 ** +#=media-plugins/gst-plugins-meta-0.10-r2 ** + +# Bug 214814 +>=media-gfx/exiv2-0.16-r1 ** +# Bug 211675 +=x11-wm/fluxbox-1.0.0-r2 ** +# Bug 204687 +=dev-cpp/gtkmm-2.12.4 ** +# Bug 217017 +=media-libs/libgpod-0.6.0 ** +# Bug 211670 +=net-nntp/pan-0.132-r2 ** +# Bug 207430 +=dev-cpp/libgnomeuimm-2.20.1 ** +# Bug 213191 +=app-cdr/cdrdao-1.2.2-r1 ** +# Bug 207510 +>=www-client/epiphany-2.22.1 ** +>=www-client/epiphany-extensions-2.22.1 ** +# Bug 215573 +>=app-text/libwpd-0.8.14 ** diff --git a/profile/package.keywords/openldap b/profile/package.keywords/openldap new file mode 100644 index 0000000..6f4b488 --- /dev/null +++ b/profile/package.keywords/openldap @@ -0,0 +1 @@ +=net-nds/openldap-2.4.10 ** diff --git a/profile/package.keywords/qt b/profile/package.keywords/qt new file mode 100644 index 0000000..3236bf5 --- /dev/null +++ b/profile/package.keywords/qt @@ -0,0 +1,2 @@ +# needed for gcc 4.3 +>=x11-libs/qt-4.3.4 ** diff --git a/profile/package.keywords/stage1-livecd b/profile/package.keywords/stage1-livecd new file mode 100644 index 0000000..9284931 --- /dev/null +++ b/profile/package.keywords/stage1-livecd @@ -0,0 +1,3 @@ +sys-apps/gli ** +x11-misc/mkxf86config ** +>=net-misc/curl-7.18.1 ** diff --git a/profile/package.mask b/profile/package.mask new file mode 100644 index 0000000..a6d9f77 --- /dev/null +++ b/profile/package.mask @@ -0,0 +1,7 @@ +# broken with GCC 4.3 (RPM pulls in...let's see if we can do without it) +<=sys-libs/db-3.2.9-r11 +# Anything smaller than dev-libs/boost-1.35.0 won't compile with gcc-4.3 +# This means no OpenOffice-2.4.0 since it requires boost-1.33.1... +<=dev-libs/boost-1.35.0 +# Anything less than =media-libs/musicbrainz-3.0.1 won't compile with GCC-4.3 +<=media-libs/musicbrainz-3.0.1 diff --git a/profile/package.unmask/gcc b/profile/package.unmask/gcc new file mode 100644 index 0000000..4dc6c2d --- /dev/null +++ b/profile/package.unmask/gcc @@ -0,0 +1,3 @@ +# required for sys-devel/gcc-4.3.0: +=sys-libs/glibc-2.7-r2 +#=sys-libs/glibc-2.8_p20080602 diff --git a/profile/package.unmask/liveDVD b/profile/package.unmask/liveDVD new file mode 100644 index 0000000..fd2f4d4 --- /dev/null +++ b/profile/package.unmask/liveDVD @@ -0,0 +1,6 @@ +# bug 218489 +>=app-arch/rpm-4.4.7-r3 +=media-sound/sound-juicer-2.22.0 +=media-plugins/gst-plugins-meta-0.10-r2 +>=www-client/epiphany-2.22.1 +>=www-client/epiphany-extensions-2.22.1 diff --git a/profile/package.unmask/openldap b/profile/package.unmask/openldap new file mode 100644 index 0000000..2b495dc --- /dev/null +++ b/profile/package.unmask/openldap @@ -0,0 +1 @@ +=net-nds/openldap-2.4.10 diff --git a/profile/package.unmask/stage1-livecd b/profile/package.unmask/stage1-livecd new file mode 100644 index 0000000..00dcc5c --- /dev/null +++ b/profile/package.unmask/stage1-livecd @@ -0,0 +1,9 @@ +app-misc/livecd-tools +app-misc/mc-mp +dev-util/cvsup +gnome-base/gnome-settings-daemon +sys-apps/gli +sys-apps/hwsetup +app-misc/livecd-tools +x11-misc/mkxf86config + diff --git a/profile/package.use b/profile/package.use new file mode 100644 index 0000000..f37005c --- /dev/null +++ b/profile/package.use @@ -0,0 +1,3 @@ +<=net-misc/neon-0.28.2 -socks -socks5 +# We want good integration of the LDAP system +app-admin/sudo ldap diff --git a/profile/profile/packages b/profile/profile/packages new file mode 100644 index 0000000..7019f1e --- /dev/null +++ b/profile/profile/packages @@ -0,0 +1,2 @@ +# for GCC 4.3.0 +>=sys-libs/glibc-2.7-r2 |