Subject: [bug#58236] [PATCH] gnu: genie: Add genie.

From: Liliana Marie Prikler <[email-masked]>
Date: Wed, 05 Oct 2022 12:34:05 +0200

Am Dienstag, dem 04.10.2022 um 19:37 +0000 schrieb J. Sims:

> (define-public genie
> +  (let ((commit "b139103697bbb62db895e4cc7bfe202bcff4ff25")
> +        (version "1167")
> +        (revision "0"))
Do not let-bind version.
> +    (package
> +      (name "genie")
> +      (version (git-version version revision commit))
> +      (home-page "https://github.com/bkaradzic/genie")
home-page comes before synopsis and description...
> +      (source (origin
> +                (method git-fetch)
> +                (uri (git-reference
> +                      (url home-page)
> +                      (commit commit)))
Don't pull it up so that you can "save" the url argument.  Type url out
explicitly.
> +                (file-name (git-file-name name version))
> +                (sha256
> +                 (base32
> +                 
> "16plshzkyjjzpfcxnwjskrs7i4gg0qn92h2k0rbfl4a79fgmwvwv"))))
> +      (build-system gnu-build-system)
> +      (arguments
> +       (list #:phases #~(modify-phases %standard-phases
> +                          (delete 'configure)
> +                          (replace 'install
> +                            (lambda _
> +                              (install-file "bin/linux/genie"
> +                                            (string-append #$output
> "/bin")))))
Prefer saving horizontal space over vertical space.
> +             #:tests? #f)) ;only manual tests
When it comes to software testing, there is no sequence of instructions
that only a human can carry out.  Tests either exist or they don't and
in the case of GENie there at least formally exists a directory for
them.
> +      (synopsis "Project generator tool")
Note that tool is superfluous here.
> +      (description
> +       "GENie is project generator tool. It generates projects from
> +Lua scripts, making applying the same settings for multiple projects
> easy. It
I'd simply write "GENie generates projects from Lua scripts, making it
easy to apply the same settings to multiple projects."
> +supports generating projects using GNU Makefiles; JSON Compilation
> Database;
> +Visual Studio 2010, 2012, 2013, 2015, 2017, and 2019; XCode; and
> experimentally
> +supports Ninja.")
We're not going to use proprietary software on our FSDG-compliant
system, so it's only Makefiles, JSON compilation databases and
experimental Ninja.
> +      (license license:bsd-3))))

Cheers