[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#40025] [PATCH] Add gitless package definition.
From: |
Tobias Geerinckx-Rice |
Subject: |
[bug#40025] [PATCH] Add gitless package definition. |
Date: |
Wed, 11 Mar 2020 20:05:27 +0100 |
John,
Thanks for the patch!
Guix uses a specific commit message format. It's partially
documented in ‘(guix)Submitting Patches’ but you're IMO better off
just reading the git history to get a feel for it. Here's the
commit message for this package:
gnu: Add gitless.
* gnu/packages/version-control.scm (gitless): New public
variable.
Co-authored-by: Tobias Geerinckx-Rice <address@hidden>
I've written down my comments below, but you don't need to send a
V2.
I'll try to make it work here and will push a modified version if
I succeed. It would be nice if I could get rid of propagation,
and the path to a (non-native) git still needs to be embedded so
the user doesn't need to install git themselves.
+ (uri (git-reference
+ (url "https://github.com/gitless-vcs/gitless")
+ (commit (string-append "v" version))))
This is missing the FILE-NAME field. Without it, the source is
checked out into /gnu/store/<hash>-checkout/ which makes it harder
to see what's what.
Adding (file-name (git-file-name name version)) puts it in
/gnu/store/<hash>-gitless-<version>-checkout.
+ (substitute* "requirements.txt"
+ (("pygit2==") "pygit2>="))
This has no effect on the end result so I suggest we drop it
again.
+ (synopsis
+ "A version control system built on top of Git")
Synopses shouldn't start with an article.
Tip: running ‘./pre-inst-env guix lint gitless’ will catch things
like this. It also caught the missing FILE-NAME.
It also printed several warnings about using tabs instead of
spaces. Guix does not use tabs in Scheme code.
+ (description
+ "A version control system built on top of Git")
This is waaay too short, I told you that before :-p Moreover,
descriptions should consist of complete sentences. I've knocked
something together based on the home page blurb:
Gitless is a Git-compatible version control system that aims to
be
easy to learn and use. It simplifies the common workflow by
committing changes to tracked files by default and saving any
uncommitted changes as part of a branch.
The friendly @command{gl} command-line interface gives feedback
and
helps you figure out what to do next.
Gitless is implemented on top of Git and its commits and
repositories
are indistinguishable from Git's. You (or other contributors)
can
always fall back on @command{git}, and use any regular Git
hosting
service.
Kind regards,
T G-R
signature.asc
Description: PGP signature