Enter the query into the form above. You can look for specific version of a package by using @ symbol like this: gcc@10.
API method:
GET /api/packages?search=hello&page=1&limit=20
where search is your query, page is a page number and limit is a number of items on a single page. Pagination information (such as a number of pages and etc) is returned
in response headers.
If you'd like to join our channel webring send a patch to ~whereiseveryone/toys@lists.sr.ht adding your channel as an entry in channels.scm.
This package provides an implementation of SRFI 158 for Guile. SRFI 158 defines utility procedures that create, transform, and consume generators. It also defines procedures that return accumulators. It is implemented by wrapping the sample implementation in a thin Guile compatibility layer.
Guile-Bash provides a shared library and set of Guile modules, allowing you to extend Bash in Scheme. Scheme interfaces allow you to access the following aspects of Bash:
aliases;
setting and getting Bash variables;
creating dynamic variables;
creating Bash functions with a Scheme implementation;
reader macro for output capturing;
reader macro for evaluating raw Bash commands.
To enable it, run:
enable -f ~/.guix-profile/lib/bash/libguile-bash.so scm
and then run scm example.scm.
This package provides an implementation of SRFI-232, which describes curried, a variant of lambda that creates true curried procedures which also behave just like ordinary Scheme procedures. They can be applied to their arguments one by one, all at once, or anywhere in between, without any novel syntax. curried also supports nullary and variadic procedures, and procedures created with it have predictable behavior when applied to surplus arguments.
MiniKanren is a relational programming extension to the Scheme programming Language, written as a smaller version of Kanren suitable for pedagogical purposes. It is featured in the book, The Reasoned Schemer, written by Dan Friedman, William Byrd, and Oleg Kiselyov.
This is Ian Price's r6rs packaged version of miniKanren, which deviates slightly from miniKanren mainline.
See http://minikanren.org/ for more on miniKanren generally.
G-Golf (Gnome: (Guile Object Library for)) is a library for developing modern applications in Guile Scheme. It comprises a direct binding to the GObject Introspection API and higher-level functionality for importing Gnome libraries and making GObject classes (and methods) available in Guile's object-oriented programming system, GOOPS.
Note: Currently, when developing with G-Golf in guix shell, there is a grafts bug in Guix. To avoid it, use Guix' --no-grafts option. Guix packages that use wrap-program are unaffected.
R7RS-small Scheme library for reading and writing RSV data format, a very simple binary format for storing tables of strings. It is a competitor for CSV (Comma Separated Values) and TSV (Tab Separated Values). Its main benefit is that the strings are represented as Unicode encoded as UTF-8, and the value and row separators are byte values that are never used in UTF-8, so the strings do not need any error prone escaping and thus can be written and read verbatim.
The RSV format is specified in https://github.com/Stenway/RSV-Specification.
This package provides bindings to the GitLab Community Edition REST API as well as the gitlab-cli command line tool for interacting with a GitLab instance.
This package provides Guile modules to access the REST API of Mastodon, a federated microblogging service.
guile-dbi is a library for Guile that provides a convenient interface to SQL databases. This package implements the interface for MySQL.
Lokke intends to provide a full dialect of Clojure for Guile. It also consists of a set of Guile modules providing some of Clojure's functionality in two different guises.
This package provides purely functional data structures written in R6RS Scheme and compiled for Guile. It has been tested with Racket, Guile 2, Vicare Scheme and IronScheme. Right now it contains:
queues
deques
bbtrees
sets
dlists
priority search queues (PSQs)
finger trees
sequences
heaps
hash array mapped tries (HAMTs).
This package implements RFC 9562 UUIDs, and can generate versions 1 and 3-8 from that specification. It also provides parsing for UUIDs in standard hex-and-dash format of any variant and version. Conversion between binary and hex-and-dash string UUIDs is also included.
guile-email is a collection of email utilities implemented in pure guile. It supports parsing MIME (Multipurpose Internet Mail Extensions) compliant email messages and reading emails from the mbox format.
Guile-bstructs provides an efficient implementation of low-level binary structures for Guile Scheme inspired by Chez Scheme's ftypes.
This package provides a Guile programming interface to the ZeroMQ messaging library.
This package provides an Automake test driver that can run SRFI 64 test suites. It gives Automake insight into the individual tests being run, resulting clearer and more specific output.
Emacsy is an embeddable Emacs-like library that uses GNU Guile as extension language. Emacsy can give a C program an Emacsy feel with keymaps, minibuffer, recordable macros, history, tab completion, major and minor modes, etc., and can also be used as a pure Guile library. It comes with a simple counter example using FreeGLUT and browser examples in C using Gtk+-3 and WebKitGtk.
Guile-ERIS is a Guile implementation of the Encoding for Robust Immutable Storage (ERIS). ERIS allows arbitrary content to be encoded into uniformly sized, encrypted blocks that can be reassembled using a short read-capability.
Guile-colorized provides you with a colorized REPL for GNU Guile.
G-Golf (Gnome: (Guile Object Library for)) is a library for developing modern applications in Guile Scheme. It comprises a direct binding to the GObject Introspection API and higher-level functionality for importing Gnome libraries and making GObject classes (and methods) available in Guile's object-oriented programming system, GOOPS.
Note: Currently, when developing with G-Golf in guix shell, there is a grafts bug in Guix. To avoid it, use Guix' --no-grafts option. Guix packages that use wrap-program are unaffected.
This package provides a Scheme wrapper around liblmdb.so. Most names are the same as LMDB ones, except for prefix absence. Several conveniences are added on top:
call-with-env-and-txn,call-with-cursor, andcall-with-wrapped-cursorhelpers and respectivewith-macros.for-cursorprocedure for cursor iteration.valandstattypes.set-compare!andset-dupsort!to configure entry sorting.Error signaling instead of integer return values.
This package provides Guile bindings to the Tree-sitter parsing library.
The (file-names) module provides tools for manipulating file names. The module was built on the idea that doing anything more than a non-trivial modification of a file name string is a pain (making sure all slashes are present and accounted for, resolving . and .., etc). Inevitably, you have to break the string up into chunks and operate on that list of components. This module takes care of that for you.
Guile-SMC is a state machine compiler that allows users to describe finite state machines (FSMs) in Scheme in terms of transition tables. It is capable to generate such transition tables from a PlantUML state diagrams.
A transition table can be verified and checked for dead-ends and infinite loops. Also Guile-SMC FSMs gather statistics when they run.
Guile-SMC comes with a Scheme program called smc -- a state machine compiler itself. It produces a Scheme code for an FSM from the PlantUML format. This tool is meant to be called on a PlantUML file when a program with a FSM is being built (for example, from a Makefile.)