Skip to content

haskus/haskus-system

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
doc
 
 
 
 
 
 
 
 
 
 
 
 
 
 

GitHub CI

Haskus system

Haskus system is a framework written in Haskell and designed for system programming. Fundamentally it is an experiment into providing an integrated interface leveraging Haskell features (type-safety, STM, etc.) for the whole system: input, display, sound, network, etc.

Website: http://www.haskus.org/system

Documentation: https://docs.haskus.org/system/intro.html

Building systems

The haskus-system-build tool (in the package of the same name) is the preferred way to build systems.

You can install it from source with:

$ git clone https://github.com/haskus/haskus-system.git
$ cd haskus-system
$ stack install haskus-system-build

It will install the program into ~/.local/bin. Be sure to add this path to your $PATH environment variable.

Then in a new directory do:

$ haskus-system-build init       # download default system template
$ haskus-system-build test       # download, build and test system in QEMU

You may have to install missing programs (cpio, lzip, qemu, make, gcc, binutils, gzip, etc.) for these commands to succeed. See the documentation.

Hacking on haskus-system

Use stack commands to build the haskus-system package:

$ stack build # build
$ stack test  # run tests
$ stack bench # run benchmarks