Misc. minor fixes, improvements and updates

This commit is contained in:
Yorhel 2013-02-20 11:22:52 +01:00
parent 2e29709225
commit 94ae88d4b9
10 changed files with 89 additions and 34 deletions

View file

@ -22,25 +22,33 @@ There are no tarballs at the moment. You'll have to get it from the git repo:
autoreconf -i
./configure
make
sudo make install
When doing a C<git pull> to update your version later on, make sure to follow
up with a C<git submodule update> to get the right dependencies, too.
The git repo is available for
L<online browsing|http://g.blicky.net/globster.git/> and can also be
L<found on github|https://github.com/yorhel/globster>.
(Note: If you have a git version before 1.6.5, the C<--recursive> argument
isn't going to work. You'll have to type C<git submodule init> and C<git
submodule update> after checking out the repo. But chances are that your GnuTLS
is waaay too old as well and Globster won't currently build, anyway.)
=head2 Requirements
Globster can be compiled with a (moderately recent) GCC or clang. You'll need
the following libraries: L<libdbus|http://dbus.freedesktop.org/> and
L<GnuTLS|http://gnutls.org> 3.0+.
L<GnuTLS|http://gnutls.org>. If your GnuTLS is too old (<= 2.12), you also need
libgcrypt. The globsterctl script requires Perl and the Net::DBus module.
On Debian and Ubuntu, that boils down to the following:
apt-get install git make gcc libc-dev automake autoconf\
pkg-config libdbus-1-dev libgnutls-dev libnet-dbus-perl
And for Arch Linux:
pacman -S base-devel perl-net-dbus
I've only tested things on Linux (glibc and L<musl|http://www.musl-libc.org>),
but I intent to support more kinda-sane POSIX systems in the future as well.
The requirement of GnuTLS 3.0+ will be relaxed later on. On the other hand,
Globster will no doubt require some more libraries as more basic features are
being implemented. And, yes, I<of course> we will get static binaries!
@ -71,10 +79,22 @@ to join the development hub and bug me for help: C<adc://dc.blicky.net:2780/>.
I did already write some
L<API documentation|http://dev.yorhel.nl/globster/api>.
There are at this point no scripts or interfaces for Globster available. I'd
love to have at least a simple console client (a weechat or irssi plugin?) and
perhaps a web-based interface. But other solutions are nice, too. Who's going
to write all that, you ask? Erm... well... You, perhaps? :-)
There are at this point not many scripts or interfaces available for Globster:
=over
=item * L<globsterctl|http://dev.yorhel.nl/globster/ctl> - A control script for the daemon, included in the git repo.
=item * L<globster-feedspam.pl|http://p.blicky.net/wpaaf> - An RSS / Atom notification script.
=item * L<globster-mhc.pl|http://p.blicky.net/8y8mv> - A hub chat link script. More useful as an example than anything else.
=back
There's more to come. I'd love to have at least a convenient console client (a
weechat or irssi plugin? An ncdc fork?) and perhaps a web-based interface. But
other stuff is welcome, too. Who's going to write all that, you ask? Erm...
well... You, perhaps? :-)
=head2 Final notes
@ -83,7 +103,6 @@ and available under a liberal MIT license.
Globster incorporates code from
L<libev|http://software.schmorp.de/pkg/libev.html>,
L<libeio|http://software.schmorp.de/pkg/libeio.html>,
L<freetiger|http://klondike.es/freetiger/>,
L<klib|https://github.com/attractivechaos/klib> and
L<ylib|https://github.com/yorhel/ylib>.

1
dat/globster-ctl Symbolic link
View file

@ -0,0 +1 @@
../../globster/doc/globsterctl.pod

1
dat/globster-daemon Symbolic link
View file

@ -0,0 +1 @@
../../globster/doc/globster.pod

1
dat/globster-launch Symbolic link
View file

@ -0,0 +1 @@
../../globster/doc/globster-launch.pod

View file

@ -80,7 +80,7 @@ Common features all modern DC clients (should) have:
=item * File list browsing,
=item * Multi-source and TTH-checked file downloading,
=item * TTH-checked file downloading,
=item * Searching for files,
@ -125,7 +125,7 @@ clients, but which ncdc doesn't do. Yet.
=over
=item * Segmented downloading,
=item * Segmented/parallel downloading,
=item * IPv6,

View file

@ -71,6 +71,14 @@ The user list has three boolean flags: B<O>perator, B<P>assive, and whether the
=head1 Troubleshooting
=head2 The Alt- keys don't work!
The ncdc manual refers to the "meta" key as Alt-something, but the actual key
to use tends to differ depending on your setup. In almost every setup, you can
press and release the 'Esc' key as a replacement for Alt-something. If you're
on OS X, L<this stackoverflow answer|http://stackoverflow.com/a/438892>
may be helpful.
=head2 This "Generating certificates..." is taking ages!
When starting up ncdc for the first time, it will need to generate a TLS
@ -138,15 +146,6 @@ monthly cron job.
=head1 Can ncdc...
=head2 Can ncdc use the hash data or configuration from an existing DC++ installation?
No, ncdc uses its own configuration and hash storage directory. However, on
popular demand I could write a conversion utility to transfer the hash data
from other clients to ncdc's format. (Contrary to my expectations, there hasn't
been much interest in such a tool ever since I wrote this FAQ entry a year ago.
So I guess this isn't really a FAQ).
=head2 Can ncdc run in the background / as a daemon?
As with most ncurses applications: no. At least, it does not have this
@ -170,3 +169,12 @@ Nothing like that is included in the release yet, but there is a simple Perl
script available: L<ncdc-transfer-stats|http://p.blicky.net/agolr>, and a short
Go program: L<ncdc-share-report|http://p.blicky.net/h25z8>.
=head2 Can ncdc use the hash data or configuration from an existing DC++ installation?
No, ncdc uses its own configuration and hash storage directory. However, on
popular demand I could write a conversion utility to transfer the hash data
from other clients to ncdc's format. (Contrary to my expectations, there hasn't
been much interest in such a tool ever since I wrote this FAQ entry two years
ago. So I guess this isn't really a FAQ).

View file

@ -7,7 +7,7 @@ feature.
=head2 Top-level object
Ncdu used L<JSON|http://json.org/> notation as its data format. The top-level
Ncdu uses L<JSON|http://json.org/> notation as its data format. The top-level
object is an array:
[
@ -80,8 +80,7 @@ the full absolute filesystem path, e.g. C<"/media/harddrive">. For any items
below the top-level directory, the name should be just the name of the item.
The name will be in the same encoding as reported by the filesystem (i.e.
L<readdir()|http://manned.org/readdir.3>). The name may may not exceed 32768
bytes.
L<readdir()|http://manned.org/readdir.3>). The name may not exceed 32768 bytes.
=item asize

View file

@ -49,9 +49,9 @@ Since SQLite 3.3.1, which was released in early 2006, it is possible to move a
single database connection along multiple threads. Doing this with older
versions is not advisable, as explained in L<the SQLite
FAQ|http://www.sqlite.org/faq.html#q6>. But even with 3.3.1 and later there is
an annoying restriction: A connection can only if be passed to another thread
when any outstanding statements are closed and finalized. In practice this
means that it is not possible to keep a prepared statement in memory for later
an annoying restriction: A connection can only be passed to another thread when
any outstanding statements are closed and finalized. In practice this means
that it is not possible to keep a prepared statement in memory for later
executions.
Since SQLite 3.5.0, released in 2007, a single SQLite connection can be used