Subject: Re: My first package: libsurvive

From: Nicolas Goaziou <[email-masked]>
Date: Sun, 09 Mar 2025 14:48:56 +0100

Hello,

> +(define-public libsurvive

Thank you!

> +  (package
> +    (name "libsurvive")
> +    (version "2023.12")
> +    (source
> +      (origin ;;TODO: make release
> +        (method git-fetch)
> +        (uri (git-reference
> +              (url "https://codeberg.org/LibreVR/libsurvive")
> +              (recursive? #t)

Can you unbundle whatever is pulled in submodules and avoid using
#:recursive?

> +              (commit "v2023.12.rc0"))) ;; make a final release this year

Nitpick: end of line comments use a single semicolon.

It is also not a good idea to introduce a mismatch between version and
commit. It this situation, you can either use "2023.12.rc0" for version
and (string-append "v" version) for commit, or use a raw commit hash,
bound to `commit' and bind "1" to `revision'. Then, version becomes
(git-version "2023.12" revision commit) and commit is set to… commit.

> +        (file-name (git-file-name name version))
> +        (sha256 (base32 "0fkdgvpm987yl5q6yq0979cfj99ffi6k0dpmddlpxfm2rngn85r5"))))
> +    (build-system cmake-build-system)
> +    (arguments (list #:tests? #f)) ;; no tests in this version

Same remark as above about semicolon.

> +    (native-inputs
> +     (list pkg-config))
> +    (inputs
> +     (list hidapi eigen eudev))

Please order inputs alphabetically.

> +    (home-page "https://codeberg.org/LibreVR/libsurvive")
> +    (synopsis "Lighthouse Tracking for LibreVR")
> +    (description "Libsurvive is a set of tools and libraries that enable Lighthouse
> +Tracking on various devices, including HTC Vive and the well known Valve Index.
> +It currently supports both SteamVR 1.0 and SteamVR 2.0 generation of devices,
> +future versions will support more hardware and the survive_link
> protocol.")

Nitpick: @code{survive_link} protocol.

Would you want to send an updated patch?

Regards,
-- 
Nicolas Goaziou