Compare commits
1 commit
master
...
esp8266-qu
| Author | SHA1 | Date | |
|---|---|---|---|
| a1aeb05458 |
5 changed files with 2100 additions and 0 deletions
0
arduino-esp32/default.nix
Normal file
0
arduino-esp32/default.nix
Normal file
11
arduino-esp8266/default.nix
Normal file
11
arduino-esp8266/default.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{ pkgs ? import <nixpkgs> {} }:
|
||||||
|
|
||||||
|
pkgs.stdenv.mkDerivation rec {
|
||||||
|
name = "arduino-esp8266";
|
||||||
|
version = "2.2.0";
|
||||||
|
|
||||||
|
src = pkgs.fetchzip {
|
||||||
|
url = "https://github.com/esp8266/Arduino/releases/download/2.2.0/esp8266-2.2.0.zip";
|
||||||
|
sha256 = "1xjqfwwddc3dk34rnyp5kw5knbihzf8m9rl3ir4aymkfvfnrlbff";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,9 @@
|
||||||
{ pkgs ? import <nixpkgs> {} }:
|
{ pkgs ? import <nixpkgs> {} }:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
arduino-esp8266 = pkgs.callPackage ./arduino-esp8266/default.nix {};
|
||||||
|
esp8266-quick-toolchain = pkgs.callPackage ./esp8266-quick-toolchain/default.nix {};
|
||||||
|
|
||||||
genCreateBorgBackup = (import ./genCreateBorgBackup/default.nix) pkgs;
|
genCreateBorgBackup = (import ./genCreateBorgBackup/default.nix) pkgs;
|
||||||
micropython = pkgs.callPackage ./micropython/default.nix {};
|
micropython = pkgs.callPackage ./micropython/default.nix {};
|
||||||
wildfly = pkgs.callPackage ./wildfly/default.nix {};
|
wildfly = pkgs.callPackage ./wildfly/default.nix {};
|
||||||
|
|
|
||||||
110
esp8266-quick-toolchain/default.nix
Normal file
110
esp8266-quick-toolchain/default.nix
Normal file
|
|
@ -0,0 +1,110 @@
|
||||||
|
{ pkgs ? import <nixpkgs> {},
|
||||||
|
mkDerivation ? pkgs.stdenv.mkDerivation }:
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
fhs = pkgs.buildFHSUserEnv {
|
||||||
|
name = "esp8266-toolchain-env";
|
||||||
|
targetPkgs = pkgs: with pkgs; [ zlib ];
|
||||||
|
runScript = "";
|
||||||
|
};
|
||||||
|
|
||||||
|
wrapBin = ''
|
||||||
|
cp -r . $out
|
||||||
|
for FILE in $(ls $out/bin); do
|
||||||
|
FILE_PATH="$out/bin/$FILE"
|
||||||
|
if [[ -x $FILE_PATH ]]; then
|
||||||
|
mv $FILE_PATH $FILE_PATH-unwrapped
|
||||||
|
wrapProgram ${fhs}/bin/esp8266-toolchain-env $FILE_PATH --add-flags "$FILE_PATH-unwrapped"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
downloads = {
|
||||||
|
"x86_64-pc-linux-gnu" = {
|
||||||
|
"xtensa-lx106-elf-gcc" = {
|
||||||
|
version = "2.5.0-3-20ed2b9";
|
||||||
|
url = "https://github.com/earlephilhower/esp-quick-toolchain/releases/download/2.5.0-3/x86_64-linux-gnu.xtensa-lx106-elf-20ed2b9c.tar.gz";
|
||||||
|
sha256 = "1x0yfzkn2mfakjv4hw5c6381jyll7cr313wlyf9dg5bwjsjsglyf";
|
||||||
|
};
|
||||||
|
esptool = {
|
||||||
|
version = "2.5.0-3-20ed2b9";
|
||||||
|
url = "https://github.com/earlephilhower/esp-quick-toolchain/releases/download/2.5.0-3/x86_64-linux-gnu.esptool-f80ae31.tar.gz";
|
||||||
|
sha256 = "09ayamcnyz5gm4ghvd1bj9f155wgz4n3fcsf1i68vrywy4g89zd4";
|
||||||
|
};
|
||||||
|
mkspiffs = {
|
||||||
|
version = "2.5.0-3-20ed2b9";
|
||||||
|
url = "https://github.com/earlephilhower/esp-quick-toolchain/releases/download/2.5.0-3/x86_64-linux-gnu.mkspiffs-7fefeac.tar.gz";
|
||||||
|
sha256 = "0hb5c4v60y5bd3pj23xz1dwsxi5qs4k43zw8f10mwdxrxmhc1wfg";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
in rec {
|
||||||
|
xtensa-lx106-elf-gcc = pkgs.stdenv.mkDerivation rec {
|
||||||
|
name = "xtensa-lx106-elf-gcc-${version}";
|
||||||
|
version = downloads."x86_64-pc-linux-gnu"."xtensa-lx106-elf-gcc".version;
|
||||||
|
src = pkgs.fetchzip {
|
||||||
|
url = downloads."x86_64-pc-linux-gnu"."xtensa-lx106-elf-gcc".url;
|
||||||
|
sha256 = downloads."x86_64-pc-linux-gnu"."xtensa-lx106-elf-gcc".sha256;
|
||||||
|
};
|
||||||
|
buildInputs = [
|
||||||
|
pkgs.makeWrapper
|
||||||
|
];
|
||||||
|
installPhase = wrapBin;
|
||||||
|
};
|
||||||
|
|
||||||
|
esptool = pkgs.stdenv.mkDerivation rec {
|
||||||
|
name = "esptool-${version}";
|
||||||
|
version = downloads."x86_64-pc-linux-gnu".esptool.version;
|
||||||
|
src = pkgs.fetchzip {
|
||||||
|
url = downloads."x86_64-pc-linux-gnu".esptool.url;
|
||||||
|
sha256 = downloads."x86_64-pc-linux-gnu".esptool.sha256;
|
||||||
|
};
|
||||||
|
buildInputs = [
|
||||||
|
pkgs.makeWrapper
|
||||||
|
];
|
||||||
|
installPhase = wrapBin;
|
||||||
|
};
|
||||||
|
|
||||||
|
mkspiffs = pkgs.stdenv.mkDerivation rec {
|
||||||
|
name = "mkspiffs-${version}";
|
||||||
|
version = downloads."x86_64-pc-linux-gnu".mkspiffs.version;
|
||||||
|
src = pkgs.fetchzip {
|
||||||
|
url = downloads."x86_64-pc-linux-gnu".mkspiffs.url;
|
||||||
|
sha256 = downloads."x86_64-pc-linux-gnu".mkspiffs.sha256;
|
||||||
|
};
|
||||||
|
buildInputs = [
|
||||||
|
pkgs.makeWrapper
|
||||||
|
];
|
||||||
|
installPhase = wrapBin;
|
||||||
|
};
|
||||||
|
|
||||||
|
esp8266-quick-toolchain = pkgs.stdenv.mkDerivation rec {
|
||||||
|
name = "esp-quick-toolchain-${version}";
|
||||||
|
version = "2.5.0-3";
|
||||||
|
|
||||||
|
src = pkgs.fetchzip {
|
||||||
|
url = "https://github.com/esp8266/Arduino/releases/download/2.2.0/esp8266-2.2.0.zip";
|
||||||
|
sha256 = "1xjqfwwddc3dk34rnyp5kw5knbihzf8m9rl3ir4aymkfvfnrlbff";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
esptool
|
||||||
|
mkspiffs
|
||||||
|
xtensa-lx106-elf-gcc
|
||||||
|
pkgs.makeWrapper
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
cp -r . $out
|
||||||
|
for FILE in $(ls $out/bin); do
|
||||||
|
FILE_PATH="$out/bin/$FILE"
|
||||||
|
if [[ -x $FILE_PATH ]]; then
|
||||||
|
mv $FILE_PATH $FILE_PATH-unwrapped
|
||||||
|
wrapProgram ${fhs}/bin/esp8266-toolchain-env $FILE_PATH --add-flags "$FILE_PATH-unwrapped"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}.esp8266-quick-toolchain
|
||||||
1976
esp8266-quick-toolchain/package_esp8266com_index.json
Normal file
1976
esp8266-quick-toolchain/package_esp8266com_index.json
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue