[bug#70684,go-team,0/6] Update miniflux to 2.1.3

Message ID cover.1714508304.git.rodion.goritskov@gmail.com
Headers
Series Update miniflux to 2.1.3 |

Message

Rodion Goritskov April 30, 2024, 8:18 p.m. UTC
This patch series updates Miniflux to version 2.1.3. It also makes necessary changes
to dependencies: updates brotli library, as well as adds some new dependencies (hope I placed
them in correct files)

Rodion Goritskov (6):
  gnu: go-github-com-andybalholm-brotli: Update to 1.1.0.
  gnu: Add go-github-com-google-go-tpm.
  gnu: Add go-github-com-x448-float16.
  gnu: Add go-github-com-abadojack-whatlanggo and
    go-github-com-fxamacker-cbor-v2.
  gnu: Add go-github-com-go-webauthn.
  gnu: miniflux: Update to 2.1.3.

 gnu/packages/golang-compression.scm |   4 +-
 gnu/packages/golang-crypto.scm      |  51 ++++++++++++
 gnu/packages/golang-web.scm         | 125 ++++++++++++++++++++++++++++
 gnu/packages/golang-xyz.scm         |  50 +++++++++++
 gnu/packages/golang.scm             |  25 ++++++
 gnu/packages/web.scm                |  97 ++++++++++-----------
 6 files changed, 303 insertions(+), 49 deletions(-)


base-commit: 8dab3df9529387ec1459d5483ac9664969c52e78
  

Comments

Sharlatan Hellseher May 2, 2024, 10:13 p.m. UTC | #1
Hi!

Thanks for the patches.

After a quick review I've got some suggestions to process further in
more details.

In general the <#:import-path> is what we may see on go.mod after
<module>. In general <#:unpack-path> is not required to build golang
module.

According to the <https://github.com/google/go-tpm/blob/v0.9.0/go.mod>
these two packages may be packed as single one:
<module github.com/google/go-tpm>.
--8<---------------cut here---------------start------------->8---
+(define-public go-github-com-google-go-tpm-legacy-tpm2
+(define-public go-github-com-google-go-tpm-tpmutil
--8<---------------cut here---------------end--------------->8---

These need to be presented as dedicated patches per each package.

* [PATCH go-team 4/6] gnu: Add go-github-com-abadojack-whatlanggo and
  go-github-com-fxamacker-cbor-v2.
* [PATCH go-team 5/6] gnu: Add go-github-com-go-webauthn.

Fix import path according to go.mod <https://github.com/go-webauthn/x/blob/master/go.mod>
<module github.com/go-webauthn/x>
--8<---------------cut here---------------start------------->8---
+(define-public go-github-com-go-webauthn-x
--8<---------------cut here---------------end--------------->8---

This is one go-module no need to split it into 3 packages, see go.mod
<https://github.com/go-webauthn/webauthn/blob/v0.10.2/go.mod>
<module github.com/go-webauthn/webauthn>
--8<---------------cut here---------------start------------->8---
+(define-public go-github-com-go-webauthn-webauthn-protocol
+(define-public go-github-com-go-webauthn-webauthn-metadata
+(define-public go-github-com-go-webauthn-webauthn-webauthn
--8<---------------cut here---------------end--------------->8---

* [PATCH go-team 6/6] gnu: miniflux: Update to 2.1.3.
- fix indentation
- try to build with go-1.21 (available in master) as go-team is not
  setup with CI yet and may block propagating to master
- list all of modification in commit message or split each not related
  modification into patch


Looking forward for the v2!

--
Oleg
  
Rodion Goritskov May 7, 2024, 7:22 p.m. UTC | #2
Hi, thank you for review!

> In general the <#:import-path> is what we may see on go.mod after
> <module>. In general <#:unpack-path> is not required to build golang
> module.
>
> According to the <https://github.com/google/go-tpm/blob/v0.9.0/go.mod>
> these two packages may be packed as single one:
> <module github.com/google/go-tpm>.
>
> +(define-public go-github-com-google-go-tpm-legacy-tpm2
> +(define-public go-github-com-google-go-tpm-tpmutil

I have a problem when trying to build these packages as one.
When trying to build the single package (like this):

(define go-github-com-google-go-tpm
  (package
    (name "go-github-com-google-go-tpm")
    (version "0.9.0")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://github.com/google/go-tpm")
             (commit (string-append "v" version))))
       (file-name (git-file-name name version))
       (sha256
        (base32 "1pv77fmlxrnxasj6fjvzrv9yaf2qb45x1zss3nbsdvzgpwviaiyi"))))
    (build-system go-build-system)
    (arguments
     (list
      #:go go-1.22
      #:import-path "github.com/google/go-tpm"))
    (propagated-inputs (list go-golang-org-x-sys
                             go-golang-org-x-crypto))
    (home-page "https://github.com/google/go-tpm")
    (synopsis "Go-TPM library")
    (description
     "TPM 2.0 library for directly communicating with a TPM device.")
    (license license:asl2.0)))

I get the following error on the "build" phase:

command "go" "install" "-v" "-x" "-ldflags=-s -w" "-trimpath"
"github.com/google/go-tpm" failed with status 1

Actually, it fails with the following go install error (found by running
guix build with -K and running command manually in the build folder):

package github.com/google/go-tpm: no Go files in
/tmp/guix-build-go-github-com-google-go-tpm-0.9.0.drv-0/src/github.com/google/go-tpm

This is true - there are no *.go files in the project's root.
For this project to build succesfully, project directory for "go
install" should end with /... (to build all subfolders recursively), like:

"go" "install" "-v" "-x" "-ldflags=-s -w" "-trimpath"
"github.com/google/go-tpm/..."

So, for now I could remove the build (and check, because it has the same
problem) phases from the build (easy, but, AFAIK, not the best fix). In
this case we still have all the necessary sources, for dependent
packages, but no checks.

Or, maybe, we could add some kind of "recursive" flag to the
go-build-system. In this case, as I see, it will lead to all go packages rebuild
(even if it will not be enabled by default).

What do you think?

> This is one go-module no need to split it into 3 packages, see go.mod
> <https://github.com/go-webauthn/webauthn/blob/v0.10.2/go.mod>
> <module github.com/go-webauthn/webauthn>
>
> +(define-public go-github-com-go-webauthn-webauthn-protocol
> +(define-public go-github-com-go-webauthn-webauthn-metadata
> +(define-public go-github-com-go-webauthn-webauthn-webauthn

For these package I have the same problem (no go files in the root folder).
  
Sharlatan Hellseher July 11, 2024, 12:12 p.m. UTC | #3
Hi,

Pushed as b913514169..819d33a18d to master with updating miniflux to the
latest version and minor adjustment to new packages descriptions.

--
Oleg