* [bug#37886] [PATCH] gnu: Add ipcalc. @ 2019-10-23 13:44 Daniel Schäfer 2019-10-24 15:12 ` Mathieu Othacehe 0 siblings, 1 reply; 5+ messages in thread From: Daniel Schäfer @ 2019-10-23 13:44 UTC (permalink / raw) To: 37886 Hi, here's my first patch to guix - please let me know whether everything's okay. It adds the ipcalc package which can calculate IP ranges. Example: $ /gnu/store/7jw45m8d1hcaihnr7978qqg1didl048a-ipcalc-0.41/bin/ipcalc 192.168.0.1/24 Address: 192.168.0.1 11000000.10101000.00000000. 00000001 Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000 Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111 => Network: 192.168.0.0/24 11000000.10101000.00000000. 00000000 HostMin: 192.168.0.1 11000000.10101000.00000000. 00000001 HostMax: 192.168.0.254 11000000.10101000.00000000. 11111110 Broadcast: 192.168.0.255 11000000.10101000.00000000. 11111111 Hosts/Net: 254 Class C, Private Internet * gnu/packages/ipcalc.scm (ipcalc): New file. --- gnu/packages/ipcalc.scm | 61 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 gnu/packages/ipcalc.scm diff --git a/gnu/packages/ipcalc.scm b/gnu/packages/ipcalc.scm new file mode 100644 index 0000000000..5f83389b25 --- /dev/null +++ b/gnu/packages/ipcalc.scm @@ -0,0 +1,61 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Daniel Schaefer <git@danielschaefer.me> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages ipcalc) + #:use-module (gnu packages perl) + #:use-module (gnu packages) + #:use-module (guix download) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix build-system gnu)) + +(define-public ipcalc + (package + (name "ipcalc") + (version "0.41") + (source (origin + (method url-fetch) + (uri (string-append "http://jodies.de/ipcalc-archive/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "12if9sm8h2ac0pgwkw835cgyqjxm6h27k4kfn2vfas9krrqwbafx")))) + (inputs `(("perl" ,perl))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ; No test suite + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out-bin (string-append + (assoc-ref outputs "out") + "/bin"))) + (install-file "ipcalc" out-bin) + #t)))))) + (synopsis "Simple IP network calculator") + (description "ipcalc takes an IP address and netmask and calculates the + resulting broadcast, network, Cisco wildcard mask, and host + range. By giving a second netmask, you can design subnets and + supernets. It is also intended to be a teaching tool and + presents the subnetting results as easy-to-understand binary + values.") + (home-page "http://jodies.de/ipcalc") + (license gpl2+))) -- 2.23.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [bug#37886] [PATCH] gnu: Add ipcalc. 2019-10-23 13:44 [bug#37886] [PATCH] gnu: Add ipcalc Daniel Schäfer @ 2019-10-24 15:12 ` Mathieu Othacehe 2019-11-25 23:42 ` Ludovic Courtès 0 siblings, 1 reply; 5+ messages in thread From: Mathieu Othacehe @ 2019-10-24 15:12 UTC (permalink / raw) To: 37886 Hello Daniel, > here's my first patch to guix - please let me know whether everything's okay. > It adds the ipcalc package which can calculate IP ranges. Example: Welcome to Guix :) This first patch looks fine, I just have two remarks. > new file mode 100644 > index 0000000000..5f83389b25 > --- /dev/null > +++ b/gnu/packages/ipcalc.scm I think you can use the existing networking.scm for this tool. > + (description "ipcalc takes an IP address and netmask and calculates the > + resulting broadcast, network, Cisco wildcard mask, and host > + range. By giving a second netmask, you can design subnets and > + supernets. It is also intended to be a teaching tool and > + presents the subnetting results as easy-to-understand binary > + values.") The indentation is not correct here. You can use M-q if you are using emacs or indent.el script otherwise (see: https://guix.gnu.org/manual/en/html_node/Formatting-Code.html). Can you please send an updated patch? Thanks, Mathieu ^ permalink raw reply [flat|nested] 5+ messages in thread
* [bug#37886] [PATCH] gnu: Add ipcalc. 2019-10-24 15:12 ` Mathieu Othacehe @ 2019-11-25 23:42 ` Ludovic Courtès 2019-12-01 16:32 ` Daniel Schäfer 0 siblings, 1 reply; 5+ messages in thread From: Ludovic Courtès @ 2019-11-25 23:42 UTC (permalink / raw) To: Daniel Schäfer; +Cc: 37886, Mathieu Othacehe Hello Daniel, Did you have a chance to look into the suggestions Mathieu made? See <https://issues.guix.gnu.org/issue/37886>. Thanks in advance! :-) Ludo’. Mathieu Othacehe <m.othacehe@gmail.com> skribis: > Hello Daniel, > >> here's my first patch to guix - please let me know whether everything's okay. >> It adds the ipcalc package which can calculate IP ranges. Example: > > Welcome to Guix :) This first patch looks fine, I just have two remarks. > >> new file mode 100644 >> index 0000000000..5f83389b25 >> --- /dev/null >> +++ b/gnu/packages/ipcalc.scm > > I think you can use the existing networking.scm for this tool. > >> + (description "ipcalc takes an IP address and netmask and calculates the >> + resulting broadcast, network, Cisco wildcard mask, and host >> + range. By giving a second netmask, you can design subnets and >> + supernets. It is also intended to be a teaching tool and >> + presents the subnetting results as easy-to-understand binary >> + values.") > > The indentation is not correct here. You can use M-q if you are using > emacs or indent.el script otherwise (see: > https://guix.gnu.org/manual/en/html_node/Formatting-Code.html). > > Can you please send an updated patch? > > Thanks, > > Mathieu ^ permalink raw reply [flat|nested] 5+ messages in thread
* [bug#37886] [PATCH] gnu: Add ipcalc. 2019-11-25 23:42 ` Ludovic Courtès @ 2019-12-01 16:32 ` Daniel Schäfer 2019-12-02 8:10 ` bug#37886: " Mathieu Othacehe 0 siblings, 1 reply; 5+ messages in thread From: Daniel Schäfer @ 2019-12-01 16:32 UTC (permalink / raw) To: Ludovic Courtès; +Cc: 37886, Mathieu Othacehe Hello Ludo and Matthieu, thanks for taking a look. Sorry, I did not receive Matthieu's answer and I'm not subscribed to the patches ML. It seems that etc/indent-code.el does not correct that particular formatting difference, which I had in my description attribute. I corrected it manually, according to what the other packages look like. It's also moved into networking.scm. off-topic @Ludo, What's the language of your MUA? Ido? (https://en.wiktionary.org/wiki/skribis) --8<---------------cut here---------------start------------->8--- From b511c6a206cb61c22f3da3d6682bfc2a37035463 Mon Sep 17 00:00:00 2001 From: Daniel Schaefer <git@danielschaefer.me> Date: Wed, 23 Oct 2019 15:29:48 +0200 Subject: [PATCH] gnu: Add ipcalc. * gnu/packages/networking.scm (ipcalc): New variable. --- gnu/packages/networking.scm | 54 +++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 1b31314485..13728038d8 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -34,6 +34,7 @@ ;;; Copyright © 2019 Tonton <tonton@riseup.net> ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2019 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl> +;;; Copyright © 2019 Daniel Schaefer <git@danielschaefer.me> ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,6 +62,7 @@ #:use-module (guix build-system go) #:use-module (guix build-system perl) #:use-module (guix build-system python) + #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages admin) #:use-module (gnu packages adns) @@ -2778,3 +2780,55 @@ a service (such as an HTTP or SSH server) on localhost visible to the wider Internet, even behind NAT or restrictive firewalls. A managed front-end relay service is available at @url{https://pagekite.net/}, or you can run your own.") (license license:agpl3+))) + +(define-public ipcalc + (package + (name "ipcalc") + (version "0.41") + (source (origin + (method url-fetch) + (uri (string-append "http://jodies.de/ipcalc-archive/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "12if9sm8h2ac0pgwkw835cgyqjxm6h27k4kfn2vfas9krrqwbafx")))) + (inputs `(("perl" ,perl) + ("tar" ,tar) + ("gzip" ,gzip) + ("tarball" ,source))) + (build-system trivial-build-system) ; no Makefile.PL + (arguments + '(#:modules ((guix build utils)) + #:builder (begin + (use-modules (guix build utils)) + (use-modules (srfi srfi-1)) + (let* ((tarball (assoc-ref %build-inputs "tarball")) + (perl (string-append (assoc-ref %build-inputs + "perl") + "/bin")) + (gzip (string-append (assoc-ref %build-inputs + "gzip") + "/bin/gzip")) + (tar (string-append (assoc-ref %build-inputs + "tar") + "/bin/tar")) + (out (assoc-ref %outputs "out")) + (bin (string-append out "/bin")) + (doc (string-append out "/share/doc/ipcalc"))) + (copy-file tarball "ipcalc.tar.gz") + (invoke gzip "-d" "ipcalc.tar.gz") + (invoke tar "xvf" "ipcalc.tar") + + (mkdir-p bin) + (install-file "ipcalc-0.41/ipcalc" bin) + (patch-shebang (string-append bin "/ipcalc") (list perl)) + (install-file "ipcalc-0.41/ipcalc" doc) + #t)))) + (synopsis "Simple IP network calculator") + (description "ipcalc takes an IP address and netmask and calculates the +resulting broadcast, network, Cisco wildcard mask, and host range. By giving a +second netmask, you can design subnets and supernets. It is also intended to be +a teaching tool and presents the subnetting results as easy-to-understand +binary values.") + (home-page "http://jodies.de/ipcalc") + (license gpl2+))) -- 2.23.0 --8<---------------cut here---------------end------------->8--- Thanks, Daniel On 11/26/19 12:42 AM, Ludovic Courtès wrote: > Hello Daniel, > > Did you have a chance to look into the suggestions Mathieu made? > See <https://issues.guix.gnu.org/issue/37886>. > > Thanks in advance! :-) > > Ludo’. > > Mathieu Othacehe <m.othacehe@gmail.com> skribis: > >> Hello Daniel, >> >>> here's my first patch to guix - please let me know whether everything's okay. >>> It adds the ipcalc package which can calculate IP ranges. Example: >> >> Welcome to Guix :) This first patch looks fine, I just have two remarks. >> >>> new file mode 100644 >>> index 0000000000..5f83389b25 >>> --- /dev/null >>> +++ b/gnu/packages/ipcalc.scm >> >> I think you can use the existing networking.scm for this tool. >> >>> + (description "ipcalc takes an IP address and netmask and calculates the >>> + resulting broadcast, network, Cisco wildcard mask, and host >>> + range. By giving a second netmask, you can design subnets and >>> + supernets. It is also intended to be a teaching tool and >>> + presents the subnetting results as easy-to-understand binary >>> + values.") >> >> The indentation is not correct here. You can use M-q if you are using >> emacs or indent.el script otherwise (see: >> https://guix.gnu.org/manual/en/html_node/Formatting-Code.html). >> >> Can you please send an updated patch? >> >> Thanks, >> >> Mathieu ^ permalink raw reply related [flat|nested] 5+ messages in thread
* bug#37886: [PATCH] gnu: Add ipcalc. 2019-12-01 16:32 ` Daniel Schäfer @ 2019-12-02 8:10 ` Mathieu Othacehe 0 siblings, 0 replies; 5+ messages in thread From: Mathieu Othacehe @ 2019-12-02 8:10 UTC (permalink / raw) To: Daniel Schäfer; +Cc: Ludovic Courtès, 37886-done Hello Daniel, > It seems that etc/indent-code.el does not correct that particular formatting difference, which I had in my description attribute. > I corrected it manually, according to what the other packages look like. > It's also moved into networking.scm. I simplified the builder procedure and removed an explicit reference to package version. I also fixed the license field and the description. Anyway, pushed, thanks for your patch :) Mathieu ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-12-02 8:11 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-10-23 13:44 [bug#37886] [PATCH] gnu: Add ipcalc Daniel Schäfer 2019-10-24 15:12 ` Mathieu Othacehe 2019-11-25 23:42 ` Ludovic Courtès 2019-12-01 16:32 ` Daniel Schäfer 2019-12-02 8:10 ` bug#37886: " Mathieu Othacehe
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/guix.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.