Commit Graph

189 Commits

Author SHA1 Message Date
Maxim Cournoyer 889a6204f8
doc: Add some guidelines for reviewing.
* doc/contributing.texi (Contributing) [Reviewing the Work of Others]: New
section.
(Debbugs Usertags): Expound with Emacs Debbugs information and document the
'reviewed-looks-good' usertag.
* etc/git/gitconfig [b4]: New section.

Change-Id: I56630b15ec4fbc5c67e5420dbf2838556a005d6b
Reviewed-by: Ludovic Courtès <ludo@gnu.org>
2023-11-07 12:33:25 -05:00
Ricardo Wurmus fb46c1ceda
doc: Update URL of Mumi git repository.
* doc/contributing.texi (Debbugs User Interfaces): Use new repository URL.

Change-Id: Ieccf34be8a103740607d8c115120902dc687d4e7
2023-11-07 12:02:19 +01:00
Jaeme Sifat 0826cc8a07
doc: contributing: Replace reference to dunst.scm.
The contributing documentation makes a reference to dunst.scm as an example of
the build process failing after an update. This patch replaces that reference
with a much more permanent linux.scm.

* doc/contributing.texi: Replace reference to dunst.scm.

Change-Id: I89a4157eb253e25979bc35d6d3b12201a0d19951
Signed-off-by: Christopher Baines <mail@cbaines.net>
2023-11-05 17:57:57 +00:00
Julien Lepiller c95104c2e9
doc: contributiong: Fix ref usage.
Previous usage renders as "see See Teams".

* doc/contributing.texi: Fix ref usage.

Change-Id: I97a91697ecb87d07cc3c962a79d87dd290a70a7c
2023-11-01 17:20:17 +01:00
Maxim Cournoyer cbd20d6274
doc: Document Cuirass build notifications.
* doc/contributing.texi (Tracking Bugs and Changes)
<Cuirass Build Notifications>: New subsection.

Change-Id: Icead24ec18cd4511ee6217aae3c1d11ec552a9c7
Reviewed-by: Mathieu Othacehe <othacehe@gnu.org>
2023-10-23 11:42:19 -04:00
Maxim Cournoyer 8005e09b26
build: Add a commit-msg hook that embeds Change-Id in commit messages.
Partially implements <https://issues.guix.gnu.org/66027>.

This will make it possible to track a merged commit back to its original
posting on the mailing list, and open the door to new opportunities such as
closing fully merged series automatically.

* Makefile.am (COMMIT_MSG_MAGIC): New variable.
(.git/hooks/commit-msg): New target.
* etc/git/commit-msg: New file.
* doc/contributing.texi (Configuring Git): Document Change-Id.

Series-changes: 3
 - Clarify documentation text, as suggested by Simon
Change-Id: Ia92fa958eae600fdd4e180bad494c85db8bb4dd6
Reviewed-by: Simon Tournier <zimon.toutoune@gmail.com>
2023-10-22 16:09:04 -04:00
Ludovic Courtès 7b710836a1
doc: Suggest keeping record type descriptors private.
* doc/contributing.texi (Data Types and Pattern Matching): Add paragraph
about keeping RTDs private.

Suggested-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-10-05 23:14:54 +02:00
Mekeor Melire 5694352c05
doc: Update bug-reference configuration snippet.
* doc/contributing.texi (The Perfect Setup)
<Viewing Bugs within Emacs>: Make bug-reference-bug-regexp match
more URLs based on issues.guix.gnu.org.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Suggested-by: Simon Tournier <zimon.toutoune@gmail.com>
2023-10-05 13:11:46 -04:00
Ekaitz Zarraga 044a76c280
doc: contributing: Add alternative setups section.
Start with Guile Studio and Vim/NeoVim.

* doc/contributing.texi (Alternative Setups): Add section explaining
other setups that are similar to the one in The Perfect Setup.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2023-10-05 15:05:41 +03:00
Maxim Cournoyer 06dc36ffb7
doc: Update bug-reference configuration snippet.
* doc/contributing.texi (The Perfect Setup)
<Viewing Bugs within Emacs>: Properly quote Elisp functions.  Add 'require'
directives.  Set BUG-REFERENCE-URL-FORMAT so the configuration is
self-contained.

Suggested-by: Mekeor Melire <mekeor@posteo.de>
2023-09-26 14:06:04 -04:00
Maxim Cournoyer c428246bcd
doc: Add new 'Circular Module Dependencies' section.
* doc/contributing.texi (Circular Module Dependencies): New subsection.

Series-version: 2
Series-to: 65860@debbugs.gnu.org
Patch-cc: mhw@netris.org
Cover-letter:
Resolve a circular module dependencies in embedded modules
This series is the culmination of at least a day of effort tracking down the
source of a module dependency cycle (!).  The last commit adds some guidelines
in the hope to avoid a repeat (perhaps 'lint' could be taught to
automate these checks).
END
2023-09-25 10:33:04 -04:00
Efraim Flashner f4a0e472a9
doc: contributing: Clarify generating the pre-inst-env script.
Lack of clarity reported by lrustland on IRC.

* doc/contributing.texi (Running Guix Before It Is Installed): Refer to
the Building from Git section when giving instructions for generating
the pre-inst-env script.
2023-09-22 08:54:18 +03:00
Janneke Nieuwenhuizen 7bf12820f6
maint: Support `guix shell' in Guix's git archive with manifest.scm.
* manifest.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
* doc/contributing.texi (Building from Git): Mention using it.
2023-09-18 22:12:39 +02:00
Maxim Cournoyer fc1b4756e3
.dir-locals.el: Update bug-reference configuration and document it.
(nil) <bug-reference-url-format>: Update URL.  Add comment.
* doc/contributing.texi (The Perfect Setup): New "Viewing bugs within Emacs"
subsection.

Co-authored-by: Brian Cully <bjc@spork.org>
2023-09-17 16:42:03 -04:00
Maxim Cournoyer 65dcfb3f38
.dir-locals: Streamline Geiser configuration.
Geiser now has support locating the project root and adding it to the load
path without external help; leverage it.

* .dir-locals.el [nil]: Remove obsolete Geiser configuration.  Set the
geiser-repl-per-project-p variable to t.
* doc/contributing.texi (The Perfect Setup): No longer mention explicitly
setting the geiser-guile-load-path; instead mention the effect of the
.dir-locals.el file.

Reported-by: Wolf <wolf@wolfsden.cz>
2023-09-06 14:16:22 -04:00
Arun Isaac e0397faf6f
doc: Document mumi command-line interface.
* doc/contributing.texi (Debbugs User Interfaces)[Command-line interface]: New
subsubsection.  Update menus.
* doc/guix.texi: Bump copyright year.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-09-05 19:50:42 -04:00
Maxim Cournoyer 95e68c1516
doc: contributing: Mention the expected branch merge request format.
* doc/contributing.texi (Managing Patches and Branches): Mention the expected
branch merge request format.
2023-08-16 11:49:06 -04:00
Nicolas Goaziou 29cc6b1cd6
gnu: Deprecate `texlive-tiny'.
At this point, there are three equivalent TeX Live sub-systems:
texlive-scheme-basic, texlive-tiny, and (texlive-updmap.cfg).  It is confusing
to keep so many around.

* doc/contributing.texi (Submitting Patches): Remove reference to
TEXLIVE-TINY.
* gnu/packages/algebra.scm (pari-gp)[native-inputs]:
(giac)[native-inputs]:
* gnu/packages/chez.scm (chez-sockets)[native-inputs]:
* gnu/packages/engineering.scm (fastcap)[native-inputs]:
* gnu/packages/gettext.scm (po4a)[native-inputs]:
* gnu/packages/maths.scm (cddlib)[native-inputs]:
(gnuplot)[native-inputs]:
(itpp)[native-inputs]:
* gnu/packages/ocaml.scm (unison)[native-inputs]:
* gnu/packages/pdf.scm (extractpdfmark)[native-inputs]:
* gnu/packages/photo.scm (enblend-enfuse): Replace TEXLIVE-TINY with a call to TEXLIVE-UPDMAP.CFG.
* gnu/packages/radio.scm (gnuradio)[native-inputs]: Remove unnecessary
TEXLIVE-TINY.
* gnu/packages/tex.scm (texlive-tiny): Deprecate it in favor of TEXLIVE-SCHEME-BASIC.
(texlive-makecmds)[native-inputs]:  Replace TEXLIVE-TINY with a call to TEXLIVE-UPDMAP.CFG.
* guix/lint.scm (check-inputs-should-be-native): Check only for
"texlive-updmap.cfg" input name.
2023-07-18 18:16:49 +02:00
Christopher Baines 0ea096ae23
doc: Move and rewrite the branching strategy.
Move away from using staging and core-updates, and make the strategy
independant of branch names.

Keep the 300 dependent threshold for changes to master, as I don't have any
specific reason to change this.

Most importantly, require using guix-patches issues to coordinate merging of
the branches, as I think that'll address the key issues that have shown up
recently where it's been unclear which branch should be merged next.

* doc/contributing.texi (Submitting Patches): Move the branching strategy to a
new Managing Patches and Branches section.
(Managing Patches and Branches): New section.
(Commit Policy): Simplify through referencing the new Managing Patches and
Branches section.

Signed-off-by: Christopher Baines <mail@cbaines.net>
2023-06-12 19:52:57 +01:00
Ludovic Courtès aceb150d29
doc: Use the term "Procedure" for definitions.
In an effort to homogenize things, commit
3c40dfe285 replaced:

  @deffn {Scheme Procedure}

with:

  @defun

However, the latter prints "Function" when all existing material about
Scheme uses the term "procedure".

Thus, for consistency, this commit switches to:

  @deffn {Procedure}

* doc/guix.texi, doc/contributing.texi: Use "@deffn {Procedure}"
consistently rather than "@defun" or similar.
2023-06-08 23:29:27 +02:00
Felix Lechner 3c2f833257
doc: contributing.texi: Specify recipient via equal sign in 'git send-email --to'.
The documentation for git send-email recommends the use of an equal sign when
specifying a recipient with the --to option. [1] Adjusts the reference manual
accordingly.

[1] https://git-scm.com/docs/git-send-email

* doc (contributing.texi): Specify recipient via equal sign in
'git send-email --to'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-05-24 15:04:00 +02:00
Maxim Cournoyer b7e7744626
Revert "doc: Update all menus."
This reverts commit 9719d7d2b0.  It breaks Guix
pull, building the 'guix-manual' for reasons that currently escape me.
2023-05-07 22:49:29 -04:00
Maxim Cournoyer 9719d7d2b0
doc: Update all menus.
Automated via 'M-x texinfo-all-menus-update' in Emacs, and dropping
the *Contributing menu removal, which is erroneously removed because defined
in a different Texinfo file.

* doc/guix.texi: Update all menus.
* doc/contributing.texi (Submitting Patches): Likewise.
2023-05-07 21:51:27 -04:00
Maxim Cournoyer 26a788ae06
doc: Add some information/recommendation regarding --sysconfdir.
* doc/contributing.texi (Building from Git): Mention sysconfdir along
localstatedir.
* doc/guix.texi (Requirements): Likewise.
2023-05-07 21:51:27 -04:00
Maxim Cournoyer 1d77fd705b
doc: Simplify contributing section by automating git configuration.
Fixes <https://issues.guix.gnu.org/58813>.  No longer suggests to splice the
output of etc/teams.scm commands into the 'git send-email' command line; this
is now transparently handled by the Git configuration, which is also
automatic.

* doc/contributing.texi (Configuring Git): Streamline section, now automated
via Automake.
(Sending a Patch Series): Do not specify options configured as default by the
above.  Prefer long option names, for readability.
(Teams): Rewrite the examples to use --header-cmd.
(Commit Access): Refer to the Configuring Git section instead of detailing
manual steps.
2023-05-01 12:39:11 -04:00
Josselin Poiret e4f17429a6
doc: Add --sysconfdir=/etc to the recommended ./configure.
* doc/contributing.texi (Building from Git): Add --sysconfdir=/etc to the
recommended ./configure invocation.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-04-30 23:11:12 +02:00
Maxim Cournoyer 52d373dfef
doc: Add a reference to a page explaining consensus decision making.
This is to make explicit something which until now had always been implicit.

* doc/contributing.texi (Commit Access): Mention that committers are expected
to employ consensus decision making.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2023-04-03 15:41:41 -04:00
Maxim Cournoyer f9ceb205f5
doc: Mention Python 2 packages should not be added anymore.
* doc/contributing.texi (Python Modules): Mention Python 2 packages should not
be added anymore.
2023-03-23 22:15:27 -04:00
Hugo Buddelmeijer bc876cf08e
doc: Sending-a-Patch-Series: Fix URL.
* doc/contributing.texi (Sending a Patch Series): Fix URL for issue tracker.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-10 14:49:58 +01:00
Leo Famulari a66438e497
doc: Give advice to contributors about communicating with reviewers.
* doc/contributing.texi (Submitting Patches): Give advice.
2023-03-05 14:58:56 -05:00
( 09cd488c97
doc: contributing: Note '-v REVISION' bug in 'git send-email'.
* doc/contributing.texi ("Submitting Patches")["Sending a Patch Series"]:
Note that a bug in 'git send-email' means '-v REVISION' (with a
space) will not work.

Signed-off-by: Christopher Baines <mail@cbaines.net>
2023-01-11 10:31:58 +00:00
Christopher Baines 9aa2b74198
doc: contributing: Tweak the Commit Policy.
Add more examples of when it can be appropriate to push changes without
review, as I think this can be appropriate in the case of trivial changes (as
mentioned before), but also non-trivial fixes.

No longer suggest pushing simple new packages or package upgrades (that don't
cause lots of rebuilds) without sending to guix-patches. Now there's some
automation for testing changes sent to guix-patches, sending changes there
before pushing can mean that more rigorous testing takes place and help speed
up substitutes becoming available. This is true, even if no human review takes
place.

Only suggest waiting one week for review for simpler changes, wait two weeks
for more significant changes.

Also, reorder some of the information in this section so it's grouped together
better.

* doc/contributing.texi (Commit Policy): Tweak.

Signed-off-by: Christopher Baines <mail@cbaines.net>
2023-01-11 10:31:55 +00:00
Tobias Geerinckx-Rice 9cadac9787
doc: Fix typo.
* doc/contributing.texi (Sending a Patch Series): Fix e-mail address of
<guix-patches@gnu.org>.

Reported by Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>.
2022-12-18 01:00:10 +01:00
Ludovic Courtès cc9ee514e3
doc: Recommend 'match-record'.
* doc/contributing.texi (Data Types and Pattern Matching): Recommend
'match-record'.
2022-12-02 00:02:12 +01:00
( 807bfe55dc
doc: contributing: Use proper subsections.
* doc/contributing.texi ("Submitting Patches")
["Sending a Patch Series", "Teams"]: Convert to numbered subsections.
Add nodes.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-11-01 13:53:59 +01:00
( 8fed831e2a
doc: contributing: Expand "Sending a Patch Series".
* doc/contributing.texi: Expand on sending patches and using
  git send-email.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-10-28 17:25:58 +02:00
Lars-Dominik Braun 400a7a4c80
build-system: Add pyproject-build-system.
This is an experimental build system based on python-build-system
that implements PEP 517-compliant builds.

* doc/guix.texi (Build Systems): Add pyproject-build-system section.
* doc/contributing.texi (Python Modules): Mention pyproject.toml and the
PYTHON-TOOLCHAIN package, as well as differences to python-build-system.
* guix/build-system/pyproject.scm,
guix/build/pyproject-build-system.scm,
gnu/packages/aux-files/python/sanity-check-next.py,
gnu/packages/python-commencement.scm: New files.
* Makefile.am (MODULES): Register the new build systems.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add python-commencement.scm.
* gnu/packages/python.scm (python-sans-pip, python-sans-pip-wrapper): New
variables.

Co-authored-by: Marius Bakke <marius@gnu.org>
2022-10-27 19:43:06 +02:00
Maxim Cournoyer f9694a04ab
doc: Add git send-email tip in 'Submitting Patches' section.
* doc/contributing.texi (Submitting Patches): Add a tip detailing how to
prefix the subject line with the branch name the change should be installed
to.
2022-10-07 09:17:11 -04:00
Mathieu Othacehe 2a66304535
etc: teams: Add scope support.
Add a scope list to each team.  This list defines all the files and
directories that are mentored by the team.

Also add a cc-members command that takes two Git revision strings as input,
add returns the members that should be CC'ed given the files impacted between
the two revisions.

* etc/teams.scm.in (<team>)[scope]: New field.
(team, list-teams): Adapt those procedures.
(find-team-by-scope, diff-revisions): New procedures.
(main): Add a "cc-members" command.
* doc/contributing.texi ("Teams"): Document it.
("Sending a Patch Series"): Adapt it.
2022-09-25 09:27:59 +02:00
Andrew Tropin a278f632de
doc: Add more info about commits signature local verification.
* doc/contributing.texi (Commit Access): Add more info about commits signature
local verification.
2022-09-05 14:55:49 +03:00
Nicolas Graves c4acaf4120
etc: Add tempel snippets.
* etc/snippets/tempel/scheme-mode: New file.
* etc/snippets/tempel/text-mode: New file.
* etc/snippets/scheme-mode: Moved from here...
* etc/snippets/yas/scheme-mode: ... to here.
* etc/snippets/text-mode: Moved from here...
* etc/snippets/yas/text-mode: ... to here.
* doc/contributing.texi ("The Perfect Setup"): Adjust yasnippet setup
accordingly.  Add tempel setup.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-08-30 11:50:14 +02:00
Rostislav Svoboda 969e86784b
doc: Fix the example of "Run `make` automatically"
* doc/contributing.texi (Running Guix Before It Is Installed): add missing
command separator '--'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-07-18 00:21:31 +02:00
Ludovic Courtès 4ce7f1fb24
monad-repl: Add "build", "lower", and "verbosity" commands.
Fixes <https://issues.guix.gnu.org/56114>.
Reported by Maxime Devos <maximedevos@telenet.be>.

* guix/monad-repl.scm (%build-verbosity): New variable.
(evaluate/print-with-store): New procedure.
(run-in-store): Rewrite in terms of 'evaluate/print-with-store'.
(verbosity, lower, build): New meta-commands.
* doc/guix.texi (Using Guix Interactively): New node.
(The Store Monad): Link to it.
(Invoking guix repl): Likewise.
* doc/contributing.texi (Running Guix Before It Is Installed): Refer to
it.
(The Perfect Setup): Suggest 'guix install' rather than 'guix package -i'.
2022-07-15 17:36:57 +02:00
Ludovic Courtès 6cd6753218
doc: Prefer "guix show" over "guix package --show".
* doc/contributing.texi (Synopses and Descriptions): Use "guix show"
instead of "guix package --show".
2022-07-13 00:20:06 +02:00
Maxim Cournoyer 5ecbf5b163
doc: Fix cross-reference to Git Info manual.
Partially fixes <https://issues.guix.gnu.org/55821>.  Partially because our
git package doesn't yet include the documentation.  This change will need to
go to core-updates.

* doc/contributing.texi (Submitting Patches): Adjust the node name.
2022-07-11 17:21:55 -04:00
jgart e103d61485
doc: Document the documentation process.
* doc/contributing.texi (Contributing): Add Writing Documentation section.

Co-authored-by: Julien Lepiller <julien@lepiller.eu>
Co-authored-by: Matt Trzcinski <matt@excalamus.com>
Co-authored-by: Fabio Natali <me@fabionatali.com>
Co-authored-by: Gabor Boskovits <boskovits@gmail.com>
Co-authored-by: Luis Felipe <luis.felipe.la@protonmail.com>
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-07-07 14:40:50 -04:00
Tobias Geerinckx-Rice 7649327da7
doc: Fix typos.
* doc/guix.texi (Guix Services): Fix ‘coresponding’ typo.
(Using cross-compilation): Fix ‘mecanism’ typo.
(Desktop Services): Fix ‘superceeded’ typo.
* doc/contributing.texi (Translating Guix): Fix ‘everytime’ typo.
2022-05-22 02:00:00 +02:00
Philip McGrath 903c82583e
import: Add Elm importer.
* guix/import/elm.scm, guix/scripts/import/elm.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/scripts/import.scm (importers): Add "elm".
* doc/guix.texi (Invoking guix import): Document Elm importer.
* doc/contributing.texi (Elm Packages): Mention it.
* tests/elm.scm ("(guix import elm)"): New test group.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-05-22 01:07:52 +02:00
Philip McGrath aefcfdd0ae
guix: Add elm-build-system.
* gnu/packages/patches/elm-offline-package-registry.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/elm.scm (elm): Use it.
* guix/build-system/elm.scm, guix/build/elm-build-system.scm,
tests/elm.scm: New files.
* Makefile.scm (MODULES, SCM_TESTS): Add them.
* doc/guix.texi (Build Systems): Document 'elm-build-system'.
* doc/contributing.texi (Elm Packages): New section. Document naming
conventions and utilities.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-05-22 01:07:51 +02:00
Julien Lepiller 6386c011b2
doc: Document inclusion requirements for new translations.
* doc/contributing.texi (Translating Guix)[Conditions for Inclusion]:
New section.
2022-04-02 18:12:48 +02:00