Subject: [bug#68605] [PATCH 00/38] Split (gnu packages golang) part III

From: Sharlatan Hellseher <[email-masked]>
Date: Sat, 20 Jan 2024 09:50:53 +0000

Hi Guix!

This is part III of the patch series that splits the monolithic (GNU packages
golang) into logical blocks. This time, I have focused on the
cryptography-related scope, which includes Golang modules (libraries) related
to encryption algorithms, hashing functions, TLS, key management, digital
signatures, and password management.

As with parts I and II, all local checks have passed successfully. I have made
sure not to extend the limit of the master branch on affected packages.

Modules which include packages from (gnu packages golang-crypto):
┌────
│ grep -El $(grep define-public gnu/packages/golang-crypto.scm |cut -d" " -f2 | paste -s -d"\\|" -) gnu/packages/*.scm | sort
└────
gnu/packages/backup.scm gnu/packages/file-systems.scm
gnu/packages/golang-crypto.scm gnu/packages/golang.scm
gnu/packages/golang-web.scm gnu/packages/ipfs.scm
gnu/packages/mail.scm gnu/packages/password-utils.scm
gnu/packages/textutils.scm gnu/packages/uucp.scm
gnu/packages/version-control.scm

Modules which use (gnu packages golang-crypto):
┌────
│ grep -r -l "golang-crypto" . | grep ".*\.scm" | sort
└────
 ./gnu/packages/backup.scm ./gnu/packages/file-systems.scm
./gnu/packages/golang-crypto.scm ./gnu/packages/golang.scm
./gnu/packages/golang-web.scm ./gnu/packages/ipfs.scm
./gnu/packages/mail.scm ./gnu/packages/password-utils.scm
./gnu/packages/textutils.scm ./gnu/packages/uucp.scm
./gnu/packages/version-control.scm

Make sure all packages from (gnu packages golang-crypto) are still buildable:
┌────
│ ./pre-inst-env guix build $(grep define-public gnu/packages/golang-crypto.scm |cut -d" " -f2)
└────
/gnu/store/20w6z4x1sdx0z2dwfllqrni26hxv5myk-go-lukechampine-com-blake3-1.1.5
/gnu/store/xaaxwcjjr5nyajks56ydsiciqij0kif9-go-gitlab-com-yawning-edwards25519-extra-0.0.0-0.2149dca
/gnu/store/5cqgkl2rb62z27f6llsk8k85srrr76hg-go-github-com-xanzy-ssh-agent-0.2.1
/gnu/store/dql4whx3i94p83ma8q9gpsfkapp84bfc-go-github-com-shadowsocks-go-shadowsocks2-0.1.3
/gnu/store/sq3wgyvpl7m4nl3k2fkgq24ysgqbi4vm-go-github-com-riobard-go-bloom-0.0.0-0.cdc8013
/gnu/store/1nb2v8l672y2ysnxw87abh0rshjkjbh6-go-github-com-rfjakob-eme-1.1.2
/gnu/store/yqbrzhv0p2qr9xq6q2jk5xsfzcdvzi4a-go-github-com-refraction-networking-utls-1.6.0
/gnu/store/aaad70fljmgcq770w0wsm0jlifnf1vi4-go-github-com-protonmail-go-crypto-0.0.0-20220623141421-5afb4c282135
/gnu/store/f544q20h8rzdzfg1sij717whywcrpswg-go-github-com-operatorfoundation-ed25519-0.0.0-0.b22b4bd
/gnu/store/fz69mp9dnl808q2l4wvbrd2mv59vfhlk-go-github-com-quic-go-qtls-go1-20-0.3.4
/gnu/store/wa54xggjfp4hl9r5xbvxzlqz71d80j6l-go-github-com-multiformats-go-multihash-1.0.8-0.97cdb56
/gnu/store/ml9myd2mnp3lsw5f0i220dhbkppy9yqf-go-github-com-minio-sha256-simd-0.1.1
/gnu/store/hlnz0p3ifa7r13z6iy090h2rvkgxvzml-go-github-com-minio-blake2b-simd-0.0.0-0.3f5f724
/gnu/store/qnybjzy9piwpf49s4hr33s9q3cf9lmvl-go-github-com-marten-seemann-qtls-0.4.1
/gnu/store/6r589q68il2ijrkqy5q3yw2ywk24fv1g-go-github-com-marten-seemann-chacha20-0.2.0
/gnu/store/axh4f6c1kl0wii1j756m5qcf9hlxa9vh-go-github-com-libp2p-go-libp2p-peer-2.3.8-0.993d742
/gnu/store/ihvcn12yrr0jfqlkjawb19a04v8c5lga-go-github-com-libp2p-go-libp2p-crypto-2.0.1-0.7240b40
/gnu/store/z9halh9na6x8y0h88c8vwlw1ja42090k-go-github-com-jcmturner-aescts-v2-2.0.0
/gnu/store/68ba5vkkqaqf9b8q6cjsdar43pvfb9kh-go-github-com-gxed-hashland-keccakpg-0.0.0-0.d9f6b97
/gnu/store/rhp67dx6ksr117llcypm342b2hwm7p0f-go-github-com-gaukas-godicttls-0.0.4
/gnu/store/92rcmjpchhgs2xpaxd8d0hbdqr64d1qn-go-github-com-flynn-noise-1.0.0
/gnu/store/y780h1h51fr4bs4dwaw4iihgzffkjdsw-go-github-com-emersion-go-pgpmail-0.2.0
/gnu/store/niwvfhwxlj6fysnh1kl1fg3dcvzql65y-go-github-com-dvsekhvalnov-jose2go-1.5.0
/gnu/store/0366llbswq061v2n1j14iyi4h2s55na3-go-github-com-cloudflare-circl-1.3.6
/gnu/store/5p0z1i8y83mla9mpzbk30wxbz45c0qrv-go-github-com-cespare-xxhash-2.1.2
/gnu/store/s2qdkq60hhly6488i9cw1gn90qh78ixb-go-github-com-btcsuite-btcd-btcec-0.12.0-beta-0.67e573d
/gnu/store/knbc42wsq30fshjsxdrahxia4i6yv383-go-github-com-aperturerobotics-jacobsa-crypto-1.0.1-0.b1eb679
/gnu/store/697gzhy2vmlhpi464h826djw09bqjj6x-go-github-com-aead-chacha20-0.0.0-0.8b13a72
/gnu/store/nl6lx7rf4467qqbdfyw14i7wvc44hyk2-go-github-com-99designs-go-keyring-1.2.2
/gnu/store/x33v0vxgflh6z79fxr5pknh6lh9vqywb-go-filippo-io-edwards25519-1.0.0
/gnu/store/fw46ivw7h98scgwj208270dsnm2ixr91-go-filippo-io-age-1.1.1

List all dependent packages and make sure all of them are buildable:
┌────
│ ./pre-inst-env guix refresh --list-dependent $(grep define-public gnu/packages/golang-crypto.scm |cut -d" " -f2)
└────
 Building the following 17 packages would ensure 45 dependent packages
are rebuilt: [email-masked] [email-masked] [email-masked]
[email-masked] [email-masked] [email-masked] [email-masked]
[email-masked] [email-masked] [email-masked] [email-masked] [email-masked]
[email-masked] [email-masked] [email-masked]

Some packages were broken before migration:
• chezmoi
• nncp

┌────
│ ./pre-inst-env guix build [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked] [email-masked]
└────
 /gnu/store/gkkkb03m2rkkx7jd7cpz75s87qm2fhr7-kubo-0.15.0
/gnu/store/4znzwjj6z7miciq2d7hshk8hfya6p5k2-torbrowser-13.0.8
/gnu/store/r8a2n23dl217cc6d5fjw2h7r1p1q4cf3-bitmask-0.21.11
/gnu/store/5352aqlp93yfhmrksrhwvpc3yappk7vf-gocryptfs-2.4.0
/gnu/store/ip92lp7wzi6ng3viwfqzgqljnsj5flwf-aerc-0.15.2
/gnu/store/31aj7nkk1ydi63cda2a685ljv8fl5w23-yggdrasil-0.5.4
/gnu/store/8k87ibgz6l6lxhxn2813vp63flz8ckjy-gx-go-1.9.0
/gnu/store/1awkjcim94z7ijvsa0ryxyy2jcb7vizj-gx-0.14.3
/gnu/store/kj8zs2gkw3icr3bj5z36fn91j5nz241s-restic-rest-server-0.11.0
/gnu/store/0xycsp89lb51dsjkr89jjdqk8h3g53pf-lfs-s3-0.1.5
/gnu/store/05qmy85qlmjxaw6mrbjzni9i0g7akf8r-aws-vault-6.6.2
/gnu/store/94wh24xpds8ikwwskkqlbwij40m7rxk5-csvdiff-1.4.0
/gnu/store/pk17npw71d3h3bj741m26wxrvpi6r02r-miniflux-2.0.46
/gnu/store/p5ndp17f73a80yvzpjaxjawi4nfbgm7p-ssh-to-age-1.1.2
/gnu/store/6xlljpyx3yyn417a0ghkx4mxg8a6300a-pass-age-1.7.4a1

Sharlatan Hellseher (38):
  gnu: Add (gnu packages golang-crypto) module.
  gnu: go-github-com-pquerna-cachecontrol: Move to (gnu packages golang-web).
  gnu: go-github-com-multiformats-go-multihash: Move to (gnu packages golang-crypto).
  gnu: go-github-com-riobard-go-bloom: Move to (gnu packages golang-crypto).
  gnu: go-github-com-libp2p-go-libp2p-crypto: Move to (gnu packages golang-crypto).
  gnu: go-github-com-shadowsocks-go-shadowsocks2: Move to (gnu packages golang-crypto).
  gnu: go-github-com-libp2p-go-libp2p-peer: Move to (gnu packages golang-crypto).
  gnu: go-github-com-aead-chacha20: Move to (gnu packages golang-crypto).
  gnu: go-github-com-marten-seemann-chacha20: Move to (gnu packages golang-crypto).
  gnu: go-github-com-refraction-networking-utls: Move to (gnu packages golang-crypto).
  gnu: go-filippo-io-edwards25519: Move to (gnu packages golang-crypto).
  gnu: go-gitlab-com-yawning-edwards25519-extra: Move to (gnu packages golang-crypto).
  gnu: go-github-com-marten-seemann-qtls: Move to (gnu packages golang-crypto).
  gnu: go-github-com-gaukas-godicttls: Move to (gnu packages golang-crypto).
  gnu: go-github-com-quic-go-qtls-go1-20: Move to (gnu packages golang-crypto).
  gnu: go-github-com-jcmturner-aescts-v2: Move to (gnu packages golang-crypto).
  gnu: go-github-com-aperturerobotics-jacobsa-crypto: Move to (gnu packages golang-crypto).
  gnu: go-github-com-rfjakob-eme: Move to (gnu packages golang-crypto).
  gnu: go-github-com-emersion-go-pgpmail: Move to (gnu packages golang-crypto).
  gnu: go-github-com-protonmail-go-crypto: Move to (gnu packages golang-crypto).
  gnu: go-github-com-btcsuite-btcd-btcec: Move to (gnu packages golang-crypto).
  gnu: go-lukechampine-com-blake3: Move to (gnu packages golang-crypto).
  gnu: go-github-com-cloudflare-circl: Move to (gnu packages golang-crypto).
  gnu: go-github-com-minio-sha256-simd: Move to (gnu packages golang-crypto).
  gnu: go-github-com-flynn-noise: Move to (gnu packages golang-crypto).
  gnu: go-github-com-gxed-hashland-keccakpg: Move to (gnu packages golang-crypto).
  gnu: go-github-com-operatorfoundation-ed25519: Move to (gnu packages golang-crypto).
  gnu: go-github-com-minio-blake2b-simd: Move to (gnu packages golang-crypto).
  gnu: go-github-com-cespare-xxhash: Move to (gnu packages golang-crypto).
  gnu: go-github-com-99designs-go-keyring: Move to (gnu packages golang-crypto).
  gnu: go-github-com-xanzy-ssh-agent: Move to (gnu packages golang-crypto).
  gnu: go-filippo-io-age: Move to (gnu packages golang-crypto).
  gnu: go-github-com-dvsekhvalnov-jose2go: Move to (gnu packages golang-crypto).
  gnu: go-github.com-smartystreets-gunit: Move to (gnu packages golang-check).
  gnu: go-github.com-smartystreets-assertions: Move to (gnu packages golang-check).
  gnu: go-github.com-smartystreets-goconvey: Move to (gnu packages golang-check).
  gnu: go-github-com-99designs-go-keyring: Adjust inputs.
  gnu: go-github-com-quic-go-qtls-go1-20: Sort package alphabetically.

 gnu/local.mk                     |   1 +
 gnu/packages/backup.scm          |   1 +
 gnu/packages/check.scm           |  88 ---
 gnu/packages/file-systems.scm    |   1 +
 gnu/packages/golang-check.scm    |  88 +++
 gnu/packages/golang-crypto.scm   | 978 +++++++++++++++++++++++++++++++
 gnu/packages/golang-web.scm      |  26 +
 gnu/packages/golang.scm          | 948 +-----------------------------
 gnu/packages/ipfs.scm            |   1 +
 gnu/packages/mail.scm            |   1 +
 gnu/packages/password-utils.scm  |   1 +
 gnu/packages/syncthing.scm       |  31 -
 gnu/packages/textutils.scm       |   1 +
 gnu/packages/uucp.scm            |   1 +
 gnu/packages/version-control.scm |   1 +
 15 files changed, 1114 insertions(+), 1054 deletions(-)
 create mode 100644 gnu/packages/golang-crypto.scm

base-commit: d99670e33e3dcf96a944833d5c2bba35600a06e0
-- 
2.41.0