-rw-r--r-- | noncore/unsupported/oipkg/package.cpp | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/noncore/unsupported/oipkg/package.cpp b/noncore/unsupported/oipkg/package.cpp index 7aaa240..1054a1d 100644 --- a/noncore/unsupported/oipkg/package.cpp +++ b/noncore/unsupported/oipkg/package.cpp @@ -55,16 +55,16 @@ void Package::init( PackageManagerSettings *s ) } Package::Package( QStringList pack, PackageManagerSettings *s , QObject *parent, const char *name ) : QObject(parent,name) -{ +{ init(s); parsePackage( pack ); } Package::Package( QString n, PackageManagerSettings *s, QObject *parent, const char *name ) : QObject(parent,name) -{ +{ init(s); if ( !QFile::exists( n ) ) { _name = QString( n ); @@ -117,9 +117,9 @@ void Package::setValue( QString n, QString t ) { _fileName = t; // }else if ( n == "Size") // { -// +// // }else if ( n == "MD5Sum") // { }else if ( n == "Description") @@ -384,9 +384,9 @@ void Package::setDest( QString d ) } void Package::setOn() { - _toProcess = true; + _toProcess = true; } bool Package::link() { @@ -400,10 +400,17 @@ void Package::setLink(bool b) } void Package::parseIpkgFile( QString file) { - system("tar xzf "+file+" -C /tmp"); - system("tar xzf /tmp/control.tar.gz -C /tmp"); +// 20020830 +// a quick hack to make oipkg understand the new ipk format +// neu: ar pf PACKAGE control.tar.gz | tar xfOz - ./control > /tmp/control + if (! system("ar pf "+file+" control.tar.gz | tar xfOz - ./control > /tmp/control") ) + { +//#old tar ipk format + system("tar xzf "+file+" -C /tmp"); + system("tar xzf /tmp/control.tar.gz -C /tmp"); + } QFile f("/tmp/control"); if ( f.open(IO_ReadOnly) ) { QTextStream t( &f ); @@ -414,9 +421,9 @@ void Package::parseIpkgFile( QString file) } f.close(); parsePackage( pack ); } - + } //QString Package::getPackageName() //{ @@ -435,9 +442,9 @@ void Package::setName(QString n) } QDict<QString>* Package::getFields() { - return &_values; + return &_values; } QString Package::status() { |