akku 1.1.0

Language package manager for Scheme

Akku.scm is a language package manager for Scheme. It grabs hold of code and vigorously shakes it until it behaves properly.

 - No complicated setup to point out where libraries are; Akku finds them!
 - Separately declare dependencies and locked versions for your project.
 - Convert R7RS libraries for use with R6RS Scheme implementations.
 - Numerous R6RS packages as well as R7RS libraries mirrored from Snow.
$ akku update
$ akku install akku
$ .akku/env
Authors

Göran Weinholt

License

GPL-3.0-or-later

Dependencies

~0.0.0-akku.181
^2.1.0
~0.0.0-akku
^1.0.4
^1.0.0
~0.8.0-akku
~0.0.0-akku
~0.0.0-akku
~0.0.0-akku
^1.1.0
^1.0.0
^1.0.0
^1.0.0-beta.4

Source code

https://gitlab.com/akkuscm/akku.git git
31552c708e3aa058f7bbf98191f5d16f97193463
Tag: v1.1.0

Package contents

  • (wak private include compat) R6 Loko Scheme
    • → stale-when read-annotated annotation? annotation-expression file-mtime merge-path library-search-paths
    • ← (rnrs base) R6
    • ← (rnrs io simple) R6
    • ← (rnrs lists) R6
    • ← (loko) Built-in
    • (srfi :170) SRFI
  • (akku config) R6
    • → install-prefix install-pkgdatadir
    • ← (rnrs) R6
  • (akku format lockfile) R6
    • → lockfile-filename projects
    • ← (rnrs) R6
  • (akku format manifest) R6
    • → manifest-filename akku-package
    • ← (rnrs) R6
    • ← (semver versions)
  • (akku lib archive-maint) R6
  • (akku lib bundle) R6
    • → dependency-scan license-scan compat-scan logger:akku.bundle
    • ← (rnrs) R6
    • (srfi :1 lists) SRFI
    • (srfi :67 compare-procedures) SRFI
    • (srfi :115 regexp) SRFI
    • ← (industria strings)
    • ← (wak fmt)
    • ← (wak fmt color)
    • ← (chibi match)
    • ← (akku lib file-parser)
    • ← (akku lib install)
    • ← (akku lib lock)
    • ← (akku lib fetch)
    • ← (akku lib repo-scanner)
    • ← (akku lib schemedb)
    • ← (akku lib utils)
    • ← (akku private logging)
  • (akku lib fetch) R6
    • → fetch project-source-directory logger:akku.fetch
    • ← (rnrs) R6
    • ← (compression tar)
    • ← (compression gzip)
    • ← (compression xz)
    • ← (hashing sha-2)
    • ← (wak fmt)
    • ← (chibi match)
    • ← (akku lib git)
    • ← (akku lib lock)
    • ← (akku lib utils)
    • ← (akku private compat)
    • ← (akku private http)
    • ← (akku private logging)
  • (akku lib file-parser) R6
    • → examine-source-file examine-other-file fmt-artifact artifact? artifact-path artifact-path-list artifact-form-index artifact-last-form? artifact-imports artifact-assets artifact-implementation artifact-for-test? artifact-internal? artifact-for-bin? artifact-directory artifact-filename make-generic-file generic-file? make-legal-notice-file legal-notice-file? r6rs-library? r6rs-library-name r6rs-library-version r6rs-library-exports r6rs-library-original-name r6rs-program? r7rs-library? r7rs-library-name r7rs-library-exports r7rs-program? module? module-name library-reference? library-reference-name library-reference-version-reference library-reference-original-import-spec library-reference-satisfied? include-reference? include-reference-path include-reference-realpath include-reference-conversion include-reference-original-include-spec include-reference-read-all read-all-forms
    • ← (rnrs) R6
    • (srfi :1 lists) SRFI
    • (srfi :115 regexp) SRFI
    • ← (laesare reader)
    • ← (wak fmt)
    • ← (chibi match)
    • ← (akku lib r7rs)
    • ← (akku lib schemedb)
    • ← (akku lib utils)
    • ← (akku private logging)
  • (akku lib git) R6
    • → is-git-repository? git-clone git-shallow-clone git-fetch git-fetch-tag git-checkout-commit git-checkout-branch git-checkout-tag git-ls-files git-remote-set-url git-rev-parse git-rev-list/first git-tag-list git-list-remotes git-remote-get-url
    • ← (rnrs) R6
    • (srfi :13 strings) SRFI
    • ← (akku private compat)
    • ← (akku lib utils)
  • (akku lib graph) R6
    • → print-gv-file
    • ← (rnrs) R6
    • ← (chibi match)
    • ← (akku lib file-parser)
    • ← (akku lib repo-scanner)
    • ← (akku lib schemedb)
  • (akku lib init) R6
    • → init-project
    • ← (rnrs) R6
    • (srfi :19 time) SRFI
    • (srfi :39 parameters) SRFI
    • ← (industria strings)
    • ← (wak fmt)
    • ← (akku format manifest)
    • ← (akku private compat)
    • ← (akku lib manifest)
    • ← (akku lib lock)
    • ← (akku lib utils)
    • ← (akku private logging)
  • (akku lib install) R6
    • → install akku-directory libraries-directory ffi-libraries-directory r7rs-libraries-directory binaries-directory file-list-filename make-r6rs-library-filenames logger:akku.install
    • ← (rnrs) R6
    • (srfi :1 lists) SRFI
    • (srfi :13 strings) SRFI
    • (srfi :67 compare-procedures) SRFI
    • ← (chibi match)
    • ← (compression tar)
    • ← (compression xz)
    • ← (hashing sha-2)
    • ← (laesare reader)
    • ← (laesare writer)
    • ← (wak fmt)
    • ← (akku private compat)
    • ← (akku lib fetch)
    • ← (akku lib file-parser)
    • ← (akku lib git)
    • ← (akku lib manifest)
    • ← (akku lib lock)
    • ← (akku lib library-name)
    • ← (akku lib r7rs)
    • ← (akku lib repo-scanner)
    • ← (akku lib schemedb)
    • ← (akku lib utils)
    • ← (akku private http)
    • ← (akku private logging)
  • (akku lib library-name) R6
    • → library-name->file-name/chezscheme library-name->file-name/digamma library-name->file-name/guile library-name->file-name/ikarus library-name->file-name/ironscheme library-name->file-name/larceny library-name->file-name/loko library-name->file-name/mosh library-name->file-name/psyntax library-name->file-name/racket library-name->file-name/sagittarius library-name->file-name/vicare library-name->file-name/ypsilon library-name->file-name-variant library-name->file-name-variant/r7rs
    • ← (rnrs) R6
    • (srfi :13 strings) SRFI
    • ← (rnrs r5rs) R6
  • (akku lib lock) R6
    • → add-dependency remove-dependencies lock-dependencies list-packages show-package read-lockfile make-project make-dummy-project project? project-name project-packages project-source project-installer project-tag project-revision project-content project-sanitized-name project-scripts project-locks-package-version? logger:akku.lock
    • ← (rnrs) R6
    • (srfi :1 lists) SRFI
    • (srfi :13 strings) SRFI
    • (srfi :67 compare-procedures) SRFI
    • ← (semver versions)
    • ← (semver ranges)
    • ← (spdx parser)
    • ← (wak fmt)
    • ← (wak fmt color)
    • ← (chibi match)
    • ← (akku lib manifest)
    • ← (akku lib solver)
    • ← (akku lib solver choice)
    • ← (akku lib solver dummy-db)
    • ← (akku lib solver internals)
    • ← (akku lib solver logging)
    • ← (akku lib utils)
    • ← (akku lib solver universe)
    • ← (akku private compat)
    • ← (akku private logging)
  • (akku lib manifest) R6
    • → default-manifest-name default-manifest-version default-manifest-license make-package package? package-name package-version* package->index-package make-version version? parse-version version-number version-semver version-lock version-lock-set! version-depends version-depends/dev version-conflicts version-synopsis version-description version-authors version-homepage version-license version-scripts read-manifest write-manifest draft-akku-package
    • ← (rnrs) R6
    • (srfi :39 parameters) SRFI
    • ← (semver versions)
    • ← (spdx ids)
    • ← (spdx parser)
    • ← (wak fmt)
    • ← (chibi match)
    • ← (akku private compat)
    • ← (akku lib utils)
    • ← (akku private logging)
  • (akku lib publish) R6
    • → publish-packages
    • ← (rnrs) R6
    • ← (semver versions)
    • (srfi :115 regexp) SRFI
    • ← (wak fmt)
    • ← (wak fmt color)
    • ← (akku private compat)
    • ← (akku lib git)
    • ← (akku lib manifest)
    • ← (akku lib utils)
    • ← (akku private logging)
  • (akku lib r7rs) R6
    • → r7rs-import-set->r6rs r7rs-library-name->r6rs r7rs-export-set->r6rs r7rs-library->r6rs-library parse-r7rs-define-library r7lib? r7lib-name r7lib-declaration* r7export? r7export-internal-name r7export-external-name r7import? r7import-name r7import-set r7begin? r7begin-body* r7include? r7include-source-filename r7include-target-filename r7include-ci? r7include-expr r7include-original-expr r7condexp? r7condexp-clause* r7condexp-clause? r7condexp-clause-feature-req r7condexp-clause-declaration* r7unknown? r7unknown-declaration r7lib-referenced-features r7lib-implementation-names r7lib-has-generic-implementation? r7condexp-eval
    • ← (rnrs) R6
    • (srfi :1 lists) SRFI
    • ← (wak fmt)
    • ← (chibi match)
    • ← (akku lib schemedb)
    • ← (akku private logging)
  • (akku lib repo-scanner) R6
    • → scm-file-list find-artifacts find-artifacts/allow-links
    • ← (rnrs) R6
    • (srfi :1 lists) SRFI
    • (srfi :13 strings) SRFI
    • ← (industria strings)
    • ← (wak fmt)
    • ← (chibi match)
    • ← (akku private compat)
    • ← (akku lib git)
    • ← (akku lib file-parser)
    • ← (akku lib utils)
    • ← (akku private logging)
  • (akku lib scan) R6
    • → scan-repository
    • ← (rnrs) R6
    • (srfi :67 compare-procedures) SRFI
    • ← (wak fmt)
    • ← (chibi match)
    • ← (akku private compat)
    • ← (akku lib file-parser)
    • ← (akku lib repo-scanner)
    • ← (akku lib schemedb)
    • ← (akku lib utils)
    • ← (akku private utils)
    • ← (akku private logging)
  • (akku lib schemedb) R6
    • → r6rs-builtin-library? r6rs-library-name*->implementation-name r7rs-builtin-library? r7rs-library-name*->implementation-name r6rs-implementation-names r7rs-implementation-names rnrs-implementation-name? r7rs-implementation-name? implementation-features r6rs-library-name-mangle r6rs-library-omit-for-implementations r6rs-library-block-for-implementations
    • ← (rnrs) R6
    • (srfi :1 lists) SRFI
    • ← (chibi match)
  • (akku lib scripts) R6
    • → run-scripts logger:akku.scripts
    • ← (rnrs) R6
    • (srfi :1 lists) SRFI
    • ← (wak fmt)
    • ← (chibi match)
    • ← (akku lib fetch)
    • ← (akku lib install)
    • ← (akku lib lock)
    • ← (akku lib manifest)
    • ← (akku lib schemedb)
    • ← (akku lib utils)
    • ← (akku private compat)
    • ← (akku private logging)
  • (akku lib solver choice) R6
    • → make-install-choice make-install-from-dep-source-choice choice? choice-version choice-from-dep-source? choice-dep choice-id choice-with-dep choice-with-id choice-with-from-dep-source? generalize-choice choice-contains? choice=? choice<? choice-compare choice-hash choice-wt-type make-choice-set singleton-choice-set choice-set? choice-set-size choice-set-contains? choice-set-has-contained-choice? choice-set-version-of choice-set-choice-contained-by choice-set-containing-choice choice-set-remove-overlaps choice-set-insert-or-narrow choice-set-merge choice-set-adjoin choice-set-union choice-set->list choice-set-for-each choice-set-fold choice-set-traverse choice-set-subset? generalize-choice-set in-choice-set choice-set=? choice-set<? choice-set-compare choice-set-hash guarantee-choice-set make-choice-table choice-table? choice-table-size choice-table-ref choice-table-set! choice-table-update! choice-table-delete! choice-table-visit choice-table-contains? choice-table-for-each choice-table-fold choice-table-copy
    • ← (rnrs) R6
    • (srfi :2 and-let*) SRFI
    • (srfi :67 compare-procedures) SRFI
    • ← (wak fmt)
    • ← (wak foof-loop)
    • ← (spells misc)
    • ← (spells hash-utils)
    • ← (spells record-types)
    • ← (spells tracing)
    • ← (wak wt-tree)
    • ← (akku private utils)
    • ← (akku lib solver universe)
  • (akku lib solver dummy-db) R6
    • → make-dummy-db dummy-db? dummy-db-version-ref dummy-db-add-package! dummy-db-add-dependency! dummy-db->universe
    • ← (rnrs) R6
    • (srfi :1) SRFI
    • ← (wak foof-loop)
    • ← (wak riastreams)
    • ← (spells record-types)
    • ← (akku lib solver internals)
  • (akku lib solver expression) R6
    • → expression/value expression/add-parent! expression/remove-parent! expression/dsp expression/child expression/set-child! expression/add-child! expression/remove-child! make-expression-wrapper make-var-expression expression/set-value! make-and-expression make-or-expression
    • ← (rnrs) R6
    • (srfi :1) SRFI
    • ← (spells gc)
    • ← (spells misc)
    • ← (spells operations)
    • ← (wak foof-loop)
    • ← (wak fmt)
  • (akku lib solver internals) R6
    • → make-universe universe? universe-package-count universe-version-count universe-package-stream universe-dependency-stream guarantee-universe make-package package? package-id package-name package-versions package-current-version set-package-versions! set-package-current-version! package=? package<? package-compare package-hash package-wt-type guarantee-package make-version make-uninstalled-version version? version-id version-tag version-package version-dependencies version=? version<? version-compare version-hash version-wt-type version-reverse-dependencies version-add-dependency! version-add-reverse-dependency! guarantee-version make-dependency dependency? dependency-tag dependency-source dependency-targets dependency=? dependency<? dependency-compare dependency-hash dependency-wt-type guarantee-dependency make-tier tier? tier-policy tier-priority tier=? tier<? tier<=? tier>? tier>=? tier-compare tier-wt-type guarantee-tier minimum-tier defer-tier already-generated-tier conflict-tier maximum-tier
    • ← (rnrs base) R6
    • ← (rnrs control) R6
    • ← (rnrs arithmetic fixnums) R6
    • (srfi :67 compare-procedures) SRFI
    • ← (spells define-values)
    • ← (spells hash-utils)
    • ← (spells record-types)
    • ← (spells tracing)
    • ← (wak wt-tree)
    • ← (akku private utils)
  • (akku lib solver logging) R6
    • → logger:dorodango.solver log/trace log/debug log/info internal-error dsp-universe dsp-package dsp-version dsp-dependency dsp-tier dsp-choice dsp-choice-set dsp-choice-table
    • ← (rnrs) R6
    • ← (wak fmt)
    • ← (wak foof-loop)
    • ← (wak riastreams)
    • ← (spells alist)
    • ← (spells logging)
    • ← (wak wt-tree)
    • ← (akku private logging)
    • ← (akku lib solver universe)
    • ← (akku lib solver choice)
  • (akku lib solver promotions) R6
    • → make-promotion promotion? promotion-choices promotion-tier promotion-valid-condition promotion-compare promotion=? promotion<? promotion-wt-type dsp-promotion make-promotion-set promotion-set? promotion-set-insert! find-highest-incipient-promotions find-highest-incipient-promotions-containing
    • ← (rnrs) R6
    • (srfi :2 and-let*) SRFI
    • (srfi :8 receive) SRFI
    • (srfi :67 compare-procedures) SRFI
    • ← (wak fmt)
    • ← (wak foof-loop)
    • ← (spells record-types)
    • ← (spells xvector)
    • ← (wak wt-tree)
    • ← (akku private utils)
    • ← (akku lib solver logging)
    • ← (akku lib solver choice)
    • ← (akku lib solver expression)
    • ← (akku lib solver universe)
  • (akku lib solver search-graph) R6
    • → make-search-graph search-graph? search-graph-step search-graph-last-step search-graph-add-root-step! search-graph-add-step! search-graph-add-clone! search-graph-schedule-promotion-propagation! search-graph-run-scheduled-promotion-propagations! search-graph-bind-choice! search-graph-remove-choice! step? step-actions step-num step-tier step-score step-action-score step-promotion-queue-location step-blessed-solution? step-solution? step-num-unresolved-deps step-unresolved-deps-ref step-unresolved-deps-min step-modify-unresolved-dep! step-add-unresolved-dep! step-deps-solved-by-choice step-forbidden-versions step-first-child step-last-child? step-increase-score! step-increase-action-score! step-add-action! step-add-forbidden-version! step-add-dep-solved-by-choice! set-step-score! set-step-promotion-queue-location! set-step-tier! set-step-blessed-solution?! set-step-last-child?! dsp-step make-promotion-queue promotion-queue-index promotion-queue-action-sum promotion-queue-promotion promotion-queue-next promotion-queue-push! in-promotion-queue solver-tracker? make-solver-tracker solver-tracker-size solver-tracker-lookup solver-tracker-structural-reasons solver-tracker-update solver-tracker-remove solver-tracker-for-each solver-tracker-fold in-solver-tracker dsp-solver-tracker dsp-solver-tracker-solvers make-solver-info solver-info? solver-info-tier solver-info-reasons solver-info-tier-valid solver-info-is-deferred-listener
    • ← (rnrs) R6
    • (srfi :1) SRFI
    • (srfi :2 and-let*) SRFI
    • (srfi :8 receive) SRFI
    • (srfi :67 compare-procedures) SRFI
    • ← (wak foof-loop)
    • ← (wak fmt)
    • ← (wak wt-tree)
    • ← (spells record-types)
    • ← (spells xvector)
    • ← (spells tracing)
    • ← (akku private utils)
    • ← (akku lib solver expression)
    • ← (akku lib solver logging)
    • ← (akku lib solver choice)
    • ← (akku lib solver promotions)
    • ← (akku lib solver universe)
  • (akku lib solver universe) R6
    • → universe? universe-package-count universe-version-count universe-package-stream universe-dependency-stream guarantee-universe package? package-id package-name package-versions package-current-version package=? package<? package-compare package-hash package-wt-type guarantee-package version? version-id version-tag version-package version-dependencies version-reverse-dependencies version=? version<? version-compare version-hash version-wt-type guarantee-version dependency? dependency-tag dependency-source dependency-targets dependency=? dependency<? dependency-compare dependency-hash dependency-wt-type guarantee-dependency make-tier tier? tier-policy tier-priority tier=? tier<? tier<=? tier>? tier>=? tier-compare tier-wt-type guarantee-tier minimum-tier defer-tier already-generated-tier conflict-tier maximum-tier
    • ← (akku lib solver internals)
  • (akku lib solver) R6
    • → make-solver solver? find-next-solution! solution? solution-choices logger:dorodango.solver
    • ← (rnrs) R6
    • (srfi :2 and-let*) SRFI
    • (srfi :8 receive) SRFI
    • (srfi :67 compare-procedures) SRFI
    • ← (spells hash-utils)
    • ← (spells record-types)
    • ← (spells tracing)
    • ← (spells misc)
    • ← (spells alist)
    • ← (spells logging)
    • ← (wak riastreams)
    • ← (wak fmt)
    • ← (wak foof-loop)
    • ← (wak wt-tree)
    • ← (akku private utils)
    • ← (akku lib solver logging)
    • ← (akku lib solver choice)
    • ← (akku lib solver search-graph)
    • ← (akku lib solver promotions)
    • ← (akku lib solver universe)
    • ← (akku lib solver expression)
  • (akku lib update) R6
  • (akku lib utils) R6
    • → append-map filter-map map-in-order delete-duplicates assq-ref assq-update assoc-replace string-prefix? string-suffix? string-index string-split mkdir/recursive split-path path-join url-join read-shebang pipe-ports application-data-directory system-data-directory system-project-directories cache-directory local-ignore-file running-from-home? sanitized-name get-terminal-size symlink/relative resolve-pathname resolve-relative-filename get-log-threshold run-command get-realname get-index-filename check-filename with-working-directory setting get-settings
    • ← (rnrs) R6
    • ← (rnrs mutable-pairs) R6
    • (srfi :1 lists) SRFI
    • (srfi :13 strings) SRFI
    • (srfi :98 os-environment-variables) SRFI
    • ← (spells process)
    • ← (industria strings)
    • ← (chibi match)
    • ← (akku config)
    • ← (akku private compat)
  • (akku private compat) R6 Chez Scheme Internal
    • → cd getcwd mkdir chmod rename-file delete-directory symlink readlink putenv open-process-ports directory-list file-exists/no-follow? file-symbolic-link? file-regular? file-directory? pretty-print get-passwd-realname os-name
    • ← (rnrs) R6
    • (srfi :13 strings) SRFI
    • ← (chezscheme) Built-in
  • (akku private compat) R6 GNU Guile Internal
    • → cd getcwd mkdir chmod rename-file delete-directory symlink readlink putenv open-process-ports directory-list file-exists/no-follow? file-symbolic-link? file-regular? file-directory? pretty-print get-passwd-realname os-name
    • ← (rnrs) R6
    • ← (ice-9 pretty-print) Built-in
    • ← (guile) Built-in
    • (srfi :13 strings) SRFI
    • ← (spells process)
  • (akku private compat) R6 Loko Scheme Internal
    • → cd getcwd mkdir chmod symlink readlink rename-file delete-directory directory-list putenv open-process-ports file-exists/no-follow? file-symbolic-link? file-regular? file-directory? pretty-print get-passwd-realname os-name
    • ← (rnrs) R6
    • (srfi :170 posix) SRFI
    • (srfi :170 compat) SRFI
    • ← (spells process)
    • ← (loko) Built-in
  • (akku private http) R6 Loko Scheme Internal
    • → make-http-request http-request? http-request-method http-request-url open-http-request http-response? http-response-status http-response-port download-file
    • ← (rnrs) R6
    • (srfi :13 strings) SRFI
    • ← (akku lib utils)
    • ← (akku private compat)
    • ← (akku private logging)
    • ← (wak fmt)
    • ← (pre-srfi processes)
    • ← (loko system fibers) Built-in
    • ← (loko arch amd64 linux-syscalls) Built-in
    • ← (loko arch amd64 linux-numbers) Built-in
    • ← (loko) Built-in
  • (akku private http) R6 Internal
    • → make-http-request http-request? http-request-method http-request-url open-http-request http-response? http-response-status http-response-port download-file
    • ← (rnrs) R6
    • ← (pffi)
    • (srfi :13 strings) SRFI
    • ← (akku lib utils)
    • ← (akku private compat)
    • ← (akku private logging)
  • (akku private logging) R6 Internal
    • → make-logger logger:akku make-fmt-log
    • ← (rnrs) R6
    • ← (spells logging)
    • ← (wak fmt)
  • (chibi match) R6 GNU Guile Internal
    • → match match-lambda
    • ← (ice-9 match) Built-in
  • (akku private utils) R6 Internal

Version history

  • 2021-02-06 ~ 1.1.0
  • 2019-12-08 ~ 1.0.1
  • 2019-07-26 ~ 1.0.0
  • 2019-05-04 ~ 0.5.1
  • 2019-04-05 ~ 0.5.0
  • 2019-02-02 ~ 0.4.1
  • 2018-10-13 ~ 0.4.0
  • 2018-07-29 ~ 0.3.1
  • 2018-06-22 ~ 0.3.0
  • 2018-05-13 ~ 0.2.3
  • 2018-04-08 ~ 0.2.2
  • 2018-04-07 ~ 0.2.1