Package Details: chez-scheme 9.5.8-1

Git Clone URL: (read-only, click to copy)
Package Base: chez-scheme
Description: Compiler and run-time system for the language of the Revised^6 Report on Scheme (R6RS), with numerous extensions.
Upstream URL:
Keywords: Scheme
Licenses: Apache
Conflicts: chez-scheme-git, petite-chez-scheme
Replaces: chez-scheme-git, petite-chez-scheme
Submitter: dgeibi
Maintainer: taekyung (jaseemabid, GunpowderGuy, CodingCellist)
Last Packager: CodingCellist
Votes: 38
Popularity: 0.38
First Submitted: 2016-05-22 13:58 (UTC)
Last Updated: 2022-04-28 13:55 (UTC)

Pinned Comments

Latest Comments

zenten commented on 2022-02-20 15:17 (UTC)

Is there any progress on this? It's still not working on my system, same error.

jonathon commented on 2022-01-31 15:03 (UTC)

With the new makepkg defaults including LTO this will fail to compile. The PKGBUILD needs either:

@@ -12,6 +12,7 @@ license=('Apache')
 depends=('ncurses' 'libx11' 'libutil-linux')
 conflicts=('petite-chez-scheme' 'chez-scheme-git')
 replaces=('petite-chez-scheme' 'chez-scheme-git')

to disable LTO, or:

@@ -23,5 +23,5 @@ build() {

 package() {
   cd "${srcdir}/${_archivename}"
-  make install DESTDIR="$pkgdir"
+  make install CFLAGS+=" -ffat-lto-objects" DESTDIR="$pkgdir"

to make sure compilation succeeds with LTO intact.

jaseemabid commented on 2022-01-27 14:10 (UTC)

One of the maintainers here.

I used to work at Apple and couldn't do any FOSS work, but I should be able to help out starting next week now that I've left the company.

dgeibi commented on 2022-01-27 13:17 (UTC)

@CodingCellist Thanks. You are now a maintainer.

CodingCellist commented on 2022-01-27 09:27 (UTC)

@dgeibi If you need people, I am also happy to help maintain this package. I co-maintain the idris2 package, which depends on the chez-scheme package.

taekyung commented on 2022-01-27 08:36 (UTC)

@GunpowderGuy Sorry for delaying updates, I'll take care of that in a couple of days.

@dgeibi I think I can keep maintaining it.

dgeibi commented on 2022-01-27 03:39 (UTC)

Sorry, I haven't used arch linux for a long time. @GunpowderGuy, You are a maintiner of the package now.

GunpowderGuy commented on 2022-01-26 12:09 (UTC)

@dgeibi @taekyung @jaseemabid the package is still bugged, the checksum got wrong:

GunpowderGuy commented on 2022-01-22 17:27 (UTC) (edited on 2022-01-22 19:11 (UTC) by GunpowderGuy)

Several people are reporting that the validity check fails when installing this package @dgeibi Edit: this is the problem

taekyung commented on 2021-11-24 14:34 (UTC)

I changed the binary name from scheme to chez.

Thanks @defty.

defty commented on 2021-11-22 21:05 (UTC)

This is a patch to update to 9.5.6, canonicalize the license name, and install to chez and chez-script:

diff --git a/PKGBUILD b/PKGBUILD
index 0fb6596..8a7012b 100644
@@ -2,26 +2,26 @@
 # Maintainer: Taekyung Kim <>

 pkgdesc="Chez Scheme is a compiler and run-time system for the language of the Revised^6 Report on Scheme (R6RS), with numerous extensions."
 arch=(i686 x86_64)
 depends=('ncurses' 'libx11' 'libutil-linux')
 conflicts=('petite-chez-scheme' 'chez-scheme-git')
 replaces=('petite-chez-scheme' 'chez-scheme-git')

 build() {
   cd "$srcdir/${_archivename}"
-  ./configure --installprefix=/usr --temproot=$pkgdir --threads
+  ./configure --installprefix=/usr --temproot=$pkgdir --installschemename=chez --installscriptname=chez-script --threads

 package() {
   cd "${srcdir}/${_archivename}"
-  make install DESTDIR="$pkgdir" InstallSchemeName=scheme
+  make install DESTDIR="$pkgdir"

slbtty commented on 2021-09-13 16:36 (UTC) (edited on 2021-09-13 16:48 (UTC) by slbtty)

Related update:

Chez is not "standard" scheme, and there will never be one. Users should specify the scheme based on their choice.

CodingCellist commented on 2020-09-11 07:08 (UTC)

@joshu, apologies, it seems the change you proposed in your original comment is "more correct" from looking into other Scheme implementations (ypsilon-scheme is invoked as ypsilon, scm-scheme as scm, chibi-scheme as chibi, etc.). So invoking chez-scheme as chez or chez-scheme would seemingly be more consistent with other implementations. Unfortunately, Idris2 seems to rely on chez-scheme being called scheme beyond what is configurable in the PKGBUILD, which complicates things a bit.

@taekyung, yes there doesn't seem to be an ideal solution. Both have their ups and down, but having a clash in the binary names is definitely not desirable. Based on the pattern above, maybe your change to chez-scheme was "correct". If you don't want to constantly be changing things around, however, that's fair enough. Sorry for confusing things. I realise maintaining a package can be a lot of work, especially when other packages rely on it.

taekyung commented on 2020-09-11 04:00 (UTC) (edited on 2020-09-11 04:04 (UTC) by taekyung)

@joshu, @CodingCellist, thank you for your input, and sorry for making inconveniences and confusion about this package as a maintainer. Apparently, changing PKGBUILD file in idris2 package doesn't fix the problem. So I think it is better to revert the binary name to scheme in order for making no more confusion at the moment.

However would agree on @joshu's comment that having the same binary name for MIT and chez schemes is not desirable at all, given that scheme programmers tend to install many implementations on their computer for testing, etc.

joshu commented on 2020-09-10 14:41 (UTC)

@CodingCellist, it's an interesting point. One could argue that it's a bigger issue to have both MIT and chez installing a binary with a common name (are other implementations also doing the same? I only have gambit installed and its binary is gambitc). It looks like it's straightforward to patch idris2's PKGBUILD to use a different binary name, and loko would require a change to its makefile.

Anyway, I have no preference personally for how this package is installed, so for anyone else reading:

CodingCellist commented on 2020-09-10 13:56 (UTC)

@taekyung, the renaming in the latest release breaks the packages listed under "Required by". They expect, both at compile-time and run-time, to be able to invoke scheme as the executable for Chez Scheme.

Although I appreciate the conflicts with MIT/GNU Scheme, if packages which list this as a requirement still break when it is installed, I would argue that is a more serious concern than the conflict between two packages providing alternative Scheme implementations. If nothing else, the GitHub issue that @joshu links to does mention that Chez Scheme has been referred to as scheme since before its release in 1985 (and as such precedes MIT/GNU Scheme chronologically). The discussion in the GitHub issue seems to suggest anyone requiring a different executable name to install from source, specifying InstallSchemeName, which I would prefer rather than the package deciding this.

defty commented on 2020-09-05 02:09 (UTC)

Chez Scheme 9.5.4 was released earlier this week. Here is a patch:

diff --git a/PKGBUILD b/PKGBUILD
index 19bba36..d7577d9 100644
@@ -2,8 +2,8 @@
 # Maintainer: Taekyung Kim <>

 pkgdesc="Chez Scheme is a compiler and run-time system for the language of the Revised^6 Report on Scheme (R6RS), with numerous extensions."
 arch=(i686 x86_64)
@@ -13,7 +13,7 @@ depends=('ncurses' 'libx11' 'libutil-linux')
 conflicts=('petite-chez-scheme' 'chez-scheme-git')
 replaces=('petite-chez-scheme' 'chez-scheme-git')

 build() {

joshu commented on 2020-05-20 11:04 (UTC)

I got a conflict with mit-scheme, whose executable is at /usr/bin/scheme.

Fixed by adding InstallSchemeName=chez-scheme to the make install call in package().

as noted by Dybvig here

taekyung commented on 2020-02-12 06:21 (UTC)

@owari and @ryn1x, thank you for your comments. Actually, x(org)proto is already in the dependency of libx11 and the upstream building guide do not say anything about x(org)proto but libx11, it is okay to remove it from make-dependency completely. Also, as parts of the base-devel package, binutils and make are not recommended to be in makedepends. So I also remove them. Thanks.

ryn1x commented on 2020-02-11 19:37 (UTC)

Please update xproto to xorgproto in PKGBUILD

makedepends=('binutils' 'make' 'ncurses' 'libx11' 'xorgproto')

owari commented on 2020-01-07 03:42 (UTC) (edited on 2020-01-07 03:42 (UTC) by owari)

It seems that makepkg could not detect xorgproto as a make dependency. I changed the make dependency xproto to xorgproto, then the error is gone and the compliation is done.

taekyung commented on 2019-07-09 08:05 (UTC)

Thanks @xuanruiqi, I've updated the PKGBUILD file

xuanruiqi commented on 2019-07-09 04:48 (UTC)

I recommend adding --threads after ./configure, which will compile in threading support that is useful to some people.

xuanruiqi commented on 2019-05-19 06:20 (UTC)

Glad to see this package updated. I can help maintain this package too.

taekyung commented on 2019-05-08 17:45 (UTC)

I can successfully install version 9.5.2 using the following PKGBUILD file. Maintainers, please update the package?

pkgdesc="Chez Scheme is a compiler and run-time system for the language of the Revised^6 Report on Scheme (R6RS), with numerous extensions."
arch=(i686 x86_64)
makedepends=('binutils' 'make' 'ncurses' 'libx11' 'xproto')
conflicts=('petite-chez-scheme' 'chez-scheme-git')
replaces=('petite-chez-scheme' 'chez-scheme-git')

build() {
  cd "${srcdir}/${_archivename}"

  ./configure --installprefix=/usr --temproot=$pkgdir

package() {
  cd "${srcdir}/${_archivename}"
  make install DESTDIR="$pkgdir"

bwmcn commented on 2018-06-03 02:03 (UTC)

@jumper149 I wouldn't say this package isn't properly maintained. These issues seem to be prevalent with recent changes to GCC. To my thinking, we're attempting to compile software on a new GCC, software that was written without the new GCC warnings into account. We can't fault the maintainer of the AUR package.

But the software authors are fixing the issues, it seems. The new GCC warnings have been getting plenty of attention, it seems, as I searched for similar errors.

Thanks for pointing out the -git package. It compiles and runs smoothly.

jumper149 commented on 2018-05-29 15:19 (UTC)

Im having the same compilation error as @bwmcn. Is this package maintained properly or is it better to just go with the '-git' version? @bwmcn there is also the 'chez-scheme-git' which is compiling fine (needs to download 1 GB of repositories tho)

bwmcn commented on 2018-05-27 00:49 (UTC) (edited on 2018-05-27 00:55 (UTC) by bwmcn)

Getting a compilation failure. Searching for similar errors suggests that this is related to the new `warnings' produced by GCC. Any insights appreciated.

prim5.c: In function ‘s_showalloc’:
prim5.c:329:85: error: ‘td of ’ directive output may be truncated writing 6 bytes into a region of size between 0 and 18 [-Werror=format-truncation=]
    snprintf(fmtbuf, FMTBUFSIZE, "%%#0%dtx %%#0%dtx (+ %%#0%dtx bytes @ %%#0%dtx) %%%dtd of %%%dtd\n", 
In file included from /usr/include/stdio.h:862,  
                 from system.h:24,  
                 from prim5.c:17:  
/usr/include/bits/stdio2.h:64:10: note: ‘__builtin___snprintf_chk’ output between 54 and 112 bytes into a destination of size 60  
return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,  
    __bos (__s), __fmt, __va_arg_pack ());  

jaseemabid commented on 2017-11-03 11:10 (UTC)

Fails with a ld error unless `LDFLAGS="-ltinfo"` is added before configure command. More info

jaseemabid commented on 2017-11-03 10:23 (UTC)

This package is quite outdated and most users should use chez-scheme instead. As of now, v9.5 is available from github.

jonathon commented on 2017-09-19 22:43 (UTC) (edited on 2017-09-20 20:39 (UTC) by jonathon)

Upstream applied what's essentially the same fix: Might be worth including beneyal's suggestion in the PKGBUILD until there's a new release?

beneyal commented on 2017-06-05 22:27 (UTC) (edited on 2017-06-13 17:10 (UTC) by beneyal)

Due to a new warning introduced in GCC 7, and the -Werror compiler flag, compilation fails with Wimplicit-fallthrough. An issue has been reported on Chez Scheme's repo, but there's no response by the time of this writing: Current workaround is to add "CFLAGS=-Wno-implicit-fallthrough" (without quotes) to the "./configure" line in PKGBUILD.

Batou commented on 2017-05-24 22:47 (UTC)

I'm getting a build error. Any ideas? ----- /usr/bin/ld: ../boot/a6le/kernel.o: relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: Nonrepresentable section on output collect2: error: ld returned 1 exit status make[2]: *** [Makefile:37: ../bin/a6le/scheme] Error 1 make[1]: *** [Makefile:20: build] Error 2 make: *** [Makefile:19: build] Error 2 ==> ERROR: A failure occurred in build(). Aborting... :: failed to build chez-scheme package(s)

codemac commented on 2016-07-12 20:31 (UTC)

Why are the bundled dependencies removed, and replaced with the git versions? Just curious, as it makes this package something like 'chez-scheme + some-git stuff'.

commented on 2010-03-25 16:35 (UTC)

# Contributor: # Maintainer: pkgname=petite-chez-scheme-nothreads pkgver=8.0 pkgrel=1 pkgdesc="An efficient and robust implementation of R6RS Scheme and extensions. Non-threaded version." url="" arch=('i686' 'x86_64') if [ $(uname -m) = 'x86_64' ] then depends=('lib32-ncurses') else depends=('ncurses') fi license=('custom') source=($pkgver-i3le.tar.gz) md5sums=('2747d76d0437b635c3252644a0256706') build() { cd $startdir/src/csv$pkgver/custom ./configure --nothreads --machine=i3le \ --installprefix=/usr/ \ --installman=/usr/share/man \ --temproot=$startdir/pkg \ --noforce-relink make install # Install the license. mkdir -p $startdir/pkg/usr/share/licenses/$pkgname cp $startdir/src/csv$pkgver/petite.lic $startdir/pkg/usr/share/licenses/$pkgname/ chmod -R a+r $startdir/pkg }