* fonksiyon haline dondur
This commit is contained in:
+29
-36
@@ -11,49 +11,42 @@ import packagedb
|
||||
import dependency
|
||||
#import conflicts
|
||||
|
||||
class PisiInstallError(Exception):
|
||||
class InstallError(Exception):
|
||||
pass
|
||||
|
||||
class PisiInstall:
|
||||
# tek bir fonksiyon olan bir seyi class yapmak dogru mu?
|
||||
# ne state sakliyor PisiInstall?
|
||||
|
||||
def __init__(self, package_fn):
|
||||
self.install(package_fn)
|
||||
|
||||
def install(self, package_fn):
|
||||
def install(self, package_fn):
|
||||
|
||||
package = Package(package_fn, 'r')
|
||||
# extract control files
|
||||
util.clean_dir(ctx.install_dir())
|
||||
ui.info('extracting files\n')
|
||||
package.extract_PISI_files(ctx.install_dir())
|
||||
package = Package(package_fn, 'r')
|
||||
# extract control files
|
||||
util.clean_dir(ctx.install_dir())
|
||||
ui.info('extracting files\n')
|
||||
package.extract_PISI_files(ctx.install_dir())
|
||||
|
||||
# verify package
|
||||
# check if we have all required files
|
||||
# verify package
|
||||
# check if we have all required files
|
||||
|
||||
metadata = MetaData()
|
||||
metadata.read(ctx.install_dir() + '/metadata.xml')
|
||||
# check package semantics
|
||||
if not metadata.verify():
|
||||
raise InstallError("MetaData format wrong")
|
||||
metadata = MetaData()
|
||||
metadata.read(ctx.install_dir() + '/metadata.xml')
|
||||
# check package semantics
|
||||
if not metadata.verify():
|
||||
raise InstallError("MetaData format wrong")
|
||||
|
||||
# check file system requirements
|
||||
# what to do if / is split into /usr, /var, etc.?
|
||||
# check file system requirements
|
||||
# what to do if / is split into /usr, /var, etc.?
|
||||
|
||||
# check conflicts
|
||||
# check dependencies
|
||||
if not dependency.installable(metadata.packages[0].name):
|
||||
raise InstallError("Package not installable")
|
||||
|
||||
# check conflicts
|
||||
# check dependencies
|
||||
if not dependency.installable(metadata.packages[0].name):
|
||||
raise InstallError("Package not installable")
|
||||
|
||||
# unzip package in place
|
||||
package.extract_dir_flat(ctx.destdir)
|
||||
# unzip package in place
|
||||
package.extract_dir_flat(ctx.destdir)
|
||||
|
||||
# update databases
|
||||
# update databases
|
||||
|
||||
# installdb
|
||||
installdb.install(metadata.packages[0].name,
|
||||
metadata.source.version,
|
||||
metadata.source.release,
|
||||
ctx.install_dir() + '/files.xml')
|
||||
# installdb
|
||||
installdb.install(metadata.packages[0].name,
|
||||
metadata.source.version,
|
||||
metadata.source.release,
|
||||
ctx.install_dir() + '/files.xml')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user