summaryrefslogtreecommitdiff
authortille <tille>2002-07-19 12:44:48 (UTC)
committer tille <tille>2002-07-19 12:44:48 (UTC)
commit8a1649fdf89b0bdc09869e0cc7cebe0d40ce1b19 (patch) (unidiff)
tree80226f49cd3d881d9e5b7eec1cc53ebbe9a46276
parentc100ad1cb7db849aec5b9baa7df1a88980602688 (diff)
downloadopie-8a1649fdf89b0bdc09869e0cc7cebe0d40ce1b19.zip
opie-8a1649fdf89b0bdc09869e0cc7cebe0d40ce1b19.tar.gz
opie-8a1649fdf89b0bdc09869e0cc7cebe0d40ce1b19.tar.bz2
fixes bug #131
ipkg commandstring moved to conf file
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/unsupported/oipkg/main.cpp2
-rw-r--r--noncore/unsupported/oipkg/pmipkg.cpp74
-rw-r--r--noncore/unsupported/oipkg/pmipkg.h6
3 files changed, 7 insertions, 75 deletions
diff --git a/noncore/unsupported/oipkg/main.cpp b/noncore/unsupported/oipkg/main.cpp
index c579df8..f989f30 100644
--- a/noncore/unsupported/oipkg/main.cpp
+++ b/noncore/unsupported/oipkg/main.cpp
@@ -3,7 +3,7 @@
3 3
4#include <qpe/qpeapplication.h> 4#include <qpe/qpeapplication.h>
5#include <qstring.h> 5#include <qstring.h>
6//#include <qmessagebox.h> 6#include <unistd.h>
7int debugLevel; 7int debugLevel;
8 8
9int main( int argc, char ** argv ) 9int main( int argc, char ** argv )
diff --git a/noncore/unsupported/oipkg/pmipkg.cpp b/noncore/unsupported/oipkg/pmipkg.cpp
index bffad15..a7deb8f 100644
--- a/noncore/unsupported/oipkg/pmipkg.cpp
+++ b/noncore/unsupported/oipkg/pmipkg.cpp
@@ -12,7 +12,7 @@
12#include "package.h" 12#include "package.h"
13#include "packagelistitem.h" 13#include "packagelistitem.h"
14 14
15#include <opie/oprocess.h> 15//#include <opie/oprocess.h>
16#include <qpe/resource.h> 16#include <qpe/resource.h>
17#include <qpe/config.h> 17#include <qpe/config.h>
18#include <qpe/stringutil.h> 18#include <qpe/stringutil.h>
@@ -36,42 +36,27 @@
36#include "mainwindow.h" 36#include "mainwindow.h"
37 37
38 38
39//#define OPROCESS
40 39
41PmIpkg::PmIpkg( PackageManagerSettings* s, QWidget* p, const char * name, WFlags f ) 40PmIpkg::PmIpkg( PackageManagerSettings* s, QWidget* p, const char * name, WFlags f )
42 : QObject ( p ) 41 : QObject ( p )
43{ 42{
44 settings = s; 43 settings = s;
45 runwindow = new RunWindow( p, name, true, f ); 44 runwindow = new RunWindow( p, name, true, f );
46#ifdef OPROCESS
47 ipkgProcess = new OProcess();
48 connect ( ipkgProcess, SIGNAL(receivedStdout(OProcess*,char*,int)),
49 this, SLOT(getIpkgOutput(OProcess*,char*,int)));
50 45
51 connect ( ipkgProcess, SIGNAL(receivedStderr(OProcess*,char*,int)), 46 Config cfg( "oipkg", Config::User );
52 this, SLOT(getIpkgOutput(OProcess*,char*,int))); 47 cfg.setGroup( "ipkg" );
53 installDialog = 0; 48 ipkg_cmd = cfg.readEntry( "cmd", "ipkg" );
54#endif
55} 49}
56 50
57PmIpkg::~PmIpkg() 51PmIpkg::~PmIpkg()
58{ 52{
59#ifdef OPROCESS
60 delete ipkgProcess;
61#endif
62} 53}
63 54
64bool PmIpkg::runIpkg(const QString& args, const QString& dest ) 55bool PmIpkg::runIpkg(const QString& args, const QString& dest )
65{ 56{
66 bool ret=false; 57 bool ret=false;
67 QDir::setCurrent("/tmp"); 58 QDir::setCurrent("/tmp");
68 QString cmd = "/usr/bin/ipkg "; 59 QString cmd = ipkg_cmd;
69#ifdef OPROCESS
70 ipkgProcess->kill();
71 ipkgProcess->clearArguments();
72 *ipkgProcess << "/usr/bin/ipkg ";
73 cmd = "";
74#endif
75 pvDebug( 3,"PmIpkg::runIpkg got dest="+dest); 60 pvDebug( 3,"PmIpkg::runIpkg got dest="+dest);
76 if (!args.contains("update")) 61 if (!args.contains("update"))
77 { 62 {
@@ -98,43 +83,6 @@ bool PmIpkg::runIpkg(const QString& args, const QString& dest )
98 cmd += args; 83 cmd += args;
99 out( "running:\n"+cmd+"\n" ); 84 out( "running:\n"+cmd+"\n" );
100 pvDebug(2,"running:"+cmd); 85 pvDebug(2,"running:"+cmd);
101#ifdef OPROCESS
102 *ipkgProcess << args;
103 out( "running:\n" + cmd);
104 *ipkgProcess << cmd;
105
106//debug
107 delete ipkgProcess;
108 ipkgProcess = new OProcess();
109 ipkgProcess->clearArguments();
110 *ipkgProcess << "/bin/ls ";
111//debug
112 QValueList<QCString> a = ipkgProcess->args();
113 QValueList<QCString>::Iterator it;
114 for( it = a.begin(); it != a.end(); ++it )
115 {
116 out( *it );
117 cmd += *it;
118 }
119
120 pvDebug(2,"running:"+cmd);
121 qApp->processEvents();
122// sleep(1);
123 ret = ipkgProcess->start(OProcess::NotifyOnExit,OProcess::AllOutput);
124 if ( !ret ) {
125 pvDebug(2,"Could not execute '" + cmd);
126 out("\nError while executing "+ cmd+"\n\n");
127 out("\nError while executing\n\n");
128 // return false;
129 }
130
131 while ( ipkgProcess->isRunning() )
132 {
133 out(".");
134 pvDebug(7,"wait for oprocess to terminate");
135 qApp->processEvents();
136 };
137#else
138 qApp->processEvents(); 86 qApp->processEvents();
139 FILE *fp; 87 FILE *fp;
140 char line[130]; 88 char line[130];
@@ -160,8 +108,6 @@ bool PmIpkg::runIpkg(const QString& args, const QString& dest )
160 } 108 }
161 } 109 }
162 pclose(fp); 110 pclose(fp);
163#endif
164 //out( "Finished!");
165 pvDebug(2,QString(ret?"success\n":"failure\n")); 111 pvDebug(2,QString(ret?"success\n":"failure\n"));
166 return ret; 112 return ret;
167} 113}
@@ -493,13 +439,3 @@ void PmIpkg::clearLists()
493} 439}
494 440
495 441
496void PmIpkg::getIpkgOutput(OProcess *proc, char *buffer, int buflen)
497{
498 QString lineStr, lineStrOld;
499 lineStr = buffer;
500 lineStr=lineStr.left(buflen);
501 //Configuring opie-oipkg...Done
502 if (lineStr!=lineStrOld)
503 out(lineStr);
504 lineStrOld = lineStr;
505}
diff --git a/noncore/unsupported/oipkg/pmipkg.h b/noncore/unsupported/oipkg/pmipkg.h
index c84acfa..2f4d6ae 100644
--- a/noncore/unsupported/oipkg/pmipkg.h
+++ b/noncore/unsupported/oipkg/pmipkg.h
@@ -10,8 +10,6 @@
10#ifndef PMIPKG_H 10#ifndef PMIPKG_H
11#define PMIPKG_H 11#define PMIPKG_H
12 12
13
14#include <opie/oprocess.h>
15#include <qobject.h> 13#include <qobject.h>
16#include <qlist.h> 14#include <qlist.h>
17#include <qstring.h> 15#include <qstring.h>
@@ -49,11 +47,9 @@ public slots:
49 void createLinks( const QString &dest ); 47 void createLinks( const QString &dest );
50 void removeLinks( const QString &dest ); 48 void removeLinks( const QString &dest );
51 49
52//private slots:
53 void getIpkgOutput(OProcess *proc, char *buffer, int buflen);
54 50
55private: 51private:
56 OProcess *ipkgProcess; 52 QString ipkg_cmd;
57 PackageManagerSettings* settings; 53 PackageManagerSettings* settings;
58 RunWindow *runwindow; 54 RunWindow *runwindow;
59 InstallDialog *installDialog; 55 InstallDialog *installDialog;