unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add proxychains-ng.
@ 2016-08-12 17:50 ng0
  2016-08-12 18:13 ` Leo Famulari
  0 siblings, 1 reply; 12+ messages in thread
From: ng0 @ 2016-08-12 17:50 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: 0001-gnu-Add-proxychains-ng.patch --]
[-- Type: text/x-patch, Size: 2314 bytes --]

From 895ddace3e0645683adb07a05406419b58e42b01 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@we.make.ritual.n0.is>
Date: Fri, 12 Aug 2016 17:47:41 +0000
Subject: [PATCH] gnu: Add proxychains-ng.

* gnu/packages/networking.scm (proxychains-ng): New variable.
---
 gnu/packages/networking.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 77207c0..78790f4 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -635,3 +636,33 @@ information by IP Address.")
   (description "IO::Socket::INET6 is an interface for AF_INET/AF_INET6 domain
 sockets in Perl.")
   (license (package-license perl))))
+
+(define-public proxychains-ng
+  (package
+    (name "proxychains-ng")
+    (version "4.11")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/rofl0r/" name "/releases/"
+                                  "download/v" version "/" name "-" version
+                                  ".tar.bz2"))
+              (sha256
+               (base32
+                "1dkncdzw852488gkh5zhn4b5i03qyj8rgh1wcvcva7yd12c19i6w"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       #:make-flags (list "CC=gcc")
+       #:phases
+       (modify-phases %standard-phases
+         ;; Needs to be configured through the configure script.
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (zero? (system* "./configure"
+                               (string-append "--prefix=" out)))))))))
+    (synopsis "Force any tcp connections to flow through a proxy or proxy chain")
+    (description "Preloader which hooks calls to sockets in dynamically linked programs
+and redirects them through one or more socks or http proxies.")
+    (home-page "https://github.com/rofl0r/proxychains-ng")
+    (license license:gpl2)))
-- 
2.9.2


[-- Attachment #2: Type: text/plain, Size: 78 bytes --]


-- 
♥Ⓐ  ng0
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-12 17:50 [PATCH] gnu: Add proxychains-ng ng0
@ 2016-08-12 18:13 ` Leo Famulari
  2016-08-12 19:21   ` ng0
  2016-08-14 12:32   ` ng0
  0 siblings, 2 replies; 12+ messages in thread
From: Leo Famulari @ 2016-08-12 18:13 UTC (permalink / raw)
  To: ng0; +Cc: guix-devel

On Fri, Aug 12, 2016 at 05:50:15PM +0000, ng0 wrote:
> * gnu/packages/networking.scm (proxychains-ng): New variable.

> +    (arguments
> +     `(#:tests? #f
> +       #:make-flags (list "CC=gcc")
> +       #:phases
> +       (modify-phases %standard-phases
> +         ;; Needs to be configured through the configure script.
> +         (replace 'configure
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let ((out (assoc-ref outputs "out")))
> +               (zero? (system* "./configure"
> +                               (string-append "--prefix=" out)))))))))

Does #:configure-flags not work in this case?

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-12 18:13 ` Leo Famulari
@ 2016-08-12 19:21   ` ng0
  2016-08-14 12:32   ` ng0
  1 sibling, 0 replies; 12+ messages in thread
From: ng0 @ 2016-08-12 19:21 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 843 bytes --]

Leo Famulari <leo@famulari.name> writes:

> On Fri, Aug 12, 2016 at 05:50:15PM +0000, ng0 wrote:
>> * gnu/packages/networking.scm (proxychains-ng): New variable.
>
>> +    (arguments
>> +     `(#:tests? #f
>> +       #:make-flags (list "CC=gcc")
>> +       #:phases
>> +       (modify-phases %standard-phases
>> +         ;; Needs to be configured through the configure script.
>> +         (replace 'configure
>> +           (lambda* (#:key outputs #:allow-other-keys)
>> +             (let ((out (assoc-ref outputs "out")))
>> +               (zero? (system* "./configure"
>> +                               (string-append "--prefix=" out)))))))))
>
> Does #:configure-flags not work in this case?

I have build it this way before, but it did not seem like it applied.

patch applied, maybe there was a mistake in this patch i had earlier:


[-- Attachment #2: 0001-gnu-Add-proxychains-ng.patch --]
[-- Type: text/x-patch, Size: 2065 bytes --]

From 65184392aeef2582786192c2e7e3d8f2e704eb25 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@we.make.ritual.n0.is>
Date: Fri, 12 Aug 2016 17:47:41 +0000
Subject: [PATCH] gnu: Add proxychains-ng.

* gnu/packages/networking.scm (proxychains-ng): New variable.
---
 gnu/packages/networking.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 77207c0..5177bdb 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -635,3 +636,27 @@ information by IP Address.")
   (description "IO::Socket::INET6 is an interface for AF_INET/AF_INET6 domain
 sockets in Perl.")
   (license (package-license perl))))
+
+(define-public proxychains-ng
+  (package
+    (name "proxychains-ng")
+    (version "4.11")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/rofl0r/" name "/releases/"
+                                  "download/v" version "/" name "-" version
+                                  ".tar.bz2"))
+              (sha256
+               (base32
+                "1dkncdzw852488gkh5zhn4b5i03qyj8rgh1wcvcva7yd12c19i6w"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       #:make-flags (list "CC=gcc")
+       #:configure-flags (list (string-append "--prefix="
+                                              (assoc-ref %outputs "out")))))
+    (synopsis "Force any tcp connections to flow through a proxy or proxy chain")
+    (description "Preloader which hooks calls to sockets in dynamically linked programs
+and redirects them through one or more socks or http proxies.")
+    (home-page "https://github.com/rofl0r/proxychains-ng")
+    (license license:gpl2)))
-- 
2.9.2


[-- Attachment #3: Type: text/plain, Size: 78 bytes --]


-- 
♥Ⓐ  ng0
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-12 18:13 ` Leo Famulari
  2016-08-12 19:21   ` ng0
@ 2016-08-14 12:32   ` ng0
  2016-08-14 17:16     ` Ricardo Wurmus
  1 sibling, 1 reply; 12+ messages in thread
From: ng0 @ 2016-08-14 12:32 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Leo Famulari <leo@famulari.name> writes:

> On Fri, Aug 12, 2016 at 05:50:15PM +0000, ng0 wrote:
>> * gnu/packages/networking.scm (proxychains-ng): New variable.
>
>> +    (arguments
>> +     `(#:tests? #f
>> +       #:make-flags (list "CC=gcc")
>> +       #:phases
>> +       (modify-phases %standard-phases
>> +         ;; Needs to be configured through the configure script.
>> +         (replace 'configure
>> +           (lambda* (#:key outputs #:allow-other-keys)
>> +             (let ((out (assoc-ref outputs "out")))
>> +               (zero? (system* "./configure"
>> +                               (string-append "--prefix=" out)))))))))
>
> Does #:configure-flags not work in this case?

The previous message was too much. I just wanted to point out that
configure-flags does not seem to work in this case, but in case I made a
mistake I appended the patch with #:configure-flags in the previous
message. For me, the version with system ./configure works, the one with
#:configure-flags produces a failed build.
-- 
♥Ⓐ  ng0
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-14 12:32   ` ng0
@ 2016-08-14 17:16     ` Ricardo Wurmus
  2016-08-14 21:01       ` ng0
  0 siblings, 1 reply; 12+ messages in thread
From: Ricardo Wurmus @ 2016-08-14 17:16 UTC (permalink / raw)
  To: ng0; +Cc: guix-devel


ng0 <ng0@we.make.ritual.n0.is> writes:

> Leo Famulari <leo@famulari.name> writes:
>
>> On Fri, Aug 12, 2016 at 05:50:15PM +0000, ng0 wrote:
>>> * gnu/packages/networking.scm (proxychains-ng): New variable.
>>
>>> +    (arguments
>>> +     `(#:tests? #f
>>> +       #:make-flags (list "CC=gcc")
>>> +       #:phases
>>> +       (modify-phases %standard-phases
>>> +         ;; Needs to be configured through the configure script.
>>> +         (replace 'configure
>>> +           (lambda* (#:key outputs #:allow-other-keys)
>>> +             (let ((out (assoc-ref outputs "out")))
>>> +               (zero? (system* "./configure"
>>> +                               (string-append "--prefix=" out)))))))))
>>
>> Does #:configure-flags not work in this case?
>
> The previous message was too much. I just wanted to point out that
> configure-flags does not seem to work in this case, but in case I made a
> mistake I appended the patch with #:configure-flags in the previous
> message. For me, the version with system ./configure works, the one with
> #:configure-flags produces a failed build.

Could you show us the error message in case of using
“#:configure-flags”?  This really should work, so if it fails I’d like
to fix this instead of working around it, if possible.

~~ Ricardo

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-14 17:16     ` Ricardo Wurmus
@ 2016-08-14 21:01       ` ng0
  2016-08-15  7:12         ` Ricardo Wurmus
  0 siblings, 1 reply; 12+ messages in thread
From: ng0 @ 2016-08-14 21:01 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

Ricardo Wurmus <rekado@elephly.net> writes:

> ng0 <ng0@we.make.ritual.n0.is> writes:
>
>> Leo Famulari <leo@famulari.name> writes:
>>
>>> On Fri, Aug 12, 2016 at 05:50:15PM +0000, ng0 wrote:
>>>> * gnu/packages/networking.scm (proxychains-ng): New variable.
>>>
>>>> +    (arguments
>>>> +     `(#:tests? #f
>>>> +       #:make-flags (list "CC=gcc")
>>>> +       #:phases
>>>> +       (modify-phases %standard-phases
>>>> +         ;; Needs to be configured through the configure script.
>>>> +         (replace 'configure
>>>> +           (lambda* (#:key outputs #:allow-other-keys)
>>>> +             (let ((out (assoc-ref outputs "out")))
>>>> +               (zero? (system* "./configure"
>>>> +                               (string-append "--prefix=" out)))))))))
>>>
>>> Does #:configure-flags not work in this case?
>>
>> The previous message was too much. I just wanted to point out that
>> configure-flags does not seem to work in this case, but in case I made a
>> mistake I appended the patch with #:configure-flags in the previous
>> message. For me, the version with system ./configure works, the one with
>> #:configure-flags produces a failed build.
>
> Could you show us the error message in case of using
> “#:configure-flags”?  This really should work, so if it fails I’d like
> to fix this instead of working around it, if possible.
>
> ~~ Ricardo
>

ng0@shadowwalker ~/src/guix/guix-proxychains$ make; ./pre-inst-env guix
build proxychains-ng
make  all-recursive
make[1]: Entering directory '/home/ng0/src/guix/guix-proxychains'
Making all in po/guix
make[2]: Entering directory
'/home/ng0/src/guix/guix-proxychains/po/guix'
make[2]: Leaving directory '/home/ng0/src/guix/guix-proxychains/po/guix'
Making all in po/packages
make[2]: Entering directory
'/home/ng0/src/guix/guix-proxychains/po/packages'
make[2]: Leaving directory
'/home/ng0/src/guix/guix-proxychains/po/packages'
make[2]: Entering directory '/home/ng0/src/guix/guix-proxychains'
Compiling Scheme modules...
make[2]: Leaving directory '/home/ng0/src/guix/guix-proxychains'
make[1]: Leaving directory '/home/ng0/src/guix/guix-proxychains'
The following derivation will be built:
   /gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv
   process 1929 acquired build slot '/var/guix/offload/192.168.1.198/0'
   Cannot open display "default display"
   load on machine '192.168.1.198' is 0.0 (normalized: 0.0)
   @ build-started
   /gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv -
   x86_64-linux
   /var/log/guix/drvs/jk//klnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv.bz2
   Cannot open display "default display"
   Cannot open display "default display"
   sending 0 store files to '192.168.1.198'...
   Cannot open display "default display"
   offloading
   '/gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv'
   to '192.168.1.198'...
   @ build-remote
   /gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv
   192.168.1.198
   Cannot open display "default display"
   The following derivation will be built:
      /gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv
      @ build-started
      /gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv
      - x86_64-linux
      /var/log/guix/drvs/jk//klnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv.bz2
      starting phase `set-SOURCE-DATE-EPOCH'
      phase `set-SOURCE-DATE-EPOCH' succeeded after 0.0 seconds
      starting phase `set-paths'
      environment variable `PATH' set to
      `/gnu/store/2pdb9h9mdq7qnjj1b9b6k2a2md46idyj-tar-1.29/bin:/gnu/store/54ilw1jcicj7n259cpra59y6gik2mig2-gzip-1.8/bin:/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/bin:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/bin:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/bin:/gnu/store/lr2vwc88wck5ra3p969rgk8nnqh111aj-diffutils-3.3/bin:/gnu/store/ni491r4ffm03v0cr70df12lwiq826das-patch-2.7.5/bin:/gnu/store/bzv2l4hx3j74jm49fb7g20900yqjdn22-sed-4.2.2/bin:/gnu/store/53p06lrr734a1xxa770xz9ddan4a2zjq-findutils-4.6.0/bin:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/bin:/gnu/store/dk9hvkwr5s4n22z9pjgcmxrppd08k286-grep-2.25/bin:/gnu/store/lpvkjic9dhj55plc29jhq8l39irvqm4f-coreutils-8.25/bin:/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/bin:/gnu/store/ykzwykkvr2c8
 0rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin:/gnu/store/5k8z2aj8ca16nmvwvdsl0mdc3slm14k2-ld-wrapper-0/bin:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/bin:/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/bin:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/sbin'
      environment variable `C_INCLUDE_PATH' set to
      `/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/include:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/include:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/include:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/include:/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/include:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/include:/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/include:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/include:/gnu/store/k3nwrfrgkg1bafhqi9w8inh2rr8njb1b-linux-libre-headers-4.1.18/include'
      environment variable `CPLUS_INCLUDE_PATH' set to
      `/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/include:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/include:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/include:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/include:/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/include:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/include:/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/include:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/include:/gnu/store/k3nwrfrgkg1bafhqi9w8inh2rr8njb1b-linux-libre-headers-4.1.18/include'
      environment variable `LIBRARY_PATH' set to
      `/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/lib:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/lib:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/lib:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/lib:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/lib:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib:/gnu/store/w74j2phxh04phnspxmjg9hpzpk90054x-glibc-utf8-locales-2.23/lib'
      environment variable `GUIX_LOCPATH' set to
      `/gnu/store/w74j2phxh04phnspxmjg9hpzpk90054x-glibc-utf8-locales-2.23/lib/locale'
      phase `set-paths' succeeded after 0.0 seconds
      starting phase `install-locale'
      using 'en_US.utf8' locale for category "LC_ALL"
      phase `install-locale' succeeded after 0.0 seconds
      starting phase `unpack'
      proxychains-ng-4.11/
      proxychains-ng-4.11/Makefile
      proxychains-ng-4.11/TODO
      proxychains-ng-4.11/tests/
      proxychains-ng-4.11/tests/test_shm.c
      proxychains-ng-4.11/tests/test_gethostent.c
      proxychains-ng-4.11/tests/test_getaddrinfo.c
      proxychains-ng-4.11/tests/test_sendto.c
      proxychains-ng-4.11/tests/test_gethostent_r.c
      proxychains-ng-4.11/tests/test_proxy_gethostbyname.c
      proxychains-ng-4.11/tests/test_getnameinfo.c
      proxychains-ng-4.11/tests/test_v4_in_v6.c
      proxychains-ng-4.11/README
      proxychains-ng-4.11/src/
      proxychains-ng-4.11/src/ip_type.h
      proxychains-ng-4.11/src/core.h
      proxychains-ng-4.11/src/hash.c
      proxychains-ng-4.11/src/hash.h
      proxychains-ng-4.11/src/proxychains.conf
      proxychains-ng-4.11/src/debug.h
      proxychains-ng-4.11/src/proxyresolv
      proxychains-ng-4.11/src/libproxychains.c
      proxychains-ng-4.11/src/common.h
      proxychains-ng-4.11/src/common.c
      proxychains-ng-4.11/src/mutex.h
      proxychains-ng-4.11/src/debug.c
      proxychains-ng-4.11/src/version.c
      proxychains-ng-4.11/src/core.c
      proxychains-ng-4.11/src/ip_type.c
      proxychains-ng-4.11/src/main.c
      proxychains-ng-4.11/src/hostsreader.c
      proxychains-ng-4.11/src/nameinfo.c
      proxychains-ng-4.11/src/allocator_thread.h
      proxychains-ng-4.11/src/allocator_thread.c
      proxychains-ng-4.11/AUTHORS
      proxychains-ng-4.11/COPYING
      proxychains-ng-4.11/configure
      proxychains-ng-4.11/tools/
      proxychains-ng-4.11/tools/install.sh
      proxychains-ng-4.11/tools/version.sh
      proxychains-ng-4.11/VERSION
      phase `unpack' succeeded after 0.0 seconds
      starting phase `patch-usr-bin-file'
      phase `patch-usr-bin-file' succeeded after 0.0 seconds
      starting phase `patch-source-shebangs'
      patch-shebang: ./configure: changing `/bin/sh' to
      `/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin/sh'
      patch-shebang: ./src/proxyresolv: changing `/bin/sh' to
      `/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin/sh'
      patch-shebang: ./tools/install.sh: changing `/bin/sh' to
      `/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin/sh'
      patch-shebang: ./tools/version.sh: changing `/bin/sh' to `/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin/sh'
phase `patch-source-shebangs' succeeded after 0.0 seconds
starting phase `configure'
source directory:
"/tmp/guix-build-proxychains-ng-4.11.drv-0/proxychains-ng-4.11"
(relative from build: ".")
build directory:
"/tmp/guix-build-proxychains-ng-4.11.drv-0/proxychains-ng-4.11"
configure flags:
("CONFIG_SHELL=/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin/bash"
"SHELL=/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin/bash"
"--prefix=/gnu/store/pb1bhn1nqbdzh6hmdxbhyvc08zkj1vx8-proxychains-ng-4.11"
"--enable-fast-install" "--build=x86_64-unknown-linux-gnu"
"--prefix=/gnu/store/pb1bhn1nqbdzh6hmdxbhyvc08zkj1vx8-proxychains-ng-4.11")
checking whether netinet/in.h defines s6_addr16 ... no
checking whether netinet/in.h defines __u6_addr.__u6_addr16 ... no
checking whether $CC defines __OpenBSD__ ... ./configure: line 38: cc:
command not found
no
Done, now run make && make install
phase `configure' succeeded after 0.0 seconds
starting phase `patch-generated-file-shebangs'
phase `patch-generated-file-shebangs' succeeded after 0.0 seconds
starting phase `build'
gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
-DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
-DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/nameinfo.o
src/nameinfo.c
printf '#define VERSION "%s"\n' "$(sh tools/version.sh)" > src/version.h
gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
-DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
-DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/core.o src/core.c
gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
-DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
-DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/common.o src/common.c
gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
-DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
-DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/libproxychains.o
src/libproxychains.c
gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
-DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
-DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/allocator_thread.o
src/allocator_thread.c
gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
-DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
-DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/ip_type.o
src/ip_type.c
src/ip_type.c:4:1: warning: missing braces around initializer
[-Wmissing-braces]
 const ip_type ip_type_localhost = { .addr.v4 = {127, 0, 0, 1} };
  ^
  src/ip_type.c:4:1: warning: (near initialization for
  ‘ip_type_localhost.addr.v4.octet’) [-Wmissing-braces]
  gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
  -DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
  -DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/hostsreader.o
  src/hostsreader.c
  gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
  -DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
  -DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/hash.o src/hash.c
  gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
  -DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
  -DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/debug.o src/debug.c
  gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
  -DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
  -DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/main.o src/main.c
  gcc -DSUPER_SECURE -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe
  -DLIB_DIR=\"/usr/local/lib\" -DSYSCONFDIR=\"/usr/local/etc\"
  -DDLL_NAME=\"libproxychains4.so\"  -fPIC -c -o src/version.o
  src/version.c
  gcc -shared -fPIC -Wl,--no-as-needed -ldl -lpthread
  -Wl,-soname=libproxychains4.so  \
          -o libproxychains4.so src/nameinfo.o src/version.o src/core.o
          src/common.o src/libproxychains.o src/allocator_thread.o
          src/ip_type.o src/hostsreader.o src/hash.o src/debug.o
          gcc src/main.o src/common.o  -o proxychains4
          phase `build' succeeded after 0.2 seconds
          starting phase `check'
          test suite not run
          phase `check' succeeded after 0.0 seconds
          starting phase `install'
          ./tools/install.sh -D -m 644 libproxychains4.so
          /usr/local/lib/libproxychains4.so
          mkdir: cannot create directory ‘/usr’: Permission denied
          make: *** [Makefile:60: /usr/local/lib/libproxychains4.so]
          Error 1
          phase `install' failed after 0.0 seconds
          builder for
          `/gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv'
          failed with exit code 1
          @ build-failed
          /gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv
          - 1 builder for
          `/gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv'
          failed with exit code 1
          guix build: error: build failed: build of
          `/gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv'
          failed
          Cannot open display "default display"
          derivation
          '/gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv'
          offloaded to '192.168.1.198' failed with exit code 1
          @ build-failed
          /gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv
          - 1 builder for
          `/gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv'
          failed with exit code 100
          guix build: error: build failed: build of
          `/gnu/store/jkklnfwxg63q2jdcikqc8a9xzavzbbrj-proxychains-ng-4.11.drv' failed
-- 
♥Ⓐ  ng0
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-14 21:01       ` ng0
@ 2016-08-15  7:12         ` Ricardo Wurmus
  2016-08-15  8:47           ` ng0
  2016-08-15  9:02           ` ng0
  0 siblings, 2 replies; 12+ messages in thread
From: Ricardo Wurmus @ 2016-08-15  7:12 UTC (permalink / raw)
  To: ng0; +Cc: guix-devel


ng0 <ng0@we.make.ritual.n0.is> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:

>> Could you show us the error message in case of using
>> “#:configure-flags”?  This really should work, so if it fails I’d like
>> to fix this instead of working around it, if possible.

[…]

Thanks.  Looks like you need to set the “prefix” variable in
#:make-flags – it is defined in the Makefile (along with “exec_prefix”,
which you might also have to override).

~~ Ricardo

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-15  7:12         ` Ricardo Wurmus
@ 2016-08-15  8:47           ` ng0
  2016-08-15  9:37             ` Ricardo Wurmus
  2016-08-15  9:02           ` ng0
  1 sibling, 1 reply; 12+ messages in thread
From: ng0 @ 2016-08-15  8:47 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

Ricardo Wurmus <rekado@elephly.net> writes:

> ng0 <ng0@we.make.ritual.n0.is> writes:
>
>> Ricardo Wurmus <rekado@elephly.net> writes:
>
>>> Could you show us the error message in case of using
>>> “#:configure-flags”?  This really should work, so if it fails I’d like
>>> to fix this instead of working around it, if possible.
>
> […]
>
> Thanks.  Looks like you need to set the “prefix” variable in
> #:make-flags – it is defined in the Makefile (along with “exec_prefix”,
> which you might also have to override).
>
> ~~ Ricardo
>

I did set prefix and exec_prefix in the make-flags, gets ignored.
it doesn't work, and I think I tried setting it in the make-flags before.
I will revert to the original patch and add a comment why it needs to be
configured like this. Second choice could be to substitute, but
./configure --options is shorter and apparently what the application
wants.
-- 
♥Ⓐ  ng0
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-15  7:12         ` Ricardo Wurmus
  2016-08-15  8:47           ` ng0
@ 2016-08-15  9:02           ` ng0
  1 sibling, 0 replies; 12+ messages in thread
From: ng0 @ 2016-08-15  9:02 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 601 bytes --]

Ricardo Wurmus <rekado@elephly.net> writes:

> ng0 <ng0@we.make.ritual.n0.is> writes:
>
>> Ricardo Wurmus <rekado@elephly.net> writes:
>
>>> Could you show us the error message in case of using
>>> “#:configure-flags”?  This really should work, so if it fails I’d like
>>> to fix this instead of working around it, if possible.
>
> […]
>
> Thanks.  Looks like you need to set the “prefix” variable in
> #:make-flags – it is defined in the Makefile (along with “exec_prefix”,
> which you might also have to override).
>
> ~~ Ricardo
>

Added the results of this thread in a comment.


[-- Attachment #2: 0001-gnu-Add-proxychains-ng.patch --]
[-- Type: text/x-patch, Size: 2370 bytes --]

From fa1b4e104c102d02a53324e5c082edcbe365b04b Mon Sep 17 00:00:00 2001
From: ng0 <ng0@we.make.ritual.n0.is>
Date: Fri, 12 Aug 2016 17:47:41 +0000
Subject: [PATCH] gnu: Add proxychains-ng.

* gnu/packages/networking.scm (proxychains-ng): New variable.
---
 gnu/packages/networking.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 1275a41..fc3e8cb 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -690,3 +691,36 @@ information by IP Address.")
   (description "IO::Socket::INET6 is an interface for AF_INET/AF_INET6 domain
 sockets in Perl.")
   (license (package-license perl))))
+
+(define-public proxychains-ng
+  (package
+    (name "proxychains-ng")
+    (version "4.11")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/rofl0r/" name "/releases/"
+                                  "download/v" version "/" name "-" version
+                                  ".tar.bz2"))
+              (sha256
+               (base32
+                "1dkncdzw852488gkh5zhn4b5i03qyj8rgh1wcvcva7yd12c19i6w"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       #:make-flags (list "CC=gcc")
+       #:phases
+       (modify-phases %standard-phases
+       ;; XXX: Must be configured with the configure script, other methods
+       ;; are ignored by the application
+       (replace 'configure
+         (lambda* (#:key outputs #:allow-other-keys)
+           (let ((out (assoc-ref outputs "out")))
+             (zero? (system* "./configure"
+                             (string-append "--prefix=" out)))))))))
+    (synopsis
+     "Force any tcp connections to flow through a proxy or proxy chain")
+    (description
+     "Preloader which hooks calls to sockets in dynamically linked programs
+and redirects them through one or more socks or http proxies.")
+    (home-page "https://github.com/rofl0r/proxychains-ng")
+    (license license:gpl2)))
-- 
2.9.2


[-- Attachment #3: Type: text/plain, Size: 78 bytes --]


-- 
♥Ⓐ  ng0
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-15  8:47           ` ng0
@ 2016-08-15  9:37             ` Ricardo Wurmus
  2016-08-15  9:57               ` ng0
  0 siblings, 1 reply; 12+ messages in thread
From: Ricardo Wurmus @ 2016-08-15  9:37 UTC (permalink / raw)
  To: ng0; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1693 bytes --]


ng0 <ng0@we.make.ritual.n0.is> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> ng0 <ng0@we.make.ritual.n0.is> writes:
>>
>>> Ricardo Wurmus <rekado@elephly.net> writes:
>>
>>>> Could you show us the error message in case of using
>>>> “#:configure-flags”?  This really should work, so if it fails I’d like
>>>> to fix this instead of working around it, if possible.
>>
>> […]
>>
>> Thanks.  Looks like you need to set the “prefix” variable in
>> #:make-flags – it is defined in the Makefile (along with “exec_prefix”,
>> which you might also have to override).
>>
>> ~~ Ricardo
>>
>
> I did set prefix and exec_prefix in the make-flags, gets ignored.
> it doesn't work, and I think I tried setting it in the make-flags before.
> I will revert to the original patch and add a comment why it needs to be
> configured like this. Second choice could be to substitute, but
> ./configure --options is shorter and apparently what the application
> wants.

The reason here is that the configure script aborts when it encounters
arguments it doesn’t expect, such as the CONFIG_SHELL argument.  As a
result the “config.mak” file is never created.

I’ve got this to build by making the custom configure script a little
more tolerant.

I also changed the description to be a full sentence.  I’ve upcased
“TCP”, “SOCKS”, and “HTTP”.  The synopsis has also been simplified.

The license was too limited.  The license headers (in the files that
have them) include the “or later” clause, so this is really GPLv2+.

I’ve also added a comment as to why the tests have been disabled.

If this looks okay to you I’ll push it later today.

~~ Ricardo



[-- Attachment #2: 0001-gnu-Add-proxychains-ng.patch --]
[-- Type: text/x-patch, Size: 2854 bytes --]

From d2f2d139f4aac52ac0f79e7f81a0be5fad2ad100 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@we.make.ritual.n0.is>
Date: Fri, 12 Aug 2016 17:47:41 +0000
Subject: [PATCH] gnu: Add proxychains-ng.

* gnu/packages/networking.scm (proxychains-ng): New variable.
---
 gnu/packages/networking.scm | 37 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 36 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 1275a41..2678739 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2016 Raimon Grau <raimonster@gmail.com>
@@ -8,6 +8,7 @@
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -690,3 +691,37 @@ information by IP Address.")
   (description "IO::Socket::INET6 is an interface for AF_INET/AF_INET6 domain
 sockets in Perl.")
   (license (package-license perl))))
+
+(define-public proxychains-ng
+  (package
+    (name "proxychains-ng")
+    (version "4.11")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/rofl0r/" name "/releases/"
+                                  "download/v" version "/" name "-" version
+                                  ".tar.bz2"))
+              (sha256
+               (base32
+                "1dkncdzw852488gkh5zhn4b5i03qyj8rgh1wcvcva7yd12c19i6w"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; there are no tests
+       #:make-flags '("CC=gcc")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-configure-script
+           (lambda _
+             ;; The configure script is very intolerant to unknown arguments,
+             ;; such as "CONFIG_SHELL".
+             (substitute* "configure"
+               (("\\*\\) break ;;" line)
+                (string-append "[A-Z]*) shift ;;\n"
+                               line)))
+             #t)))))
+    (synopsis "Redirect any TCP connection through a proxy or proxy chain")
+    (description "Proxychains-ng is a preloader which hooks calls to sockets
+in dynamically linked programs and redirects them through one or more SOCKS or
+HTTP proxies.")
+    (home-page "https://github.com/rofl0r/proxychains-ng")
+    (license license:gpl2+)))
-- 
2.9.2


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-15  9:37             ` Ricardo Wurmus
@ 2016-08-15  9:57               ` ng0
  2016-08-15 10:17                 ` Ricardo Wurmus
  0 siblings, 1 reply; 12+ messages in thread
From: ng0 @ 2016-08-15  9:57 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

Ricardo Wurmus <rekado@elephly.net> writes:

> ng0 <ng0@we.make.ritual.n0.is> writes:
>
>> Ricardo Wurmus <rekado@elephly.net> writes:
>>
>>> ng0 <ng0@we.make.ritual.n0.is> writes:
>>>
>>>> Ricardo Wurmus <rekado@elephly.net> writes:
>>>
>>>>> Could you show us the error message in case of using
>>>>> “#:configure-flags”?  This really should work, so if it fails I’d like
>>>>> to fix this instead of working around it, if possible.
>>>
>>> […]
>>>
>>> Thanks.  Looks like you need to set the “prefix” variable in
>>> #:make-flags – it is defined in the Makefile (along with “exec_prefix”,
>>> which you might also have to override).
>>>
>>> ~~ Ricardo
>>>
>>
>> I did set prefix and exec_prefix in the make-flags, gets ignored.
>> it doesn't work, and I think I tried setting it in the make-flags before.
>> I will revert to the original patch and add a comment why it needs to be
>> configured like this. Second choice could be to substitute, but
>> ./configure --options is shorter and apparently what the application
>> wants.
>
> The reason here is that the configure script aborts when it encounters
> arguments it doesn’t expect, such as the CONFIG_SHELL argument.  As a
> result the “config.mak” file is never created.
>
> I’ve got this to build by making the custom configure script a little
> more tolerant.
>
> I also changed the description to be a full sentence.  I’ve upcased
> “TCP”, “SOCKS”, and “HTTP”.  The synopsis has also been simplified.
>
> The license was too limited.  The license headers (in the files that
> have them) include the “or later” clause, so this is really GPLv2+.
>
> I’ve also added a comment as to why the tests have been disabled.
>
> If this looks okay to you I’ll push it later today.

It's okay for me. Thanks for looking into this.

> ~~ Ricardo
>
>
> From d2f2d139f4aac52ac0f79e7f81a0be5fad2ad100 Mon Sep 17 00:00:00 2001
> From: ng0 <ng0@we.make.ritual.n0.is>
> Date: Fri, 12 Aug 2016 17:47:41 +0000
> Subject: [PATCH] gnu: Add proxychains-ng.
>
> * gnu/packages/networking.scm (proxychains-ng): New variable.
> ---
>  gnu/packages/networking.scm | 37 ++++++++++++++++++++++++++++++++++++-
>  1 file changed, 36 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index 1275a41..2678739 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -1,6 +1,6 @@
>  ;;; GNU Guix --- Functional package management for GNU
>  ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
> -;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
> +;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
>  ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
>  ;;; Copyright © 2015 Stefan Reichör <stefan@xsteve.at>
>  ;;; Copyright © 2016 Raimon Grau <raimonster@gmail.com>
> @@ -8,6 +8,7 @@
>  ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
>  ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
>  ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
> +;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -690,3 +691,37 @@ information by IP Address.")
>    (description "IO::Socket::INET6 is an interface for AF_INET/AF_INET6 domain
>  sockets in Perl.")
>    (license (package-license perl))))
> +
> +(define-public proxychains-ng
> +  (package
> +    (name "proxychains-ng")
> +    (version "4.11")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://github.com/rofl0r/" name "/releases/"
> +                                  "download/v" version "/" name "-" version
> +                                  ".tar.bz2"))
> +              (sha256
> +               (base32
> +                "1dkncdzw852488gkh5zhn4b5i03qyj8rgh1wcvcva7yd12c19i6w"))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:tests? #f ; there are no tests
> +       #:make-flags '("CC=gcc")
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'fix-configure-script
> +           (lambda _
> +             ;; The configure script is very intolerant to unknown arguments,
> +             ;; such as "CONFIG_SHELL".
> +             (substitute* "configure"
> +               (("\\*\\) break ;;" line)
> +                (string-append "[A-Z]*) shift ;;\n"
> +                               line)))

I'm curious what this substitute does. Could you explain it?

> +             #t)))))
> +    (synopsis "Redirect any TCP connection through a proxy or proxy chain")
> +    (description "Proxychains-ng is a preloader which hooks calls to sockets
> +in dynamically linked programs and redirects them through one or more SOCKS or
> +HTTP proxies.")
> +    (home-page "https://github.com/rofl0r/proxychains-ng")
> +    (license license:gpl2+)))
> -- 
> 2.9.2
>

-- 
♥Ⓐ  ng0
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] gnu: Add proxychains-ng.
  2016-08-15  9:57               ` ng0
@ 2016-08-15 10:17                 ` Ricardo Wurmus
  0 siblings, 0 replies; 12+ messages in thread
From: Ricardo Wurmus @ 2016-08-15 10:17 UTC (permalink / raw)
  To: ng0; +Cc: guix-devel


ng0 <ng0@we.make.ritual.n0.is> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:

>> +       (modify-phases %standard-phases
>> +         (add-after 'unpack 'fix-configure-script
>> +           (lambda _
>> +             ;; The configure script is very intolerant to unknown arguments,
>> +             ;; such as "CONFIG_SHELL".
>> +             (substitute* "configure"
>> +               (("\\*\\) break ;;" line)
>> +                (string-append "[A-Z]*) shift ;;\n"
>> +                               line)))
>
> I'm curious what this substitute does. Could you explain it?

Sure.  We match the line

    *) break ;;

in the configure script and save it as “line”.  This line is the
alternative case in the options parser.  Any option starting with a dash
is processed while any other option leads to “break”.  This means that
upon encountering “CONFIG_SHELL=…” the configure script aborts and
doesn’t even get to setting the prefix.

So what I’m doing is to add an additional case:

    [A-Z]*) shift ;;

which is then followed by the original catch-all case (which leads to
“break”).  The additional case applies whenever an option begins with a
capital letter.  In that case it just throws away the option (“shift”).
“shift” reduces a list by dropping the current element.  This means that
in the next iteration the next list element will be processed.
Eventually this would lead to “break”, thus exiting the loop.

It’s not the prettiest fix, but it works.  It would be nicer if upstream
didn’t do “while true” and relied on “break” to exit the loop.  If they
instead went through the whole list of arguments, ignoring anything they
don’t recognize and only processing those that they expect.  Maybe worth
opening a bug report.

~~ Ricardo

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2016-08-15 10:18 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-12 17:50 [PATCH] gnu: Add proxychains-ng ng0
2016-08-12 18:13 ` Leo Famulari
2016-08-12 19:21   ` ng0
2016-08-14 12:32   ` ng0
2016-08-14 17:16     ` Ricardo Wurmus
2016-08-14 21:01       ` ng0
2016-08-15  7:12         ` Ricardo Wurmus
2016-08-15  8:47           ` ng0
2016-08-15  9:37             ` Ricardo Wurmus
2016-08-15  9:57               ` ng0
2016-08-15 10:17                 ` Ricardo Wurmus
2016-08-15  9:02           ` ng0

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).