Subject: [bug#76273] [PATCH v1 00/10] gnu: Add micro.

From: Sharlatan Hellseher <[email-masked]>
Date: Fri, 14 Feb 2025 08:41:41 +0000

Hi,

Thank you for the patches.

They look like raw outputs from guix import, did you try to build micro
in the end?

Depending on your time
- Try to import with -i flag
     -i, --insert           insert packages into file alphabetically
e.g.
     guix import -i gnu/packages/golang-xyz.scm go github.com/zyedidia/json5

It helps to keep packages in alphabetical order.

- After import visually check the validity of the package; the importer
  is not perfect and heavenly depends on the upstream metadata and it's
  quality.

e.g.
   - guix lint <package> after import and resolve warnings
   - guix build <package> and resolve test/buld faileurs
   - read produced synosis and description, make sure they are human
     readable and descriptive eneough to understand what this package
     for

--8<---------------cut here---------------start------------->8---
+    (synopsis "An ...

+    (synopsis "A ...

+    (synopsis "An epoll(7)-based file-descriptor multiplexer.")
+    (synopsis "A modern and intuitive terminal-based text editor")

+    (synopsis "wcwidth for golang")
--8<---------------cut here---------------end--------------->8---
This part usually highlighted by guix lint, please check e.g. synopsis
does not start with article, does not end with full stop (.), starts
with a capital letter.

--8<---------------cut here---------------start------------->8---
+    (description
+     "Package glob provides objects for matching strings with globs.")
+    (license license:expat)))
--8<---------------cut here---------------end--------------->8---
Try to refer to upstream and extract as much information as possible,
description might need more details. Check Guix packaging guidelines:
<https://guix.gnu.org/manual/en/html_node/Packaging-Guidelines.html>.

--8<---------------cut here---------------start------------->8---
+     (list
+      #:import-path "github.com/zyedidia/tcell/v2"
+      #:unpack-path "github.com/zyedidia/tcell/v2"))

+     (list
+      #:import-path "github.com/mattn/go-runewidth"
+      #:unpack-path "github.com/mattn/go-runewidth"))

+      #:import-path "github.com/kballard/go-shellquote"
+      #:unpack-path "github.com/kballard/go-shellquote"))
--8<---------------cut here---------------end--------------->8---
It might be an issue with current implementation of importer. The
package name, variable name and import-path are usually follow the same
style e.g. the module path specifying in go.mod and import-path is
usually enough, check for more example in any golang-* modules.

--8<---------------cut here---------------start------------->8---
+     "@@strong{micro}
--8<---------------cut here---------------end--------------->8---
It looks like a glitch in importer any @@ needs to be adjusted to a
single one @.

--8<---------------cut here---------------start------------->8---
+     (list
+      #:install-source? #f
+      #:import-path "github.com/zyedidia/micro/v2/cmd/micro"
+      #:unpack-path "github.com/zyedidia/micro/v2"))
--8<---------------cut here---------------end--------------->8---
If it's a final command you may simplify it just by providing
import-path without "v2" and omit unpack-path e.g.

    #:import-path "github.com/zyedidia/micro/cmd/micro"

Looking forward for v2!

--
Oleg