bug#56722: guix pull fails -- unbound variable in gnu/home/services/symlink-manager.scm

2022-07-23 Thread paren--- via Bug reports for GNU Guix


Log here:


What's weird is that the culprit, gnu/home/services/symlink-manager.scm,
*does* have access to `service-type`, because it imports (gnu home
services), which re-exports it!

My attempts to `git bisect` were thwarted by another build failure:

```
[I] /home/paren/code/guix
ʃ git bisect start
[I] /home/paren/code/guix
ʃ git bisect bad
[I] /home/paren/code/guix
  # the commit I'm on
ʃ git bisect good cd3c4ad8fc113608eade2e5c29ba8486cde01157
[I] /home/paren/code/guix
ʃ git bisect run guix shell -D guix -- make
[log output: 
]
```

This bug is also experienced by `vhallac` on IRC.

-- (





bug#56722: guix pull fails -- unbound variable in gnu/home/services/symlink-manager.scm

2022-07-23 Thread paren--- via Bug reports for GNU Guix
vhallac has determined that commit
ba22560627f848f40891a56355ff26b6de1380bc, which allowed `guix gc` to
delete Home generations, caused this issue. Somehow.

-- (





bug#56722: guix pull fails -- unbound variable in gnu/home/services/symlink-manager.scm

2022-07-23 Thread Maxime Devos


On 23-07-2022 11:35, paren--- via Bug reports for GNU Guix wrote:

Log here:


What's weird is that the culprit, gnu/home/services/symlink-manager.scm,
*does*  have access to `service-type`, because it imports (gnu home
services), which re-exports it!


Such weirdness can be caused by cycles in the module structure, maybe 
see if you can locate a cycle between (gnu home services 
symlink-manager), (gnu home services) and the modules from that 
ba2256... commit and break it?


Greetings,
Maxime



OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#56722: guix pull fails -- unbound variable in gnu/home/services/symlink-manager.scm

2022-07-23 Thread Maxime Devos


On 23-07-2022 11:35, paren--- via Bug reports for GNU Guix wrote:

[log 
output:]


I think I've seen this one before, but I couldn't figure it out.


In ice-9/boot-9.scm:
   1685:16  6 (raise-exception _ #:continuable? _)
   1685:16  5 (raise-exception _ #:continuable? _)
   1780:13  4 (_ #<&compound-exception components: (#<&assertion-fail…>)
In guix/build/compile.scm:
 191:6  3 (_ _ . _)
In ice-9/boot-9.scm:
   1747:15  2 (with-exception-handler # …)
In guix/build/compile.scm:
194:22  1 (_)
In unknown file:
0 (make-stack #t)
guix/build/compile.scm:194:22: In procedure cdr: Wrong type argument in 
position 1 (expecting pair): #f


Looks like an &assertion-failure is being obscured, so I guess the error 
handling in (guix build compile) is wrong somehow?

Greetings,
Maxime



OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#55634: inkscape does not find icons, needs wrapping or such for GDK_PIXBUF_MODULE_FILE

2022-07-23 Thread Maxime Devos


On 13-07-2022 05:30, Maxim Cournoyer wrote:

[...]
I've now implemented this, upgrading Inkscape to 1.2 in the process.
See commits 023259c4bd1a38225fb1c06660c0cf393210e811,
7dcba233a3745cfdcc291adf46261548eb2f3d76 and
b1523ffac597d56ab9657ab1c1b1a7fc49344d67.

It's now possible to 'guix shell --pure inkscape -- inkscape'!


I can confirm it works!

Thanks,
Maxime.



OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#52823: [PATCH 1/2] gnu: gx-vbass-preamp-lv2: Update to latest commit to fix build issue.

2022-07-23 Thread Maxime Devos


On 17-07-2022 20:00, Thorsten Wilms wrote:

+  (arguments
+   (substitute-keyword-arguments (package-arguments gx-guvnor-lv2)
+ ((#:make-flags flags) `(cons (string-append "CC=" ,(cxx-for-target)) 
,flags


This presumably works but is fragile -- if at some point in time, 
gx-guvnor-lv2 decides to change to a G-exp, this won't compile anymore. 
Instead, you can do #~(cons (string-append "CC=" #$(cxx-for-target)) 
#$flags), which works whether or not gx-guvnor-lv2 uses S-exps or G-exps.


Also, I don't understand why you are doing CC=g++. CC stands for 
c-compiler, not C++ compiler, so I would have expected "CC=" 
#$(cc-for-target) or "CXX=" #$(cxx-for-target) instead, unless 
gx-vbass-preamp-lv2 is not following these conventions.


Otherwise, these patches look reasonable to me, though TBC, I did not 
test them, I only looked at the patches theirselves.


Greetings,
Maxime.



OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Liliana Marie Prikler
* gnu/packages/toys.scm (fortunes-jkirchartz): New variable.
---
 gnu/packages/toys.scm | 49 +++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/toys.scm b/gnu/packages/toys.scm
index b3e4cc4f84..556f196a55 100644
--- a/gnu/packages/toys.scm
+++ b/gnu/packages/toys.scm
@@ -23,6 +23,7 @@
 
 (define-module (gnu packages toys)
   #:use-module (gnu packages)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gtk)
@@ -35,8 +36,10 @@ (define-module (gnu packages toys)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system copy)
   #:use-module (guix build-system meson)
   #:use-module (guix download)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
@@ -69,6 +72,52 @@ (define-public daikichi
 (variable "DAIFUKU_FORTUNE_PATH")
 (files '("share/fortunes")))
 
+(define-public fortunes-jkirchartz
+  (let ((commit "2e32ba0a57e3842dc06c8128d880ab4c8ec3aefc")
+(revision "2022.05.23")); Use a date rather than a number
+(package
+  (name "fortunes-jkirchartz")
+  (version (git-version "0" revision commit))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url "https://github.com/JKirchartz/fortunes";)
+  (commit commit)))
+(file-name (git-file-name name version))
+(sha256
+ (base32
+  "1ym4ldzww5yfd76q7zvhi491bqlykfjnc215bqx1cbj0c8ndb2l4"))
+(snippet
+ #~(for-each delete-file
+ ;; incompatible license
+ '("BibleAbridged")
+  ;; To read the fortunes, but also to compile them.
+  ;; No support for cross-compilation yet
+  (build-system copy-build-system)
+  (propagated-inputs (list daikichi))
+  (native-inputs (list gnu-make))
+  (arguments
+   (list #:install-plan
+ #~`(("." "share/fortunes" #:include-regexp ("\\.dat$")))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-source
+   (lambda _
+ (substitute* "showerthoughts"
+   (("<") "<")
+   ((">") ">")
+   (("&") "&"))
+ (substitute* "Makefile"
+   (("strfile") "daikichi pack"
+ (add-before 'install 'build
+   (lambda _
+ (invoke "make"))
+  (home-page "https://github.com/JKirchartz/fortunes";)
+  (synopsis "Collection of fortunes")
+  (description "This package contains a large collection of fortunes drawn
+from sources all around the world.")
+  (license license:unlicense
+
 (define-public lolcat
   (let ((commit "35dca3d0a381496d7195cd78f5b24aa7b62f2154")
 (revision "0"))
-- 
2.37.0






bug#54691: [PATCH 1/5] gnu: Add daikichi.

2022-07-23 Thread Liliana Marie Prikler
* gnu/packages/toys.scm (daikichi): New variable.
---
 gnu/packages/toys.scm | 32 +++-
 1 file changed, 31 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/toys.scm b/gnu/packages/toys.scm
index fb2f367490..b3e4cc4f84 100644
--- a/gnu/packages/toys.scm
+++ b/gnu/packages/toys.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2017, 2018, 2020–2022 Tobias Geerinckx-Rice 
 ;;; Copyright © 2019 Jesse Gibbons 
 ;;; Copyright © 2019, 2020, 2021 Timotej Lazar 
-;;; Copyright © 2019 Liliana Marie Prikler 
+;;; Copyright © 2019, 2022 Liliana Marie Prikler 
 ;;; Copyright © 2020 Efraim Flashner 
 ;;; Copyright © 2021 Leo Famulari 
 ;;;
@@ -27,18 +27,48 @@ (define-module (gnu packages toys)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages man)
+  #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages pretty-print)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system meson)
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix utils))
 
+(define-public daikichi
+  (package
+(name "daikichi")
+(version "0.1")
+(source (origin
+  (method git-fetch)
+  (uri (git-reference
+(url "https://gitlab.com/lilyp/daikichi";)
+(commit version)))
+  (file-name (git-file-name name version))
+  (sha256
+   (base32
+"13pj5gl1rf6nn97153psbmrj4djsc6rzaryawi29s32pnng5n28s"
+(build-system meson-build-system)
+(inputs (list gmp fmt))
+(native-inputs (list pkg-config))
+(home-page "https://gitlab.com/lilyp/daikichi";)
+(synopsis "Display random fortunes")
+(description "Daikichi provides an alternative implementation of the
+@command{fortune} command, which displays random quotes from a database.
+This package provides just the utilities and no quotes.")
+(license license:gpl3+)
+(native-search-paths
+ (list (search-path-specification
+(variable "DAIFUKU_FORTUNE_PATH")
+(files '("share/fortunes")))
+
 (define-public lolcat
   (let ((commit "35dca3d0a381496d7195cd78f5b24aa7b62f2154")
 (revision "0"))
-- 
2.37.0






bug#54691: [PATCH 4/5] gnu: Remove rinutils.

2022-07-23 Thread Liliana Marie Prikler
This package was introduced as native input to the now removed fortune-mod,
so let's remove it as well.

* gnu/packages/games.scm (rinutils): Delete variable.
---
 gnu/packages/games.scm | 59 --
 1 file changed, 59 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 4110ea99d1..c22d6611f6 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -7570,65 +7570,6 @@ (define shlomif-cmake-modules
 (sha256
  (base32 "05xdikw5ln0yh8p5chsmd8qnndmxg5b5vjlfpdqrjcb1ncqzywkc"
 
-(define-public rinutils
-  (package
-(name "rinutils")
-(version "0.10.1")
-(source (origin
-  (method git-fetch)
-  (uri (git-reference
-(url "https://github.com/shlomif/rinutils";)
-(commit version)))
-  (file-name (git-file-name name version))
-  (sha256
-   (base32
-"0r90kncf6mvyklifpdsnm50iya7w2951nz35nlgndmqnr82gvdwf"
-(build-system cmake-build-system)
-(arguments
- (list #:phases
-   #~(modify-phases %standard-phases
-   (add-after 'unpack 'copy-cmake-modules
- (lambda _
-   (copy-file #$shlomif-cmake-modules
-  (string-append "cmake/"
- (strip-store-file-name
-  #$shlomif-cmake-modules)
-   (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
-   (when tests?
- (with-directory-excursion "../source"
-   (setenv "FCS_TEST_BUILD" "1")
-   (setenv "RINUTILS_TEST_BUILD" "1")
-   ;; TODO: Run tests after setting RINUTILS_TEST_TIDY to 
`1',
-   ;; which requires tidy-all.
-   ;; (setenv "RINUTILS_TEST_TIDY" "1")
-   (invoke "perl"
-   
"CI-testing/continuous-integration-testing.pl"
-(native-inputs
- (list perl
-   ;; The following are needed only for tests.
-   perl-class-xsaccessor
-   perl-file-find-object
-   perl-io-all
-   perl-test-differences
-   perl-test-runvalgrind
-   pkg-config))
-(inputs
- (list cmocka
-   perl-env-path
-   perl-inline
-   perl-inline-c
-   perl-string-shellquote
-   perl-test-trailingspace
-   perl-file-find-object-rule
-   perl-text-glob
-   perl-number-compare
-   perl-moo))
-(home-page "https://www.shlomifish.org/open-source/projects/";)
-(synopsis "C11 / gnu11 utilities C library")
-(description "This package provides C11 / gnu11 utilities C library")
-(license license:expat)))
-
 (define xonotic-data
   (package
 (name "xonotic-data")
-- 
2.37.0






bug#54691: [PATCH 3/5] gnu: Remove fortune-mod.

2022-07-23 Thread Liliana Marie Prikler
* gnu/packages/games.scm (fortune-mod): Delete variable.
* gnu/packages/toys.scm (fortune-mod): Add deprecated package alias.
---
 gnu/packages/games.scm | 73 --
 gnu/packages/toys.scm  |  3 ++
 2 files changed, 3 insertions(+), 73 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index d55a2ee867..4110ea99d1 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -7629,79 +7629,6 @@ (define-public rinutils
 (description "This package provides C11 / gnu11 utilities C library")
 (license license:expat)))
 
-(define-public fortune-mod
-  (package
-(name "fortune-mod")
-(version "3.14.0")
-(source
- (origin
-   (method git-fetch)
-   (uri (git-reference
- (url "https://github.com/shlomif/fortune-mod";)
- (commit (string-append "fortune-mod-" version
-   (file-name (git-file-name name version))
-   (sha256
-(base32 "1f2zif3s6vddbhph4jr1cymdsn7gagg59grrxs0yap6myqmy8shg"
-(build-system cmake-build-system)
-(arguments
- (list #:configure-flags
-   #~(let ((fortunes (string-append #$output "/share/fortunes")))
-   (list (string-append "-DLOCALDIR=" fortunes)
- (string-append "-DLOCALODIR=" fortunes "/off")
- (string-append "-DCOOKIEDIR=" fortunes)
- (string-append "-DOCOOKIEDIR=" fortunes "/off")))
-   #:test-target "check"
-   #:phases
-   #~(modify-phases %standard-phases
-   (add-after 'unpack 'enter-build-directory
- (lambda _
-   (chdir "fortune-mod")))
-   (add-after 'enter-build-directory 'symlink-rinutils
- (lambda _
-   (mkdir-p "rinutils")
-   (symlink #$(this-package-native-input "rinutils")
-"rinutils/rinutils")))
-   (add-after 'enter-build-directory 'copy-cmake-modules
- (lambda _
-   (copy-file #$shlomif-cmake-modules
-  (string-append "cmake/"
- (strip-store-file-name
-  #$shlomif-cmake-modules)
-   (add-after 'enter-build-directory 'delete-failing-test
- (lambda _
-   ;; TODO: Valgrind tests fail for some reason.  Similar 
issue?
-   ;; https://github.com/shlomif/fortune-mod/issues/21
-   (delete-file "tests/data/valgrind.t")
-   (with-output-to-file "tests/scripts/split-valgrind.pl"
- (const #t
-   (add-after 'install 'fix-install-directory
- ;; Move fortune from "games/" to "bin/" and remove the
- ;; former.  This is easier than patching CMakeLists.txt
- ;; since the tests hard-code the location as well.
- (lambda _
-   (with-directory-excursion #$output
- (rename-file "games/fortune" "bin/fortune")
- (rmdir "games")))
-(inputs (list recode))
-(native-inputs
- (list perl
-   ;; For generating the documentation.
-   docbook-xml-5
-   docbook-xsl
-   perl-app-xml-docbook-builder
-   ;; The following are only needed for tests.
-   perl-file-find-object
-   perl-test-differences
-   perl-class-xsaccessor
-   perl-io-all
-   perl-test-runvalgrind
-   rinutils))
-(home-page "https://www.shlomifish.org/open-source/projects/fortune-mod/";)
-(synopsis "The Fortune Cookie program from BSD games")
-(description "Fortune is a command-line utility which displays a random
-quotation from a collection of quotes.")
-(license license:bsd-4)))
-
 (define xonotic-data
   (package
 (name "xonotic-data")
diff --git a/gnu/packages/toys.scm b/gnu/packages/toys.scm
index 556f196a55..2492a32d81 100644
--- a/gnu/packages/toys.scm
+++ b/gnu/packages/toys.scm
@@ -118,6 +118,9 @@ (define-public fortunes-jkirchartz
 from sources all around the world.")
   (license license:unlicense
 
+(define-public fortune-mod
+  (deprecated-package "fortune-mod" fortunes-jkirchartz))
+
 (define-public lolcat
   (let ((commit "35dca3d0a381496d7195cd78f5b24aa7b62f2154")
 (revision "0"))
-- 
2.37.0






bug#54691: [PATCH 5/5] gnu: Remove shlomif-cmake-modules.

2022-07-23 Thread Liliana Marie Prikler
This origin was added for the now removed fortune-mod, so let's remove it
as well.

* gnu/packages/games.scm (shlomif-cmake-modules): Delete variable.
---
 gnu/packages/games.scm | 10 --
 1 file changed, 10 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c22d6611f6..0c5f298283 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -7560,16 +7560,6 @@ (define-public crispy-doom
 original.")
 (home-page "https://www.chocolate-doom.org/wiki/index.php/Crispy_Doom";)))
 
-(define shlomif-cmake-modules
-  (origin
-(method url-fetch)
-(uri (string-append
-  "https://raw.githubusercontent.com/shlomif/shlomif-cmake-modules/";
-  "89f05caf86078f783873975525230cf4fecede8a"
-  "/shlomif-cmake-modules/Shlomif_Common.cmake"))
-(sha256
- (base32 "05xdikw5ln0yh8p5chsmd8qnndmxg5b5vjlfpdqrjcb1ncqzywkc"
-
 (define xonotic-data
   (package
 (name "xonotic-data")
-- 
2.37.0






bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Maxime Devos


On 23-07-2022 17:11, Liliana Marie Prikler wrote:

+  (propagated-inputs (list daikichi))


It's used in the Makefile, so I'd have expected native-inputs here -- 
does "guix build fortunes-jkirchartz --target=aarch64-linux-gnu" or such 
work?



  (description "This package contains a large collection of fortunes drawn
+from sources all around the world.")
For the people who don't know yet what fortunes are yet, I'd recommend 
adding that these fortunes can be read with the package 'daikichi'.


Greetings,
Maxime.




OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Maxime Devos

On 23-07-2022 17:11, Liliana Marie Prikler wrote:


+(revision "2022.05.23")); Use a date rather than a number


This is a technically a possibility, but currently the convention is to 
use numbers and the number convention is expected by (guix upstream) and 
the (not yet merged, needs some finishing touches IIRC) latest-git 
updater, and AFAIK there hasn't been any discussion on switching to dates.


Greetings,
Maxime.



OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#54691: [PATCH 3/5] gnu: Remove fortune-mod.

2022-07-23 Thread Maxime Devos

On 23-07-2022 17:13, Liliana Marie Prikler wrote:


* gnu/packages/games.scm (fortune-mod): Delete variable.
* gnu/packages/toys.scm (fortune-mod): Add deprecated package alias.


For future readers, I believe a link to the bug report to be in order.


+(define-public fortune-mod
+  (deprecated-package "fortune-mod" fortunes-jkirchartz))

Likewise.

Greetings,
Maxime.



OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Liliana Marie Prikler
Am Samstag, dem 23.07.2022 um 21:54 +0200 schrieb Maxime Devos:
> 
> On 23-07-2022 17:11, Liliana Marie Prikler wrote:
> > +  (propagated-inputs (list daikichi))
> 
> It's used in the Makefile, so I'd have expected native-inputs here --
> does "guix build fortunes-jkirchartz --target=aarch64-linux-gnu" or
> such work?
That's what I tried to explain in the comment above.  Because I'm using
native size and endianness, cross compilation only works if the two are
the same.  For example, you could theoretically cross-compile from
x86_64 to aarch64 little endian, but not from aarch64 little endian to
aarch64 big endian.  IMHO that restriction is big enough to practically
make it "not cross-compilable".

That said, one of my first goals is to make it not so, particularly to
always store integers in network order (big endian), so that afterwards
only size is a concern.

> >   (description "This package contains a large collection of
> > fortunes drawn
> > +from sources all around the world.")
> For the people who don't know yet what fortunes are yet, I'd
> recommend adding that these fortunes can be read with the package
> 'daikichi'.
Well, the command to read those fortunes remains "fortune" even if the
package we use is daikichi.  I'm not sure if "Fortunes can be read by
the fortune command" are helpful, but perhaps "a large collection of
quotes to display with @command{fortune}" is?





bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Liliana Marie Prikler
Am Samstag, dem 23.07.2022 um 21:56 +0200 schrieb Maxime Devos:
> On 23-07-2022 17:11, Liliana Marie Prikler wrote:
> 
> > +    (revision "2022.05.23"))    ; Use a date rather than a
> > number
> 
> This is a technically a possibility, but currently the convention is
> to use numbers and the number convention is expected by (guix
> upstream) and the (not yet merged, needs some finishing touches IIRC)
> latest-git updater, and AFAIK there hasn't been any discussion on
> switching to dates.
In this case I am departing from the usual convention because I think
calendar versioning is more useful for this type of content.  Given the
issue that lead to this patch at all, I'm not sure if support for
automatic updates would be a good idea with this package.  IMHO, it's a
feature rather than a bug that you can't accidentally pull a third of
BSD's offensive database, were it to ever land in this repo.

Should I explain this thought more clearly in the package or do
automatic updates trump ethical concerns?





bug#54691: [PATCH 3/5] gnu: Remove fortune-mod.

2022-07-23 Thread Liliana Marie Prikler
Am Samstag, dem 23.07.2022 um 21:58 +0200 schrieb Maxime Devos:
> On 23-07-2022 17:13, Liliana Marie Prikler wrote:
> 
> > * gnu/packages/games.scm (fortune-mod): Delete variable.
> > * gnu/packages/toys.scm (fortune-mod): Add deprecated package
> > alias.
> 
> For future readers, I believe a link to the bug report to be in
> order.
> 
> > +(define-public fortune-mod
> > +  (deprecated-package "fortune-mod" fortunes-jkirchartz))
> Likewise.
Will do.





bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Maxime Devos


On 23-07-2022 22:43, Liliana Marie Prikler wrote:

On 23-07-2022 17:11, Liliana Marie Prikler wrote:

+  (propagated-inputs (list daikichi))

It's used in the Makefile, so I'd have expected native-inputs here --
does "guix build fortunes-jkirchartz --target=aarch64-linux-gnu" or
such work?

That's what I tried to explain in the comment above.  Because I'm using
native size and endianness, cross compilation only works if the two are
the same.  For example, you could theoretically cross-compile from
x86_64 to aarch64 little endian, but not from aarch64 little endian to
aarch64 big endian.  IMHO that restriction is big enough to practically
make it "not cross-compilable".


OK, I read over the the comment that it's not cross-compilable. But now 
you are writing it is cross-compilable in restricted contexts. So "guix 
build --target=aarch64-linux-gnu --system=x86_64-linux-gnu" should work 
(IIUC they have the same sizes and endianness, though not 100% sure).


(Unfortunately there is currently not a method to specify that packages 
are not cross-compilable in restricted contexts ...)


However, that's was I was trying to say -- what I tried to say, is that 
by sorting the inputs incorrectly it _becomes_ not cross-compilable, so 
once daikichi supports cross-compilation you (generic you, not you in 
particular) will have to modify the package to move daikichi to 
native-inputs, and in the mean time people are misled by this package 
definition on how native / non-native works. Actually, this not only 
applies to the future, but to the present, because IIUC aarch64 and 
x86_64 are sufficiently similar for "guix build 
--target=aarch64-linux-gnu --system=x86_64-linux-gnu" to be able to work 
except for daikichi being compiled for the wrong architecture currently.


Even better would be if daikichi had a cross-compiler mode, where you 
can compile to another endianness or size. (Or simpler, work with a 
fixed endianness and integer size such that cross-compilation concerns 
disappear entirely, but there's more than one way to do it.)


Another problem is that currently it is propagated, but daikichi is not 
a dependency of fortunes-jkirchartz.


Greetings,
Maxime.



OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#56726: hqryw0zg7hqsdmgrrmgh9qm98y4my8p9-git-minimal fails to build

2022-07-23 Thread rdes via Bug reports for GNU Guix
```

# guix pull
Updating channel 'guix' from Git repository at 
'https://git.savannah.gnu.org/git/guix.git'...
Building from this channel:
guix https://git.savannah.gnu.org/git/guix.git 32a0036
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
building /gnu/store/hqryw0zg7hqsdmgrrmgh9qm98y4my8p9-git-minimal-2.37.1.drv...
- 'check' phased-log 38512 63
ok 207 - commit NNO files attr=text aeol= crlf=false LF_mix_cr
- 'check' phaseBacktrace:
14 (primitive-load 
"/gnu/store/g21invh5c7bvhk29nd6693b81f6yc7si-compute-guix-derivation")
In ice-9/eval.scm:
155:9 13 (_ _)
159:9 12 (_ #(#(#(#(#(#(#(#(#(#(#(#(#(#(#(#(# ?) ?) ?) ?) 
?) ?) ?) ?) ?) ?) ?) ?) ?) ?) ?)
?))
In ice-9/boot-9.scm:
152:2 11 (with-fluid* _ _ _)
152:2 10 (with-fluid* _ _ _)
In ./guix/store.scm:
2168:24 9 (run-with-store # # ?)
1996:8 8 (_ #)
In ./guix/gexp.scm:
300:22 7 (_ #)
1181:2 6 (_ #)
1047:2 5 (_ #)
893:4 4 (_ #)
In ./guix/store.scm:
2053:12 3 (_ #)
1401:5 2 (map/accumulate-builds # 
# ?)
1417:15 1 (_ # 
("/gnu/store/hqryw0zg7hqsdmgrrmgh9qm98y4my8p9-git-minimal-?"
) ?)
1417:15 0 (loop #f)

./guix/store.scm:1417:15: In procedure loop:
ERROR:
1. &store-protocol-error:
message: "build of 
`/gnu/store/hqryw0zg7hqsdmgrrmgh9qm98y4my8p9-git-minimal-2.37.1.drv' failed"
status: 100
guix pull: error: You found a bug: the program 
'/gnu/store/g21invh5c7bvhk29nd6693b81f6yc7si-compute-guix-derivation'
failed to compute the derivation for Guix (version: 
"32a00363435ac8c1bc93ef1281b2c2afc28a8877"; system: "x86_64-linu
x";
host version: "5f8adea86cac1e0b126b181a4d3cc67c0503f43b"; pull-version: 1).
Please report the COMPLETE output above by email to .
```

bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Liliana Marie Prikler
Hi,

Am Samstag, dem 23.07.2022 um 23:41 +0200 schrieb Maxime Devos:
> 
> However, that's was I was trying to say -- what I tried to say, is
> that by sorting the inputs incorrectly it _becomes_ not
> cross-compilable, so once daikichi supports cross-compilation you
> (generic you, not you in particular) will have to modify the package
> to move daikichi to native-inputs, and in the mean time people are
> misled by this package definition on how native / non-native works.
Fair enough, I'll include it in the native-inputs.

> Even better would be if daikichi had a cross-compiler mode, where you
> can compile to another endianness or size. (Or simpler, work with a
> fixed endianness and integer size such that cross-compilation
> concerns disappear entirely, but there's more than one way to do it.)
We're speaking of a hack job done in a few evenings here, but I think a
cross-compiler mode will be more feasible than fixed sizes (assuming
that we won't cross-compile to larger integer sizes than supported by
the host, which I think is a fair assumption to make).

> Another problem is that currently it is propagated, but daikichi is
> not a dependency of fortunes-jkirchartz.
Well, it is a dependency in that you need a fortune program to read the
quotes.  Should I instead add a meta-package that propagates both?





bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Maxime Devos

On 23-07-2022 22:53, Liliana Marie Prikler wrote:


Am Samstag, dem 23.07.2022 um 21:56 +0200 schrieb Maxime Devos:

On 23-07-2022 17:11, Liliana Marie Prikler wrote:


+    (revision "2022.05.23"))    ; Use a date rather than a
number

This is a technically a possibility, but currently the convention is
to use numbers and the number convention is expected by (guix
upstream) and the (not yet merged, needs some finishing touches IIRC)
latest-git updater, and AFAIK there hasn't been any discussion on
switching to dates.

In this case I am departing from the usual convention because I think
calendar versioning is more useful for this type of content.
OK, but Guix seems to have decided on numbering in the past, I don't 
think a package patch is a place to change that policy. If you want to 
change things to calendar versioning for some kinds of git stuff, this 
sounds like something to be discussed and approved or disapproved on 
guix-de...@gnu.org, not here.

Given the issue that lead to this patch at all, I'm not sure if support for
automatic updates would be a good idea with this package.  IMHO, it's a
feature rather than a bug that you can't accidentally pull a third of
BSD's offensive database, were it to ever land in this repo.


As mentioned later, "guix refresh -u" != automatic updates. I expect 
that a person manually updating the package would prefer the aid of 
"guix refresh -u" instead of having to clone the git repo by theirselves 
and do "guix hash -r", maybe forget the "-x", then remembering that "-r" 
is deprecated then having to look in the manual for --serializer=nix.



Should I explain this thought more clearly in the package or do automatic 
updates trump ethical concerns?


Guix does not have automatic updates, it does not decide by itself to 
update some packaes without any review. The updaters are only run when 
done so manually, e.g. with "guix refresh -u fortunes-jkirchartz". In 
that case, as always though it seems to be neglected due to limited 
resources currently, the diff between the previous version and the new 
version should be verified for malware.  There's no X trumps Y here, AFAICT.


Also, if Guix decides on CalVer for some packages, then in the context 
of the latest-git updater, the latest-git updater will have to be 
modified to support CalVer -- latest-git has no idea about how 
individual packages work, so it cannot decide to block updates. As such, 
going for CalVer to prevent generic-git from updating (with guix refresh 
-u or --with-latest) does not seem robust to me, as it will just be 
updated anyway with future improvements to latest-git.


If you want to block updates to some degree for some packages, then you 
could look into, say, adding a (updatable? . #false) flag or such for 
the 'properties' field or maybe add a comment next to the package 
definition to ask people updating the package to look out for 
fortunes-mod-style badness.


Greetings,
Maxime.



OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Maxime Devos


On 23-07-2022 23:52, Liliana Marie Prikler wrote:

Another problem is that currently it is propagated, but daikichi is
not a dependency of fortunes-jkirchartz.

Well, it is a dependency in that you need a fortune program to read the
quotes.  Should I instead add a meta-package that propagates both?


I think it's a situation like 'man-pages' and 'man-db'. 'man-pages' has 
lots of man pages and 'man-db' has a reader for man pages, but this does 
not make man-db a dependency of man-pages. (Similarly, IceCat is not a 
dependency of the web page https://guix.gnu.org). OTOH, daikichi is the 
only reader for the fortunes so the situation becomes a bit incomparable.


I suppose there's some convenience in propagating daikichi, but 
currently AFAICT the policy for those situations appears to be to not 
propagate it (and neither create a meta package reader+information), so 
unless there's some agreement on guix-de...@gnu.org to change that 
policy to go for meta packages or propagation, I don't think the 
individual fortunes-jkirchartz package should do that.


Greetings,
Maxime.


OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#54691: [PATCH v2 1/5] gnu: Add daikichi.

2022-07-23 Thread Liliana Marie Prikler
* gnu/packages/toys.scm (daikichi): New variable.
---
 gnu/packages/toys.scm | 32 +++-
 1 file changed, 31 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/toys.scm b/gnu/packages/toys.scm
index fb2f367490..45eb74ecbc 100644
--- a/gnu/packages/toys.scm
+++ b/gnu/packages/toys.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2017, 2018, 2020–2022 Tobias Geerinckx-Rice 
 ;;; Copyright © 2019 Jesse Gibbons 
 ;;; Copyright © 2019, 2020, 2021 Timotej Lazar 
-;;; Copyright © 2019 Liliana Marie Prikler 
+;;; Copyright © 2019, 2022 Liliana Marie Prikler 
 ;;; Copyright © 2020 Efraim Flashner 
 ;;; Copyright © 2021 Leo Famulari 
 ;;;
@@ -27,18 +27,48 @@ (define-module (gnu packages toys)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages man)
+  #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages pretty-print)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system meson)
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix utils))
 
+(define-public daikichi
+  (package
+(name "daikichi")
+(version "0.1.1")
+(source (origin
+  (method git-fetch)
+  (uri (git-reference
+(url "https://gitlab.com/lilyp/daikichi";)
+(commit version)))
+  (file-name (git-file-name name version))
+  (sha256
+   (base32
+"0qhp07ixbx6l8kz8f1961gmlcpn6xpc3fwwlwkwgb6q4a46ywbkl"
+(build-system meson-build-system)
+(inputs (list gmp fmt))
+(native-inputs (list pkg-config))
+(home-page "https://gitlab.com/lilyp/daikichi";)
+(synopsis "Display random fortunes")
+(description "Daikichi is an alternative implementation of
+@command{fortune}, which displays random quotes from a database.
+This package provides just the utilities and no quotes.")
+(license license:gpl3+)
+(native-search-paths
+ (list (search-path-specification
+(variable "DAIKICHI_FORTUNE_PATH")
+(files '("share/fortunes")))
+
 (define-public lolcat
   (let ((commit "35dca3d0a381496d7195cd78f5b24aa7b62f2154")
 (revision "0"))
-- 
2.37.0






bug#54691: [PATCH v2 3/5] gnu: Remove fortune-mod.

2022-07-23 Thread Liliana Marie Prikler
Since the addition of fortune-jkirchartz, it is no longer necessary to
keep around a package that propagates various non-nice things.
For a complete list, see .

* gnu/packages/games.scm (fortune-mod): Delete variable.
---
 gnu/packages/games.scm | 73 --
 1 file changed, 73 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index d55a2ee867..4110ea99d1 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -7629,79 +7629,6 @@ (define-public rinutils
 (description "This package provides C11 / gnu11 utilities C library")
 (license license:expat)))
 
-(define-public fortune-mod
-  (package
-(name "fortune-mod")
-(version "3.14.0")
-(source
- (origin
-   (method git-fetch)
-   (uri (git-reference
- (url "https://github.com/shlomif/fortune-mod";)
- (commit (string-append "fortune-mod-" version
-   (file-name (git-file-name name version))
-   (sha256
-(base32 "1f2zif3s6vddbhph4jr1cymdsn7gagg59grrxs0yap6myqmy8shg"
-(build-system cmake-build-system)
-(arguments
- (list #:configure-flags
-   #~(let ((fortunes (string-append #$output "/share/fortunes")))
-   (list (string-append "-DLOCALDIR=" fortunes)
- (string-append "-DLOCALODIR=" fortunes "/off")
- (string-append "-DCOOKIEDIR=" fortunes)
- (string-append "-DOCOOKIEDIR=" fortunes "/off")))
-   #:test-target "check"
-   #:phases
-   #~(modify-phases %standard-phases
-   (add-after 'unpack 'enter-build-directory
- (lambda _
-   (chdir "fortune-mod")))
-   (add-after 'enter-build-directory 'symlink-rinutils
- (lambda _
-   (mkdir-p "rinutils")
-   (symlink #$(this-package-native-input "rinutils")
-"rinutils/rinutils")))
-   (add-after 'enter-build-directory 'copy-cmake-modules
- (lambda _
-   (copy-file #$shlomif-cmake-modules
-  (string-append "cmake/"
- (strip-store-file-name
-  #$shlomif-cmake-modules)
-   (add-after 'enter-build-directory 'delete-failing-test
- (lambda _
-   ;; TODO: Valgrind tests fail for some reason.  Similar 
issue?
-   ;; https://github.com/shlomif/fortune-mod/issues/21
-   (delete-file "tests/data/valgrind.t")
-   (with-output-to-file "tests/scripts/split-valgrind.pl"
- (const #t
-   (add-after 'install 'fix-install-directory
- ;; Move fortune from "games/" to "bin/" and remove the
- ;; former.  This is easier than patching CMakeLists.txt
- ;; since the tests hard-code the location as well.
- (lambda _
-   (with-directory-excursion #$output
- (rename-file "games/fortune" "bin/fortune")
- (rmdir "games")))
-(inputs (list recode))
-(native-inputs
- (list perl
-   ;; For generating the documentation.
-   docbook-xml-5
-   docbook-xsl
-   perl-app-xml-docbook-builder
-   ;; The following are only needed for tests.
-   perl-file-find-object
-   perl-test-differences
-   perl-class-xsaccessor
-   perl-io-all
-   perl-test-runvalgrind
-   rinutils))
-(home-page "https://www.shlomifish.org/open-source/projects/fortune-mod/";)
-(synopsis "The Fortune Cookie program from BSD games")
-(description "Fortune is a command-line utility which displays a random
-quotation from a collection of quotes.")
-(license license:bsd-4)))
-
 (define xonotic-data
   (package
 (name "xonotic-data")
-- 
2.37.0






bug#54691: [PATCH v2 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread Liliana Marie Prikler
* gnu/packages/toys.scm (fortunes-jkirchartz): New variable.
---
 gnu/packages/toys.scm | 51 +++
 1 file changed, 51 insertions(+)

diff --git a/gnu/packages/toys.scm b/gnu/packages/toys.scm
index 45eb74ecbc..28131314ae 100644
--- a/gnu/packages/toys.scm
+++ b/gnu/packages/toys.scm
@@ -23,6 +23,7 @@
 
 (define-module (gnu packages toys)
   #:use-module (gnu packages)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gtk)
@@ -35,8 +36,10 @@ (define-module (gnu packages toys)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system copy)
   #:use-module (guix build-system meson)
   #:use-module (guix download)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
@@ -69,6 +72,54 @@ (define-public daikichi
 (variable "DAIKICHI_FORTUNE_PATH")
 (files '("share/fortunes")))
 
+(define-public fortunes-jkirchartz
+  ;; No public release.
+  ;; Note to updaters: Please ensure that new quotes do not bring harm
+  ;; rather than fortune.
+  (let ((commit "2e32ba0a57e3842dc06c8128d880ab4c8ec3aefc")
+(revision "0"))
+(package
+  (name "fortunes-jkirchartz")
+  (version (git-version "0" revision commit))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url "https://github.com/JKirchartz/fortunes";)
+  (commit commit)))
+(file-name (git-file-name name version))
+(sha256
+ (base32
+  "1ym4ldzww5yfd76q7zvhi491bqlykfjnc215bqx1cbj0c8ndb2l4"))
+(snippet
+ #~(for-each delete-file
+ ;; incompatible license
+ '("BibleAbridged")
+  (build-system copy-build-system)
+  ;; Cross-compile with care, daikichi does not guarantee that the target
+  ;; can actually read the fortunes.
+  (native-inputs (list daikichi gnu-make))
+  (arguments
+   (list #:install-plan
+ #~`(("." "share/fortunes" #:include-regexp ("\\.dat$")))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-source
+   (lambda* (#:key inputs native-inputs #:allow-other-keys)
+ (substitute* "showerthoughts"
+   (("<") "<")
+   ((">") ">")
+   (("&") "&"))
+ (substitute* "Makefile"
+   (("strfile") "daikichi pack"
+ (add-before 'install 'build
+   (lambda _
+ (invoke "make"))
+  (home-page "https://github.com/JKirchartz/fortunes";)
+  (synopsis "Collection of fortunes")
+  (description "This package contains a large collection of quotes to
+display via @command{fortune}, drawn from sources all around the world.")
+  (license license:unlicense
+
 (define-public lolcat
   (let ((commit "35dca3d0a381496d7195cd78f5b24aa7b62f2154")
 (revision "0"))
-- 
2.37.0






bug#54691: [PATCH v2 5/5] gnu: Remove shlomif-cmake-modules.

2022-07-23 Thread Liliana Marie Prikler
This origin was added for the now removed fortune-mod, so let's remove it
as well.

* gnu/packages/games.scm (shlomif-cmake-modules): Delete variable.
---
 gnu/packages/games.scm | 10 --
 1 file changed, 10 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c22d6611f6..0c5f298283 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -7560,16 +7560,6 @@ (define-public crispy-doom
 original.")
 (home-page "https://www.chocolate-doom.org/wiki/index.php/Crispy_Doom";)))
 
-(define shlomif-cmake-modules
-  (origin
-(method url-fetch)
-(uri (string-append
-  "https://raw.githubusercontent.com/shlomif/shlomif-cmake-modules/";
-  "89f05caf86078f783873975525230cf4fecede8a"
-  "/shlomif-cmake-modules/Shlomif_Common.cmake"))
-(sha256
- (base32 "05xdikw5ln0yh8p5chsmd8qnndmxg5b5vjlfpdqrjcb1ncqzywkc"
-
 (define xonotic-data
   (package
 (name "xonotic-data")
-- 
2.37.0






bug#54691: [PATCH v2 4/5] gnu: Remove rinutils.

2022-07-23 Thread Liliana Marie Prikler
This package was introduced as native input to the now removed fortune-mod,
so let's remove it as well.

* gnu/packages/games.scm (rinutils): Delete variable.
---
 gnu/packages/games.scm | 59 --
 1 file changed, 59 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 4110ea99d1..c22d6611f6 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -7570,65 +7570,6 @@ (define shlomif-cmake-modules
 (sha256
  (base32 "05xdikw5ln0yh8p5chsmd8qnndmxg5b5vjlfpdqrjcb1ncqzywkc"
 
-(define-public rinutils
-  (package
-(name "rinutils")
-(version "0.10.1")
-(source (origin
-  (method git-fetch)
-  (uri (git-reference
-(url "https://github.com/shlomif/rinutils";)
-(commit version)))
-  (file-name (git-file-name name version))
-  (sha256
-   (base32
-"0r90kncf6mvyklifpdsnm50iya7w2951nz35nlgndmqnr82gvdwf"
-(build-system cmake-build-system)
-(arguments
- (list #:phases
-   #~(modify-phases %standard-phases
-   (add-after 'unpack 'copy-cmake-modules
- (lambda _
-   (copy-file #$shlomif-cmake-modules
-  (string-append "cmake/"
- (strip-store-file-name
-  #$shlomif-cmake-modules)
-   (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
-   (when tests?
- (with-directory-excursion "../source"
-   (setenv "FCS_TEST_BUILD" "1")
-   (setenv "RINUTILS_TEST_BUILD" "1")
-   ;; TODO: Run tests after setting RINUTILS_TEST_TIDY to 
`1',
-   ;; which requires tidy-all.
-   ;; (setenv "RINUTILS_TEST_TIDY" "1")
-   (invoke "perl"
-   
"CI-testing/continuous-integration-testing.pl"
-(native-inputs
- (list perl
-   ;; The following are needed only for tests.
-   perl-class-xsaccessor
-   perl-file-find-object
-   perl-io-all
-   perl-test-differences
-   perl-test-runvalgrind
-   pkg-config))
-(inputs
- (list cmocka
-   perl-env-path
-   perl-inline
-   perl-inline-c
-   perl-string-shellquote
-   perl-test-trailingspace
-   perl-file-find-object-rule
-   perl-text-glob
-   perl-number-compare
-   perl-moo))
-(home-page "https://www.shlomifish.org/open-source/projects/";)
-(synopsis "C11 / gnu11 utilities C library")
-(description "This package provides C11 / gnu11 utilities C library")
-(license license:expat)))
-
 (define xonotic-data
   (package
 (name "xonotic-data")
-- 
2.37.0






bug#54691: [PATCH 2/5] gnu: Add fortunes-jkirchartz.

2022-07-23 Thread bokr
Hi,

On +2022-07-23 22:53:59 +0200, Liliana Marie Prikler wrote:
> Am Samstag, dem 23.07.2022 um 21:56 +0200 schrieb Maxime Devos:
> > On 23-07-2022 17:11, Liliana Marie Prikler wrote:
> > 
> > > +     (revision "2022.05.23"))    ; Use a date rather than a
> > > number
> > 
> > This is a technically a possibility, but currently the convention is
> > to use numbers and the number convention is expected by (guix
> > upstream) and the (not yet merged, needs some finishing touches IIRC)
> > latest-git updater, and AFAIK there hasn't been any discussion on
> > switching to dates.
> In this case I am departing from the usual convention because I think
> calendar versioning is more useful for this type of content.  Given the
> issue that lead to this patch at all, I'm not sure if support for
> automatic updates would be a good idea with this package.  IMHO, it's a
> feature rather than a bug that you can't accidentally pull a third of
> BSD's offensive database, were it to ever land in this repo.
> 
> Should I explain this thought more clearly in the package or do
> automatic updates trump ethical concerns?
> 
> 
> 

I like the .MM.DD format to tag data with a version
cookie, but I sometimes (not often) wind up with more than
one version in a day, so I like to allow at least an optional
single lower case [a-z] suffix, e.g., (revision "2022.05.23b")

just 2¢ :)
--
Regards,
Bengt Richter