You are not logged in.
Alright, I've reworked the UI quite a bit, should be a little performance increase as well.
I think it ended up pretty well, so I hope you guys will prefer it to the previous layout
Last edited by lunke (2007-03-01 03:33:24)
Offline
are you taking about the release version (if there is such a version)?
i use the svn, checkout once a day.. just checked out -58, startup feels a little faster, and everything seems to be working perfectly now.. it's been about 10 minutes, and the ui hasn't seized to update (yet/anymore) ...
a nice feature would be an inbuilt way to reconnect to all seeds; what i mean is, if i get dropped by a seed, well i suppose a leech... then i could just press a button or something to reconnect to em... but it's ok, this thing starts in under a second, and so it it's not a problem to close it and reopen i guess; only to takes a fwe seconds to reconnect all active torrents anyways
The.Revolution.Is.Coming - - To fight, To hunger, To Resist!
Offline
Wow, congratulations to this nice piece of software.
I think alot of GTK users will have use for your program (not me though, no gtk ).
I've looked some around, checked the source - well done.
Kind regards,
Georg
Ability is nothing without opportunity.
Offline
Yup that would be a pain, and personally I wouldn't find it usefull for me so I don't think it's going to be done for this client. But BTG is looking quite promising, and in the world of FLOSS multiple choices is a good thing
What would the benefits be with having a daemon/frontend layout?
Well as mentioned it can be started at boot, it's out of the way and in case X crashes or something the client would still keep going. Another great feature is that you can have multiple frontends, an ncurses or shell type version in case it's running on a headless server and you ssh in, or a GUI frontend like you have now... It would also provide more flexibility since a client could simply be a script that scans a directory every once in a while and loads any new .torrent files. There are heaps of possibilities with such a design. Hopefully BTG will get some proper features
Last edited by Xilon (2007-03-03 15:53:58)
Offline
This is brilliant! I've been waiting for a good torrent client! one thing: do you guys get the icon working? It might just be me getting it wrong... also it would be nice to have total download/upload speed on the title. Keep up the good work!
Offline
This is brilliant! I've been waiting for a good torrent client! one thing: do you guys get the icon working? It might just be me getting it wrong... also it would be nice to have total download/upload speed on the title. Keep up the good work!
By icon do you mean the trayicon? What's not working?
I think he UL/DL rate in the title might clutter a bit, but I can probably add it as an option.
Offline
No I mean a general window icon, I can't get it to show.
Last edited by lemon (2007-03-06 19:33:38)
Offline
No I mean a general window icon, I can't get it to show.
I have the same problem, the icon in the upper left hand corner of the window is just a generic window icon. This is also what shows up in visibility if one doesn't set an override. I can provide a screenshot if one is needed.
Also, a few bugs, I will post bug reports on these as well. For torrents with long comments the comment isn't terminated or wrapped to a new line and so automatically resizes the window when you click on the torrent to see the details. With some torrents this causes the window to be resized well beyond (in some cases over twice the size of my physical screen) the screen edge. I think the automatic window resize can be a good thing but in this case I would much rather see the comment either wrapped to a new line or just terminated when it gets to the length of the currently set window dimensions. This also prevents one from resizing the window back down as long as that torrent is selected.
Another one that I have noticed is that some torrents, and this seems completely random, will report negative share ratios because the download size is a negative number.
EDIT: Added screenshot
Last edited by daedalusman (2007-03-06 21:12:17)
Offline
lemon wrote:No I mean a general window icon, I can't get it to show.
I have the same problem, the icon in the upper left hand corner of the window is just a generic window icon. This is also what shows up in visibility if one doesn't set an override. I can provide a screenshot if one is needed.
Also, a few bugs, I will post bug reports on these as well. For torrents with long comments the comment isn't terminated or wrapped to a new line and so automatically resizes the window when you click on the torrent to see the details. With some torrents this causes the window to be resized well beyond (in some cases over twice the size of my physical screen) the screen edge. I think the automatic window resize can be a good thing but in this case I would much rather see the comment either wrapped to a new line or just terminated when it gets to the length of the currently set window dimensions. This also prevents one from resizing the window back down as long as that torrent is selected.
Another one that I have noticed is that some torrents, and this seems completely random, will report negative share ratios because the download size is a negative number.
I haven't yet added the icon to the main window, too lazy I guess
All the bugs you mentioned should have been fixed a few revision back, what revision are you using? (That screenshot is quite alot older then rev 93, LK no longer uses a TreeStore for torrents)
Last edited by lunke (2007-03-06 22:09:10)
Offline
i see a couple reports that as you suggested may be due to them using an old revision...
maybe there should me some advice somewhere about using versionpkg with the pkgbuild ... and makign sure to make clean before rebuilding...
i dunno if 'make clean' is the fix, but i've had issues like this before where i've rebuilt a program and it's tuned out to have the same version as before... make clean fixed that...
The.Revolution.Is.Coming - - To fight, To hunger, To Resist!
Offline
Hmm odd, I guess I should ask barebones to add make clean to the PKGBUILD then. Glad we resolved the issue
Offline
rtorrent depends on libtorrent (from http://libtorrent.rakshasa.no) so installing your client is not possible without making rtorrent unusable. rtorrent is one of the best console bittorrent clients and where are no clients except linkage and rb`s client_test which uses libtorrent from http://libtorrent.sf.net so it will be good if you will rename rb`s libtorrent library (in it`s PKGBUILD) not to conflict with libtorrent from rakshasa.no.
Offline
rtorrent depends on libtorrent (from http://libtorrent.rakshasa.no) so installing your client is not possible without making rtorrent unusable. rtorrent is one of the best console bittorrent clients and where are no clients except linkage and rb`s client_test which uses libtorrent from http://libtorrent.sf.net so it will be good if you will rename rb`s libtorrent library (in it`s PKGBUILD) not to conflict with libtorrent from rakshasa.no.
Yup rakshasa's libtorrent conflicts with rb_libtorrent. The libtorrent I'm using was created (and named) first, why rakshasa decided to name his library LibTorrent aswell I have no idea, seems pretty retared. Anyway if you think it sucks you should probably ask rakshasa to pick a name that isn't already in use.
Another possible solution is for rakshasa to merge his libtorrent and rtorrent as one application since no one else seems to be using the library. While rasterbar libtorrent is used by a handfull of apps (Deluge, Linkage, qBittorrent, BTG and about 10 more...)
(Notice that rb_libtorrent is acctually named libtorrent and rakshasa's library is named LibTorrent, so if anything rakshasa should atleast use captial letters for his packages/scripts)
Last edited by lunke (2007-03-07 12:42:22)
Offline
I think you are right. ALT Linux Sisyphus team renamed rakshasa's libtorrent to librtorrent and using information from their website (http://www.sisyphus.ru/) I made better PKGBUILD`s for rtorrent client.
pkgname=librtorrent
_pkgname=libtorrent
pkgver=0.11.1
pkgrel=2
pkgdesc="BitTorrent library written in C++"
arch=(i686 x86_64)
url="http://libtorrent.rakshasa.no"
license="GPL"
depends=('libsigc++2.0' 'openssl')
source=(http://libtorrent.rakshasa.no/downloads/$_pkgname-$pkgver.tar.gz)
build() {
cd $startdir/src/$_pkgname-$pkgver
for i in `find -type f | grep -v configure.ac | grep -v m4`; do
sed -i -e 's/libtorrent/librtorrent/g' "$i"
sed -i -e 's/LIBTORRENT/LIBRTORRENT/g' "$i"
sed -i -e 's/-ltorrent/-lrtorrent/g' "$i"
done
mv libtorrent.pc.in librtorrent.pc.in 2>/dev/null
./configure --prefix=/usr --disable-debug
make || return 1
make DESTDIR=$startdir/pkg install
rm $startdir/pkg/usr/lib/librtorrent.la
}
md5sums=('d1a98c0bd93839071b8c214453aa4e5c')
Note that librtorrent conflicts with current libtorrent package, but it is not in the 'conflicts' section because rb_libtorrent may be renamed to libtorrent in future.
pkgname=rtorrent
pkgver=0.7.1
pkgrel=2
pkgdesc="Ncurses BitTorrent client based on libTorrent"
arch=(i686 x86_64)
url="http://libtorrent.rakshasa.no"
license="GPL"
depends=('librtorrent>=0.11.1' 'curl')
makedepends=('librtorrent>=0.11.1')
source=(http://libtorrent.rakshasa.no/downloads/$pkgname-$pkgver.tar.gz \
rtorrent.patch )
build() {
cd $startdir/src/$pkgname-$pkgver
patch -p1 < ../rtorrent.patch
sed -i -e 's/libtorrent/librtorrent/g' configure
./configure --prefix=/usr --disable-debug
make || return 1
make DESTDIR=$startdir/pkg install
}
md5sums=('98b97730c36828e662a2355cb2b11309' '11e88e0c494124aaa5823e5093706950')
How can this be merged to the ArchLinux repository?
EDIT: small changes in librtorrent PKGBUILD
Last edited by George_K (2007-03-08 12:43:05)
Offline
How do you build the svn package? I use the linkage-svn in AUR but I still got the bug where the window hides when I add a torrent, wich should be fixed.
Offline
Nice work, You should probably talk to a TU or a package maintainer about that. Or just upload it to AUR.
I've seen some other distro's that changed both libraries names to libtorrent-rasterbar and libtorrent-rakshasa, but your solution is equally fancy
lemon: It seems versionpkg doesn't cleanup between builds, so make sure to run make clean before you rebuild.
Last edited by lunke (2007-03-07 14:39:22)
Offline
Hmm.. I still have the hiding-problem. If I add one torrent from the command line it works fine, when I add a second torrent from the command line it hides after selecting save-path.
Offline
Hmm.. I still have the hiding-problem. If I add one torrent from the command line it works fine, when I add a second torrent from the command line it hides after selecting save-path.
I'm pretty sure you're still running an older revision then, try grep ToggleVisible `which linkage`. If you get a match it means you're not running the latest revision.
Offline
Okey I just built it without the pkgbuild and it works now. I don't know what could be wrong with the pkgbuild, even when I tried removing the sourcecode and grabbing it "fresh" it still managed to build the wrong revision. I even tried changin pkgver from 44 to 97, still no luck.
edit: okey I managed to fix it, the problem was I put the make clean in the wrong spot...
Last edited by lemon (2007-03-07 18:14:30)
Offline
All the bugs you mentioned should have been fixed a few revision back, what revision are you using? (That screenshot is quite alot older then rev 93, LK no longer uses a TreeStore for torrents)
Yeah, I wasn't performing make clean when checking out new revisions. But today I clean out the folders and started with just the PKGBUILD and during make I got this error...
FileList.o: In function `FileList::format_data(Gtk::CellRenderer*, Gtk::TreeIter const&, Gtk::TreeModelColumn<long long> const&)':
FileList.cc:(.text+0xc0): undefined reference to `suffix_value(long long)'
FileList.o: In function `FileList::on_filter_toggled(Glib::ustring const&)':
FileList.cc:(.text+0x339): undefined reference to `Torrent::filter_file(unsigned int, bool)'
PeerList.o: In function `PeerList::format_data(Gtk::CellRenderer*, Gtk::TreeIter const&, Gtk::TreeModelColumn<long long> const&)':
PeerList.cc:(.text+0x1b0): undefined reference to `suffix_value(long long)'
TorrentList.o: In function `TorrentList::update(WeakPtr<Torrent> const&)':
TorrentList.cc:(.text+0x284d): undefined reference to `get_eta(long long, float)'
TorrentList.cc:(.text+0x2937): undefined reference to `suffix_value(long long)'
TorrentList.cc:(.text+0x32ec): undefined reference to `get_eta(long long, float)'
TorrentList.cc:(.text+0x33ff): undefined reference to `get_eta(long long, float)'
UI.o: In function `UI::on_check()':
UI.cc:(.text+0x1190): undefined reference to `SessionManager::recheck_torrent(libtorrent::big_number const&)'
UI.o: In function `UI::update_statics(WeakPtr<Torrent> const&)':
UI.cc:(.text+0x4fba): undefined reference to `suffix_value(long long)'
UI.cc:(.text+0x504f): undefined reference to `suffix_value(long long)'
UI.o: In function `UI::update(WeakPtr<Torrent> const&, bool)':
UI.cc:(.text+0x574b): undefined reference to `suffix_value(long long)'
UI.cc:(.text+0x57e1): undefined reference to `suffix_value(long long)'
UI.cc:(.text+0x58bd): undefined reference to `suffix_value(long long)'
UI.o: In function `UI::on_remove(bool)':
UI.cc:(.text+0x7fb5): undefined reference to `SessionManager::erase_torrent(libtorrent::big_number const&, bool)'
collect2: ld returned 1 exit status
make[2]: *** [linkage] Error 1
make[2]: Leaving directory `/var/abs/local/linkage-svn/src/linkage-build/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/abs/local/linkage-svn/src/linkage-build'
make: *** [all] Error 2
==> ERROR: Build Failed. Aborting...
==> ERROR: Reverting pkgver...
Any ideas on this one, it is with revision 97. Thanks
Offline
Yea I belive that's because I haven't changed the .so version of the library when I broke the ABI. So you're new build is trying to link against old installed copies of liblinkage that doesn't contain the missing function. The solution is to either remove old linkage package with pacman or just run rm /usr/lib/liblinkage.* as root, then just rebuild and it should work.
Offline
Yea I belive that's because I haven't changed the .so version of the library when I broke the ABI. So you're new build is trying to link against old installed copies of liblinkage that doesn't contain the missing function. The solution is to either remove old linkage package with pacman or just run rm /usr/lib/liblinkage.* as root, then just rebuild and it should work.
Thanks, that did the trick, I now have revision 97 and those two bugs do seem to be fixed I will keep searching for more as I use this very nice client.
Offline
Great! congrats man! nice job. I am learning c so maybe in the near future i can help you with it, is something i always want to do, because we all need a client like this.
Can you please please add the option to auto switch upload speed depending if you are downloading something or only seeding? We all have to limit upload speed when we want to download at max speed, but at the time is great if the client auto switch the speed if we are only seeding to max our bandwich. Is a great future for someone like me who is put of home working all the day
Azureus, utorrent and ABC have this feature.
Cheers and thanks!
Offline
Just so everyone knows, I've updated the PKGBUILD. It now has make clean in it as well as the arch= and license= fields so pacman 3 is happy.
Offline
a slightly improved (? i dunno) ... linkage-svn pkgbuild ...
it (appears to) fix the issue of makepkg not building the new svn co
significant mods are just,
rm -R $_svnmod-build
cp -a $_svnmod $_svnmod-build
#instead of
cp -r $_svnmod $_svnmod-build
should also remove the need to a hit/miss make clean which doesn't always work.
#Contributor: Christian Lundgren <zeflunk@gmail.com>
pkgname=linkage-svn
pkgver=104
pkgrel=1
pkgdesc="A GTK BitTorrent client"
url="http://code.google.com/p/linkage"
#optional depends are geoip
makedepends=('subversion')
depends=(gtkmm rb_libtorrent libnotify curl dbus-glib)
conflicts=('linkage')
provides=('linkage')
arch=('i686')
license=('GPL')
source=()
md5sums=()
_svntrunk=http://linkage.googlecode.com/svn/trunk/
_svnmod=linkage
build() {
cd $startdir/src/
msg "Starting SVN checkout Please Wait..."
svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod
msg "SVN checkout done or server timeout"
msg "Starting make..."
#cp -r $_svnmod $_svnmod-build
rm -R $_svnmod-build
cp -a $_svnmod $_svnmod-build
cd $_svnmod-build
#make clean
./autogen.sh && ./configure --prefix=/usr
make || return 1
make PREFIX=$startdir/pkg/usr DESTDIR=$startdir/pkg install
}
ps...
why do you copy the src, it's not a problem..i'm just curious.
The.Revolution.Is.Coming - - To fight, To hunger, To Resist!
Offline