summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configurations.yaml19
-rw-r--r--kickstart.py255
-rw-r--r--kickstart.tmpl3
-rw-r--r--kickstarter.py18
-rw-r--r--repos.yaml6
5 files changed, 32 insertions, 269 deletions
diff --git a/configurations.yaml b/configurations.yaml
index 2bbdd16..9404e94 100644
--- a/configurations.yaml
+++ b/configurations.yaml
@@ -23,8 +23,6 @@ CORE:
- cleanup
Repos:
- meego-core-1.0
- Kernel: kernel-netbook
-
NETBOOK:
PartSize: 1900
BootloaderAppend: "quiet"
@@ -49,21 +47,28 @@ NETBOOK:
- gdb
- flash-plugin
- adobe-release
+ Architecture: ia32
Configurations:
- Name: MeeGo Core 1.0
Active: True
Baseline: 1.0
Platform: CORE
- FileName: core
+ FileName: core-ia32
+ Kernel: kernel-netbook
+ Architecture: ia32
+ - Name: MeeGo Core 1.0 N900
+ Active: True
+ Baseline: 1.0
+ Platform: CORE
+ FileName: core-armv7l-n900
+ Kernel: kernel-n900
Desktop:
+ Architecture: armv7l
- Name: MeeGo Netbook/Nettop 1.0
Active: True
Baseline: 1.0
Platform: NETBOOK
Desktop: meego
- FileName: netbook
+ FileName: netbook-ia32-default
Groups:
- MeeGo Netbook Desktop
- Repos:
- - meego-core-1.0
- - meego-netbook-1.0
diff --git a/kickstart.py b/kickstart.py
deleted file mode 100644
index a9af541..0000000
--- a/kickstart.py
+++ /dev/null
@@ -1,255 +0,0 @@
-#!/usr/bin/env python
-
-
-
-
-##################################################
-## DEPENDENCIES
-import sys
-import os
-import os.path
-import __builtin__
-from os.path import getmtime, exists
-import time
-import types
-from Cheetah.Version import MinCompatibleVersion as RequiredCheetahVersion
-from Cheetah.Version import MinCompatibleVersionTuple as RequiredCheetahVersionTuple
-from Cheetah.Template import Template
-from Cheetah.DummyTransaction import *
-from Cheetah.NameMapper import NotFound, valueForName, valueFromSearchList, valueFromFrameOrSearchList
-from Cheetah.CacheRegion import CacheRegion
-import Cheetah.Filters as Filters
-import Cheetah.ErrorCatchers as ErrorCatchers
-
-##################################################
-## MODULE CONSTANTS
-VFFSL=valueFromFrameOrSearchList
-VFSL=valueFromSearchList
-VFN=valueForName
-currentTime=time.time
-__CHEETAH_version__ = '2.2.2'
-__CHEETAH_versionTuple__ = (2, 2, 2, 'final', 0)
-__CHEETAH_genTime__ = 1273202421.2641661
-__CHEETAH_genTimestamp__ = 'Thu May 6 23:20:21 2010'
-__CHEETAH_src__ = 'kickstart.tmpl'
-__CHEETAH_srcLastModified__ = 'Thu May 6 22:51:32 2010'
-__CHEETAH_docstring__ = 'Autogenerated by Cheetah: The Python-Powered Template Engine'
-
-if __CHEETAH_versionTuple__ < RequiredCheetahVersionTuple:
- raise AssertionError(
- 'This template was compiled with Cheetah version'
- ' %s. Templates compiled before version %s must be recompiled.'%(
- __CHEETAH_version__, RequiredCheetahVersion))
-
-##################################################
-## CLASSES
-
-class kickstart(Template):
-
- ##################################################
- ## CHEETAH GENERATED METHODS
-
-
- def __init__(self, *args, **KWs):
-
- super(kickstart, self).__init__(*args, **KWs)
- if not self._CHEETAH__instanceInitialized:
- cheetahKWArgs = {}
- allowedKWs = 'searchList namespaces filter filtersLib errorCatcher'.split()
- for k,v in KWs.items():
- if k in allowedKWs: cheetahKWArgs[k] = v
- self._initCheetahInstance(**cheetahKWArgs)
-
-
- def respond(self, trans=None):
-
-
-
- ## CHEETAH: main method generated for this template
- if (not trans and not self._CHEETAH__isBuffering and not callable(self.transaction)):
- trans = self.transaction # is None unless self.awake() was called
- if not trans:
- trans = DummyTransaction()
- _dummyTrans = True
- else: _dummyTrans = False
- write = trans.response().write
- SL = self._CHEETAH__searchList
- _filter = self._CHEETAH__currentFilter
-
- ########################################
- ## START - generated method body
-
- write(u'''#
-# Do not Edit! Generated by:
-# kickstarter.py
-#
-
-lang ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Language",True) # u'${metadata.Language}' on line 6, col 6
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.Language}')) # from line 6, col 6.
- write(u'''
-keyboard ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Keyboard",True) # u'${metadata.Keyboard}' on line 7, col 10
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.Keyboard}')) # from line 7, col 10.
- write(u'''
-timezone --utc ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Timezone",True) # u'${metadata.Timezone}' on line 8, col 16
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.Timezone}')) # from line 8, col 16.
- write(u'''
-auth --useshadow --enablemd5
-''')
- if VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Part",True) == "": # generated from line 10, col 1
- write(u'''part / --size ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.PartSize",True) # u'${metadata.PartSize}' on line 11, col 15
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.PartSize}')) # from line 11, col 15.
- write(u''' --ondisk sda --fstype=ext3
-''')
- else: # generated from line 12, col 1
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Part",True) # u'${metadata.Part}' on line 13, col 1
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.Part}')) # from line 13, col 1.
- write(u'''
-''')
- write(u'''rootpw ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.RootPass",True) # u'${metadata.RootPass}' on line 15, col 8
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.RootPass}')) # from line 15, col 8.
- write(u'''
-xconfig --startxonboot
-bootloader --timeout=''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.BootloaderTimeout",True) # u'${metadata.BootloaderTimeout}' on line 17, col 22
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.BootloaderTimeout}')) # from line 17, col 22.
- write(u''' --append="''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.BootloaderAppend",True) # u'${metadata.BootloaderAppend}' on line 17, col 62
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.BootloaderAppend}')) # from line 17, col 62.
- write(u'''"
-desktop --autologinuser=''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.DefaultUser",True) # u'${metadata.DefaultUser}' on line 18, col 25
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.DefaultUser}')) # from line 18, col 25.
- write(u''' --defaultdesktop=''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Desktop",True) # u'${metadata.Desktop}' on line 18, col 67
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.Desktop}')) # from line 18, col 67.
- write(u'''
-user --name ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.DefaultUser",True) # u'${metadata.DefaultUser}' on line 19, col 13
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.DefaultUser}')) # from line 19, col 13.
- write(u''' --groups audio,video --password ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.DefaultUserPass",True) # u'${metadata.DefaultUserPass}' on line 19, col 70
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.DefaultUserPass}')) # from line 19, col 70.
- write(u'''
-
-''')
- save = ""
- if VFSL([locals()]+SL+[globals(), __builtin__],"metadata.SaveRepos",True): # generated from line 22, col 1
- save = "--save"
- for r in VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Repos",True): # generated from line 25, col 1
- for rr in VFSL([locals()]+SL+[globals(), __builtin__],"repos",True): # generated from line 26, col 1
- if VFSL([locals()]+SL+[globals(), __builtin__],"rr.Name",True) == VFSL([locals()]+SL+[globals(), __builtin__],"r",True): # generated from line 27, col 1
- write(u'''repo --name=''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"r",True) # u'${r}' on line 28, col 15
- if _v is not None: write(_filter(_v, rawExpr=u'${r}')) # from line 28, col 15.
- write(u''' --baseurl=''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"rr.Url",True) # u'${rr.Url}' on line 28, col 30
- if _v is not None: write(_filter(_v, rawExpr=u'${rr.Url}')) # from line 28, col 30.
- write(u''' ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"save",True) # u'${save}' on line 28, col 40
- if _v is not None: write(_filter(_v, rawExpr=u'${save}')) # from line 28, col 40.
- write(u'''
-''')
- write(u'''
-
-''')
- if VFSL([locals()]+SL+[globals(), __builtin__],"metadata.PackageArgs",True) != "": # generated from line 34, col 1
- write(u'''%packages ''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.PackageArgs",True) # u'${metadata.PackageArgs}' on line 35, col 11
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.PackageArgs}')) # from line 35, col 11.
- write(u'''
-''')
- else: # generated from line 36, col 1
- write(u'''%packages
-''')
- write(u'''
-''')
- for g in VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Groups",True): # generated from line 40, col 1
- write(u'''@''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"g",True) # u'${g}' on line 41, col 2
- if _v is not None: write(_filter(_v, rawExpr=u'${g}')) # from line 41, col 2.
- write(u'''
-''')
- write(u'''
-
-''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Kernel",True) # u'$metadata.Kernel' on line 45, col 1
- if _v is not None: write(_filter(_v, rawExpr=u'$metadata.Kernel')) # from line 45, col 1.
- write(u'''
-
-''')
- for e in VFSL([locals()]+SL+[globals(), __builtin__],"metadata.ExtraPackages",True): # generated from line 47, col 1
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"e",True) # u'${e}' on line 48, col 1
- if _v is not None: write(_filter(_v, rawExpr=u'${e}')) # from line 48, col 1.
- write(u'''
-''')
- for e in VFSL([locals()]+SL+[globals(), __builtin__],"metadata.RemovePackages",True): # generated from line 50, col 1
- write(u'''-''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"e",True) # u'${e}' on line 51, col 2
- if _v is not None: write(_filter(_v, rawExpr=u'${e}')) # from line 51, col 2.
- write(u'''
-''')
- write(u'''%end
-
-%post
-''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.Post",True) # u'${metadata.Post}' on line 56, col 1
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.Post}')) # from line 56, col 1.
- write(u'''
-%end
-
-%post --nochroot
-''')
- _v = VFSL([locals()]+SL+[globals(), __builtin__],"metadata.NoChroot",True) # u'${metadata.NoChroot}' on line 60, col 1
- if _v is not None: write(_filter(_v, rawExpr=u'${metadata.NoChroot}')) # from line 60, col 1.
- write(u'''
-%end
-''')
-
- ########################################
- ## END - generated method body
-
- return _dummyTrans and trans.response().getvalue() or ""
-
- ##################################################
- ## CHEETAH GENERATED ATTRIBUTES
-
-
- _CHEETAH__instanceInitialized = False
-
- _CHEETAH_version = __CHEETAH_version__
-
- _CHEETAH_versionTuple = __CHEETAH_versionTuple__
-
- _CHEETAH_genTime = __CHEETAH_genTime__
-
- _CHEETAH_genTimestamp = __CHEETAH_genTimestamp__
-
- _CHEETAH_src = __CHEETAH_src__
-
- _CHEETAH_srcLastModified = __CHEETAH_srcLastModified__
-
- _mainCheetahMethod_for_kickstart= 'respond'
-
-## END CLASS DEFINITION
-
-if not hasattr(kickstart, '_initCheetahAttributes'):
- templateAPIClass = getattr(kickstart, '_CHEETAH_templateClass', Template)
- templateAPIClass._addCheetahPlumbingCodeToClass(kickstart)
-
-
-# CHEETAH was developed by Tavis Rudd and Mike Orr
-# with code, advice and input from many other volunteers.
-# For more information visit http://www.CheetahTemplate.org/
-
-##################################################
-## if run from command line:
-if __name__ == '__main__':
- from Cheetah.TemplateCmdLineIface import CmdLineIface
- CmdLineIface(templateObj=kickstart()).run()
-
-
diff --git a/kickstart.tmpl b/kickstart.tmpl
index 8a6fed3..12a4cfc 100644
--- a/kickstart.tmpl
+++ b/kickstart.tmpl
@@ -6,7 +6,6 @@
lang ${metadata.Language}
keyboard ${metadata.Keyboard}
timezone --utc ${metadata.Timezone}
-auth --useshadow --enablemd5
#if $metadata.Part == ""
part / --size ${metadata.PartSize} --ondisk sda --fstype=ext3
#else
@@ -15,7 +14,9 @@ ${metadata.Part}
rootpw ${metadata.RootPass}
xconfig --startxonboot
bootloader --timeout=${metadata.BootloaderTimeout} --append="${metadata.BootloaderAppend}"
+#if $metadata.has_key("Desktop")
desktop --autologinuser=${metadata.DefaultUser} --defaultdesktop=${metadata.Desktop}
+#end if
user --name ${metadata.DefaultUser} --groups audio,video --password ${metadata.DefaultUserPass}
#set $save = ""
diff --git a/kickstarter.py b/kickstarter.py
index b1cad01..92890c5 100644
--- a/kickstarter.py
+++ b/kickstarter.py
@@ -41,7 +41,7 @@ class KSWriter():
if plat.has_key(l) and plat[l]:
full = full + plat[l]
if img.has_key(l) and img[l]:
- full = full + img[l]
+ fll = full + img[l]
lvald[l] = set(full)
#print full
conf.update(lvald)
@@ -71,8 +71,20 @@ class KSWriter():
conf['NoChroot'] = nochrootscript
return conf
- def process_files(self, meta, r):
- nameSpace = {'metadata': meta, 'repos': r}
+ def process_files(self, meta, repos):
+ new_repos = []
+ #print repos
+ #print meta
+ if meta.has_key("Architecture") and meta['Architecture']:
+ for repo in repos:
+ r = {}
+ r['Name'] = repo['Name']
+ r['Url'] = repo['Url'].replace("@ARCH@", meta['Architecture'])
+ new_repos.append(r)
+ else:
+ new_repos = repos
+
+ nameSpace = {'metadata': meta, 'repos': new_repos}
t = kickstart(searchList=[nameSpace])
a = str(t)
if meta.has_key('FileName') and meta['FileName']:
diff --git a/repos.yaml b/repos.yaml
index f73b0ed..1346242 100644
--- a/repos.yaml
+++ b/repos.yaml
@@ -1,9 +1,9 @@
Repositories:
- Name: meego-core-1.0
- Url: http://repo.meego.com/MeeGo/releases/1.0/core/repos/ia32/packages
+ Url: http://repo.meego.com/MeeGo/releases/1.0/core/repos/@ARCH@/packages
- Name: meego-extra-1.0
- Url: http://repo.meego.com/MeeGo/releases/1.0/extra/repos/ia32/packages
+ Url: http://repo.meego.com/MeeGo/releases/1.0/extra/repos/@ARCH@/packages
- Name: meego-netbook-1.0
- Url: http://repo.meego.com/MeeGo/releases/1.0/netbook/repos/ia32/packages
+ Url: http://repo.meego.com/MeeGo/releases/1.0/netbook/repos/@ARCH@/packages
- Name: adobe
Url: http://linuxdownload.adobe.com/linux/i386/