aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-17webhook: Run as webhook user and group.Arun Isaac
* guix/forge/webhook.scm (%webhook-accounts): New variable. (webhook-activation): chown log directory to webhook user and group. (webhook-shepherd-service): Run as webhook user and group. (webhook-service-type): Extend account-service-type.
2022-10-17webhook: Use least-authority-wrapper.Arun Isaac
* guix/forge/webhook.scm: Import (gnu build linux-container), (gnu system file-systems) and (guix least-authority). (webhook-shepherd-service): Deprecate make-forkexec-constructor/container in favor of least-authority-wrapper.
2022-10-17webhook: Use <forge-*-socket> to configure socket.Arun Isaac
* doc/forge.skb (Reference)[<webhook-configuration>]: Replace ip and port fields with the socket field. * guix/forge/webhook.scm: Import (forge socket). (<webhook-configuration>): Replace ip and port fields with the socket field. (webhook-shepherd-service): Reference the socket field instead of the ip and port fields.
2022-10-17tissue: Use least-authority-wrapper.Arun Isaac
* guix/forge/tissue.scm: Import (gnu build linux-container), (gnu system file-systems) and (guix least-authority). (tissue-shepherd-service): Deprecate make-forkexec-constructor/container in favor of least-authority-wrapper.
2022-09-15Revert "tissue: Set ownership of state directory recursively."Arun Isaac
This reverts commit f6beefdeacb8f1e67844142d73fc3e2de38db254. The ownership of the state directory is set on a per-host basis. The state directory is not owned completely by the tissue user.
2022-09-15tissue: Set ownership of state directory recursively.Arun Isaac
* guix/forge/tissue.scm (tissue-activation): Set ownership of state directory recursively.
2022-07-11tissue: Invoke `tissue web' instead of `tissue run-web'.Arun Isaac
tissue has made a breaking change renaming the run-web subcommand to the web subcommand. * guix/forge/tissue.scm (tissue-shepherd-service): Invoke `tissue web' instead of `tissue run-web'.
2022-07-11tissue: Update to 0.1.0-1.6d6285d.Arun Isaac
* guix/forge/tissue.scm (tissue): Update to 0.1.0-1.6d6285d.
2022-07-06tissue: Use skribilo from upstream git repository.Arun Isaac
The skribilo gemtext reader, originally developed on the fork at git.systemreboot.net, has been merged upstream. So, we should prefer the upstream version. * guix/forge/tissue.scm (skribilo-latest)[source]: Use skribilo from upstream git repository, not the fork at git.systemreboot.net.
2022-07-06tissue: Add tissue service.Arun Isaac
* guix/forge/tissue.scm: New file.
2022-07-05socket: Introduce <forge-*-socket> types.Arun Isaac
<forge-*-socket> will be a universal type to specify IP addresses, ports and Unix sockets across all guix-forge services. * guix/forge/socket.scm: New file. * doc/forge.skb (Reference): Document <forge-ip-socket> and <forge-unix-socket>.
2022-06-01doc: Label file as post-receive, instead of post-receive-hook.Arun Isaac
* doc/forge.skb (Tutorial, Reference): Label file as post-receive, instead of post-receive-hook.
2022-06-01doc: Move comma displaced by Emacs lispy-mode.Arun Isaac
* doc/forge.skb (Reference): Move comma displaced by Emacs lispy mode.
2022-04-09utils: Implement with-packages using with-manifest.Arun Isaac
* guix/forge/utils.scm (profile-with-packages, environment-with-packages): Delete functions. (with-packages): Implement in terms of with-manifest.
2022-04-09utils: Add with-manifest.Arun Isaac
* guix/forge/utils.scm: Import (guix modules). (with-manifest): New function.
2022-04-09forge: Do not try to trigger CI jobs when there are none.Arun Isaac
* 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.
2022-04-09manifest.scm: Add font-charter and font-fira-code.Arun Isaac
* 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.
2022-04-09manifest.scm: Use a later unreleased version of skribilo.Arun Isaac
* 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.
2022-04-08doc: Link to ci-jobs-trigger-gexp definition.Arun Isaac
* doc/forge.skb (Tutorial): Link mention of post-receive-hook script to the in-source definition of ci-jobs-trigger-gexp.
2022-04-08doc: Create dummy G-expression reader.Arun Isaac
* doc/skribilo.scm: Extend the reader with a dummy G-expression reader.
2022-03-28forge: Add trigger? field to forge-laminar-job.Arun Isaac
* 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?.
2022-03-28laminar: Suffix .run and .after in script names.Arun Isaac
* guix/forge/laminar.scm (forge-laminar-activation): Suffix .run and .after in script names.
2022-03-28webhook: Suffix -webhook in script name.Arun Isaac
* guix/forge/webhook.scm (hooks-json-gexp): Suffix -webhook in script name.
2022-03-28forge: Suffix -cron-job in script name.Arun Isaac
* guix/forge/forge.scm (forge-service-type): Suffix -cron-job in script name.
2022-03-28forge: Suffix -post-receive-hook in script name.Arun Isaac
* guix/forge/forge.scm (forge-activation): Suffix -post-receive-hook in script name.
2022-03-28forge: Import only laminar from (gnu packages ci).Arun Isaac
* guix/forge/forge.scm: Import only laminar from (gnu packages ci).
2022-03-21doc: Explain what a post-receive-hook is and how it is set up.Arun Isaac
* doc/forge.skb (Tutorial): Explain what a post-receive-hook is and how it is set up.
2022-03-21doc: Clarify double reference of (guix build utils).Arun Isaac
* doc/forge.skb (Tutorial): Clarify double reference of (guix build utils).
2022-03-20doc: Link to G-expressions in the Guix manual.Arun Isaac
* doc/forge.skb (Tutorial): Link to G-expressions in the Guix manual.
2022-03-20README: Add links to constituent software components.Arun Isaac
* README.org: Add links to constituent software components.
2022-03-20website: Use Fira Code for code blocks.Arun Isaac
* 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).
2022-03-20website: Use Charter as main body font.Arun Isaac
* 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.
2022-03-20Makefile: Clean website files.Arun Isaac
* Makefile (clean): Clean website files.
2022-03-20README: Link to manual from the home page.Arun Isaac
* README.org (Documentation): New section.
2022-03-19doc: Mention minimum configurability to philosophy.Arun Isaac
* README.org (Philosophy), doc/forge.skb (Introduction)[Philosophy]: Mention minimum configurability.
2022-03-19doc: List software components used by guix-forge.Arun Isaac
* README.org, doc/forge.skb (Introduction): List software components used by guix-forge.
2022-03-19forge: Change ownership of parent directory of website directory.Arun Isaac
* 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.
2022-03-15forge: Fix showing only first commit on shallow cloned repos.Arun Isaac
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.
2022-03-14forge: Allow deep clone on derivation jobs.Arun Isaac
* 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.
2022-03-08forge: Add with-profile utility.Arun Isaac
* guix/forge/build/utils.scm: New file.
2022-03-08doc: Reference source files inside guix directory.Arun Isaac
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.
2022-03-02Move channel modules into subdirectory.Arun Isaac
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.
2022-02-28website: Use reduced font size to indicate code and samp.Arun Isaac
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.
2022-02-28forge: Require laminar service for forge-laminar service.Arun Isaac
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.
2022-02-28forge: Specify default value for webhook-service-type.Arun Isaac
* forge/webhook.scm (webhook-service-type): Specify default value.
2022-02-28forge: Remove unnecessary (guix gexp) import.Arun Isaac
* forge/forge.scm: Remove (guix gexp) import.
2022-02-28doc: Add Tutorial.Arun Isaac
* 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.
2022-02-28doc: Add table of contents.Arun Isaac
* doc/forge.skb: Add table of contents.
2022-02-28forge: Append file:// to local git repository URLs before cloning.Arun Isaac
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.
2022-02-28forge: Do not use use-modules in with-packages.Arun Isaac
This composes better. * forge/utils.scm (with-packages): Do not use use-modules.