elinks: 0.12pre6 -> 0.13.2 (felinks fork)
This commit is contained in:
parent
0f436ea358
commit
71cfbba072
@ -0,0 +1,34 @@
|
|||||||
|
# Generated by debian-patches.sh from debian-patches.txt
|
||||||
|
let
|
||||||
|
prefix = "https://sources.debian.org/data/main/e/elinks/0.13.2-1/debian/patches";
|
||||||
|
in
|
||||||
|
[
|
||||||
|
{
|
||||||
|
url = "${prefix}/03_459467_ui.leds.enable_0.diff";
|
||||||
|
sha256 = "0l35lglmnvyzz3xyy18nksra14gsp7yc67rskbzmr61szg8b9jqr";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
url = "${prefix}/04_436817_nostrip.diff";
|
||||||
|
sha256 = "0ixvxaba1ww375gpdh7r67srp3xsfb5vyz2sfv1pgj6mczwg8v24";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
url = "${prefix}/07_617713_cache_control.diff";
|
||||||
|
sha256 = "0drn4r33ywvmihr0drsp2jwz7mlf5z5fv8ra7fpkdavx45xqaf15";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
url = "${prefix}/10-reproducible-build.diff";
|
||||||
|
sha256 = "024yp3xsh0hw29l1wikfmk9j3mqval6pdr4xi7rzffrlaknh58h5";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
url = "${prefix}/14_debug_disable_Werror.diff";
|
||||||
|
sha256 = "0s620r88ikfljflb5nd133cww2wc0i85ag8lzpvrsmg0q00hfmax";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
url = "${prefix}/16_POST_BUFFER_SIZE.diff";
|
||||||
|
sha256 = "17vkvy0d0rabmgk8iqwgdsrgjn6dbb9cf6760qbz82zlb37s09nh";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
url = "${prefix}/11-reproducible-build.diff";
|
||||||
|
sha256 = "1z17g9z68lh12fs6fkralfghh8bs1bs5mlq83d15l4bn3za3s0sl";
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,8 @@
|
|||||||
|
elinks/0.13.2-1
|
||||||
|
03_459467_ui.leds.enable_0.diff
|
||||||
|
04_436817_nostrip.diff
|
||||||
|
07_617713_cache_control.diff
|
||||||
|
10-reproducible-build.diff
|
||||||
|
14_debug_disable_Werror.diff
|
||||||
|
16_POST_BUFFER_SIZE.diff
|
||||||
|
11-reproducible-build.diff
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, fetchpatch, ncurses, xlibsWrapper, bzip2, zlib, openssl
|
{ stdenv, fetchurl, fetchpatch, ncurses, xlibsWrapper, bzip2, zlib, brotli, openssl, autoconf, automake, gettext, pkgconfig, libev
|
||||||
, gpm
|
, gpm
|
||||||
, # Incompatible licenses, LGPLv3 - GPLv2
|
, # Incompatible licenses, LGPLv3 - GPLv2
|
||||||
enableGuile ? false, guile ? null
|
enableGuile ? false, guile ? null
|
||||||
@ -11,18 +11,15 @@ assert enableGuile -> guile != null;
|
|||||||
assert enablePython -> python != null;
|
assert enablePython -> python != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "elinks";
|
pname = "elinks-0.13.2";
|
||||||
version = "0.12pre6";
|
version = "0.13.2";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://elinks.or.cz/download/${pname}-${version}.tar.bz2";
|
url = "https://deb.debian.org/debian/pool/main/e/elinks/elinks_${version}.orig.tar.gz";
|
||||||
sha256 = "1nnakbi01g7yd3zqwprchh5yp45br8086b0kbbpmnclabcvlcdiq";
|
sha256 = "0xkpqnqy0x8sizx4snca0pw3q98gkhnw5a05yf144j1x1y2nb14c";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = map fetchurl (import ./debian-patches.nix);
|
||||||
./gc-init.patch
|
|
||||||
./openssl-1.1.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = (stdenv.lib.optional stdenv.isDarwin) ''
|
postPatch = (stdenv.lib.optional stdenv.isDarwin) ''
|
||||||
patch -p0 < ${fetchpatch {
|
patch -p0 < ${fetchpatch {
|
||||||
@ -31,13 +28,16 @@ stdenv.mkDerivation rec {
|
|||||||
}}
|
}}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildInputs = [ ncurses xlibsWrapper bzip2 zlib openssl spidermonkey ]
|
buildInputs = [ ncurses xlibsWrapper bzip2 zlib brotli openssl libev ]
|
||||||
++ stdenv.lib.optional stdenv.isLinux gpm
|
++ stdenv.lib.optional stdenv.isLinux gpm
|
||||||
++ stdenv.lib.optional enableGuile guile
|
++ stdenv.lib.optional enableGuile guile
|
||||||
++ stdenv.lib.optional enablePython python
|
++ stdenv.lib.optional enablePython python
|
||||||
++ stdenv.lib.optional enablePerl perl
|
++ stdenv.lib.optional enablePerl perl
|
||||||
|
++ stdenv.lib.optional enableSpidermonkey spidermonkey
|
||||||
;
|
;
|
||||||
|
|
||||||
|
nativeBuildInputs = [ autoconf automake gettext pkgconfig ];
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"--enable-finger"
|
"--enable-finger"
|
||||||
"--enable-html-highlight"
|
"--enable-html-highlight"
|
||||||
@ -45,18 +45,24 @@ stdenv.mkDerivation rec {
|
|||||||
"--enable-cgi"
|
"--enable-cgi"
|
||||||
"--enable-bittorrent"
|
"--enable-bittorrent"
|
||||||
"--enable-nntp"
|
"--enable-nntp"
|
||||||
"--with-openssl=${openssl.dev}"
|
"--enable-256-colors"
|
||||||
"--with-bzip2=${bzip2.dev}"
|
"--with-libev"
|
||||||
] ++ stdenv.lib.optional enableGuile "--with-guile"
|
] ++ stdenv.lib.optional enableGuile "--with-guile"
|
||||||
++ stdenv.lib.optional enablePython "--with-python"
|
++ stdenv.lib.optional enablePython "--with-python"
|
||||||
++ stdenv.lib.optional enablePerl "--with-perl"
|
++ stdenv.lib.optional enablePerl "--with-perl"
|
||||||
++ stdenv.lib.optional enableSpidermonkey "--with-spidermonkey=${spidermonkey}"
|
++ stdenv.lib.optional enableSpidermonkey "--with-spidermonkey=${spidermonkey}"
|
||||||
;
|
;
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
patchShebangs ./autogen.sh
|
||||||
|
./autogen.sh
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Full-featured text-mode web browser";
|
description = "Full-featured text-mode web browser (package based on the fork felinks)";
|
||||||
homepage = "http://elinks.or.cz";
|
homepage = "https://github.com/rkd77/felinks";
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
platforms = with platforms; linux ++ darwin;
|
platforms = with platforms; linux ++ darwin;
|
||||||
|
maintainers = with maintainers; [ iblech ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,17 +0,0 @@
|
|||||||
Fix libgc initialization in the presence of Guile 2.0.
|
|
||||||
|
|
||||||
--- elinks-0.12pre5/src/main/main.c 2009-07-07 14:23:17.000000000 +0200
|
|
||||||
+++ elinks-0.12pre5/src/main/main.c 2011-04-28 23:20:15.000000000 +0200
|
|
||||||
@@ -339,6 +339,11 @@ int
|
|
||||||
main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
#ifdef CONFIG_GC
|
|
||||||
+ /* Guile 2.x uses libgc too and it initializes it this way, so we
|
|
||||||
+ * must make sure to initialize it the same way, or it will just
|
|
||||||
+ * segfault. */
|
|
||||||
+ GC_all_interior_pointers = 0;
|
|
||||||
+
|
|
||||||
GC_INIT();
|
|
||||||
GC_set_warn_proc(gc_warning);
|
|
||||||
#endif
|
|
||||||
|
|
@ -1,51 +0,0 @@
|
|||||||
diff --git a/src/network/ssl/socket.c b/src/network/ssl/socket.c
|
|
||||||
index 45b4b4a8..0385a431 100644
|
|
||||||
--- a/src/network/ssl/socket.c
|
|
||||||
+++ b/src/network/ssl/socket.c
|
|
||||||
@@ -67,7 +67,9 @@ static void
|
|
||||||
ssl_set_no_tls(struct socket *socket)
|
|
||||||
{
|
|
||||||
#ifdef CONFIG_OPENSSL
|
|
||||||
- ((ssl_t *) socket->ssl)->options |= SSL_OP_NO_TLSv1;
|
|
||||||
+#ifdef SSL_OP_NO_TLSv1
|
|
||||||
+ SSL_set_options((ssl_t *)socket->ssl, SSL_OP_NO_TLSv1);
|
|
||||||
+#endif
|
|
||||||
#elif defined(CONFIG_GNUTLS)
|
|
||||||
{
|
|
||||||
/* GnuTLS does not support SSLv2 because it is "insecure".
|
|
||||||
@@ -145,9 +147,11 @@ ssl_connect(struct socket *socket)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (client_cert) {
|
|
||||||
- SSL_CTX *ctx = ((SSL *) socket->ssl)->ctx;
|
|
||||||
+ SSL_CTX *ctx = SSL_get_SSL_CTX((SSL *) socket->ssl);
|
|
||||||
|
|
||||||
- SSL_CTX_use_certificate_chain_file(ctx, client_cert);
|
|
||||||
+ SSL_CTX_use_certificate_chain_file(
|
|
||||||
+ (SSL *) socket->ssl,
|
|
||||||
+ client_cert);
|
|
||||||
SSL_CTX_use_PrivateKey_file(ctx, client_cert,
|
|
||||||
SSL_FILETYPE_PEM);
|
|
||||||
}
|
|
||||||
diff --git a/src/network/ssl/ssl.c b/src/network/ssl/ssl.c
|
|
||||||
index c008121d..c06a80a7 100644
|
|
||||||
--- a/src/network/ssl/ssl.c
|
|
||||||
+++ b/src/network/ssl/ssl.c
|
|
||||||
@@ -50,11 +50,16 @@ init_openssl(struct module *module)
|
|
||||||
* cannot initialize the PRNG and so every attempt to use SSL fails.
|
|
||||||
* It's actually an OpenSSL FAQ, and according to them, it's up to the
|
|
||||||
* application coders to seed the RNG. -- William Yodlowsky */
|
|
||||||
- if (RAND_egd(RAND_file_name(f_randfile, sizeof(f_randfile))) < 0) {
|
|
||||||
+ RAND_file_name(f_randfile, sizeof(f_randfile));
|
|
||||||
+#ifdef HAVE_RAND_EGD
|
|
||||||
+ if (RAND_egd(f_randfile) < 0) {
|
|
||||||
/* Not an EGD, so read and write to it */
|
|
||||||
+#endif
|
|
||||||
if (RAND_load_file(f_randfile, -1))
|
|
||||||
RAND_write_file(f_randfile);
|
|
||||||
+#ifdef HAVE_RAND_EGD
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
SSLeay_add_ssl_algorithms();
|
|
||||||
context = SSL_CTX_new(SSLv23_client_method());
|
|
Loading…
x
Reference in New Issue
Block a user