aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/development/arduino/arduino-cli/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/arduino/arduino-cli/default.nix')
-rw-r--r--nixpkgs/pkgs/development/arduino/arduino-cli/default.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/arduino/arduino-cli/default.nix b/nixpkgs/pkgs/development/arduino/arduino-cli/default.nix
new file mode 100644
index 00000000000..1b1116a74b5
--- /dev/null
+++ b/nixpkgs/pkgs/development/arduino/arduino-cli/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, buildGoModule, fetchFromGitHub, buildFHSUserEnv }:
+
+let
+
+ pkg = buildGoModule rec {
+ pname = "arduino-cli";
+ version = "0.12.1";
+
+ src = fetchFromGitHub {
+ owner = "arduino";
+ repo = pname;
+ rev = version;
+ sha256 = "1jlxs4szss2250zp8rz4bislgnzvqhxyp6z48dhx7zaam03hyf0w";
+ };
+
+ subPackages = [ "." ];
+
+ vendorSha256 = "03yj2iar63qm10fw3jh9fvz57c2sqcmngb0mj5jkhbnwf8nl7mhc";
+
+ doCheck = false;
+
+ buildFlagsArray = [
+ "-ldflags=-s -w -X github.com/arduino/arduino-cli/version.versionString=${version} -X github.com/arduino/arduino-cli/version.commit=unknown"
+ ] ++ stdenv.lib.optionals stdenv.isLinux [ "-extldflags '-static'" ];
+
+ meta = with stdenv.lib; {
+ inherit (src.meta) homepage;
+ description = "Arduino from the command line";
+ license = licenses.gpl3Only;
+ maintainers = with maintainers; [ ryantm ];
+ };
+
+ };
+
+# buildFHSUserEnv is needed because the arduino-cli downloads compiler
+# toolchains from the internet that have their interpreters pointed at
+# /lib64/ld-linux-x86-64.so.2
+in buildFHSUserEnv {
+ inherit (pkg) name meta;
+
+ runScript = "${pkg.outPath}/bin/arduino-cli";
+
+ extraInstallCommands = ''
+ mv $out/bin/$name $out/bin/arduino-cli
+ '';
+}