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) --- maintainers/maintainer-list.nix | 5 +++++ pkgs/tools/filesystems/mkspiffs/default.nix | 32 +++++++++++++++++++++++++++++ pkgs/tools/filesystems/mkspiffs/presets.nix | 20 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++++ 4 files changed, 61 insertions(+) create mode 100644 pkgs/tools/filesystems/mkspiffs/default.nix create mode 100644 pkgs/tools/filesystems/mkspiffs/presets.nix diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 7178c8c0a1e1..3b7329a8d790 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1640,6 +1640,11 @@ github = "hamhut1066"; name = "Hamish Hutchings"; }; + haslersn = { + email = "haslersn@fius.informatik.uni-stuttgart.de"; + github = "haslersn"; + name = "Sebastian Hasler"; + }; havvy = { email = "ryan.havvy@gmail.com"; github = "havvy"; diff --git a/pkgs/tools/filesystems/mkspiffs/default.nix b/pkgs/tools/filesystems/mkspiffs/default.nix new file mode 100644 index 000000000000..48f13925ab08 --- /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 000000000000..c0b74d9cf1b7 --- /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" ]; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 33a2b6455a23..e413e0dcf269 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1460,6 +1460,10 @@ with pkgs; metabase = callPackage ../servers/metabase { }; + mkspiffs = callPackage ../tools/filesystems/mkspiffs { }; + + mkspiffs-presets = recurseIntoAttrs (callPackages ../tools/filesystems/mkspiffs/presets.nix { }); + monetdb = callPackage ../servers/sql/monetdb { }; mp3blaster = callPackage ../applications/audio/mp3blaster { }; -- cgit 1.4.1