nixpkgs/pkgs/development/arduino/platformio/chrootenv.nix

53 lines
1.1 KiB
Nix
Raw Normal View History

{ lib, buildFHSUserEnv, fetchFromGitHub }:
2018-04-07 14:00:21 -07:00
2018-01-09 10:59:33 -08:00
let
2018-04-07 14:00:21 -07:00
pio-pkgs = pkgs:
let
2019-09-03 22:59:22 -07:00
python = pkgs.python3.override {
2018-04-07 14:00:21 -07:00
packageOverrides = self: super: {
platformio = self.callPackage ./core.nix { };
};
};
in (with pkgs; [
2018-01-03 08:12:17 -08:00
zlib
git
2018-04-07 14:00:21 -07:00
]) ++ (with python.pkgs; [
python
setuptools
pip
bottle
platformio
2016-01-06 01:05:19 -08:00
]);
2018-04-07 14:00:21 -07:00
src = fetchFromGitHub {
owner = "platformio";
repo = "platformio-core";
2020-09-12 08:27:02 -07:00
rev = "v5.0.1";
sha256 = "01xh61ldilg6fg95l1p870rld2xffhnl9f9ndvbi5jdn8q634pmw";
};
2018-04-07 14:00:21 -07:00
in buildFHSUserEnv {
2018-01-09 10:59:33 -08:00
name = "platformio";
targetPkgs = pio-pkgs;
multiPkgs = pio-pkgs;
2016-01-06 01:05:19 -08:00
2018-04-07 14:00:21 -07:00
meta = with lib; {
description = "An open source ecosystem for IoT development";
2019-09-03 22:59:22 -07:00
homepage = "https://platformio.org";
maintainers = with maintainers; [ mog ];
license = licenses.asl20;
platforms = with platforms; linux;
2016-01-06 01:05:19 -08:00
};
2018-01-03 08:12:17 -08:00
extraInstallCommands = ''
mkdir -p $out/lib/udev/rules.d
2018-01-03 08:12:17 -08:00
ln -s $out/bin/platformio $out/bin/pio
ln -s ${src}/scripts/99-platformio-udev.rules $out/lib/udev/rules.d/99-platformio-udev.rules
2018-01-03 08:12:17 -08:00
'';
2016-01-06 01:05:19 -08:00
runScript = "platformio";
}