summaryrefslogtreecommitdiff
path: root/noncore/unsupported/oipkg/package.cpp
Side-by-side diff
Diffstat (limited to 'noncore/unsupported/oipkg/package.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/unsupported/oipkg/package.cpp24
1 files changed, 19 insertions, 5 deletions
diff --git a/noncore/unsupported/oipkg/package.cpp b/noncore/unsupported/oipkg/package.cpp
index 0499e19..6bb53a9 100644
--- a/noncore/unsupported/oipkg/package.cpp
+++ b/noncore/unsupported/oipkg/package.cpp
@@ -7,138 +7,147 @@
#include <stdlib.h>
#include <unistd.h>
#include "debug.h"
//Package::~Package()
//{
//}
Package::Package( PackageManagerSettings *s )
{
init(s);
}
void Package::init( PackageManagerSettings *s )
{
settings = s;
_size = "";
_section = "";
_subsection = "";
_shortDesc = "";
_desc = "";
_name = "";
_toProcess = false;
+ _useFileName = false;
_status = "";
_dest = settings->getDestinationName();
_link = settings->createLinks();
}
Package::Package( QStringList pack, PackageManagerSettings *s )
{
init(s);
parsePackage( pack );
}
Package::Package( QString n, PackageManagerSettings *s )
{
init(s);
if ( !QFile::exists( n ) )
{
_name = QString( n );
}else{
parseIpkgFile( n );
_toProcess = true;
- _packageName = QString( n );
+ _useFileName = true;
+ _fileName = QString( n );
}
}
Package::Package( Package *pi )
{
init(pi->settings);
copyValues( pi );
}
void Package::setValue( QString n, QString t )
{
if ( n == "Package" )
{
_name = QString( t );
}else if ( n == "Installed-Size" )
{
_size = t;
}else if ( n == "Priority")
{
}else if ( n == "Section")
{
setSection( t );
}else if ( n == "Maintainer")
{
}else if ( n == "Architecture")
{
}else if ( n == "Version")
{
}else if ( n == "Pre-Depends")
{
}else if ( n == "Depends")
{
}else if ( n == "Filename")
{
-
+ _fileName = t;
}else if ( n == "Size")
{
}else if ( n == "MD5Sum")
{
}
if ( n == "Description")
{
setDesc( t );
}
if ( n == "Status")
{
if ( installed() ) return;
_status = t;
}
if ( t == "Essential")
{
}
};
QString Package::name()
{
return _name;
}
+
+QString Package::installName()
+{
+ if (_useFileName) return _fileName;
+ else return _name;
+}
+
bool Package::installed()
{
return _status.contains("installed");
}
void Package::setDesc( QString s )
{
_desc = s;
_shortDesc = s.left( s.find("\n") );
}
QString Package::desc()
{
return _desc;
}
QString Package::shortDesc()
{
return _shortDesc;
}
QString Package::size()
{
return _size;
@@ -310,29 +319,34 @@ bool Package::link()
void Package::setLink(bool b)
{
_link = b;
}
void Package::parseIpkgFile( QString file)
{
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 );
QStringList pack;
while ( !t.eof() )
{
pack << t.readLine();
}
f.close();
parsePackage( pack );
}
}
-QString Package::getPackageName()
+//QString Package::getPackageName()
+//{
+// if ( _packageName.isEmpty() ) return _name;
+// else return _packageName;
+//}
+
+void Package::instalFromFile(bool iff)
{
- if ( _packageName.isEmpty() ) return _name;
- else return _packageName;
+ _useFileName = iff;
}