All pastes #199955 Raw Edit

Untitled

public text v1 · immutable
#199955 ·published 2006-10-12 21:13 UTC
rendered paste body
#
# Copyright (c) 2004-2006 rPath, Inc.
# This file is distributed under the terms of the MIT License.
# A copy is available at http://www.rpath.com/permanent/mit-license.html
#

class Dist(GroupRecipe):
    name = 'group-dist'
    version = '0.91'

    depCheck = True
    checkOnlyByDefaultDeps = True

    def startGroup(r, name, parentGroup, depCheck=False, byDefault=True,
                   checkPathConflicts=None):
        # creates group named "name", adds it to the toplevel group,
        # and sets the current group to that name.  calls to r.add()
        # will use the current group by default.

        # note: byDefault applies to whether the group is included by
        # default in its parent group, not whether the troves in
        # the group are added by default. (use the setByDefault() command
        # to get that)

        # get all the the default for the new group from its parent group.
        r.setDefaultGroup(parentGroup)
        r.createGroup(name, autoResolve=False, depCheck=depCheck, 
                      byDefault=True, checkPathConflicts=checkPathConflicts)
        r.addNewGroup(name, groupName=parentGroup, byDefault=byDefault)
        r.setDefaultGroup(name)

    def setup(r):
        r.setLabelPath('rtao.rpath.org@rpl:devel',
                       'conary.rpath.com@rpl:1')
        compatLabel='conary.rpath.com@rpl:1-compat'

        if Arch.x86:
            if Use.xen:
                glibcFlavor = 'xen is: x86(i486,i586,i686)'
                if Use.dom0:
                    if Use.domU:
                        print "This recipe may be built with dom0 or domU, but cannot use both.\n"
                        sys.exit(1)
                    releaseFlavor = 'xen,dom0'
                    kernelFlavor = 'xen,dom0,kernel.smp is: x86(cmov,i486,i586,i686)'
                if Use.domU:
                    releaseFlavor = 'xen,domU'
                    kernelFlavor = 'xen,domU,kernel.smp is: x86(cmov,i486,i586,i686)'
            else:
                glibcFlavor = 'is: x86(i486,i586,i686)'
                releaseFlavor = None
                kernelFlavor = 'kernel.smp is: x86(cmov,i486,i586,i686)'
        else:
            if Use.xen:
                glibcFlavor = 'xen'
                glibcFlavor32 = 'xen is: x86(i486,i586,i686)'
                if Use.dom0:
                    if Use.domU:
                        print "This recipe may be built with dom0 or domU, but cannot use both.\n"
                        sys.exit(1)
                    releaseFlavor = 'xen,dom0'
                    kernelFlavor = 'xen,dom0,kernel.smp'
                if Use.domU:
                    releaseFlavor = 'xen,domU'
                    kernelFlavor = 'xen,domU,kernel.smp'
            else:
                glibcFlavor = None
                glibcFlavor32 = 'is: x86(i486,i586,i686)'
                releaseFlavor = None
                kernelFlavor = 'kernel.smp'

        r.createGroup('group-os', checkPathConflicts=False)
        # turn off checkPathConflicts bc not everything in group-os can/should
        # coexist on the same system

        r.addNewGroup('group-dist', groupName='group-os')
        r.startGroup('group-core', parentGroup='group-dist', depCheck=True)
        r.add('acl:lib')
        r.add('acl:runtime')
        r.add('ash:runtime')
        r.add('attr:lib')
        r.add('attr:runtime')
        r.add('authconfig:runtime')
        r.add('bash:runtime')
        r.add('bridge-utils:runtime')
        r.add('bzip2:lib')
        r.add('bzip2:runtime')
        r.add('chkconfig:lib')
        r.add('chkconfig:runtime')
        r.add('conary:data')
        r.add('conary:python')
        r.add('conary:runtime')
        r.add('coreutils:runtime')
        r.add('cpio:runtime')
        r.add('cracklib:lib')
        r.add('cyrus-sasl:lib')
        r.add('db:lib')
        r.add('dev:runtime')
        r.add('dhclient:runtime')
        r.add('dhclient:lib')
        r.add('diffutils:runtime')
        r.add('distro-release', flavor=releaseFlavor)
        r.add('e2fsprogs:data')
        r.add('e2fsprogs:lib')
        r.add('e2fsprogs:runtime')
        r.add('file:data')
        r.add('file:lib')
        r.add('file:runtime')
        r.add('filesystem:runtime')
        r.add('findutils:runtime')
        r.add('gawk:data')
        r.add('gawk:runtime')
        r.add('gdbm:lib')
        r.add('glib:lib')
        r.add('glib:data')
        r.add('glibc:lib', flavor=glibcFlavor)
        r.add('glibc:runtime', flavor=glibcFlavor)
        r.add('glibc:locale', flavor=glibcFlavor)
        if Arch.x86_64:
            r.add('glibc:lib', flavor=glibcFlavor32)
        r.add('gmp:lib')
        r.add('gpm:lib')
        r.add('gpm:runtime')
        r.add('grep:runtime')
        if Arch.x86_64:
            r.add('grub:data', flavor='grub.static is: x86')
            r.add('grub:runtime', flavor='grub.static is: x86')
        else:
            r.add('grub:data')
            r.add('grub:runtime')
        r.add('gzip:runtime')
        r.add('hotplug:runtime')
        r.add('hwdata:data')
        r.add('hwdata:lib')
        r.add('hwdata:runtime')
        r.add('info-daemon')
        r.add('info-disk')
        r.add('info-emerge')
        r.add('info-floppy')
        r.add('info-kmem')
        r.add('info-lock')
        r.add('info-lp')
        r.add('info-mail')
        r.add('info-tty')
        r.add('info-users')
        r.add('info-utmp')
        r.add('info-uucp')
        r.add('initscripts:runtime')
        r.add('iproute:lib')
        r.add('iproute:runtime')
        r.add('iptables:lib')
        r.add('iptables:runtime')
        r.add('iputils:runtime')
        r.add('kbd:lib')
        r.add('kbd:runtime')
        r.add('kernel:runtime', flavor=kernelFlavor)
        r.add('krb5:lib')
        r.add('krb5:data')
        r.add('kudzu:python')
        r.add('kudzu:runtime')
        r.add('libelf:lib')
        if Arch.x86_64:
            r.add('libgcc:lib', flavor='is: x86 x86_64', source='gcc')
            r.add('libstdc++:lib', flavor='is: x86 x86_64', source='gcc')
        else:
            r.add('libgcc:lib', source='gcc')
            r.add('libstdc++:lib', source='gcc')
        r.add('libtermcap:lib')
        r.add('libuser:lib')
        r.add('libuser:python')
        r.add('libuser:runtime')
        r.add('mdadm:runtime')
        r.add('mingetty:runtime')
        r.add('mkinitrd:runtime', 'conary.rpath.com@rpl:1')
        r.add('mktemp:runtime')
        r.add('module-init-tools:runtime')
        r.add('ncurses:data')
        r.add('ncurses:lib')
        r.add('ncurses:runtime')
        r.add('net-tools:runtime')
        r.add('newt:lib')
        r.add('openssl:config')
        r.add('openssl:data')
        r.add('openssl:lib')
        r.add('pam:data')
        r.add('pam:lib')
        r.add('passwd:runtime')
        r.add('pcre:lib')
        r.add('popt:lib')
        r.add('procps:lib')
        r.add('procps:runtime')
        r.add('psmisc:runtime')
        r.add('pycrypto:python')
        r.add('python:devel')
        r.add('python:devellib')
        r.add('python:lib')
        r.add('python:runtime')
        r.add('readline:lib')
        r.add('rhpl:data')
        r.add('rhpl:python')
        r.add('rhpl:runtime')
        r.add('rootfiles:runtime')
        r.add('sed:runtime')
        r.add('setup:runtime')
        r.add('shadow:runtime')
        r.add('slang:lib')
        r.add('sqlite:lib')
        r.add('sysklogd:runtime')
        r.add('sysfsutils:lib')
        r.add('sysfsutils:runtime')
        r.add('system-config-mouse:data')
        r.add('system-config-mouse:runtime')
        r.add('sysvinit:runtime')
        r.add('tar:runtime')
        r.add('termcap:runtime')
        r.add('tmpwatch:runtime')
        r.add('tzdata:data')
        r.add('udev:data')
        r.add('udev:lib')
        r.add('udev:runtime')
        r.add('usermode:runtime')
        r.add('util-linux:data')
        r.add('util-linux:runtime')
        r.add('vim-minimal:runtime', source='vim')
        r.add('wireless-tools:lib')
        r.add('zlib:lib')


        r.startGroup('group-base', parentGroup='group-dist')
        r.add('a2ps')
        r.add('acl')
        r.add('acpid')
        r.add('alsa-lib')
        r.add('alsa-utils')
        r.add('anacron')
        if Arch.x86:
            r.add('apmd')
        r.add('arpwatch')
        r.add('ash')
        r.add('aspell')
        r.add('aspell-en')
        r.add('at')
        r.add('attr')
        r.add('authconfig')
        r.add('autofs')
        r.add('bash')
        r.add('bc')
        r.add('binutils')
        r.add('bridge-utils')
        r.add('bzip2')
        r.add('cdrtools')
        r.add('chkconfig')
        r.add('conary')
        r.add('coreutils')
        r.add('cpio')
        r.add('cpufrequtils')
        r.add('cracklib')
        r.add('crontabs')
        r.add('cups')
        r.add('curl')
        r.add('cyrus-sasl')
        r.add('db')
        r.add('dbus')
        r.add('dev')
        r.add('device-mapper')
        r.add('dhclient')
        r.add('diffutils')
        r.add('dmidecode')
        r.add('dos2unix')
        r.add('dosfstools')
        r.add('dvd+rw-tools')
        r.add('e2fsprogs')
        r.add('ed')
        r.add('eject')
        r.add('elfutils')
        r.add('elinks')
        r.add('enscript')
        r.add('epdb')
        r.add('espgs')
        r.add('ethtool')
        r.add('fbset')
        r.add('fetchmail')
        r.add('file')
        r.add('filesystem')
        r.add('findutils')
        r.add('finger')
        r.add('flac')
        r.add('floppy')
        r.add('foomatic-db')
        r.add('foomatic-db-engine')
        r.add('foomatic-filters')
        r.add('ftp')
        r.add('gamin')
        r.add('gawk')
        r.add('gd')
        r.add('gdbm')
        r.add('gettext')
        r.add('ghostscript-fonts')
        r.add('gimp-print')
        r.add('glib')
        r.add('glibc', flavor=glibcFlavor)
        if Arch.x86_64:
            r.add('glibc:lib', flavor=glibcFlavor32)
        r.add('gmp')
        r.add('gnupg')
        r.add('gpm')
        r.add('grep')
        if Arch.x86_64:
            r.add('grub', flavor='grub.static is: x86')
        else:
            r.add('grub')
        r.add('gzip')
        r.add('hal')
        r.add('hdparm')
        r.add('hotplug')
        r.add('howl')
        r.add('hplip')
        r.add('hwdata')
        r.add('ImageMagick')
        r.add('indent')
        r.add('info', source='texinfo')
        r.add('initscripts')
        r.add('install-info', source='texinfo')
        r.add('iproute')
        r.add('iptables')
        r.add('iputils')
        r.add('irda-utils')
        r.add('irqbalance')
        r.add('jfsutils')
        r.add('joe')
        r.add('jwhois')
        r.add('kbd')
        r.add('krb5-workstation')
        r.add('kudzu')
        r.add('less')
        r.add('lftp')
        r.add('lm_sensors')
        r.add('lockdev')
        r.add('logrotate')
        r.add('logwatch')
        r.add('longrun')
        r.add('lsof')
        r.add('lvm2')
        r.add('lynx')
        r.add('MAKEDEV')
        r.add('mailbase')
        r.add('mailcap')
        r.add('man')
        r.add('man-pages')
        r.add('mdadm')
        if Arch.x86:
            r.add('microcode_ctl')
        r.add('mingetty')
        r.add('minicom')
        r.add('mkbootdisk')
        r.add('mkinitrd', 'conary.rpath.com@rpl:1')
        r.add('mkisofs', source='cdrtools')
        r.add('mktemp')
        r.add('module-init-tools')
        r.add('mtools')
        r.add('mt-st')
        r.add('mutt')
        r.add('nail')
        r.add('nano')
        r.add('ncurses')
        r.add('netpbm')
        r.add('net-snmp')
        r.add('net-snmp-utils', source='net-snmp')
        r.add('net-tools')
        r.add('newt')
        r.add('nfsidmap')
        r.add('nfs-utils')
        r.add('nmap')
        r.add('nscd')
        r.add('ntp')
        r.add('ntsysv')
        r.add('openldap-clients', source='openldap')
        r.add('openssh')
        r.add('openssh-client', source='openssh')
        r.add('openssh-server', source='openssh')
        r.add('openssl')
        r.add('pam')
        r.add('pam_krb5')
        r.add('pam_smb')
        r.add('passwd')
        r.add('pciutils')
        r.add('pcmcia-cs')
        r.add('pcre')
        r.add('perl')
        r.add('pilot-link')
        r.add('pinfo')
        r.add('pm-utils')
        r.add('popt')
        r.add('portmap')
        r.add('ppp')
        r.add('procmail')
        r.add('procps')
        r.add('psmisc')
        r.add('psutils')
        r.add('pump')
        r.add('pycrypto')
        r.add('python')
        r.add('quota')
        r.add('readline')
        r.add('reiserfsprogs')
        r.add('rhpl')
        r.add('rootfiles')
        r.add('rp-pppoe')
        r.add('rsh')
        r.add('rsync')
        r.add('run')
        r.add('rusers')
        r.add('rwho')
        r.add('schedutils')
        r.add('screen')
        r.add('sed')
        r.add('setserial')
        r.add('setup')
        r.add('setuptool')
        r.add('shadow')
        r.add('slang')
        r.add('slocate')
        r.add('smartmontools')
        r.add('speex')
        r.add('sqlite')
        r.add('star')
        r.add('sudo')
        r.add('sysfsutils')
        r.add('sysklogd')
        r.add('syslinux')
        r.add('sysstat')
        r.add('sysvinit')
        r.add('talk')
        r.add('tar')
        r.add('tcpdump')
        r.add('tcp_wrappers')
        r.add('tcsh')
        r.add('telnet')
        r.add('termcap')
        r.add('tshark', source='wireshark')
        r.add('tftp')
        r.add('time')
        r.add('tmpwatch')
        r.add('traceroute')
        r.add('tzdata')
        r.add('udev')
        r.add('units')
        r.add('unix2dos')
        r.add('unzip')
        r.add('urlgrabber')
        r.add('urw-fonts')
        r.add('usbutils')
        r.add('usermode')
        r.add('utempter')
        r.add('util-linux')
        r.add('vconfig')
        r.add('vim')
        r.add('vim-minimal', source='vim')
        r.add('vixie-cron')
        r.add('vorbis-tools')
        r.add('wget')
        r.add('which')
        r.add('wireless-tools')
        r.add('words')
        r.add('wvdial')
        r.add('wvstreams')
        if Arch.x86:
            r.add('x86info')
        r.add('xdelta')
        if Use.dom0:
            r.add('xen')
        r.add('xfsprogs')
        r.add('xplc')
        r.add('ypbind')
        r.add('yp-tools')
        r.add('zip')
        r.add('zlib')

        r.startGroup('group-devel', parentGroup='group-dist')
        r.add('apr')
        r.add('apr-util')
        r.add('autoconf')
        r.add('automake')
        r.add('bison')
        r.add('byacc')
        r.add('cdecl')
        r.add('conary-build', source='conary')
        r.add('conary-policy')
        r.add('cproto')
        r.add('ctags')
        r.add('cvs')
        r.add('debugedit')
        r.add('dejagnu')
        if Arch.x86:
            r.add('dev86')
        r.add('devhelp')
        r.add('diffstat')
        r.add('distcc')
        r.add('dmalloc')
        r.add('docbook-dsssl')
        r.add('docbook-dtds')
        r.add('docbook-utils')
        r.add('docbook-utils-pdf', source='docbook-utils')
        r.add('docbook-xsl')
        r.add('doxygen')
        r.add('expect')
        r.add('expectk')
        r.add('expat')
        r.add('flex')
        r.add('gc')
        if Arch.x86_64:
            r.add('gcc', flavor='is: x86 x86_64')
            r.add('gcc-c++', flavor='is: x86 x86_64', source='gcc')
            r.add('gcc-f77', flavor='is: x86 x86_64', source='gcc')
            r.add('gcc-java', flavor='is: x86 x86_64', source='gcc')
            r.add('gcc-objc', flavor='is: x86 x86_64', source='gcc')
            r.add('libgcc', flavor='is: x86 x86_64', source='gcc')
            r.add('libstdc++', flavor='is: x86 x86_64', source='gcc')
        else:
            r.add('gcc')
            r.add('gcc-c++', source='gcc')
            r.add('gcc-f77', source='gcc')
            r.add('gcc-java', source='gcc')
            r.add('gcc-objc', source='gcc')
            r.add('libgcc', source='gcc')
            r.add('libstdc++', source='gcc')
        r.add('gdb')
        r.add('groff')
        r.add('gperf')
        r.add('guile')
        r.add('jadetex')
        r.add('kernel', flavor=kernelFlavor)
        r.add('latex2html')
        r.add('linuxdoc-tools')
        r.add('linux-kernel-headers')
        r.add('ltrace')
        r.add('m4')
        if Arch.x86:
            r.add('memprof')
        r.add('make')
        r.add('mx')
        r.add('nasm')
        r.add('openjade')
        r.add('opensp')
        r.add('oprofile')
        r.add('passivetex')
        r.add('patch')
        r.add('patchutils')
        r.add('perl-Archive-Zip')
        r.add('perl-Compress-Zlib')
        r.add('perl-DateManip')
        r.add('perl-DBD-MySQL')
        r.add('perl-DBD-Pg')
        r.add('perl-DBI')
        r.add('perl-Digest-HMAC')
        r.add('perl-Digest-SHA1')
        r.add('perl-Filter')
        r.add('perl-Filter-Simple')
        r.add('perl-HTML-Parser')
        r.add('perl-HTML-Tagset')
        r.add('perl-libwww-perl')
        r.add('perl-libxml-enno')
        r.add('perl-libxml-perl')
        r.add('perl-Net-DNS')
        r.add('perl-Net-IP')
        r.add('perl-Parse-Yapp')
        r.add('perl-SGMLS')
        r.add('perl-Time-HiRes')
        r.add('perl-URI')
        r.add('perl-XML-Dumper')
        r.add('perl-XML-Encoding')
        r.add('perl-XML-Grove')
        r.add('perl-XML-Parser')
        r.add('perl-XML-Twig')
        r.add('psgml')
        if Arch.x86:
            r.add('pstack')
        r.add('Pyrex')
        r.add('python')
        r.add('python-setuptools')
        r.add('PyXML')
        r.add('rcs')
        r.add('Sablot')
        r.add('sgml-common')
        r.add('sgmlop')
        r.add('setarch')
        r.add('sharutils')
        r.add('splint')
        r.add('strace')
        r.add('subversion')
        r.add('swig')
        r.add('tcl')
        r.add('tetex')
        r.add('tetex-afm', source='tetex')
        r.add('tetex-dvips', source='tetex')
        r.add('tetex-fonts', source='tetex')
        r.add('tetex-latex', source='tetex')
        r.add('tetex-xdvi', source='tetex')
        r.add('texi2html')
        r.add('texinfo')
        r.add('tk')
        r.add('umb-scheme')
        r.add('xhtml1-dtds')
        r.add('xmltex')
        r.add('xmlto')

        r.startGroup('group-dist-base', parentGroup='group-dist')
        r.add('Hermes')
        r.add('agg')
        r.add('boost')
        r.add('icu')
        r.add('info-adm')
        r.add('info-amanda')
        r.add('info-apache')
        r.add('info-bin')
        r.add('info-canna')
        r.add('info-cyrus')
        r.add('info-dbus')
        r.add('info-dip')
        r.add('info-disk')
        r.add('info-dovecot')
        r.add('info-exim')
        r.add('info-fax')
        r.add('info-fcron')
        r.add('info-floppy')
        r.add('info-ftp')
        r.add('info-games')
        r.add('info-gdm')
        r.add('info-gopher')
        r.add('info-haldaemon')
        r.add('info-halt')
        r.add('info-htt')
        r.add('info-ident')
        r.add('info-kmem')
        r.add('info-ldap')
        r.add('info-lock')
        r.add('info-lp')
        r.add('info-mail')
        r.add('info-mailman')
        r.add('info-mailnull')
        r.add('info-man')
        r.add('info-mem')
        r.add('info-mysql')
        r.add('info-named')
        r.add('info-netdump')
        r.add('info-news')
        r.add('info-nfsnobody')
        r.add('info-nobody')
        r.add('info-nscd')
        r.add('info-ntp')
        r.add('info-nut')
        r.add('info-operator')
        r.add('info-pcap')
        r.add('info-postdrop')
        r.add('info-postfix')
        r.add('info-postgres')
        r.add('info-privoxy')
        r.add('info-pvm')
        r.add('info-quagga')
        r.add('info-quaggavt')
        r.add('info-radiusd')
        r.add('info-radvd')
        r.add('info-rpc')
        r.add('info-rpcuser')
        r.add('info-shutdown')
        r.add('info-slocate')
        r.add('info-smmsp')
        r.add('info-squid')
        r.add('info-sshd')
        r.add('info-sync')
        r.add('info-sys')
        r.add('info-tomcat')
        r.add('info-tty')
        r.add('info-users')
        r.add('info-utmp')
        r.add('info-uucp')
        r.add('info-vcsa')
        r.add('info-webalizer')
        r.add('info-wheel')
        r.add('info-wnn')
        r.add('info-xfs')
        r.add('libao')
        r.add('libcap')
        r.add('libcroco')
        r.add('libelf', source='elfutils')
        r.add('libevent')
        r.add('libexif')
        r.add('libgsf')
        r.add('libgtkhtml')
        r.add('libieee1284')
        r.add('libjpeg')
        r.add('libmng')
        r.add('libmspack')
        r.add('libmusicbrainz')
        r.add('libogg')
        r.add('libole2')
        r.add('libpcap')
        r.add('libpng')
        r.add('libsigc++')
        r.add('libsndfile')
        r.add('libtermcap')
        r.add('libtheora')
        r.add('libtiff')
        r.add('libtool')
        r.add('libungif')
        r.add('libusb')
        r.add('libuser')
        r.add('libvorbis')
        r.add('libwpd')
        r.add('mysql:lib')
        r.add('mysql:data')
        r.add('nss_ldap')
        r.add('openh323')
        r.add('openldap:lib')
        r.add('openldap:data')
        r.add('postgresql:lib')
        r.add('pwlib')
        r.add('unixODBC')
        r.add('VFlib')
        r.add('w3c-libwww')

        if Use.domU:
            # Some Predefined domU images go here, we will start with a basic
            # text mode development group
            r.startGroup('group-domU-devel', parentGroup='group-os', depCheck=True,
                          byDefault=False)
            r.addNewGroup('group-core')
            r.addNewGroup('group-machine-root')
            r.add('curl:lib')
            r.add('debugedit:runtime')
            r.add('emacs')
            r.add('fontconfig:runtime')
            r.add('gnupg')
            r.add('groff')
            r.add('info-man')
            r.add('less:runtime')
            r.add('libungif:lib')
            r.add('libusb:lib')
            r.add('man:runtime')
            r.add('openldap:data')
            r.add('openldap:lib')
            r.add('openssh-client:runtime')
            r.add('tcsh:runtime')
            r.add('vim')
            r.add('Xaw3d:lib')
            r.add('xorg-x11:data')
            r.add('xorg-x11:lib')

        if Use.dom0:
            # A fairly small dom0 group which can be used for ISO images.
            # Since qemu requires SDL, it isnt as small as it should be.
            r.startGroup('group-dom0-server', parentGroup='group-os', depCheck=True,
                          byDefault=False)

            # What we need...
            r.addNewGroup('group-core')

            # What we want...
            r.add('bridge-utils')
            r.add('httpd:runtime')
            r.add('httpd:lib')
            r.add('xen')

            # The deps to make it all work...
            r.add('apr:lib')
            r.add('apr-util:lib')
            r.add('expat:lib')
            r.add('info-apache')
            r.add('mailcap:runtime')
            r.add('make:runtime')
            r.add('mod_python')
            r.add('openldap:data')
            r.add('openldap:lib')
            r.add('SDL:lib')
            r.add('xorg-x11:lib')
            r.add('fontconfig:lib')
            r.add('fontconfig:runtime')
            r.add('freetype:lib')
            r.add('xorg-x11:data')
            r.add('libpng:lib')