Age | Commit message (Expand) | Author |
2022-04-09 | utils: Implement with-packages using with-manifest.•••* guix/forge/utils.scm (profile-with-packages,
environment-with-packages): Delete functions.
(with-packages): Implement in terms of with-manifest.
| Arun Isaac |
2022-04-09 | utils: Add with-manifest.•••* guix/forge/utils.scm: Import (guix modules).
(with-manifest): New function.
| Arun Isaac |
2022-04-09 | forge: Do not try to trigger CI jobs when there are none.•••* guix/forge/forge.scm (ci-jobs-trigger-gexp): Import (ice-9
match). Do not try to trigger CI jobs when there are none to be
triggered.
(forge-service-type): Do not set up cron jobs and webhooks when there
are no CI jobs to be triggered.
| Arun Isaac |
2022-04-09 | manifest.scm: Add font-charter and font-fira-code.•••* manifest.scm: Import (gnu packages fonts) and (guix utils).
(font-charter, font-fira-code): New variables.
Add font-charter and font-fira-code to manifest.
| Arun Isaac |
2022-04-09 | manifest.scm: Use a later unreleased version of skribilo.•••* manifest.scm: Import (gnu packages autotools), (gnu packages
gettext), (gnu packages guile), (gnu packages skribilo), (guix
git-download) and (guix packages).
(skribilo): New variable.
List guile-3.0 and skribilo in the manifest.
| Arun Isaac |
2022-04-08 | doc: Link to ci-jobs-trigger-gexp definition.•••* doc/forge.skb (Tutorial): Link mention of post-receive-hook script
to the in-source definition of ci-jobs-trigger-gexp.
| Arun Isaac |
2022-04-08 | doc: Create dummy G-expression reader.•••* doc/skribilo.scm: Extend the reader with a dummy G-expression
reader.
| Arun Isaac |
2022-03-28 | forge: Add trigger? field to forge-laminar-job.•••* guix/forge/laminar.scm (<forge-laminar-job>)[trigger?]: New field.
* guix/forge/forge.scm (ci-jobs-trigger-gexp): Only trigger jobs for
which trigger? is #t.
* doc/forge.skb (Reference)[<forge-laminar-job>]: Document trigger?.
| Arun Isaac |
2022-03-28 | laminar: Suffix .run and .after in script names.•••* guix/forge/laminar.scm (forge-laminar-activation): Suffix .run and
.after in script names.
| Arun Isaac |
2022-03-28 | webhook: Suffix -webhook in script name.•••* guix/forge/webhook.scm (hooks-json-gexp): Suffix -webhook in script
name.
| Arun Isaac |
2022-03-28 | forge: Suffix -cron-job in script name.•••* guix/forge/forge.scm (forge-service-type): Suffix -cron-job in
script name.
| Arun Isaac |
2022-03-28 | forge: Suffix -post-receive-hook in script name.•••* guix/forge/forge.scm (forge-activation): Suffix -post-receive-hook
in script name.
| Arun Isaac |
2022-03-28 | forge: Import only laminar from (gnu packages ci).•••* guix/forge/forge.scm: Import only laminar from (gnu packages ci).
| Arun Isaac |
2022-03-21 | doc: Explain what a post-receive-hook is and how it is set up.•••* doc/forge.skb (Tutorial): Explain what a post-receive-hook is and
how it is set up.
| Arun Isaac |
2022-03-21 | doc: Clarify double reference of (guix build utils).•••* doc/forge.skb (Tutorial): Clarify double reference of (guix build
utils).
| Arun Isaac |
2022-03-20 | doc: Link to G-expressions in the Guix manual.•••* doc/forge.skb (Tutorial): Link to G-expressions in the Guix manual.
| Arun Isaac |
2022-03-20 | README: Add links to constituent software components.•••* README.org: Add links to constituent software components.
| Arun Isaac |
2022-03-20 | website: Use Fira Code for code blocks.•••* Makefile (fonts): Add FiraCode-Regular.woff2 and
FiraCode-SemiBold.woff2.
* website/style.css (@font-face: FiraCode-Regular, @font-face:
FiraCode-SemiBold): New font faces.
(pre, code, samp): Set font-family to 'Fira Code';
(pre): Set font-size to 0.9em.
(code, samp): Set font-size to 600 (semi-bold).
| Arun Isaac |
2022-03-20 | website: Use Charter as main body font.•••* Makefile (fonts): New variable.
(website/fonts): New target.
(website): Depend on website/fonts.
(clean): Clean website/fonts.
* website/style.css (@font-face: Charter): New font face.
(body): Set font-family to Charter. Set font-size to 20px.
* .gitignore: Add website/fonts.
| Arun Isaac |
2022-03-20 | Makefile: Clean website files.•••* Makefile (clean): Clean website files.
| Arun Isaac |
2022-03-20 | README: Link to manual from the home page.•••* README.org (Documentation): New section.
| Arun Isaac |
2022-03-19 | doc: Mention minimum configurability to philosophy.•••* README.org (Philosophy), doc/forge.skb (Introduction)[Philosophy]:
Mention minimum configurability.
| Arun Isaac |
2022-03-19 | doc: List software components used by guix-forge.•••* README.org, doc/forge.skb (Introduction): List software components
used by guix-forge.
| Arun Isaac |
2022-03-19 | forge: Change ownership of parent directory of website directory.•••* guix/forge/forge.scm (forge-activation): Change ownership of parent
directory of website directory, instead of changing the ownership of
the website directory itself.
* doc/forge.skb (Reference)[<forge-project>]: Document it.
| Arun Isaac |
2022-03-15 | forge: Fix showing only first commit on shallow cloned repos.•••HEAD~1..HEAD fails on shallow cloned repos.
* guix/forge/build/git.scm (download-git-to-store): Use `--max-count
1' instead of HEAD~1..HEAD to show only the first commit.
| Arun Isaac |
2022-03-14 | forge: Allow deep clone on derivation jobs.•••* guix/forge/forge.scm (derivation-job-gexp): Accept #:deep-clone?
argument and pass on to latest-git-checkout.
* guix/forge/build/git.scm (download-git-to-store): Accept
#:deep-clone? argument, and deep clone the git repository if it is
#t. Explicitly specify the first commit to `git log' so that only the
first commit message is displayed.
| Arun Isaac |
2022-03-08 | forge: Add with-profile utility.•••* guix/forge/build/utils.scm: New file.
| Arun Isaac |
2022-03-08 | doc: Reference source files inside guix directory.•••The source files are now nested one level deeper in the guix
directory, and the references to the source files in the documentation
need to be updated.
* doc/forge.skb (Reference): Reference source files inside guix
directory.
| Arun Isaac |
2022-03-02 | Move channel modules into subdirectory.•••We don't want the scm files in doc to be picked up on `guix pull'.
* .guix-channel: New file.
* forge: Move to guix/forge.
| Arun Isaac |
2022-02-28 | website: Use reduced font size to indicate code and samp.•••Use a slightly reduced font size instead of background color to
indicate code. This is the style used by the skribilo documentation,
and is much less in your face.
* website/style.css (code): Unset background-color, padding-left and
padding-right.
(code, samp): Set font-size to 0.8em.
| Arun Isaac |
2022-02-28 | forge: Require laminar service for forge-laminar service.•••The forge-laminar service should require the laminar service, and
transparently set it up even if the user has not explicitly specified
it.
* forge/laminar.scm: Import (gnu services ci).
(forge-laminar-service-type): Extend laminar-service-type with a
dummy value, thus requiring it.
| Arun Isaac |
2022-02-28 | forge: Specify default value for webhook-service-type.•••* forge/webhook.scm (webhook-service-type): Specify default value.
| Arun Isaac |
2022-02-28 | forge: Remove unnecessary (guix gexp) import.•••* forge/forge.scm: Remove (guix gexp) import.
| Arun Isaac |
2022-02-28 | doc: Add Tutorial.•••* Makefile (doc_snippets): New variable.
($(doc_html)): Depend on $(doc_snippets).
* doc/forge.skb: Import (skribilo source lisp).
(Tutorial): New chapter.
* doc/snippets/tutorial.scm: New file.
| Arun Isaac |
2022-02-28 | doc: Add table of contents.•••* doc/forge.skb: Add table of contents.
| Arun Isaac |
2022-02-28 | forge: Append file:// to local git repository URLs before cloning.•••Shallow clone works on local git repositories only with a file:// URL.
* forge/build/git.scm (download-git-to-store): Append file:// to local
git repository URLs.
| Arun Isaac |
2022-02-28 | forge: Do not use use-modules in with-packages.•••This composes better.
* forge/utils.scm (with-packages): Do not use use-modules.
| Arun Isaac |
2022-02-28 | forge: Clone the default branch, not any specific branch.•••* forge/build/git.scm (download-git-to-store): Demote branch to
optional keyword argument.
* forge/forge.scm (derivation-job-gexp): Do not pass the branch
argument to download-git-to-store.
* doc/forge.skb (Reference)[<forge-project>]: Document that the
repository-branch field is unused.
| Arun Isaac |
2022-02-28 | forge: Do not use use-modules in derivation-job-gexp.•••This composes better.
* forge/forge.scm (derivation-job-gexp): Do not use use-modules.
| Arun Isaac |
2022-02-28 | forge: Rename gexp-producer->derivation-output to derivation-job-gexp.•••derivation-job-gexp is less verbose. Besides, this function accepts
forge projects and forge laminar jobs. So, there is no point
pretending that this is a generic gexp function.
* forge/forge.scm (gexp-producer->derivation-output): Rename to
derivation-job-gexp.
| Arun Isaac |
2022-02-28 | doc: Add Reference chapter.•••* doc/forge.skb (Reference): New chapter.
| Arun Isaac |
2022-02-28 | doc: Add reference documentation machinery.•••* doc/skribilo.scm: Import (srfi srfi-1), (srfi srfi-9), (srfi
srfi-26) and (srfi srfi-171).
(<record>, <no-default>, <record-field>): New record types.
(field-sexp->record-field, record-sexp->record,
find-record-definition, expression->string): New functions.
(record-documentation, record-field): New public functions.
| Arun Isaac |
2022-02-28 | forge: Rename <forge-project-configuration> to <forge-project>.•••We need not suffix every record name with "configuration". Besides,
<forge-project> is not directly a service configuration record.
* forge/forge.scm (forge)[<forge-project-configuration>]: Rename to
<forge-project>.
Update all invocations of <forge-project> accessors.
| Arun Isaac |
2022-02-28 | forge: Deprecate <forge-derivation-job>.•••* forge/forge.scm (<forge-derivation-job>): Delete record type.
(<forge-configuration>)[guix-daemon-uri]: Delete field.
(forge-project-configuration-laminar-jobs): Delete function.
(forge-activation, forge-service-type): Use
forge-project-configuration-ci-jobs instead of
forge-project-configuration-laminar-jobs.
(gexp-producer->job-script): Delete function.
| Arun Isaac |
2022-02-28 | forge: Introduce gexp-producer->derivation-output.•••gexp-producer->derivation-output will allow us to deprecate
<forge-derivation-job> and enable users to construct laminar jobs that
build derivations with just <forge-laminar-job>.
* forge/forge.scm (gexp-producer->derivation-output): New public
function.
| Arun Isaac |
2022-02-28 | forge: Thunk ci-jobs and run fields.•••These fields need to be thunked to allow the user access to
this-record accessors when describing jobs.
* forge/forge.scm (<forge-project-configuration>)[ci-jobs]: Thunk
field.
* forge/laminar.scm (<forge-laminar-job>)[run]: Thunk field.
| Arun Isaac |
2022-02-28 | forge: Export record type predicates.•••Predicates are also a part of the public interface of a record type
and are sometimes required.
* forge/forge.scm: Export predicates forge-configuration?,
forge-project-configuration? and forge-derivation-job?.
* forge/laminar.scm: Export predicate forge-laminar-configuration?.
| Arun Isaac |
2022-02-28 | forge: Export forge-project-configuration-name.•••* forge/forge.scm: Export forge-project-configuration-name.
| Arun Isaac |
2022-02-28 | forge: Add this-record accessors.•••These this-record accessors will be required in thunked fields.
* forge/forge.scm (<forge-project-configuration>): Add
this-forge-project-configuration accessor and export it. Use it
instead of this-record in the default value of the ci-jobs-trigger
field.
* forge/laminar.scm (<forge-laminar-job>): Add this-forge-laminar-job
accessor and export it.
| Arun Isaac |
2022-02-28 | manifest: Add manifest.•••* manifest.scm: New file.
| Arun Isaac |