KleanSweep
System Software
Score 78%
Description:

KleanSweep allows you to reclaim disk space by finding unneeded files. It can search for files basing on several criterias; you can seek for:
* empty files
* empty directories
* backup files
* broken symbolic links
* broken executables
* dead menu entries (.desktop files pointing to non-existing executables)
* obsolete thumbnails (thumbnails of non-existing images)
* duplicated files
* orphaned files (files not found in RPM or DEB database).

Results for each criteria are shown in separate tab; files may appear on many tabs if they match many criterias - in this case they are "linked", so you have to mark (or unmark) file for deletion only once! Before actual deletion takes place, you're given an option to create backup archive.

Planned features:
* seeking for orphaned files in Slackware and Gentoo (portage) database
* and more!

KleanSweep consists of KDE-based (C++) graphical frontend and small helper Perl script that performs actual searching. All searches, except for orphaned files, duplicates and dead menu entries are as fast as usual 'find' would be.

This is initial release and may contain bugs. I take no responsibility for any damage caused by this program.

Note: it may compile/work in KDE < 3.4.x, but was only tested in 3.4.2.
Last changelog:

12 years ago

* Removed "greedy match" button
* added Italian, German, Spanish and Portugaese translations

thomax

12 years ago

I get this error while compiling: thomas@LinuxBox:/media/data1/src/work/kleansweep-0.2.1/kleansweep-0.2.1$ scons scons: Reading SConscript files ... scons: done reading SConscript files. scons: Building targets ... g++ -I/usr/include/kde/ -I/usr/include/qt3 -O2 -DNDEBUG -DNO_DEBUG -DQT_NO_TRANSLATION -DVERSION=\"0.2.1\" -I. -Isrc -c -o src/configdlg.o src/configdlg.cpp In bestand ingevoegd door src/configdlg.cpp:87: src/configdlg.moc:12:2: fout: #error "The header file 'configdlg.h' doesn't include ." src/configdlg.moc:39: fout: ‘const QMetaObject KleanSweepConfigDialog::staticMetaObject’ is not a static member of ‘class KleanSweepConfigDialog’ src/configdlg.moc:39: fout: variable ‘const QMetaObject KleanSweepConfigDialog::staticMetaObject’ has initializer but incomplete type src/configdlg.moc:44: fout: prototype for ‘const QMetaObject* KleanSweepConfigDialog::metaObject() const’ does not match any in class ‘KleanSweepConfigDialog’ src/configdlg.h:27: fout: candidate is: virtual QMetaObject* KleanSweepConfigDialog::metaObject() const src/configdlg.moc:44: fout: ‘const QMetaObject* KleanSweepConfigDialog::metaObject() const’ cannot be overloaded src/configdlg.h:27: fout: with ‘virtual QMetaObject* KleanSweepConfigDialog::metaObject() const’ src/configdlg.moc: In member function ‘const QMetaObject* KleanSweepConfigDialog::metaObject() const’: src/configdlg.moc:46: fout: cannot convert ‘QMetaObject* (*)()’ to ‘const QMetaObject*’ in return src/configdlg.moc: At global scope: src/configdlg.moc:49: fout: no ‘void* KleanSweepConfigDialog::qt_metacast(const char*)’ member function declared in class ‘KleanSweepConfigDialog’ src/configdlg.moc: In member function ‘void* KleanSweepConfigDialog::qt_metacast(const char*)’: src/configdlg.moc:54: fout: ‘qt_metacast’ is not a member of ‘KDialogBase’ src/configdlg.moc: At global scope: src/configdlg.moc:57: fout: ‘int KleanSweepConfigDialog::qt_metacall’ is not a static member of ‘class KleanSweepConfigDialog’ src/configdlg.moc:57: fout: incomplete type ‘QMetaObject’ used in nested name specifier src/configdlg.moc:57: fout: expected primary-expression before ‘int’ src/configdlg.moc:57: fout: expected primary-expression before ‘void’ src/configdlg.moc:57: fout: initializer expression list treated as compound expression src/configdlg.moc:58: fout: expected ‘,’ or ‘;’ before ‘{’ token scons: *** [src/configdlg.o] Error 1 scons: building terminated because of errors. thomas@LinuxBox:/media/data1/src/work/kleansweep-0.2.1/kleansweep-0.2.1$

Report

thomax

12 years ago

Okay, it seemed like a conflict with my qt4, but it's solved now, so don't bother paying attetion to the previous post ;)

Report

antidrugue

12 years ago

I did found a Debian repository containing your software (http://repos.knio.it/).

I heard you app is very nice by the way (didn't try it yet, nevertheless I did recommand it to some friends and had only positive feedbacks).

Just have one question, do you know where can I find a rpm package for Fedora Core 4 ?

I know some people that would be quite interested.

Thanks in advance.

Report

C

yogin

12 years ago

For now I doubt there is a package for FC4, but you may try to search using various rpm search engines. But as I'm using Fedora personally I'll probably take care of creating packages by myself soon. Stay tuned.

Report

fannymites

12 years ago

What the hell is this crap? At the fourth attempt it finally deleted something, almost every file in my etc directory, including xorg.conf, fstab and every other important file you can think of. I'm now left with empty directories with no files in them.
In fact the only files that were left were junk and old backup files that this app is supposed to remove.
I wouldn't say I'm an advanced user but I'm not stupid enough to mark files like xorg.conf for deletion. None of these important files were listed in the results of the scan and anything that I wasn't sure of I left unchecked.
If I hadn't cancelled KleanSweep when I noticed what files it was deleting it would no doubt have wiped my entire system, which it may as well have anyway.
Thank god I backed up the system before running this shit.
This is the ultimate virus.

Report

C

yogin

12 years ago

Please stop spreading FUD. Your comment is worthless and contains no details that could help me in resolving the problem. Please stop using this software if you can't be creative in any way. I've received very positive feedback so far which helps me a lot and NO ONE reported such serious problem. I'm really open to suggestions which everyone who contacted me may confirm, but I'm really sick of hearing complains like this, which bring completly nothing to the author. Unfortunately every OSS project is facing people like you from time to time.

Report

fannymites

12 years ago

I explained that this program wiped my entire /etc directory, including files that weren't even listed for deletion let alone marked for deletion.
I don't know what other info to give but I'll try.
Installed no problems, I already had scons installed.
I ran it as sudo on ubuntu breezy. Checked to scan only for orphaned files, empty files and broken shortcuts. It came back with about 875 MB's of results which I went through and marked anything I knew was junk, anything I wasn't sure about I left unchecked.
As I said, things like xorg.conf and all the other important files weren't listed in the results so I just don't understand why it would touch anything else. Or are you only suppesed to check things you DON'T want deleted?

I must admit I did regret my last post and the fact that this program has a rating of 85% clearly shows that this isn't a virus or anything of the sort. I was just very upset and needed to vent off. Sorry.

Report

C

yogin

12 years ago

Ok thanks, this sounds better and gives me some clues. Just one question - was it kleansweep 0.2.0? What bothers me is that you were using RPM orphaned files searching on Ubuntu; I know rpm can be installed anywhere but as it's not native on Ubuntu you will get virtually ALL files listed as orphans as they aren't registered in rpm database... Anyway, it should not happen the file got removed if it wasn't marked for removal - this could be a bug assuming it's not your oversight; I'll examine it. By the way, were these files (like xorg.conf) archived in the backup archive on removal?

Report

fannymites

12 years ago

OK, now I'm over my tantrum and being more objective.
It was version 0.2.0 I used.
Since I had no problems restoring from my backup, I tried running KleanSweep again.
This time I set it to only scan for broken shortcuts and empty files and there were no problems.
I tried it again just scanning for orphan rpm files and once again it deleted almost every file in the /etc directory before I stopped it and they still weren't listed in the scan results.
So you thought right about that being the problem and all the files like xorg.conf, etc were archived in the backup.
I chose to scan for the orphan rpm's the first time round because I have used alien to convert quite a few rpm's so I though it would maybe get rid of any junk left behind by them. I just didn't think it would be a problem.

I have also now tried KleanSweep on Fedora Core 4 and had no problems there.

Once again I feel I must grovel and apologise for my other post. Like I said, I was just venting off but it must be disheartening to spend time working on a program and give it away for free only to get that sort of comment.
I feel very ashamed.

Report

C

yogin

12 years ago

That's ok, I can understand your anger after your files were lost. Thanks for giving kleansweep a second try despite that. Unfortunately I can't reproduce / find the problem you described. If you are still willing to help, you may help me with debugging the problem by compiling kleansweep-0.2.1 with debug enabled and sending me the debug ouput. Compile it by typing:
# scons configure debug=1
then install & run it this way:
# kleansweep > kleansweep.log 2>&1
and try to recreate the scenario you described BUT DO NOT
proceed with files removal (or if you want to try it anyway, backup your system first). Then send me the kleansweep.log. Hopefully this can give me more clues. Anyone having problems with kleansweep, please use this procedure too.

Report

fannymites

12 years ago

I've tried running KleanSweep 3 times now. On each occasion it tells me there 1.9GB of files that can be deleted so I sected all under each tab and clicked next, it then makes 2 archives but nothing is actually deleted. What am I doing wrong?

Report

polemos

12 years ago

How can i create a Slackware package with checkinstall?
There is no Makefile

Report

vkhaitan

12 years ago

there must be some command of SCons which install the program.

that command may be specified as command line option to checkinstal

Report

C

yogin

12 years ago

You can easily create Slackware package without checkinstall by using DESTDIR variable - see INSTALL file. Then just tar+gzip the destination directory.

Report

polemos

12 years ago

Thanks i did it with "makepkg" but it didn't handle the symlinks then there is no "install.sh" script.

It works now :)

Thanks for the good app

Report

vkhaitan

12 years ago

I have got some useful ideas about how to remove unneeded files.

1 .Check access time of files.

many packages on linux is installed by distribution, which the user even doesn't know and dont need. They can be identified by checking the access time of files. and then finding which packages own those files! Then remove those rpm packages.
I have got many MB free space just utilizing this method on /usr/lib with "find"

2. Show rpm packages without dependecny.

There are many rpm packages which are not required by any of the rpm. and many of them user have not installed intentionaly. Distributions install them in the hope that user would use them.
Then user can immediately identify those packages, which are not required by them. and because those rpms are not needed by any other rpm, then can remove them.

3. There are many many files in a rpm, which are absolutely never accessed at all. Only a few file are used by the system and rpm is installed for that tiny file in rpm.
for example, think, how many times any user uses the file in /usr/share/doc ?
There is a approach which can solve this trouble.
Replace all those files with a stub file. Then whenever those file, if ever, accessed, just give SIGSTOP signal to accessor process and then place that file back to there by extracting from the rpm.
this would require daemon running, which watches for file access (similar to FAM).

Report

C

yogin

12 years ago

What you suggested in 1) sounds fine and I'm going to add it soon. The 2nd proposal is good too, but I don't want to add package management options. It deserves a separate utility similar to deborphan (who knows, maybe I'll create one ;)). The 3rd is really beyond of kleansweep. Thanks for ideas!

Report

vkhaitan

12 years ago

1) thanks for planning to add it.

2) unless you wanted to be vendor neutral, I dont think it requires separate utility.
looking over the feature
"* orphaned files (files not found in RPM database)."
you are not vendor neutral.
IMHO, deborphan like utility should actually be part of big program like this, because they both have exactly same purpose.
And second thing, adding this support shoul not be really so difficult.

3) this is the most difficult part to implement, but this would be really kickass, if you could do this., it may take much time in designing,planning, getting enough information about how to implement and actual implementation.
But, believe me, the space gained by all other methods would be only 20% than the space gained by this method!
So it worths the hassle. The goal of the project should be to remove every file not accesses within certain reasonable time period, without breaking system package management database.

Report

saejoh

12 years ago

Previously I had v.0.1.9. I have removed it. Now I try to install the new one - v.0.2.0. - under KDE 3.4.3 Level ¨b¨ and SuSE 9.3 Pro. But what I get is:
# ./scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
g++ -Wl,--rpath=/usr/lib/qt3/lib -Wl,--rpath=/opt/kde3/lib/kde3 -Wl,--rpath=/opt/kde3/lib -o src/kleansweep src/configdlg.o src/dirlistwidget.o src/kleansweepcfg.o src/filelistview.o src/fileviewitem.o src/logwidget.o src/main.o src/scanprogressdlg.o src/summarylabel.o src/sweeperwizard.o src/sweepfileinfo.o src/sweepscanner.o -L/opt/kde3/lib -L/usr/lib/qt3/lib -lqt-mt -lkdeui -lkio -lkdecore
/usr/lib/gcc-lib/i586-suse-linux/3.3.5/../../../../i586-suse-linux/bin/ld: cannot find -lkdeui (Why? and How to avoid this?)
collect2: ld returned 1 exit status
scons: *** [src/kleansweep] Error 1
scons: building terminated because of errors.
Thanks for Your attention!

Report

C

yogin

12 years ago

Make sure you have kdelibs-devel installed (I'm not sure if this is the exact package name for Suse). In Fedora:
# rpm -qf libkdeui.so
kdelibs-devel-3.4.3-1.0.fc4.kde

Report

saejoh

12 years ago

scons: done building targets.
Thanks again!
BTW The package for SuSE 9.3 KDE 3.4.3 is kdelibs3-devel.rpm

Report

spookster

12 years ago

Have a look at the debian package 'cruft' before tackling debian/dpkg support, as it does a lot of that for you

Report

probono

12 years ago

klik://kleansweep for those who prefer to klik :-)

(See http://klik.atekon.de/ or http://www.kde-apps.org/content/show.php?content=12841 for a description of klik)

Report

wuf

12 years ago

can you made a rpm?
thanks... ;-)
wuf, the owl

Report

C

yogin

12 years ago

You can find rpms for Mandriva and Suse on the project homepage.

Report

12 years ago

* Removed "greedy match" button
* added Italian, German, Spanish and Portugaese translations

product-maker olegvbal Aug 28 2014

product-maker 78 290

File (click to download) Version Description Filetype Packagetype License Downloads Date Filesize OCS-Install DL
Details
version
0.2.9
updated Jun 30 2010
added Sep 02 2005
downloads today
0
page views today 3