KNewz

Network

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

0
Score 73%
Description:

This is a binary newsgroup client for KDE4. I wrote it because there is no one client out there that does what I want it to. Planned features include automatic PAR2 checking (via kpart, whee), automatic unpacking of downloaded files, System tray support (trivial I know :p ), DBUS support, automatic queue save and restore upon shutdown/startup. Feel free to request more :)

Last changelog:

11 years ago

Beta 4
Fixed issues with uudeview not being found.

Beta 3
Fixed some minor UI bugs.

Beta 2
Development has been on hold for the summer vacation :) KDE Beta 1 has just come out however, so I made the code compatible with it. I hadn't been developing it lately since the KDE API was constantly in flux, and I got sick of adding new features only to have my code not compiling with the next SVN revision because the API had been changed. However, the API has been frozen now so I'll be developing this actively now again.
The good news is that I have been using this exclusively to download my binaries, and I have found and fixed lot of bugs. A few remain though, and will be fixed for the 0.1 release. Queue saving and editing features will be introduced in the 0.2 release, and the connection code will be rewritten.

Beta 1

-Systemtray integration added

-Speed reporting for download threads added to main GUI.

-Removal of downloaded parts added. Main GUI still does not delete downloaded files entirely, to be fixed.

-Logging added. Program now logs failures to log file that is located in /home/user/knewz/log.txt by default.

Known bugs

-Some files do not update their status even when downloaded entirely.

-Timeouts due to network congestion are not handled gracefully, so the file will not download completely nor be decoded if a thread downloading a file undergoes a timeout.

Alpha 3

-Decoder progress bars in main GUI now actually work

-Decoder now decodes files into subdirectories in the main download directory according to the filename of the *.nzb

Alpha 2

-Decoder progress bars added to main GUI

-Decoder now works properly for multipart binaries with incorrect subject title

Alpha 1

Early alpha release, so expect it to eat your gnu, rape miscellaneous pets and sexX0r your computer.

breakolami

10 years ago

Hello

I am on Mandriva 2009 and i'm beginner, I don't know how to install knewz

Can you help me please

Thanks

Report

Naatan

10 years ago

Hi, I'd be very interested in giving knewz a spin, unfortunatly though upon configuring with cmake it fails with the following error:

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
UUDEVIEW_INCLUDE_DIR
used as include directory in directory /home/nathan/Downloads/knewz-0.1_beta4/src

I am using Kubuntu 8.10 Beta

Report

Ozzi

11 years ago

Here's gentoo ebuild that I made for my own use:

Quote:
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI="1"
NEED_KDE="4.0.0"

inherit kde4-base versionator

DESCRIPTION="KDE news reader that supports .nzb files"
HOMEPAGE="http://www.kde-apps.org/content/show.php/KNewz?content=58797"
SRC_URI="mirror://sourceforge/knewz/${PN}-${PV}.tar.bz2"


KEYWORDS="~amd64 ~x86"

SLOT="kde-4"
LICENSE="GPL-2"

RDEPEND="dev-libs/uulib"

src_unpack() {
kde4-base_src_unpack
sed -i -e 's~/usr/lib/uudeview/libuu.a~/usr/lib/libuu.a~g' ${S}/src/CMakeLists.txt || die "Sed failed"
sed -i -e 's~uudeview/uudeview.h~uudeview.h~g' ${S}/src/decoderthread.cc || die "Sed failed"
sed -i -e 's~uudeview/uudeview.h~uudeview.h~g' ${S}/src/decoder.h || die "Sed failed"

}

src_compile() {
kde4-base_src_compile
}



src_install() {
kde4-base_src_install
}

Report

C

ChaosWars

11 years ago

Hopefully the build won't fail anymore due to uudeview not being found. It is an interim fix, since by the 1.0 release it won't be needed anymore as I am writing my own decoder now. But in the meantime it should obviate the need to edit the CMakeLists.txt file.

Report

timseal

11 years ago

Hey, I was wondering if you could post some links to your favourite places to get NZB files. I've looked around but haven't found anything particularly great.

Thanks

tka

Report

C

ChaosWars

11 years ago

There are free sites out there, but I have a subscription on www.newzbin.com. Really nice site that offers SSL connections as well. It only costs about $1 a week, so if you have a credit card it's perfect.
There are some good free sites out there I know, one is http://alt.binaries.nl/

Report

C

ChaosWars

11 years ago

Two more :

http://www.newzleech.com/

http://www.binsearch.info/

Report

google01103

11 years ago

am I missing something? I can't find a way to subscribe to groups or filter.

there's a tray icon but it's not visible

Report

C

ChaosWars

11 years ago

I am busy writing a custom yenc decoder, so the dependency on uudeview will be gone by the 1.0 release.

As for group subscription, if you want that I would suggest klibido. As stated in the description of KNewz, this program is only meant for downloading from nzb files, and will never support browsing newsgroups. Browsing groups like alt.binaries.boneless is impractical - it contains more than one million posts! And since this program is meant to download binaries from newsgroups, I feel that support for browsing binary newsgroups would be impractical as well.

Report

google01103

11 years ago

this is still a problem

suse uses:
/usr/include/uudeview.h not /usr/include/uudeview/uudeview.h
/usr/lib64/libuu.a not /usr/lib/uudeview/libuu.a

Report

timseal

11 years ago

That happens on Ubuntu Feisty as well. There are no uudeview directories, the files just sit in /usr/include and /usr/lib.

I fixed it by making a couple of uudeview directories and symlinking the header an library files into them as appropriate.

Dead simple fix, of course. Probably not something the ordinary user should have to do, though.

tka

Report

C

ChaosWars

11 years ago

GCC 4 should work fine, it's what I'm using as well.

The QT error cmake is throwing is because it's not finding your cmake install. How are you running cmake? You should be issuing the command : cmake . -DCMAKE_INSTALL_PREFIX=/opt/kde4 -DCMAKE_BUILD_TYPE=DEBUG
This is assuming you have kde4 installed in /opt/kde4 of course.

If you run that in the project directory it should build a valid Makefile. If it isn't finding Qt after you running that, then there is something wrong with your install of qt-copy. It's probably not being found in your path, which normally means that Qt3 is being found instead of Qt4. What distribution are you running?

Cmake is the future, I'm convinced of it =) From a developers POV it's heaven compared to autohell. And the end user won't notice much difference except a prettier output in the terminal :D

Report

bmfan

11 years ago

I just get an endless string of errors when it gets to uulib, I downloaded uudeview and compiled it and it built fine on its own. the cmake options and help are horid ! run .configure --help you get usefull info :)
do cmake help you get vauge general info thats not very usefull. :(

/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h: In member function 'void Decoder::decode(const QStringList&, QStandardItem*, const QString&)':
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:197: error: too many arguments to function 'int UUSetBusyCallback()'
/home/bmfan/Desktop/knewz/src/decoder.cc:160: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:193: error: too many arguments to function 'int UUSetMsgCallback()'
/home/bmfan/Desktop/knewz/src/decoder.cc:161: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:191: error: too many arguments to function 'int UUSetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:162: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:191: error: too many arguments to function 'int UUSetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:163: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:208: error: too many arguments to function 'int UULoadFile()'
/home/bmfan/Desktop/knewz/src/decoder.cc:169: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:190: error: too many arguments to function 'int UUGetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:172: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:192: error: too many arguments to function 'char* UUstrerror()'
/home/bmfan/Desktop/knewz/src/decoder.cc:172: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:190: error: too many arguments to function 'int UUGetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:176: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:192: error: too many arguments to function 'char* UUstrerror()'
/home/bmfan/Desktop/knewz/src/decoder.cc:177: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:218: error: too many arguments to function 'int UUSmerge()'
/home/bmfan/Desktop/knewz/src/decoder.cc:183: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:218: error: too many arguments to function 'int UUSmerge()'
/home/bmfan/Desktop/knewz/src/decoder.cc:184: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:218: error: too many arguments to function 'int UUSmerge()'
/home/bmfan/Desktop/knewz/src/decoder.cc:185: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:210: error: too many arguments to function 'uulist* UUGetFileListItem()'
/home/bmfan/Desktop/knewz/src/decoder.cc:189: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:214: error: too many arguments to function 'int UUDecodeFile()'
/home/bmfan/Desktop/knewz/src/decoder.cc:193: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:190: error: too many arguments to function 'int UUGetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:196: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:192: error: too many arguments to function 'char* UUstrerror()'
/home/bmfan/Desktop/knewz/src/decoder.cc:196: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:190: error: too many arguments to function 'int UUGetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:199: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:192: error: too many arguments to function 'char* UUstrerror()'
/home/bmfan/Desktop/knewz/src/decoder.cc:199: error: at this point in file
make[2]: *** [CMakeFiles/../knewz.dir/decoder.o] Error 1
make[1]: *** [CMakeFiles/../knewz.dir/all] Error 2
make: *** [all] Error 2


the build goes fine until it hits uulib..

no distro, btw

Report

bomarrow1

11 years ago

OK, well, the quick fix (well the program compiles and starts not tested it yet) for this problem seems to be that your version of the uudeview.h is not in /usr/include/uudeview/uudeview.h but just straight in usr include. Grep through the source for uudeview/uudeview.h and replace with uudeview.h.
After this I had a problem with cmake linking luu.a. Similar problem just edit src/CMakeList.txt to reflect how your system is layed out.

Report

BillyWildman

11 years ago

bomarrow1,

I'm missing the last crucial piece of info, ie how did you edit CMakeLists.txt to reflect....

Make is failing with No rule to make target /usr/lib/uudeview/libuu.a

but on my system libuu.a is under /usr/lib

So apparently I need to add the proper "add lib" command to CMakeLists.txt

Can you tell me what the command is and it's propoer usage like...(incorrect example follows)....

ADD_LIBRARY_PATH(/usr/lib) as an example.....what exactly did you do/should I do?

Report

bomarrow1

11 years ago

I simply looked through src/CMakeList.txt. Searched for the library then changed the line to the correct path and ran make again.

Report

BillyWildman

11 years ago

thanks. my bad, was looking at the wrong file. It builds ok now.

Report

C

ChaosWars

11 years ago

Sorry it took me so long to get back to you, school has been hectic :)

Vista just wiped my drive, and now upon a reinstall I am running into the same errors you are. I didn't have them before. I'm busy fixing them, but it requires writing some cmake specific code so it's taking me a while since I have exams this week. After that though, I have summer holidays and I think I shall be able to iron out the last bugs that are keeping KNewz from a 0.1 release. KDE4 has become relatively stable - or at least the GUI bugs are ironed out. There are still a few of my own coding bugs that I have to sort out, but I use it every day already and I must say, apart from a few hard to find (and therefor infrequently occuring) bugs it is performing really well. Better than I had expected :p

Report

bmfan

11 years ago

yeah kde4 is coming along nicely, ive got it installed over in /opt. I haven't installed anything but kdebase though. so not sure how the apps are coming along.

Report

bmfan

11 years ago

I just get an endless string of errors when it gets to uulib, I downloaded uudeview and compiled it and it built fine on its own. the cmake options and help are horid ! run .configure --help you get usefull info :)
do cmake help you get vauge general info thats not very usefull. :(

/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h: In member function 'void Decoder::decode(const QStringList&, QStandardItem*, const QString&)':
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:197: error: too many arguments to function 'int UUSetBusyCallback()'
/home/bmfan/Desktop/knewz/src/decoder.cc:160: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:193: error: too many arguments to function 'int UUSetMsgCallback()'
/home/bmfan/Desktop/knewz/src/decoder.cc:161: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:191: error: too many arguments to function 'int UUSetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:162: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:191: error: too many arguments to function 'int UUSetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:163: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:208: error: too many arguments to function 'int UULoadFile()'
/home/bmfan/Desktop/knewz/src/decoder.cc:169: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:190: error: too many arguments to function 'int UUGetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:172: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:192: error: too many arguments to function 'char* UUstrerror()'
/home/bmfan/Desktop/knewz/src/decoder.cc:172: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:190: error: too many arguments to function 'int UUGetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:176: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:192: error: too many arguments to function 'char* UUstrerror()'
/home/bmfan/Desktop/knewz/src/decoder.cc:177: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:218: error: too many arguments to function 'int UUSmerge()'
/home/bmfan/Desktop/knewz/src/decoder.cc:183: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:218: error: too many arguments to function 'int UUSmerge()'
/home/bmfan/Desktop/knewz/src/decoder.cc:184: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:218: error: too many arguments to function 'int UUSmerge()'
/home/bmfan/Desktop/knewz/src/decoder.cc:185: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:210: error: too many arguments to function 'uulist* UUGetFileListItem()'
/home/bmfan/Desktop/knewz/src/decoder.cc:189: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:214: error: too many arguments to function 'int UUDecodeFile()'
/home/bmfan/Desktop/knewz/src/decoder.cc:193: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:190: error: too many arguments to function 'int UUGetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:196: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:192: error: too many arguments to function 'char* UUstrerror()'
/home/bmfan/Desktop/knewz/src/decoder.cc:196: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:190: error: too many arguments to function 'int UUGetOption()'
/home/bmfan/Desktop/knewz/src/decoder.cc:199: error: at this point in file
/home/bmfan/Desktop/knewz/src/../uulib/uudeview.h:192: error: too many arguments to function 'char* UUstrerror()'
/home/bmfan/Desktop/knewz/src/decoder.cc:199: error: at this point in file
make[2]: *** [CMakeFiles/../knewz.dir/decoder.o] Error 1
make[1]: *** [CMakeFiles/../knewz.dir/all] Error 2
make: *** [all] Error 2


the build goes fine until it hits uulib..

no distro, btw

Report

bmfan

11 years ago

Thats exactly what I found to be lacking in klibido, Can't wait to start using it :)
Im afraid to switch to KDE 4 right now though, I have a feeling alot of my apps would not work

Report

C

ChaosWars

11 years ago

Well, all you really need is kdelibs from KDE4. You can install that alongside KDE, and all you have to do when compiling KNewz is pass the location of KDE4 with the cmake option -DCMAKE_INSTALLPREFIX=/path/to/kde4
CMake will generate an executable and a shell script that tells the executable where the KDE4 libraries are. This lets you run it in a KDE3 environment. I already download all my Usenet binaries with KNewz. Nothing like frustration over lack of features to motivate writing code :p
If your distro doesn't provide the KDE4 library (you often need to add a custom, non-official repository manually) then you can find detailed instructions on the kde site as to how to install kde4libs from source : get the tarballs here http://www.kde.org/info/3.90.1.php and find the instructions here : http://techbase.kde.org/Getting_Started/Build/KDE4_Alpha_1

Report

bmfan

11 years ago

I followed the instructions there, they simply would not work for me. no matter what i did it insisted on installing in /usr/local

. but i went ahead and installed qt, kdelibs kdepimlibs and kde base just to try it all out. menus froze on the screen. windows stuck open etc... got a ways to go it looks like.

and wouldnt i need qt and kdelibs, not just kde libs

Report

C

ChaosWars

11 years ago

Bleh, double post :p

I just realised you were referring to KDE4 itself :p Yes, it has quite a way to go, but it is progressing very rapidly. The beta is coming out end of July I think, and it is being released in October, so we won't have to wait for very long for these problems to be fixed.

Report

bmfan

11 years ago

I gave compiling it a shot with just kdelibs installed in /opt/qt

it bailed out on something in uulib
I didnt save the error message, and when trying it again Im getting

Please set the following variables:
QT_QT_INCLUDE_DIR (ADVANCED)

which setting it doesnt seem to make any diferance :(

I can't say Im all that thrilled about the switch to cmake.... it seems overly complicated to do the simplest things with it.

but i'm not used to using cmake, maybe as i get used to it. my opinion of it will change.
i have gcc4 that might be what kills uulib's building

Report

11 years ago

Beta 4
Fixed issues with uudeview not being found.

Beta 3
Fixed some minor UI bugs.

Beta 2
Development has been on hold for the summer vacation :) KDE Beta 1 has just come out however, so I made the code compatible with it. I hadn't been developing it lately since the KDE API was constantly in flux, and I got sick of adding new features only to have my code not compiling with the next SVN revision because the API had been changed. However, the API has been frozen now so I'll be developing this actively now again.
The good news is that I have been using this exclusively to download my binaries, and I have found and fixed lot of bugs. A few remain though, and will be fixed for the 0.1 release. Queue saving and editing features will be introduced in the 0.2 release, and the connection code will be rewritten.

Beta 1

-Systemtray integration added

-Speed reporting for download threads added to main GUI.

-Removal of downloaded parts added. Main GUI still does not delete downloaded files entirely, to be fixed.

-Logging added. Program now logs failures to log file that is located in /home/user/knewz/log.txt by default.

Known bugs

-Some files do not update their status even when downloaded entirely.

-Timeouts due to network congestion are not handled gracefully, so the file will not download completely nor be decoded if a thread downloading a file undergoes a timeout.

Alpha 3

-Decoder progress bars in main GUI now actually work

-Decoder now decodes files into subdirectories in the main download directory according to the filename of the *.nzb

Alpha 2

-Decoder progress bars added to main GUI

-Decoder now works properly for multipart binaries with incorrect subject title

Alpha 1

Early alpha release, so expect it to eat your gnu, rape miscellaneous pets and sexX0r your computer.

product-maker 13 43

File (click to download) Version Description PackagetypeArchitecture Downloads Date Filesize DL OCS-Install
Pling
*Needs ocs-url or ocs-store to install things
Details
license
version
0.1 beta3
updated Nov 21 2007
added May 21 2007
downloads today
0
page views today 4
System Tags app software