aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorarved <arved@FreeBSD.org>2003-05-18 05:29:17 +0800
committerarved <arved@FreeBSD.org>2003-05-18 05:29:17 +0800
commitb8234ac0720fdbbe0b4ce868612682494bfd2604 (patch)
treeb43f8eeed10ab8f72f8ae9223ea772a6e314bbf0
parenta1888c33d197fe1c0501dccb74ce9a4709fec604 (diff)
downloadfreebsd-ports-graphics-b8234ac0720fdbbe0b4ce868612682494bfd2604.tar.gz
freebsd-ports-graphics-b8234ac0720fdbbe0b4ce868612682494bfd2604.tar.zst
freebsd-ports-graphics-b8234ac0720fdbbe0b4ce868612682494bfd2604.zip
Add krusader, a midnight commander like Filemanager for KDE
PR: 52348,51343 Submitted by: Heiner Eichmann <h.eichmann@gmx.de>, Kirill Ponomarew <ponomarew@oberon.net>
-rw-r--r--x11-fm/Makefile1
-rw-r--r--x11-fm/krusader/Makefile27
-rw-r--r--x11-fm/krusader/distinfo1
-rw-r--r--x11-fm/krusader/files/patch-krusader::arc_vfs.cpp22
-rw-r--r--x11-fm/krusader/files/patch-krusader::kmountman.cpp268
-rw-r--r--x11-fm/krusader/files/patch-krusader::kmountmangui.cpp19
-rw-r--r--x11-fm/krusader/pkg-descr14
-rw-r--r--x11-fm/krusader/pkg-message11
-rw-r--r--x11-fm/krusader/pkg-plist125
-rw-r--r--x11-fm/krusader2/Makefile27
-rw-r--r--x11-fm/krusader2/distinfo1
-rw-r--r--x11-fm/krusader2/files/patch-krusader::arc_vfs.cpp22
-rw-r--r--x11-fm/krusader2/files/patch-krusader::kmountman.cpp268
-rw-r--r--x11-fm/krusader2/files/patch-krusader::kmountmangui.cpp19
-rw-r--r--x11-fm/krusader2/pkg-descr14
-rw-r--r--x11-fm/krusader2/pkg-message11
-rw-r--r--x11-fm/krusader2/pkg-plist125
17 files changed, 975 insertions, 0 deletions
diff --git a/x11-fm/Makefile b/x11-fm/Makefile
index d9ae8afbacb..ebd5e53dbd3 100644
--- a/x11-fm/Makefile
+++ b/x11-fm/Makefile
@@ -13,6 +13,7 @@
SUBDIR += fsv
SUBDIR += gentoo
SUBDIR += gnome-commander
+ SUBDIR += krusader
SUBDIR += mtoolsfm
SUBDIR += nautilus
SUBDIR += nautilus2
diff --git a/x11-fm/krusader/Makefile b/x11-fm/krusader/Makefile
new file mode 100644
index 00000000000..3247914edbb
--- /dev/null
+++ b/x11-fm/krusader/Makefile
@@ -0,0 +1,27 @@
+# New ports collection makefile for: krusader
+# Date created: 21-04-2003
+# Whom: Heiner <h.eichmann@gmx.de>
+#
+# $FreeBSD$
+#
+
+PORTNAME= krusader
+PORTVERSION= 1.11
+CATEGORIES= x11-fm kde
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR=krusader
+
+MAINTAINER= h.eichmann@gmx.de
+COMMENT= A two window file-manager for KDE, like midnight or norton commander
+
+USE_KDELIBS_VER=3
+GNU_CONFIGURE= yes
+USE_GMAKE= yes
+
+CONFIGURE_TARGET=
+CONFIGURE_ARGS+=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+
+post-install:
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/x11-fm/krusader/distinfo b/x11-fm/krusader/distinfo
new file mode 100644
index 00000000000..13fa856669c
--- /dev/null
+++ b/x11-fm/krusader/distinfo
@@ -0,0 +1 @@
+MD5 (krusader-1.11.tar.gz) = 3450c67d2b7d5409fe82b7436b7b7204
diff --git a/x11-fm/krusader/files/patch-krusader::arc_vfs.cpp b/x11-fm/krusader/files/patch-krusader::arc_vfs.cpp
new file mode 100644
index 00000000000..fba19376a36
--- /dev/null
+++ b/x11-fm/krusader/files/patch-krusader::arc_vfs.cpp
@@ -0,0 +1,22 @@
+*** krusader/VFS/arc_vfs.cpp.orig Mon Apr 15 20:51:37 2002
+--- krusader/VFS/arc_vfs.cpp Thu Oct 24 12:01:13 2002
+***************
+*** 814,821 ****
+ group = temp.mid(temp.find('/')+1,temp.length()).toInt();
+ size = nextWord(line).toLong();
+ temp = nextWord(line);
+! dateTime = temp.mid(8,2)+"/"+temp.mid(5,2)+"/"+temp.mid(2,2)+
+! " "+nextWord(line).left(5);
+ name = nextWord(line,'\n');
+ if( name.contains(" -> ") ){
+ link = true;
+--- 814,822 ----
+ group = temp.mid(temp.find('/')+1,temp.length()).toInt();
+ size = nextWord(line).toLong();
+ temp = nextWord(line);
+! dateTime = nextWord(line) + "/" + month2Qstring(temp) + "/";
+! temp = nextWord(line);
+! dateTime += nextWord(line) + " " + temp;
+ name = nextWord(line,'\n');
+ if( name.contains(" -> ") ){
+ link = true;
diff --git a/x11-fm/krusader/files/patch-krusader::kmountman.cpp b/x11-fm/krusader/files/patch-krusader::kmountman.cpp
new file mode 100644
index 00000000000..fdc2c1a1f5c
--- /dev/null
+++ b/x11-fm/krusader/files/patch-krusader::kmountman.cpp
@@ -0,0 +1,268 @@
+*** krusader/MountMan/kmountman.cpp.orig Sun Jul 28 22:36:55 2002
+--- krusader/MountMan/kmountman.cpp Thu Oct 24 12:01:13 2002
+***************
+*** 176,182 ****
+ --i; fstab.close(); // finished with it
+ for (j=0; j<=i; ++j) {
+ if (temp[0][j]=="" || temp[0][j]=="tmpfs" || temp[0][j]=="none" || temp[0][j]=="proc" ||
+! temp[0][j]=="swap" || temp[1][j]=="proc" || temp[1][j]=="/dev/pts" ||
+ temp[1][j]=="swap" || temp[4][j]=="supermount") continue;
+ ++noOfFilesystems;
+ }
+--- 176,182 ----
+ --i; fstab.close(); // finished with it
+ for (j=0; j<=i; ++j) {
+ if (temp[0][j]=="" || temp[0][j]=="tmpfs" || temp[0][j]=="none" || temp[0][j]=="proc" ||
+! temp[0][j]=="swap" || temp[1][j]=="procfs" || temp[1][j]=="/dev/pts" || // FreeBSD: procfs instead of proc
+ temp[1][j]=="swap" || temp[4][j]=="supermount") continue;
+ ++noOfFilesystems;
+ }
+***************
+*** 203,220 ****
+ }
+ }
+ kdDebug() << "Mt.Man: found the followning:\n" << forDebugOnly << "Trying DF..." << endl;
+ return true;
+ }
+
+ // run DF process and when it finishes, catch output with "parseDfData"
+ ///////////////////////////////////////////////////////////////////////
+ void KMountMan::updateFilesystems() {
+! // create the "df -P -T" process
+ tempFile = new KTempFile();
+ tempFile->setAutoDelete(true);
+ dfProc.clearArguments();
+ dfProc.setExecutable("df");
+! dfProc << "-T" << "-P" << ">" << tempFile->name();
+ connect(&dfProc, SIGNAL(processExited(KProcess *)), this,
+ SLOT(finishUpdateFilesystems()));
+ dfProc.start(KProcess::NotifyOnExit);
+--- 203,267 ----
+ }
+ }
+ kdDebug() << "Mt.Man: found the followning:\n" << forDebugOnly << "Trying DF..." << endl;
++
++
++ // FreeBSD problem: df does not retrive fs type.
++ // Workaround: execute mount -p and merge result.
++
++ KShellProcess proc;
++ proc << "mount -p";
++
++ // connect all outputs to collectOutput, to be displayed later
++ connect(&proc,SIGNAL(receivedStdout(KProcess*, char*, int)),
++ this,SLOT(collectOutput(KProcess*, char*,int)));
++ // launch
++ clearOutput();
++ if (!proc.start(KProcess::Block,KProcess::Stdout)) {
++ KMessageBox::error(0,
++ i18n("Unable to execute 'mount -p' !!!"));
++ return true;
++ }
++
++ QString str = getOutput();
++ QTextStream t2(str, IO_ReadOnly);
++ while (!t2.atEnd()) {
++ s = t2.readLine();
++ s = s.simplifyWhiteSpace(); // remove TABs
++ if (s==QString::null || s=="") continue; // skip empty lines in fstab
++ // temp[0]==name, temp[1]==type, temp[2]==mount point, temp[3]==options
++ // temp[4] is reserved for special cases, right now, only for supermount
++ QString temp0=nextWord(s,' ');
++ QString temp2=nextWord(s,' ');
++ QString temp1=nextWord(s,' ');
++ QString temp3=nextWord(s,' ');
++ if (temp0=="" || temp2=="/proc" || temp2=="/dev/pts" ||
++ temp2=="swap" || temp0=="none" || temp0=="procfs" ||
++ temp0=="swap" || location(temp0)) continue;
++ else {
++ fsData* system=new fsData();
++ system->setName(temp0);
++ system->setType(temp1);
++ system->setMntPoint(temp2);
++ system->supermount=false;
++ system->options=temp3;
++ filesystems.append(system);
++ ++noOfFilesystems;
++ kdWarning() << "Mt.Man: filesystem [" << temp0 << "] found by mount -p is unlisted in /etc/fstab." << endl;
++ }
++ }
++
+ return true;
+ }
+
+ // run DF process and when it finishes, catch output with "parseDfData"
+ ///////////////////////////////////////////////////////////////////////
+ void KMountMan::updateFilesystems() {
+! // create the "df" process // FreeBSD: df instead of df -T -P
+ tempFile = new KTempFile();
+ tempFile->setAutoDelete(true);
+ dfProc.clearArguments();
+ dfProc.setExecutable("df");
+! dfProc << ">" << tempFile->name(); // FreeBSD: df instead of df -T -P
+ connect(&dfProc, SIGNAL(processExited(KProcess *)), this,
+ SLOT(finishUpdateFilesystems()));
+ dfProc.start(KProcess::NotifyOnExit);
+***************
+*** 244,250 ****
+ fsData* KMountMan::location(QString name) {
+ fsData* it;
+ for (it=filesystems.first() ; (it!=0) ; it=filesystems.next())
+! if (followLink(it->name())==followLink(name)) break;
+ return it;
+ }
+
+--- 291,300 ----
+ fsData* KMountMan::location(QString name) {
+ fsData* it;
+ for (it=filesystems.first() ; (it!=0) ; it=filesystems.next())
+! {
+! if (followLink(it->name())==followLink(name)) break;
+! if (name.left(2) == "//" && !strcasecmp(followLink(it->name()).latin1(), followLink(name).latin1())) break; // FreeBSD: ignore case due to smbfs mounts
+! }
+ return it;
+ }
+
+***************
+*** 336,341 ****
+--- 386,392 ----
+ temp=nextWord(s,' ');
+ // avoid adding unwanted filesystems to the list
+ if (temp=="tmpfs") continue;
++ if (temp == "procfs") continue;// FreeBSD: ignore procfs
+ temp=followLink(temp); // make sure DF gives us the true device and not a link
+ fsData* loc=location(temp); // where is the filesystem located in our list?
+ if (loc==0) {
+***************
+*** 347,361 ****
+ else loc->setName("/dev/"+temp);
+ newFS=true;
+ }
+! temp=nextWord(s,' '); // catch the TYPE
+ // is it supermounted ?
+! if (temp=="supermount") loc->supermount=true;
+! loc->setType(temp);
+! if (loc->type()!=temp) {
+! kdWarning() << "Mt.Man: according to DF, filesystem [" << loc->name() <<
+! "] has a different type from what's stated in /etc/fstab." << endl;
+! loc->setType(temp); // DF knows best
+! }
+ temp=nextWord(s,' ');
+ loc->setTotalBlks(temp.toLong());
+ temp=nextWord(s,' ');
+--- 398,412 ----
+ else loc->setName("/dev/"+temp);
+ newFS=true;
+ }
+! // temp=nextWord(s,' '); // catch the TYPE // FreeBSD: different df output
+ // is it supermounted ?
+! //if (temp=="supermount") loc->supermount=true;
+! //loc->setType(temp);
+! //if (loc->type()!=temp) {
+! // kdWarning() << "Mt.Man: according to DF, filesystem [" << loc->name() <<
+! // "] has a different type from what's stated in /etc/fstab." << endl;
+! // loc->setType(temp); // DF knows best
+! //}
+ temp=nextWord(s,' ');
+ loc->setTotalBlks(temp.toLong());
+ temp=nextWord(s,' ');
+***************
+*** 389,395 ****
+ Operational=Ready=false;
+ return; // if something went wrong, bail out!
+ } else Operational=true; // mountman is alive but not yet ready
+! updateFilesystems(); // use the output of "DF -T -P" to update data
+ }
+
+ void KMountMan::collectOutput(KProcess *p, char *buffer,int buflen) {
+--- 440,446 ----
+ Operational=Ready=false;
+ return; // if something went wrong, bail out!
+ } else Operational=true; // mountman is alive but not yet ready
+! updateFilesystems(); // use the output of "DF" to update data // FreeBSD: df instead of df -T -P
+ }
+
+ void KMountMan::collectOutput(KProcess *p, char *buffer,int buflen) {
+***************
+*** 523,535 ****
+ KMessageBox::information(0,i18n("Error ejecting device ! You need to have 'eject' in your path."),i18n("Error"),"CantExecuteEjectWarning");
+ }
+
+ // returns true if the path is an ejectable mount point (at the moment CDROM)
+ bool KMountMan::ejectable(QString path) {
+! fsData* it;
+! for (it=filesystems.first() ; (it!=0) ; it=filesystems.next())
+! if (it->mntPoint()==path &&
+! (it->type()=="iso9660" || followLink(it->name()).left(2)=="cd"))
+! return true;
+ return false;
+ }
+
+--- 574,587 ----
+ KMessageBox::information(0,i18n("Error ejecting device ! You need to have 'eject' in your path."),i18n("Error"),"CantExecuteEjectWarning");
+ }
+
++
+ // returns true if the path is an ejectable mount point (at the moment CDROM)
+ bool KMountMan::ejectable(QString path) {
+! //fsData* it;// FreeBSD: no eject command
+! //for (it=filesystems.first() ; (it!=0) ; it=filesystems.next())
+! // if (it->mntPoint()==path &&
+! // (it->type()=="iso9660" || followLink(it->name()).left(2)=="cd"))
+! // return true;
+ return false;
+ }
+
+***************
+*** 537,544 ****
+ statsCollector::statsCollector(QString path, QObject *caller): QObject() {
+ QString stats;
+ connect(this, SIGNAL(gotStats(QString)), caller, SLOT(gotStats(QString)));
+! if (path.left(5)=="/proc") { // /proc is a special case - no volume information
+! stats=i18n("No space information on a [proc]");
+ emit gotStats(stats);
+ return;
+ }
+--- 589,596 ----
+ statsCollector::statsCollector(QString path, QObject *caller): QObject() {
+ QString stats;
+ connect(this, SIGNAL(gotStats(QString)), caller, SLOT(gotStats(QString)));
+! if (path.left(11)=="/dev/procfs") { // /dev/procfs is a special case - no volume information FreeBSD: procfs instead of proc
+! stats=i18n("No space information on a [procfs]"); // FreeBSD: procfs instead of proc
+ emit gotStats(stats);
+ return;
+ }
+***************
+*** 571,577 ****
+ QString s;
+ s = t.readLine(); // read the 1st line - it's trash for us
+ s = t.readLine(); // this is the important one!
+! data->setName(KMountMan::nextWord(s,' '));
+ data->setType(KMountMan::nextWord(s,' '));
+ data->setTotalBlks( KMountMan::nextWord(s,' ').toLong() );
+ data->setUsedBlks( KMountMan::nextWord(s,' ').toLong() );
+--- 623,629 ----
+ QString s;
+ s = t.readLine(); // read the 1st line - it's trash for us
+ s = t.readLine(); // this is the important one!
+! // data->setName(KMountMan::nextWord(s,' ')); FreeBSD: different df output format
+ data->setType(KMountMan::nextWord(s,' '));
+ data->setTotalBlks( KMountMan::nextWord(s,' ').toLong() );
+ data->setUsedBlks( KMountMan::nextWord(s,' ').toLong() );
+***************
+*** 587,593 ****
+ KShellProcess dfProc;
+ QString tmpFile = krApp->getTempFile();
+
+! dfProc << "df" << "-T" << "-P" << "\""+path+"\"" << ">" << tmpFile;
+ dfProc.start(KProcess::Block);
+ parseDf(tmpFile, data);
+ QDir().remove(tmpFile);
+--- 639,645 ----
+ KShellProcess dfProc;
+ QString tmpFile = krApp->getTempFile();
+
+! dfProc << "df" << "\""+path+"\"" << ">" << tmpFile; // FreeBSD: df instead of df -T -P
+ dfProc.start(KProcess::Block);
+ parseDf(tmpFile, data);
+ QDir().remove(tmpFile);
diff --git a/x11-fm/krusader/files/patch-krusader::kmountmangui.cpp b/x11-fm/krusader/files/patch-krusader::kmountmangui.cpp
new file mode 100644
index 00000000000..ece61d22612
--- /dev/null
+++ b/x11-fm/krusader/files/patch-krusader::kmountmangui.cpp
@@ -0,0 +1,19 @@
+*** krusader/MountMan/kmountmangui.cpp.orig Mon Apr 15 20:49:42 2002
+--- krusader/MountMan/kmountmangui.cpp Thu Oct 24 12:42:12 2002
+***************
+*** 70,76 ****
+ // connections
+ connect(mountList,SIGNAL(doubleClicked(QListViewItem *)),this,
+ SLOT(doubleClicked(QListViewItem*)));
+! connect(mountList,SIGNAL(rightButtonClicked(QListViewItem *, const QPoint &, int)),
+ this, SLOT(clicked(QListViewItem*)));
+ connect(mountList,SIGNAL(clicked(QListViewItem *)), this,
+ SLOT(changeActive(QListViewItem *)));
+--- 70,76 ----
+ // connections
+ connect(mountList,SIGNAL(doubleClicked(QListViewItem *)),this,
+ SLOT(doubleClicked(QListViewItem*)));
+! connect(mountList,SIGNAL(rightButtonPressed(QListViewItem *, const QPoint &, int)),
+ this, SLOT(clicked(QListViewItem*)));
+ connect(mountList,SIGNAL(clicked(QListViewItem *)), this,
+ SLOT(changeActive(QListViewItem *)));
diff --git a/x11-fm/krusader/pkg-descr b/x11-fm/krusader/pkg-descr
new file mode 100644
index 00000000000..b128f3c258a
--- /dev/null
+++ b/x11-fm/krusader/pkg-descr
@@ -0,0 +1,14 @@
+Krusader is a File Manager for KDE, patterned after
+old-school managers like Midnight Commander and Norton
+Commander. It features basically all your file-management
+needs, plus extensive archive handling, supporting many
+archive formats, mounted filesystems support, ftp, and
+much much more.
+
+It is (almost) completely customizable, very user friendly,
+fast, and good looking :-)
+
+WWW: http://krusader.sourceforge.net
+
+Heiner
+h.eichmann@gmx.de
diff --git a/x11-fm/krusader/pkg-message b/x11-fm/krusader/pkg-message
new file mode 100644
index 00000000000..48cf4cd544e
--- /dev/null
+++ b/x11-fm/krusader/pkg-message
@@ -0,0 +1,11 @@
+If you would like to use more archivers that this
+program supports, install the following ports:
+
+archivers/zip
+archivers/unzip
+archivers/bzip2
+archivers/rar
+archivers/unrar
+archivers/unace
+archivers/unarj
+archivers/rpm
diff --git a/x11-fm/krusader/pkg-plist b/x11-fm/krusader/pkg-plist
new file mode 100644
index 00000000000..2be24bcde5b
--- /dev/null
+++ b/x11-fm/krusader/pkg-plist
@@ -0,0 +1,125 @@
+bin/krusader
+share/doc/HTML/en/krusader/commands.sgml
+share/doc/HTML/en/krusader/credits.sgml
+share/doc/HTML/en/krusader/faq.sgml
+share/doc/HTML/en/krusader/index.docbook
+share/doc/HTML/en/krusader/installation.sgml
+share/doc/HTML/en/krusader/introduction.sgml
+share/doc/HTML/en/krusader/konfigurator.sgml
+share/doc/HTML/en/krusader/krusader-tools.sgml
+share/doc/HTML/en/krusader/using-krusader.sgml
+share/doc/HTML/en/krusader/index.cache.bz2
+share/doc/HTML/en/krusader/common
+share/doc/HTML/en/krusader/bookmanadd.png
+share/doc/HTML/en/krusader/bookmanedit.png
+share/doc/HTML/en/krusader/bookmanuse.png
+share/doc/HTML/en/krusader/cmdline.png
+share/doc/HTML/en/krusader/fnkeys.png
+share/doc/HTML/en/krusader/kgadvanced.png
+share/doc/HTML/en/krusader/kgarchives.png
+share/doc/HTML/en/krusader/kggeneral.png
+share/doc/HTML/en/krusader/kglookfeel.png
+share/doc/HTML/en/krusader/kgstartup.png
+share/doc/HTML/en/krusader/krusader1.png
+share/doc/HTML/en/krusader/listpanel.png
+share/doc/HTML/en/krusader/mainwindow.png
+share/doc/HTML/en/krusader/mountman.png
+share/doc/HTML/en/krusader/remoteman.png
+share/doc/HTML/en/krusader/search_advanced.png
+share/doc/HTML/en/krusader/search_general.png
+share/doc/HTML/en/krusader/terminalEmu.png
+share/doc/HTML/en/krusader/toolbar.png
+share/applnk/Applications/krusader.desktop
+share/icons/hicolor/32x32/apps/krusader.png
+share/icons/hicolor/32x32/apps/krusader2.png
+share/icons/locolor/16x16/apps/krusader.png
+share/apps/krusader/krusaderui.rc
+share/apps/krusader/about.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_arc_pack.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_arc_test.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_arc_unpack.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_calc.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_compare.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_comparedirs.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_ftp_connect.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_ftp_disconnect.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_ftp_new.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_addbookmark.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_bookman.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_bookmark.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_fullview.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_hwinfo.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_invert.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_treeview.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_unselect.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_mountman.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_properties.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_select.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_selectall.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_terminal.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_unselectall.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_arc_pack.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_arc_test.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_arc_unpack.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_calc.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_compare.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_comparedirs.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_ftp_connect.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_ftp_disconnect.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_ftp_new.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_addbookmark.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_bookman.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_bookmark.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_fullview.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_hwinfo.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_invert.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_treeview.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_unselect.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_mountman.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_properties.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_select.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_selectall.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_terminal.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_unselectall.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_arc_pack.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_arc_test.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_arc_unpack.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_calc.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_compare.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_comparedirs.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_ftp_connect.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_ftp_disconnect.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_ftp_new.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_addbookmark.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_bookman.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_bookmark.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_fullview.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_hwinfo.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_invert.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_treeview.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_unselect.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_mountman.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_properties.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_select.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_selectall.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_terminal.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_unselectall.png
+share/apps/krusader/konfig_small.jpg
+share/mimelnk/application/x-ace.desktop
+share/locale/cs/LC_MESSAGES/krusader.mo
+share/locale/de/LC_MESSAGES/krusader.mo
+share/locale/dk/LC_MESSAGES/krusader.mo
+share/locale/fr/LC_MESSAGES/krusader.mo
+share/locale/pl/LC_MESSAGES/krusader.mo
+share/locale/sv/LC_MESSAGES/krusader.mo
+share/locale/es/LC_MESSAGES/krusader.mo
+@dirrm share/doc/HTML/en/krusader
+@dirrm share/apps/krusader/icons/hicolor/16x16/actions
+@dirrm share/apps/krusader/icons/hicolor/16x16
+@dirrm share/apps/krusader/icons/hicolor/22x22/actions
+@dirrm share/apps/krusader/icons/hicolor/22x22
+@dirrm share/apps/krusader/icons/hicolor/32x32/actions
+@dirrm share/apps/krusader/icons/hicolor/32x32
+@dirrm share/apps/krusader/icons/hicolor
+@dirrm share/apps/krusader/icons
+@dirrm share/apps/krusader
diff --git a/x11-fm/krusader2/Makefile b/x11-fm/krusader2/Makefile
new file mode 100644
index 00000000000..3247914edbb
--- /dev/null
+++ b/x11-fm/krusader2/Makefile
@@ -0,0 +1,27 @@
+# New ports collection makefile for: krusader
+# Date created: 21-04-2003
+# Whom: Heiner <h.eichmann@gmx.de>
+#
+# $FreeBSD$
+#
+
+PORTNAME= krusader
+PORTVERSION= 1.11
+CATEGORIES= x11-fm kde
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR=krusader
+
+MAINTAINER= h.eichmann@gmx.de
+COMMENT= A two window file-manager for KDE, like midnight or norton commander
+
+USE_KDELIBS_VER=3
+GNU_CONFIGURE= yes
+USE_GMAKE= yes
+
+CONFIGURE_TARGET=
+CONFIGURE_ARGS+=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+
+post-install:
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/x11-fm/krusader2/distinfo b/x11-fm/krusader2/distinfo
new file mode 100644
index 00000000000..13fa856669c
--- /dev/null
+++ b/x11-fm/krusader2/distinfo
@@ -0,0 +1 @@
+MD5 (krusader-1.11.tar.gz) = 3450c67d2b7d5409fe82b7436b7b7204
diff --git a/x11-fm/krusader2/files/patch-krusader::arc_vfs.cpp b/x11-fm/krusader2/files/patch-krusader::arc_vfs.cpp
new file mode 100644
index 00000000000..fba19376a36
--- /dev/null
+++ b/x11-fm/krusader2/files/patch-krusader::arc_vfs.cpp
@@ -0,0 +1,22 @@
+*** krusader/VFS/arc_vfs.cpp.orig Mon Apr 15 20:51:37 2002
+--- krusader/VFS/arc_vfs.cpp Thu Oct 24 12:01:13 2002
+***************
+*** 814,821 ****
+ group = temp.mid(temp.find('/')+1,temp.length()).toInt();
+ size = nextWord(line).toLong();
+ temp = nextWord(line);
+! dateTime = temp.mid(8,2)+"/"+temp.mid(5,2)+"/"+temp.mid(2,2)+
+! " "+nextWord(line).left(5);
+ name = nextWord(line,'\n');
+ if( name.contains(" -> ") ){
+ link = true;
+--- 814,822 ----
+ group = temp.mid(temp.find('/')+1,temp.length()).toInt();
+ size = nextWord(line).toLong();
+ temp = nextWord(line);
+! dateTime = nextWord(line) + "/" + month2Qstring(temp) + "/";
+! temp = nextWord(line);
+! dateTime += nextWord(line) + " " + temp;
+ name = nextWord(line,'\n');
+ if( name.contains(" -> ") ){
+ link = true;
diff --git a/x11-fm/krusader2/files/patch-krusader::kmountman.cpp b/x11-fm/krusader2/files/patch-krusader::kmountman.cpp
new file mode 100644
index 00000000000..fdc2c1a1f5c
--- /dev/null
+++ b/x11-fm/krusader2/files/patch-krusader::kmountman.cpp
@@ -0,0 +1,268 @@
+*** krusader/MountMan/kmountman.cpp.orig Sun Jul 28 22:36:55 2002
+--- krusader/MountMan/kmountman.cpp Thu Oct 24 12:01:13 2002
+***************
+*** 176,182 ****
+ --i; fstab.close(); // finished with it
+ for (j=0; j<=i; ++j) {
+ if (temp[0][j]=="" || temp[0][j]=="tmpfs" || temp[0][j]=="none" || temp[0][j]=="proc" ||
+! temp[0][j]=="swap" || temp[1][j]=="proc" || temp[1][j]=="/dev/pts" ||
+ temp[1][j]=="swap" || temp[4][j]=="supermount") continue;
+ ++noOfFilesystems;
+ }
+--- 176,182 ----
+ --i; fstab.close(); // finished with it
+ for (j=0; j<=i; ++j) {
+ if (temp[0][j]=="" || temp[0][j]=="tmpfs" || temp[0][j]=="none" || temp[0][j]=="proc" ||
+! temp[0][j]=="swap" || temp[1][j]=="procfs" || temp[1][j]=="/dev/pts" || // FreeBSD: procfs instead of proc
+ temp[1][j]=="swap" || temp[4][j]=="supermount") continue;
+ ++noOfFilesystems;
+ }
+***************
+*** 203,220 ****
+ }
+ }
+ kdDebug() << "Mt.Man: found the followning:\n" << forDebugOnly << "Trying DF..." << endl;
+ return true;
+ }
+
+ // run DF process and when it finishes, catch output with "parseDfData"
+ ///////////////////////////////////////////////////////////////////////
+ void KMountMan::updateFilesystems() {
+! // create the "df -P -T" process
+ tempFile = new KTempFile();
+ tempFile->setAutoDelete(true);
+ dfProc.clearArguments();
+ dfProc.setExecutable("df");
+! dfProc << "-T" << "-P" << ">" << tempFile->name();
+ connect(&dfProc, SIGNAL(processExited(KProcess *)), this,
+ SLOT(finishUpdateFilesystems()));
+ dfProc.start(KProcess::NotifyOnExit);
+--- 203,267 ----
+ }
+ }
+ kdDebug() << "Mt.Man: found the followning:\n" << forDebugOnly << "Trying DF..." << endl;
++
++
++ // FreeBSD problem: df does not retrive fs type.
++ // Workaround: execute mount -p and merge result.
++
++ KShellProcess proc;
++ proc << "mount -p";
++
++ // connect all outputs to collectOutput, to be displayed later
++ connect(&proc,SIGNAL(receivedStdout(KProcess*, char*, int)),
++ this,SLOT(collectOutput(KProcess*, char*,int)));
++ // launch
++ clearOutput();
++ if (!proc.start(KProcess::Block,KProcess::Stdout)) {
++ KMessageBox::error(0,
++ i18n("Unable to execute 'mount -p' !!!"));
++ return true;
++ }
++
++ QString str = getOutput();
++ QTextStream t2(str, IO_ReadOnly);
++ while (!t2.atEnd()) {
++ s = t2.readLine();
++ s = s.simplifyWhiteSpace(); // remove TABs
++ if (s==QString::null || s=="") continue; // skip empty lines in fstab
++ // temp[0]==name, temp[1]==type, temp[2]==mount point, temp[3]==options
++ // temp[4] is reserved for special cases, right now, only for supermount
++ QString temp0=nextWord(s,' ');
++ QString temp2=nextWord(s,' ');
++ QString temp1=nextWord(s,' ');
++ QString temp3=nextWord(s,' ');
++ if (temp0=="" || temp2=="/proc" || temp2=="/dev/pts" ||
++ temp2=="swap" || temp0=="none" || temp0=="procfs" ||
++ temp0=="swap" || location(temp0)) continue;
++ else {
++ fsData* system=new fsData();
++ system->setName(temp0);
++ system->setType(temp1);
++ system->setMntPoint(temp2);
++ system->supermount=false;
++ system->options=temp3;
++ filesystems.append(system);
++ ++noOfFilesystems;
++ kdWarning() << "Mt.Man: filesystem [" << temp0 << "] found by mount -p is unlisted in /etc/fstab." << endl;
++ }
++ }
++
+ return true;
+ }
+
+ // run DF process and when it finishes, catch output with "parseDfData"
+ ///////////////////////////////////////////////////////////////////////
+ void KMountMan::updateFilesystems() {
+! // create the "df" process // FreeBSD: df instead of df -T -P
+ tempFile = new KTempFile();
+ tempFile->setAutoDelete(true);
+ dfProc.clearArguments();
+ dfProc.setExecutable("df");
+! dfProc << ">" << tempFile->name(); // FreeBSD: df instead of df -T -P
+ connect(&dfProc, SIGNAL(processExited(KProcess *)), this,
+ SLOT(finishUpdateFilesystems()));
+ dfProc.start(KProcess::NotifyOnExit);
+***************
+*** 244,250 ****
+ fsData* KMountMan::location(QString name) {
+ fsData* it;
+ for (it=filesystems.first() ; (it!=0) ; it=filesystems.next())
+! if (followLink(it->name())==followLink(name)) break;
+ return it;
+ }
+
+--- 291,300 ----
+ fsData* KMountMan::location(QString name) {
+ fsData* it;
+ for (it=filesystems.first() ; (it!=0) ; it=filesystems.next())
+! {
+! if (followLink(it->name())==followLink(name)) break;
+! if (name.left(2) == "//" && !strcasecmp(followLink(it->name()).latin1(), followLink(name).latin1())) break; // FreeBSD: ignore case due to smbfs mounts
+! }
+ return it;
+ }
+
+***************
+*** 336,341 ****
+--- 386,392 ----
+ temp=nextWord(s,' ');
+ // avoid adding unwanted filesystems to the list
+ if (temp=="tmpfs") continue;
++ if (temp == "procfs") continue;// FreeBSD: ignore procfs
+ temp=followLink(temp); // make sure DF gives us the true device and not a link
+ fsData* loc=location(temp); // where is the filesystem located in our list?
+ if (loc==0) {
+***************
+*** 347,361 ****
+ else loc->setName("/dev/"+temp);
+ newFS=true;
+ }
+! temp=nextWord(s,' '); // catch the TYPE
+ // is it supermounted ?
+! if (temp=="supermount") loc->supermount=true;
+! loc->setType(temp);
+! if (loc->type()!=temp) {
+! kdWarning() << "Mt.Man: according to DF, filesystem [" << loc->name() <<
+! "] has a different type from what's stated in /etc/fstab." << endl;
+! loc->setType(temp); // DF knows best
+! }
+ temp=nextWord(s,' ');
+ loc->setTotalBlks(temp.toLong());
+ temp=nextWord(s,' ');
+--- 398,412 ----
+ else loc->setName("/dev/"+temp);
+ newFS=true;
+ }
+! // temp=nextWord(s,' '); // catch the TYPE // FreeBSD: different df output
+ // is it supermounted ?
+! //if (temp=="supermount") loc->supermount=true;
+! //loc->setType(temp);
+! //if (loc->type()!=temp) {
+! // kdWarning() << "Mt.Man: according to DF, filesystem [" << loc->name() <<
+! // "] has a different type from what's stated in /etc/fstab." << endl;
+! // loc->setType(temp); // DF knows best
+! //}
+ temp=nextWord(s,' ');
+ loc->setTotalBlks(temp.toLong());
+ temp=nextWord(s,' ');
+***************
+*** 389,395 ****
+ Operational=Ready=false;
+ return; // if something went wrong, bail out!
+ } else Operational=true; // mountman is alive but not yet ready
+! updateFilesystems(); // use the output of "DF -T -P" to update data
+ }
+
+ void KMountMan::collectOutput(KProcess *p, char *buffer,int buflen) {
+--- 440,446 ----
+ Operational=Ready=false;
+ return; // if something went wrong, bail out!
+ } else Operational=true; // mountman is alive but not yet ready
+! updateFilesystems(); // use the output of "DF" to update data // FreeBSD: df instead of df -T -P
+ }
+
+ void KMountMan::collectOutput(KProcess *p, char *buffer,int buflen) {
+***************
+*** 523,535 ****
+ KMessageBox::information(0,i18n("Error ejecting device ! You need to have 'eject' in your path."),i18n("Error"),"CantExecuteEjectWarning");
+ }
+
+ // returns true if the path is an ejectable mount point (at the moment CDROM)
+ bool KMountMan::ejectable(QString path) {
+! fsData* it;
+! for (it=filesystems.first() ; (it!=0) ; it=filesystems.next())
+! if (it->mntPoint()==path &&
+! (it->type()=="iso9660" || followLink(it->name()).left(2)=="cd"))
+! return true;
+ return false;
+ }
+
+--- 574,587 ----
+ KMessageBox::information(0,i18n("Error ejecting device ! You need to have 'eject' in your path."),i18n("Error"),"CantExecuteEjectWarning");
+ }
+
++
+ // returns true if the path is an ejectable mount point (at the moment CDROM)
+ bool KMountMan::ejectable(QString path) {
+! //fsData* it;// FreeBSD: no eject command
+! //for (it=filesystems.first() ; (it!=0) ; it=filesystems.next())
+! // if (it->mntPoint()==path &&
+! // (it->type()=="iso9660" || followLink(it->name()).left(2)=="cd"))
+! // return true;
+ return false;
+ }
+
+***************
+*** 537,544 ****
+ statsCollector::statsCollector(QString path, QObject *caller): QObject() {
+ QString stats;
+ connect(this, SIGNAL(gotStats(QString)), caller, SLOT(gotStats(QString)));
+! if (path.left(5)=="/proc") { // /proc is a special case - no volume information
+! stats=i18n("No space information on a [proc]");
+ emit gotStats(stats);
+ return;
+ }
+--- 589,596 ----
+ statsCollector::statsCollector(QString path, QObject *caller): QObject() {
+ QString stats;
+ connect(this, SIGNAL(gotStats(QString)), caller, SLOT(gotStats(QString)));
+! if (path.left(11)=="/dev/procfs") { // /dev/procfs is a special case - no volume information FreeBSD: procfs instead of proc
+! stats=i18n("No space information on a [procfs]"); // FreeBSD: procfs instead of proc
+ emit gotStats(stats);
+ return;
+ }
+***************
+*** 571,577 ****
+ QString s;
+ s = t.readLine(); // read the 1st line - it's trash for us
+ s = t.readLine(); // this is the important one!
+! data->setName(KMountMan::nextWord(s,' '));
+ data->setType(KMountMan::nextWord(s,' '));
+ data->setTotalBlks( KMountMan::nextWord(s,' ').toLong() );
+ data->setUsedBlks( KMountMan::nextWord(s,' ').toLong() );
+--- 623,629 ----
+ QString s;
+ s = t.readLine(); // read the 1st line - it's trash for us
+ s = t.readLine(); // this is the important one!
+! // data->setName(KMountMan::nextWord(s,' ')); FreeBSD: different df output format
+ data->setType(KMountMan::nextWord(s,' '));
+ data->setTotalBlks( KMountMan::nextWord(s,' ').toLong() );
+ data->setUsedBlks( KMountMan::nextWord(s,' ').toLong() );
+***************
+*** 587,593 ****
+ KShellProcess dfProc;
+ QString tmpFile = krApp->getTempFile();
+
+! dfProc << "df" << "-T" << "-P" << "\""+path+"\"" << ">" << tmpFile;
+ dfProc.start(KProcess::Block);
+ parseDf(tmpFile, data);
+ QDir().remove(tmpFile);
+--- 639,645 ----
+ KShellProcess dfProc;
+ QString tmpFile = krApp->getTempFile();
+
+! dfProc << "df" << "\""+path+"\"" << ">" << tmpFile; // FreeBSD: df instead of df -T -P
+ dfProc.start(KProcess::Block);
+ parseDf(tmpFile, data);
+ QDir().remove(tmpFile);
diff --git a/x11-fm/krusader2/files/patch-krusader::kmountmangui.cpp b/x11-fm/krusader2/files/patch-krusader::kmountmangui.cpp
new file mode 100644
index 00000000000..ece61d22612
--- /dev/null
+++ b/x11-fm/krusader2/files/patch-krusader::kmountmangui.cpp
@@ -0,0 +1,19 @@
+*** krusader/MountMan/kmountmangui.cpp.orig Mon Apr 15 20:49:42 2002
+--- krusader/MountMan/kmountmangui.cpp Thu Oct 24 12:42:12 2002
+***************
+*** 70,76 ****
+ // connections
+ connect(mountList,SIGNAL(doubleClicked(QListViewItem *)),this,
+ SLOT(doubleClicked(QListViewItem*)));
+! connect(mountList,SIGNAL(rightButtonClicked(QListViewItem *, const QPoint &, int)),
+ this, SLOT(clicked(QListViewItem*)));
+ connect(mountList,SIGNAL(clicked(QListViewItem *)), this,
+ SLOT(changeActive(QListViewItem *)));
+--- 70,76 ----
+ // connections
+ connect(mountList,SIGNAL(doubleClicked(QListViewItem *)),this,
+ SLOT(doubleClicked(QListViewItem*)));
+! connect(mountList,SIGNAL(rightButtonPressed(QListViewItem *, const QPoint &, int)),
+ this, SLOT(clicked(QListViewItem*)));
+ connect(mountList,SIGNAL(clicked(QListViewItem *)), this,
+ SLOT(changeActive(QListViewItem *)));
diff --git a/x11-fm/krusader2/pkg-descr b/x11-fm/krusader2/pkg-descr
new file mode 100644
index 00000000000..b128f3c258a
--- /dev/null
+++ b/x11-fm/krusader2/pkg-descr
@@ -0,0 +1,14 @@
+Krusader is a File Manager for KDE, patterned after
+old-school managers like Midnight Commander and Norton
+Commander. It features basically all your file-management
+needs, plus extensive archive handling, supporting many
+archive formats, mounted filesystems support, ftp, and
+much much more.
+
+It is (almost) completely customizable, very user friendly,
+fast, and good looking :-)
+
+WWW: http://krusader.sourceforge.net
+
+Heiner
+h.eichmann@gmx.de
diff --git a/x11-fm/krusader2/pkg-message b/x11-fm/krusader2/pkg-message
new file mode 100644
index 00000000000..48cf4cd544e
--- /dev/null
+++ b/x11-fm/krusader2/pkg-message
@@ -0,0 +1,11 @@
+If you would like to use more archivers that this
+program supports, install the following ports:
+
+archivers/zip
+archivers/unzip
+archivers/bzip2
+archivers/rar
+archivers/unrar
+archivers/unace
+archivers/unarj
+archivers/rpm
diff --git a/x11-fm/krusader2/pkg-plist b/x11-fm/krusader2/pkg-plist
new file mode 100644
index 00000000000..2be24bcde5b
--- /dev/null
+++ b/x11-fm/krusader2/pkg-plist
@@ -0,0 +1,125 @@
+bin/krusader
+share/doc/HTML/en/krusader/commands.sgml
+share/doc/HTML/en/krusader/credits.sgml
+share/doc/HTML/en/krusader/faq.sgml
+share/doc/HTML/en/krusader/index.docbook
+share/doc/HTML/en/krusader/installation.sgml
+share/doc/HTML/en/krusader/introduction.sgml
+share/doc/HTML/en/krusader/konfigurator.sgml
+share/doc/HTML/en/krusader/krusader-tools.sgml
+share/doc/HTML/en/krusader/using-krusader.sgml
+share/doc/HTML/en/krusader/index.cache.bz2
+share/doc/HTML/en/krusader/common
+share/doc/HTML/en/krusader/bookmanadd.png
+share/doc/HTML/en/krusader/bookmanedit.png
+share/doc/HTML/en/krusader/bookmanuse.png
+share/doc/HTML/en/krusader/cmdline.png
+share/doc/HTML/en/krusader/fnkeys.png
+share/doc/HTML/en/krusader/kgadvanced.png
+share/doc/HTML/en/krusader/kgarchives.png
+share/doc/HTML/en/krusader/kggeneral.png
+share/doc/HTML/en/krusader/kglookfeel.png
+share/doc/HTML/en/krusader/kgstartup.png
+share/doc/HTML/en/krusader/krusader1.png
+share/doc/HTML/en/krusader/listpanel.png
+share/doc/HTML/en/krusader/mainwindow.png
+share/doc/HTML/en/krusader/mountman.png
+share/doc/HTML/en/krusader/remoteman.png
+share/doc/HTML/en/krusader/search_advanced.png
+share/doc/HTML/en/krusader/search_general.png
+share/doc/HTML/en/krusader/terminalEmu.png
+share/doc/HTML/en/krusader/toolbar.png
+share/applnk/Applications/krusader.desktop
+share/icons/hicolor/32x32/apps/krusader.png
+share/icons/hicolor/32x32/apps/krusader2.png
+share/icons/locolor/16x16/apps/krusader.png
+share/apps/krusader/krusaderui.rc
+share/apps/krusader/about.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_arc_pack.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_arc_test.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_arc_unpack.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_calc.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_compare.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_comparedirs.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_ftp_connect.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_ftp_disconnect.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_ftp_new.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_addbookmark.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_bookman.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_bookmark.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_fullview.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_hwinfo.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_invert.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_treeview.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_unselect.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_mountman.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_properties.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_select.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_selectall.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_terminal.png
+share/apps/krusader/icons/hicolor/16x16/actions/kr_unselectall.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_arc_pack.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_arc_test.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_arc_unpack.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_calc.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_compare.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_comparedirs.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_ftp_connect.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_ftp_disconnect.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_ftp_new.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_addbookmark.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_bookman.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_bookmark.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_fullview.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_hwinfo.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_invert.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_treeview.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_unselect.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_mountman.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_properties.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_select.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_selectall.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_terminal.png
+share/apps/krusader/icons/hicolor/22x22/actions/kr_unselectall.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_arc_pack.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_arc_test.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_arc_unpack.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_calc.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_compare.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_comparedirs.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_ftp_connect.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_ftp_disconnect.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_ftp_new.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_addbookmark.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_bookman.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_bookmark.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_fullview.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_hwinfo.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_invert.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_treeview.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_unselect.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_mountman.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_properties.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_select.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_selectall.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_terminal.png
+share/apps/krusader/icons/hicolor/32x32/actions/kr_unselectall.png
+share/apps/krusader/konfig_small.jpg
+share/mimelnk/application/x-ace.desktop
+share/locale/cs/LC_MESSAGES/krusader.mo
+share/locale/de/LC_MESSAGES/krusader.mo
+share/locale/dk/LC_MESSAGES/krusader.mo
+share/locale/fr/LC_MESSAGES/krusader.mo
+share/locale/pl/LC_MESSAGES/krusader.mo
+share/locale/sv/LC_MESSAGES/krusader.mo
+share/locale/es/LC_MESSAGES/krusader.mo
+@dirrm share/doc/HTML/en/krusader
+@dirrm share/apps/krusader/icons/hicolor/16x16/actions
+@dirrm share/apps/krusader/icons/hicolor/16x16
+@dirrm share/apps/krusader/icons/hicolor/22x22/actions
+@dirrm share/apps/krusader/icons/hicolor/22x22
+@dirrm share/apps/krusader/icons/hicolor/32x32/actions
+@dirrm share/apps/krusader/icons/hicolor/32x32
+@dirrm share/apps/krusader/icons/hicolor
+@dirrm share/apps/krusader/icons
+@dirrm share/apps/krusader