Giter Club home page Giter Club logo

idris2-pkgs's Introduction

image1 image2

Idris2-pkgs

An unofficial Idris2 package repository for Nix.

Note: I try to be precise, but end up using Idris and Idris2 interchangeably. If I ever actually need to refer to the original, Haskell-based project, I will call it Idris1.

Unfortunately, there isn’t a precise list of installable packages in userspace yet. You can get an idea by scanning the inputs of flake.nix, or programmatically through nix by running:

nix eval --apply builtins.attrNames github:claymager/idris2-pkgs#packages.x86_64-linux

Binary Cache

This repository uses Cachix for caching, though that is still highly experimintal.

If you run cachix use cm-idris2-pkgs, it should configure your nix to use the cache. The cachix command is only needed for setup, so feel free to run that in a nix shell.

  • cache name cm-idris2-pkgs
  • public key cm-idris2-pkgs.cachix.org-1:YB2oJSEsD5oMJjAESxolC2GQtE6B5I6jkWhte2gtXjk=

.._Cachix: https://docs.cachix.org

Supported Platforms

No matter what you want to do with this repository, to run the code, you’ll need nix. Most of the functionality requires the experimental feature flakes to be enabled, but idris2-pkgs does maintain a compatibility layer for “legacy mode,” documented here.

The CI builds with both Linux and MacOS. Unfortunately, there is no native Windows support, but nix can be installed on Windows with WSL 2.

Quick Start

To run idris2 with some of these libraries, try the following command:

nix shell github:claymager/idris2-pkgs#idris2.withLibs.comonad.idrall

That drops you into a shell with idris2 and the packages comonad and idrall installed. You can now run idris2 -p comonad -p idrall to enter a REPL, and import whatever you need.

Other executables that need runtime access to libraries, such as the LSP, also have access to that withPkgs attribute.

For other uses, check the documentation.

License

Idris2-pkgs is licensed under the MIT License.

Note: MIT license does not apply to the packages built by Idris2-pkgs, merely to the files in this repository (the Nix expressions, build scripts, etc.). It also might not apply to patches included in idris2-pkgs, which may be derivative works of the packages to which they apply. The aforementioned artifacts are all covered by the licenses of the respective packages.

idris2-pkgs's People

Contributors

claymager avatar wchresta avatar jumper149 avatar valencik avatar siraben avatar bobbbay avatar 3noch avatar xavierzwirtz avatar davlum avatar

Stargazers

Jorge Gomez avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.