* [bug#51015] [PATCH] Add Random Identity Generator (rig)
2021-10-04 15:35 [bug#51015] [PATCH] Add Random Identity Generator (rig) Chuan Wei Foo
@ 2021-10-05 5:11 ` Chuan Wei Foo
2021-10-05 13:22 ` Liliana Marie Prikler
` (2 subsequent siblings)
3 siblings, 0 replies; 8+ messages in thread
From: Chuan Wei Foo @ 2021-10-05 5:11 UTC (permalink / raw)
To: 51015
This is my first patch submission to GNU Guix.
A few possible issues:
1. I have placed the package in gnu/packages/shellutils.scm. Is that the
right place?
2. I copied the package description from Debian, Ubuntu, and NixOS. Is
that allowed?
3. Code indentation may be incorrect.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [bug#51015] [PATCH] Add Random Identity Generator (rig)
2021-10-04 15:35 [bug#51015] [PATCH] Add Random Identity Generator (rig) Chuan Wei Foo
2021-10-05 5:11 ` Chuan Wei Foo
@ 2021-10-05 13:22 ` Liliana Marie Prikler
2021-10-06 15:23 ` [bug#51015] [PATCH v2] gnu: " Foo Chuan Wei
2021-10-12 9:12 ` [bug#51015] [PATCH v3] " Foo Chuan Wei
3 siblings, 0 replies; 8+ messages in thread
From: Liliana Marie Prikler @ 2021-10-05 13:22 UTC (permalink / raw)
To: Chuan Wei Foo, 51015
Hi,
Am Montag, den 04.10.2021, 23:35 +0800 schrieb Chuan Wei Foo:
> ---
The commit message is missing here. In particular, a ChangeLog is
always required, see “info '(guix)Submitting Patches'”.
> gnu/packages/patches/rig.patch | 42
> ++++++++++++++++++++++++++++++++++
> gnu/packages/shellutils.scm | 29 +++++++++++++++++++++++
> 2 files changed, 71 insertions(+)
> create mode 100644 gnu/packages/patches/rig.patch
>
> diff --git a/gnu/packages/patches/rig.patch
> b/gnu/packages/patches/rig.patch
> new file mode 100644
> index 0000000000..34b4ff6533
> --- /dev/null
> +++ b/gnu/packages/patches/rig.patch
> @@ -0,0 +1,42 @@
> +--- rig-1.11.orig/Makefile
> ++++ rig-1.11/Makefile
> +@@ -1,20 +1,23 @@
> +-PREFIX=/usr/local
> ++PREFIX=${out}
> + BINDIR=${PREFIX}/bin
> + MANDIR=${PREFIX}/man
> + DATADIR=${PREFIX}/share/rig
> ++CXX=g++
> +
> + all: rig rig.6
> + rig: rig.cc
> +- g++ -g rig.cc -o rig -Wall -DDATADIR="\"$(DATADIR)\""
> ++ ${CXX} -O2 -g rig.cc -o rig -Wall -DDATADIR="\"$(DATADIR)\""
> +
> + rig.6: rig.6.in
> + sed s@DATADIR@"$(DATADIR)"@g < rig.6.in > rig.6
> +
> + install: rig rig.6
> +- install -g 0 -m 755 -o 0 -s rig $(BINDIR)
> +- install -g 0 -m 644 -o 0 rig.6 $(MANDIR)/man6/rig.6
> +- install -g 0 -m 755 -o 0 -d $(DATADIR)
> +- install -g 0 -m 644 -o 0 data/*.idx $(DATADIR)
> ++ install -m 755 -d $(DESTDIR)$(BINDIR)
> ++ install -m 755 -d $(DESTDIR)$(DATADIR)
> ++ install -m 755 -d $(DESTDIR)$(MANDIR)/man6/
> ++ install -m 755 rig $(DESTDIR)$(BINDIR)/rig
> ++ install -m 644 data/*.idx $(DESTDIR)$(DATADIR)
> ++ install -m 644 rig.6 $(DESTDIR)$(MANDIR)/man6/rig.6
You could provide the right #:make-flags, but more accurately replacing
the install phase would also work for this, no?
> + clean:
> + rm -rf *~ *.rej *.orig *.o rig rig.6
> +--- rig-1.11.orig/rig.cc
> ++++ rig-1.11/rig.cc
> +@@ -26,6 +26,7 @@
> + #include <time.h>
> + #include <errno.h>
> + #include <assert.h>
> ++#include <string.h>
> +
> + using namespace std;
> +
This one could technically be patched with a substitute* after unpack,
which is probably better than shipping a patch for it.
> diff --git a/gnu/packages/shellutils.scm
> b/gnu/packages/shellutils.scm
> index 94b5536df7..ef93977eb9 100644
> --- a/gnu/packages/shellutils.scm
> +++ b/gnu/packages/shellutils.scm
> @@ -35,6 +35,7 @@
> #:use-module (guix build-system gnu)
> #:use-module (guix build-system go)
> #:use-module (guix build-system python)
> + #:use-module (gnu packages)
> #:use-module (gnu packages autotools)
> #:use-module (gnu packages base)
> #:use-module (gnu packages bison)
> @@ -398,3 +399,31 @@ the UNIX philosophy, these commands are designed
> to be composed via pipes. A
> large collection of functions such as basename, replace, contains or
> is_dir
> are provided as arguments to these commands.")
> (license license:expat)))
> +
> +(define-public rig
> + (package
> + (name "rig")
> + (version "1.11")
> + (source (origin
> + (method url-fetch)
> + (uri (string-append "mirror://sourceforge/rig/rig/"
> + version "/rig-"
> + version ".tar.gz"))
> + (sha256
> + (base32
> + "1f3snysjqqlpk2kgvm5p2icrj4lsdymccmn3igkc2f60smqck
> gq0"))
> + (patches (search-patches "rig.patch"))))
> + (build-system gnu-build-system)
> + (arguments '(#:phases (modify-phases %standard-phases
> + (delete 'configure))
> + #:tests? #f))
> + (synopsis "Random identity generator")
> + (description
> + "RIG (Random Identity Generator) is a free replacement for a
> shareware
> +program out there called 'fake'. It generates random, yet real-
> looking,
> +personal data. It is useful if you need to feed a name to a Web
> site,
> +BBS, or real person, and are too lazy to think of one yourself.
> Also,
> +if the Web site/BBS/person you are giving the information to tries
> to
> +cross-check the city, state, zip, or area code, it will check out.")
I think we can do without references to non-free software in that
description.
> + (home-page "http://rig.sourceforge.net")
> + (license license:gpl2))
License is actually GPL2+.
Regards,
Liliana
^ permalink raw reply [flat|nested] 8+ messages in thread
* [bug#51015] [PATCH v2] gnu: Add Random Identity Generator (rig)
2021-10-04 15:35 [bug#51015] [PATCH] Add Random Identity Generator (rig) Chuan Wei Foo
2021-10-05 5:11 ` Chuan Wei Foo
2021-10-05 13:22 ` Liliana Marie Prikler
@ 2021-10-06 15:23 ` Foo Chuan Wei
2021-10-12 9:12 ` [bug#51015] [PATCH v3] " Foo Chuan Wei
3 siblings, 0 replies; 8+ messages in thread
From: Foo Chuan Wei @ 2021-10-06 15:23 UTC (permalink / raw)
To: 51015
* gnu/packages/shellutils.scm (rig): New public variable.
---
gnu/packages/patches/rig.patch | 42 ++++++++++++++++++++++++++++++++++
gnu/packages/shellutils.scm | 29 +++++++++++++++++++++++
2 files changed, 71 insertions(+)
create mode 100644 gnu/packages/patches/rig.patch
diff --git a/gnu/packages/patches/rig.patch b/gnu/packages/patches/rig.patch
new file mode 100644
index 0000000000..34b4ff6533
--- /dev/null
+++ b/gnu/packages/patches/rig.patch
@@ -0,0 +1,42 @@
+--- rig-1.11.orig/Makefile
++++ rig-1.11/Makefile
+@@ -1,20 +1,23 @@
+-PREFIX=/usr/local
++PREFIX=${out}
+ BINDIR=${PREFIX}/bin
+ MANDIR=${PREFIX}/man
+ DATADIR=${PREFIX}/share/rig
++CXX=g++
+
+ all: rig rig.6
+ rig: rig.cc
+- g++ -g rig.cc -o rig -Wall -DDATADIR="\"$(DATADIR)\""
++ ${CXX} -O2 -g rig.cc -o rig -Wall -DDATADIR="\"$(DATADIR)\""
+
+ rig.6: rig.6.in
+ sed s@DATADIR@"$(DATADIR)"@g < rig.6.in > rig.6
+
+ install: rig rig.6
+- install -g 0 -m 755 -o 0 -s rig $(BINDIR)
+- install -g 0 -m 644 -o 0 rig.6 $(MANDIR)/man6/rig.6
+- install -g 0 -m 755 -o 0 -d $(DATADIR)
+- install -g 0 -m 644 -o 0 data/*.idx $(DATADIR)
++ install -m 755 -d $(DESTDIR)$(BINDIR)
++ install -m 755 -d $(DESTDIR)$(DATADIR)
++ install -m 755 -d $(DESTDIR)$(MANDIR)/man6/
++ install -m 755 rig $(DESTDIR)$(BINDIR)/rig
++ install -m 644 data/*.idx $(DESTDIR)$(DATADIR)
++ install -m 644 rig.6 $(DESTDIR)$(MANDIR)/man6/rig.6
+
+ clean:
+ rm -rf *~ *.rej *.orig *.o rig rig.6
+--- rig-1.11.orig/rig.cc
++++ rig-1.11/rig.cc
+@@ -26,6 +26,7 @@
+ #include <time.h>
+ #include <errno.h>
+ #include <assert.h>
++#include <string.h>
+
+ using namespace std;
+
diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index 94b5536df7..662ca84d94 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -35,6 +35,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
+ #:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
@@ -398,3 +399,31 @@ the UNIX philosophy, these commands are designed to be composed via pipes. A
large collection of functions such as basename, replace, contains or is_dir
are provided as arguments to these commands.")
(license license:expat)))
+
+(define-public rig
+ (package
+ (name "rig")
+ (version "1.11")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/rig/rig/"
+ version "/rig-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1f3snysjqqlpk2kgvm5p2icrj4lsdymccmn3igkc2f60smqckgq0"))
+ (patches (search-patches "rig.patch"))))
+ (build-system gnu-build-system)
+ (arguments '(#:phases (modify-phases %standard-phases
+ (delete 'configure))
+ #:tests? #f))
+ (synopsis "Random identity generator")
+ (description
+ "RIG (Random Identity Generator) is a free replacement for a shareware
+program out there called 'fake'. It generates random, yet real-looking,
+personal data. It is useful if you need to feed a name to a Web site,
+BBS, or real person, and are too lazy to think of one yourself. Also,
+if the Web site/BBS/person you are giving the information to tries to
+cross-check the city, state, zip, or area code, it will check out.")
+ (home-page "http://rig.sourceforge.net")
+ (license license:gpl2+)))
base-commit: f868ed2a75b55400107b80fcc1e41dcfb6b3c28c
--
2.25.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [bug#51015] [PATCH v3] gnu: Add Random Identity Generator (rig)
2021-10-04 15:35 [bug#51015] [PATCH] Add Random Identity Generator (rig) Chuan Wei Foo
` (2 preceding siblings ...)
2021-10-06 15:23 ` [bug#51015] [PATCH v2] gnu: " Foo Chuan Wei
@ 2021-10-12 9:12 ` Foo Chuan Wei
2021-10-26 10:43 ` [bug#51015] [PATCH] " Ludovic Courtès
3 siblings, 1 reply; 8+ messages in thread
From: Foo Chuan Wei @ 2021-10-12 9:12 UTC (permalink / raw)
To: 51015
* gnu/packages/shellutils.scm (rig): New variable.
---
gnu/packages/patches/rig-makefile.patch | 27 ++++++++++++++++++
gnu/packages/shellutils.scm | 38 +++++++++++++++++++++++++
2 files changed, 65 insertions(+)
create mode 100644 gnu/packages/patches/rig-makefile.patch
diff --git a/gnu/packages/patches/rig-makefile.patch b/gnu/packages/patches/rig-makefile.patch
new file mode 100644
index 0000000000..24cc1c5810
--- /dev/null
+++ b/gnu/packages/patches/rig-makefile.patch
@@ -0,0 +1,27 @@
+diff -ur rig-1.11-orig/Makefile rig-1.11/Makefile
+--- rig-1.11-orig/Makefile
++++ rig-1.11/Makefile
+@@ -5,16 +5,18 @@
+
+ all: rig rig.6
+ rig: rig.cc
+- g++ -g rig.cc -o rig -Wall -DDATADIR="\"$(DATADIR)\""
++ ${CXX} -O2 -g rig.cc -o rig -Wall -DDATADIR="\"$(DATADIR)\""
+
+ rig.6: rig.6.in
+ sed s@DATADIR@"$(DATADIR)"@g < rig.6.in > rig.6
+
+ install: rig rig.6
+- install -g 0 -m 755 -o 0 -s rig $(BINDIR)
+- install -g 0 -m 644 -o 0 rig.6 $(MANDIR)/man6/rig.6
+- install -g 0 -m 755 -o 0 -d $(DATADIR)
+- install -g 0 -m 644 -o 0 data/*.idx $(DATADIR)
++ install -m 755 -d $(DESTDIR)$(BINDIR)
++ install -m 755 -d $(DESTDIR)$(DATADIR)
++ install -m 755 -d $(DESTDIR)$(MANDIR)/man6/
++ install -m 755 rig $(DESTDIR)$(BINDIR)/rig
++ install -m 644 data/*.idx $(DESTDIR)$(DATADIR)
++ install -m 644 rig.6 $(DESTDIR)$(MANDIR)/man6/rig.6
+
+ clean:
+ rm -rf *~ *.rej *.orig *.o rig rig.6
diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index 94b5536df7..1a1b35d48b 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -35,6 +35,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
+ #:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
@@ -398,3 +399,40 @@ the UNIX philosophy, these commands are designed to be composed via pipes. A
large collection of functions such as basename, replace, contains or is_dir
are provided as arguments to these commands.")
(license license:expat)))
+
+(define-public rig
+ (package
+ (name "rig")
+ (version "1.11")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/rig/rig/"
+ version "/rig-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1f3snysjqqlpk2kgvm5p2icrj4lsdymccmn3igkc2f60smqckgq0"))
+ (patches (search-patches "rig-makefile.patch"))))
+ (build-system gnu-build-system)
+ (arguments `(#:make-flags
+ (list (string-append "CXX=" ,(cxx-for-target))
+ (string-append "PREFIX=" %output))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (substitute* "rig.cc"
+ (("^#include <string>")
+ "#include <cstring>"))
+ #t)))
+ #:tests? #f))
+ (home-page "http://rig.sourceforge.net")
+ (synopsis "Random identity generator")
+ (description
+ "RIG (Random Identity Generator) generates random, yet real-looking,
+personal data. It is useful if you need to feed a name to a Web site, BBS, or
+real person, and are too lazy to think of one yourself. Also, if the Web
+site/BBS/person you are giving the information to tries to cross-check the
+city, state, zip, or area code, it will check out.")
+ (license license:gpl2+)))
base-commit: 35aaf1fe10488ae9ed732fb2c383d09a70c109c0
--
2.25.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [bug#51015] [PATCH] Add Random Identity Generator (rig)
2021-10-12 9:12 ` [bug#51015] [PATCH v3] " Foo Chuan Wei
@ 2021-10-26 10:43 ` Ludovic Courtès
2021-10-29 6:53 ` [bug#51015] [PATCH v4] gnu: " Foo Chuan Wei
0 siblings, 1 reply; 8+ messages in thread
From: Ludovic Courtès @ 2021-10-26 10:43 UTC (permalink / raw)
To: Foo Chuan Wei; +Cc: 51015
Hi,
Foo Chuan Wei <chuanwei.foo@hotmail.com> skribis:
> * gnu/packages/shellutils.scm (rig): New variable.
[...]
> + install: rig rig.6
> +- install -g 0 -m 755 -o 0 -s rig $(BINDIR)
> +- install -g 0 -m 644 -o 0 rig.6 $(MANDIR)/man6/rig.6
> +- install -g 0 -m 755 -o 0 -d $(DATADIR)
> +- install -g 0 -m 644 -o 0 data/*.idx $(DATADIR)
> ++ install -m 755 -d $(DESTDIR)$(BINDIR)
> ++ install -m 755 -d $(DESTDIR)$(DATADIR)
As Liliana wrote regarding PREFIX, please use ‘substitute*’ instead of a
patch to modify these bits.
Could you send an updated patch?
With this change in place, the patch will be ready to go!
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [bug#51015] [PATCH v4] gnu: Add Random Identity Generator (rig)
2021-10-26 10:43 ` [bug#51015] [PATCH] " Ludovic Courtès
@ 2021-10-29 6:53 ` Foo Chuan Wei
2021-10-30 14:10 ` bug#51015: " Ludovic Courtès
0 siblings, 1 reply; 8+ messages in thread
From: Foo Chuan Wei @ 2021-10-29 6:53 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 51015
* gnu/packages/shellutils.scm (rig): New variable.
---
gnu/packages/shellutils.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index 3ded0ee897..6271b6e375 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -12,6 +12,7 @@
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,6 +38,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
+ #:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
@@ -463,3 +465,51 @@ the UNIX philosophy, these commands are designed to be composed via pipes. A
large collection of functions such as basename, replace, contains or is_dir
are provided as arguments to these commands.")
(license license:expat)))
+
+(define-public rig
+ (package
+ (name "rig")
+ (version "1.11")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/rig/rig/"
+ version "/rig-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1f3snysjqqlpk2kgvm5p2icrj4lsdymccmn3igkc2f60smqckgq0"))))
+ (build-system gnu-build-system)
+ (arguments `(#:make-flags
+ (list (string-append "CXX=" ,(cxx-for-target))
+ (string-append "PREFIX=" %output))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (substitute* "rig.cc"
+ (("^#include <string>")
+ "#include <cstring>"))
+ (substitute* "Makefile"
+ (("g\\+\\+")
+ "${CXX} -O2")
+ (("install -g 0 -m 755 -o 0 -s rig \\$\\(BINDIR\\)")
+ "install -m 755 -d $(DESTDIR)$(BINDIR)\n\t\
+install -m 755 rig $(DESTDIR)$(BINDIR)/rig")
+ (("install -g 0 -m 644 -o 0 rig.6 \\$\\(MANDIR\\)/man6/rig.6")
+ "install -m 755 -d $(DESTDIR)$(MANDIR)/man6/\n\t\
+install -m 644 rig.6 $(DESTDIR)$(MANDIR)/man6/rig.6")
+ (("install -g 0 -m 755 -o 0 -d \\$\\(DATADIR\\)")
+ "install -m 755 -d $(DESTDIR)$(DATADIR)")
+ (("install -g 0 -m 644 -o 0 data/\\*.idx \\$\\(DATADIR\\)")
+ "install -m 644 data/*.idx $(DESTDIR)$(DATADIR)")))))
+ #:tests? #f))
+ (home-page "http://rig.sourceforge.net")
+ (synopsis "Random identity generator")
+ (description
+ "RIG (Random Identity Generator) generates random, yet real-looking,
+personal data. It is useful if you need to feed a name to a Web site, BBS, or
+real person, and are too lazy to think of one yourself. Also, if the Web
+site/BBS/person you are giving the information to tries to cross-check the
+city, state, zip, or area code, it will check out.")
+ (license license:gpl2+)))
base-commit: ad39268cdf075f4c4eeb87ed78ce46ca6f817675
--
2.25.1
^ permalink raw reply related [flat|nested] 8+ messages in thread