From 62bf19d2fcd1ebd7de0381f95c17bcc802b08483 Mon Sep 17 00:00:00 2001 From: haslersn <33969028+haslersn@users.noreply.github.com> Date: Mon, 1 Oct 2018 16:49:02 +0200 Subject: mkspiffs: init at 0.2.3 (#46674) --- pkgs/tools/filesystems/mkspiffs/default.nix | 32 +++++++++++++++++++++++++++++ pkgs/tools/filesystems/mkspiffs/presets.nix | 20 ++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 pkgs/tools/filesystems/mkspiffs/default.nix create mode 100644 pkgs/tools/filesystems/mkspiffs/presets.nix (limited to 'pkgs/tools/filesystems/mkspiffs') diff --git a/pkgs/tools/filesystems/mkspiffs/default.nix b/pkgs/tools/filesystems/mkspiffs/default.nix new file mode 100644 index 00000000000..48f13925ab0 --- /dev/null +++ b/pkgs/tools/filesystems/mkspiffs/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchFromGitHub, git }: + +# Changing the variables CPPFLAGS and BUILD_CONFIG_NAME can be done by +# overriding the same-named attributes. See ./presets.nix for examples. + +stdenv.mkDerivation rec { + name = "mkspiffs-${version}"; + version = "0.2.3"; + + src = fetchFromGitHub { + owner = "igrr"; + repo = "mkspiffs"; + rev = version; + fetchSubmodules = true; + sha256 = "1fgw1jqdlp83gv56mgnxpakky0q6i6f922niis4awvxjind8pbm1"; + }; + + nativeBuildInputs = [ git ]; + buildFlags = [ "dist" ]; + installPhase = '' + mkdir -p $out/bin + cp mkspiffs $out/bin + ''; + + meta = with stdenv.lib; { + description = "Tool to build and unpack SPIFFS images"; + license = licenses.mit; + homepage = https://github.com/igrr/mkspiffs; + maintainers = with maintainers; [ haslersn ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/filesystems/mkspiffs/presets.nix b/pkgs/tools/filesystems/mkspiffs/presets.nix new file mode 100644 index 00000000000..c0b74d9cf1b --- /dev/null +++ b/pkgs/tools/filesystems/mkspiffs/presets.nix @@ -0,0 +1,20 @@ +{ lib, mkspiffs }: + +# We provide the same presets as the upstream + +lib.mapAttrs ( + name: { CPPFLAGS }: + mkspiffs.overrideAttrs (drv: { + inherit CPPFLAGS; + BUILD_CONFIG_NAME = "-${name}"; + }) +) { + arduino-esp8266.CPPFLAGS = [ + "-DSPIFFS_USE_MAGIC_LENGTH=0" + "-DSPIFFS_ALIGNED_OBJECT_INDEX_TABLES=1" + ]; + + arduino-esp32.CPPFLAGS = [ "-DSPIFFS_OBJ_META_LEN=4" ]; + + esp-idf.CPPFLAGS = [ "-DSPIFFS_OBJ_META_LEN=4" ]; +} -- cgit 1.4.1