ncdc 1.13 released + misc changes
This commit is contained in:
parent
1ac0600f93
commit
874e1825ec
10 changed files with 103 additions and 53 deletions
12
dat/ncdc
12
dat/ncdc
|
|
@ -10,12 +10,16 @@ ncurses interface.
|
|||
|
||||
=item Latest version
|
||||
|
||||
1.12 ([dllink ncdc-1.12.tar.gz download]
|
||||
1.13 ([dllink ncdc-1.13.tar.gz download]
|
||||
- L<changes|http://dev.yorhel.nl/ncdc/changes>
|
||||
- L<mirror|https://sourceforge.net/projects/ncdc/files/ncdc/>)
|
||||
|
||||
Statically linked binaries for Linux are also available with the
|
||||
L<installation instructions|http://dev.yorhel.nl/ncdc/install>.
|
||||
Convenient static binaries for Linux:
|
||||
L<64-bit|http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.13.tar.gz> -
|
||||
L<32-bit|http://dev.yorhel.nl/download/ncdc-linux-i486-1.13.tar.gz> -
|
||||
L<ARM|http://dev.yorhel.nl/download/ncdc-linux-arm-1.13.tar.gz>.
|
||||
Check the L<installation instructions|http://dev.yorhel.nl/ncdc/install> for
|
||||
more info.
|
||||
|
||||
=item Development version
|
||||
|
||||
|
|
@ -28,7 +32,7 @@ You are also invited to join the development hub at C<adc://dc.blicky.net:2780/>
|
|||
|
||||
=item Requirements
|
||||
|
||||
The following libraries are required: ncurses, bzip2, sqlite3, glib2 and
|
||||
The following libraries are required: ncurses, zlib, bzip2, sqlite3, glib2 and
|
||||
gnutls.
|
||||
|
||||
Ncdc is entirely written in C and available under a liberal MIT license.
|
||||
|
|
|
|||
|
|
@ -1,3 +1,19 @@
|
|||
1.13 - 2012-08-16
|
||||
- zlib library added as a required dependency
|
||||
- Purge empty directories from share by default
|
||||
- Added "share_emptydirs" setting
|
||||
- Disable tls_policy by default when using an old GnuTLS version
|
||||
- Improved support for group chat
|
||||
- Honor G_FILENAME_ENCODING for path autocomplete, /share and queued files
|
||||
- Use a default connection string on NMDC if no 'connection' has been set
|
||||
- Support ZLIG for partial file list transfers on ADC
|
||||
- Send more subdirectories in partial file list transfers
|
||||
- Removed use of system-provided realpath()
|
||||
- Don't allow /search with an empty string
|
||||
- Fix segfault on /search command without query
|
||||
- Fix display of 'sudp_policy' setting if SUDP is not supported
|
||||
- Fix --enable-git-version when cross-compiling
|
||||
|
||||
1.12 - 2012-07-10
|
||||
- Don't follow symlinks in share by default
|
||||
- Added 'share_symlink' option
|
||||
|
|
|
|||
67
dat/ncdc-faq
67
dat/ncdc-faq
|
|
@ -22,10 +22,23 @@ positive things about it. Has not seen any recent development, either.
|
|||
|
||||
=head2 Why did you start from scratch? Why not use the DC++ core?
|
||||
|
||||
There are many reasons why I chose not to use code from existing projects, but
|
||||
all of them boil down to the following two: 1) I am a control freak, and 2)
|
||||
personal preferences. That is the short answer. The long answer will require a
|
||||
full article, and I don't feel like writing that much at this point. >_>
|
||||
There are several reasons why I chose not to use code from existing projects,
|
||||
but the two most important reasons are the following: 1) I am a control freak,
|
||||
and 2) personal preferences.
|
||||
|
||||
B<Control freak:> I have no idea how to create an interface to a protocol if I
|
||||
don't know the overall design and all the tiny details of the actual protocol
|
||||
I'm working with. And what's a better way to get used to a protocol than by
|
||||
writing everything yourself? Then there's some other advantages to
|
||||
reimplementing everything: I get to choose the library dependencies and the
|
||||
memory/CPU efficiency trade-offs, and I am not limited by an existing
|
||||
implementation that needs quite a few modifications to achieve what I want.
|
||||
Most of the "special features not commonly found in other clients" mentioned on
|
||||
the L<homepage|http://dev.yorhel.nl/ncdc> are a direct result of this.
|
||||
|
||||
B<Personal preferences:> These are simple: I rather dislike C++ and working
|
||||
with other people's code. Working with other people's C++ code isn't exactly
|
||||
something I wish to spend my free time on.
|
||||
|
||||
|
||||
=head2 What protocol features does ncdc support?
|
||||
|
|
@ -48,52 +61,40 @@ up-to-date client that still uses any of these features.
|
|||
=head2 This "Generating certificates..." is taking ages!
|
||||
|
||||
When starting up ncdc for the first time, it will need to generate a TLS
|
||||
certificate. If you're on Linux, some versions of GnuTLS may use C</dev/random>
|
||||
to obtain random bytes. Unfortunately, this can be horribly slow, and in
|
||||
extreme cases it may take up to an hour before the certificate has been
|
||||
generated. GnuTLS does not provide a way to use a faster but less secure
|
||||
certificate. If you're on Linux, older versions of GnuTLS may use
|
||||
C</dev/random> to obtain random bytes. Unfortunately, this can be horribly
|
||||
slow, and in extreme cases it may take several hours before the certificate has
|
||||
been generated. GnuTLS does not provide a way to use a faster but less secure
|
||||
alternative, so here are some tips to speed it up or cheat a little.
|
||||
|
||||
B<Speed it up:> If you're on a desktop, the general advise is to do something
|
||||
else on the background so that Linux can generate more data. For example, move
|
||||
your mouse around a bit, go do some web surfing or play a game. Any activity
|
||||
might help. If you're on a server, you could start transferring some large
|
||||
data over the network.
|
||||
might help. If you're on a server, you could try transferring some large data
|
||||
over the network.
|
||||
|
||||
B<Cheat:> There is also another way to "generate" randomness without waiting
|
||||
for too long: You can feed some bytes from C</dev/urandom> back to the system
|
||||
by running the following command as root: C<dd if=/dev/urandom of=/dev/random
|
||||
bs=512 count=1>. You might have to run that command multiple times to complete
|
||||
the certificate generation, but certainly no more than about 5 times or so.
|
||||
Note that this solution weakens the security of the certificate by a bit. For
|
||||
ncdc that doesn't matter at all, but if you have other applications reading
|
||||
from C</dev/random>, then the security of those applications is also affected.
|
||||
Unless you happen to be running something that absolutely requires ulta-secure
|
||||
random numbers, this trick should be perfectly fine.
|
||||
B<Cheat:> If you have root access, you can probably trick GnuTLS by temporarily
|
||||
replacing C</dev/random> with something else. For example, run C<mv /dev/random
|
||||
/dev/random.old && ln /dev/urandom /dev/random> as root, then start ncdc as you
|
||||
normally would, let it generate the certificates, and then restore your
|
||||
modifications with C<mv /dev/random.old /dev/random>.
|
||||
|
||||
|
||||
=head2 Ncdc crashes a lot!
|
||||
|
||||
Since version 1.10, the following crashes are possible:
|
||||
Since version 1.13, the following crash is still possible:
|
||||
|
||||
=over
|
||||
|
||||
=item * You're using an old GnuTLS version (< 2.10 or so, you can check this
|
||||
with C<ncdu --version>), and you have tls_policy enabled. To fix this, upgrade
|
||||
GnuTLS or C</set tls_policy disabled>. (Bug L<#11|http://dev.yorhel.nl/ncdc/bug/11>).
|
||||
|
||||
=item * You're running ncdc on an old system. FreeBSD <= 8.0 and Mac OS X <=
|
||||
10.5 are known to be problematic. To get around this, upgrade your system or
|
||||
bug me hard enough to come with a fix within ncdc. (Bug
|
||||
L<#14|http://dev.yorhel.nl/ncdc/bug/14>).
|
||||
|
||||
=item * You were typing a C</search> command but forgot to provide a query.
|
||||
This crash will be fixed soonish.
|
||||
=item * You're using an old GnuTLS version (< 3.0, you can check this with
|
||||
C<ncdu --version>), and you have tls_policy enabled. To fix this, upgrade
|
||||
GnuTLS or use C</set tls_policy disabled>. (Bug
|
||||
L<#11|http://dev.yorhel.nl/ncdc/bug/11>).
|
||||
|
||||
=back
|
||||
|
||||
If you're running an older version of ncdc, please upgrade! If your ncdc is up
|
||||
to date and still have a crash not described here, please report a bug.
|
||||
to date and you still have a crash not described here, please report a bug.
|
||||
|
||||
|
||||
=head2 Ncdc uses too much disk space!
|
||||
|
|
|
|||
|
|
@ -38,11 +38,11 @@ compiling and/or installing it, I also offer statically linked binaries:
|
|||
|
||||
=over
|
||||
|
||||
=item * L<Linux, 64-bit|http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.12.tar.gz>
|
||||
=item * L<Linux, 64-bit|http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.13.tar.gz>
|
||||
|
||||
=item * L<Linux, 32-bit|http://dev.yorhel.nl/download/ncdc-linux-i386-1.12.tar.gz>
|
||||
=item * L<Linux, 32-bit|http://dev.yorhel.nl/download/ncdc-linux-i486-1.13.tar.gz>
|
||||
|
||||
=item * L<Linux, ARM|http://dev.yorhel.nl/download/ncdc-linux-arm-1.12.tar.gz> (Only tested on some devices, may not work on all)
|
||||
=item * L<Linux, ARM|http://dev.yorhel.nl/download/ncdc-linux-arm-1.13.tar.gz>
|
||||
|
||||
=back
|
||||
|
||||
|
|
@ -119,9 +119,9 @@ First install some required packages (as root):
|
|||
|
||||
Then, fetch the ncdc source tarball, extract and build as follows:
|
||||
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.12.tar.gz
|
||||
tar -xf ncdc-1.12.tar.gz
|
||||
cd ncdc-1.12
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.13.tar.gz
|
||||
tar -xf ncdc-1.13.tar.gz
|
||||
cd ncdc-1.13
|
||||
export PATH="$PATH:/usr/perl5/5.10.0/bin"
|
||||
./configure --prefix=/usr LDFLAGS='-L/usr/gnu/lib -R/usr/gnu/lib'
|
||||
make
|
||||
|
|
@ -165,13 +165,13 @@ you can also try to compile ncdc from source. To do so, first install the
|
|||
required libraries:
|
||||
|
||||
sudo apt-get install libbz2-dev libsqlite3-dev libncurses5-dev\
|
||||
libncursesw5-dev libglib2.0-dev libgnutls-dev
|
||||
libncursesw5-dev libglib2.0-dev libgnutls-dev zlib1g-dev
|
||||
|
||||
Then run the following commands to download and install ncdc:
|
||||
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.12.tar.gz
|
||||
tar -xf ncdc-1.12.tar.gz
|
||||
cd ncdc-1.12
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.13.tar.gz
|
||||
tar -xf ncdc-1.13.tar.gz
|
||||
cd ncdc-1.13
|
||||
./configure --prefix=/usr
|
||||
make
|
||||
sudo make install
|
||||
|
|
@ -196,6 +196,8 @@ website|http://cygwin.com/> and use it to install the following packages:
|
|||
|
||||
=item * wget
|
||||
|
||||
=item * zlib-devel
|
||||
|
||||
=item * libncursesw-devel
|
||||
|
||||
=item * libbz2-devel
|
||||
|
|
@ -211,8 +213,8 @@ website|http://cygwin.com/> and use it to install the following packages:
|
|||
Then open a Cygwin terminal and run the following commands to download,
|
||||
compile, and install ncdc:
|
||||
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.12.tar.gz
|
||||
tar -xf ncdc-1.12.tar.gz
|
||||
cd ncdc-1.12
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.13.tar.gz
|
||||
tar -xf ncdc-1.13.tar.gz
|
||||
cd ncdc-1.13
|
||||
./configure --prefix=/usr
|
||||
make install
|
||||
|
|
|
|||
|
|
@ -497,6 +497,10 @@ The time to wait before automatically reconnecting to a hub. Set to 0 to disable
|
|||
|
||||
Whether or not to use the sendfile() system call to upload files, if supported. Using sendfile() allows less resource usage while uploading, but may not work well on all systems.
|
||||
|
||||
=item B<share_emptydirs> <boolean>
|
||||
|
||||
Share empty directories. When disabled (the default), empty directories in your share will not be visible to others. This also affects empty directories containing only empty directories, etc. A file list refresh is required for this setting to be effective.
|
||||
|
||||
=item B<share_exclude> <regex>
|
||||
|
||||
Any file or directory with a name that matches this regular expression will not be shared. A file list refresh is required for this setting to be effective.
|
||||
|
|
|
|||
4
dat/tuwf
4
dat/tuwf
|
|
@ -53,7 +53,9 @@ TUWF is also available on a git repository at L<http://g.blicky.net/tuwf.git/>.
|
|||
|
||||
=item * L<VNDB.org|http://vndb.org/> (the site that spawned TUWF - L<open source|http://g.blicky.net/vndb.git/>)
|
||||
|
||||
=item * L<This website|http://dev.yorhel.nl/> (also L<open source|http://g.blicky.net/yorhel-dev.git/tree/index.cgi>)
|
||||
=item * L<Manned.org|http://manned.org/> (L<open source|http://g.blicky.net/manned.git/>)
|
||||
|
||||
=item * L<This website|http://dev.yorhel.nl/> (L<open source|http://g.blicky.net/yorhel-dev.git/tree/index.cgi>)
|
||||
|
||||
=item * L<Blicky.net Pastebin|http://p.blicky.net/> (L<open source|http://g.blicky.net/bpaste.git/tree/index.cgi>)
|
||||
|
||||
|
|
|
|||
17
download/ncdc-1.13.tar.gz.asc
Normal file
17
download/ncdc-1.13.tar.gz.asc
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v2.0.19 (GNU/Linux)
|
||||
|
||||
iQIcBAABCgAGBQJQLNnBAAoJEGI5TGmMJzn6lgAP/ih34mF9DPoJ+FGGdIPWNbLG
|
||||
qFg1JF4Wm2TY9orKxETNCTU0v77sA0w+cyMs/jCl1+V3zapMZ30k75c/lUH2vQlq
|
||||
x3WnSdJqMtuDxo1EFPt6I5fZj1XmTzGx/qaOIe8AuYL9ij1s/yPKNOf2YQZ2KAvt
|
||||
0pQfjQN21Y52njAUwMq9kRB8PUQfydPLcecmPAGRSsRdlHdnVdIFiVM4uWeAW1lS
|
||||
AaPK4Suz0OlElTLRwd8XozKs/Er7gVi+UergGlWlWE92AcwLpaU+2dxqbL4ox3K1
|
||||
+3LWqo044pUyevBP1B3vM75tcEUfNZYZAXac5sHhhoml5ysLnpDmV3fprdDOqpPW
|
||||
HCy3JMdJn+MUtHL/KGe6ysn+7OnVIGwZp76DTmZAnV++LmFF3Qi8q2seAhqjXJoy
|
||||
vChZ8FPyiBdmsoGfGsHtH9oQEdLFPMs1264ESWBNwRnvmINxd9NYITIx64snmW38
|
||||
E3S9wsKd7kVJx9TSloPOYDeqZURO8mdrgLnyo/OMKDrlPDNmq7lESzWCouYzWXWX
|
||||
jLb/+Xgm35cLoZKucovzS0HNsaf/nGOPuBo9+YwGmBJIpC1TKFzkZLSHTEaksOnT
|
||||
95G/xg5e6cgdKKlJPYEwRfUHZwbDlhVGi7e5EpeJYR1j3UxIthEX4tnrI4xGeQp5
|
||||
Uc6wznqnXM6r8nv8u5lk
|
||||
=vDPK
|
||||
-----END PGP SIGNATURE-----
|
||||
1
download/ncdc-1.13.tar.gz.md5
Normal file
1
download/ncdc-1.13.tar.gz.md5
Normal file
|
|
@ -0,0 +1 @@
|
|||
523061427c041a4a079ea5ecbfd26742 ncdc-1.13.tar.gz
|
||||
1
download/ncdc-1.13.tar.gz.sha1
Normal file
1
download/ncdc-1.13.tar.gz.sha1
Normal file
|
|
@ -0,0 +1 @@
|
|||
e919dfcf9ff11d48dd133cbd7709ebd317666295 ncdc-1.13.tar.gz
|
||||
|
|
@ -12,6 +12,7 @@ BEGIN { ($ROOT = abs_path $0) =~ s{index\.cgi$}{}; }
|
|||
|
||||
|
||||
my @changes = (
|
||||
[ '2012-08-16', '/ncdc', 'ncdc 1.13 released.' ],
|
||||
[ '2012-07-10', '/ncdc', 'ncdc 1.12 released.' ],
|
||||
[ '2012-05-15', '/ncdc', 'ncdc 1.11 released.' ],
|
||||
[ '2012-05-03', '/ncdc/install', 'Added installation instructions for ncdc.' ],
|
||||
|
|
@ -90,7 +91,7 @@ TUWF::register(
|
|||
);
|
||||
|
||||
TUWF::set(
|
||||
logfile => '/www/err.log',
|
||||
logfile => '/home/yorhel/tuwf.log',
|
||||
error_404_handler => \¬found,
|
||||
mail_from => 'Yorhels Bug Tracker <projects@yorhel.nl>',
|
||||
# this is a fairly static site, allow some aggressive caching
|
||||
|
|
@ -255,7 +256,7 @@ sub bug_post {
|
|||
}
|
||||
|
||||
# Experimental: announce this report to the ncdc hub, through the globster bot
|
||||
my $sock = '/tmp/glob.sock';
|
||||
my $sock = '/tmp/globster.sock';
|
||||
if(-e $sock) {
|
||||
my $msg = "Bug activity for $p: $l->{summary} -> http://dev.yorhel.nl/$p/bug/$l->{issue}";
|
||||
require AnyEvent;
|
||||
|
|
@ -396,6 +397,7 @@ sub htmlHeader {
|
|||
a href => 'mailto:projects@yorhel.nl', 'projects@yorhel.nl';
|
||||
br; a href => 'http://yorhel.nl', 'yh';
|
||||
txt ' - '; a href => 'http://g.blicky.net', 'git';
|
||||
txt ' - '; a href => 'http://github.com/yorhel', 'github';
|
||||
txt ' - '; a href => 'http://pgp.mit.edu:11371/pks/lookup?search=0x8c2739fa', 'pgp';
|
||||
br;br;
|
||||
lit q|
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue