Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/boredom101/nixduino

Nix based tool to help build arduino sketches.
https://github.com/boredom101/nixduino

arduino nix nixos

Last synced: 3 months ago
JSON representation

Nix based tool to help build arduino sketches.

Awesome Lists containing this project

README

        

# nixduino
Build arduino sketches like any other nix derivation.
Look at `examples/` for how to use it.

## How to use:
Create a nix file that looks something like this:
```nix
{ board, pkgs ? import {} }:

pkgs.callPackage ../../arduino.nix { } { # path to arduino.nix from this repository
name = "blink"; # name you want for the derivation
board = board; # board name, added to the name
# in this case it is from the command line, but you can also set it here
libraries = []; # libraries from arduino-core, valid names below
src = pkgs.lib.cleanSource ./.; # path to the arduino files, passed to the derivation
}
```

Then run this: `nix-build path/to/file.nix --argstr board "uno"`
Or whatever the board is, valid options below. Note that we can do this because the nix file accepts it as an argument.

## Supported Board Values:
- `uno`
- `leonardo`
- `mega`

## Supported Library Values:
- `Ethernet`
- `EEPROM`
- `Firmata`
- `GSM`
- `LiquidCrystal`
- `SD`
- `Servo`
- `SPI`
- `SoftwareSerial`
- `Stepper`
- `TFT`
- `WiFi`
- `Wire`

## Notes:
This is a work in progress