92 lines
2.1 KiB
Nix
92 lines
2.1 KiB
Nix
let
|
|
|
|
rust_overlay = import (builtins.fetchTarball
|
|
"https://github.com/oxalica/rust-overlay/archive/master.tar.gz");
|
|
|
|
pkgs = import <nixpkgs> { overlays = [ rust_overlay ]; };
|
|
|
|
rust_channel = pkgs.rust-bin.fromRustupToolchainFile ./nix/rust-toolchain;
|
|
|
|
mqtt-explorer = pkgs.callPackage ./nix/mqtt-explorer.nix {} ;
|
|
|
|
gmqtt = pkgs.python3Packages.buildPythonPackage rec {
|
|
name = "gmqtt";
|
|
version = "v0.6.10";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "wialon" ;
|
|
repo = "gmqtt";
|
|
rev = "50bc08300d858c6e28d4975a989be578954bf7bd" ;
|
|
sha256 = "1f51x3vkpkqa20mdqqakyk9ms7l5p3i4masrfhc6n7cr45qfr5fz";
|
|
};
|
|
|
|
buildInputs = [
|
|
(pkgs.python3.withPackages(ps: [
|
|
ps.codecov
|
|
ps.pytest-asyncio
|
|
ps.pytest
|
|
ps.pytestcov
|
|
ps.six
|
|
ps.uvloop
|
|
]))
|
|
];
|
|
|
|
propagatedBuildInputs = with pkgs.python3Packages; [ setproctitle ];
|
|
|
|
meta = {
|
|
homepage = "https://github.com/wialon/gmqtt";
|
|
description = "gmqtt";
|
|
};
|
|
};
|
|
|
|
miniconf = pkgs.python3Packages.buildPythonPackage rec {
|
|
name = "miniconf";
|
|
src = ./miniconf-mqtt;
|
|
propagatedBuildInputs = with pkgs.python3Packages; [ gmqtt setuptools ];
|
|
};
|
|
|
|
stabilizer = pkgs.python3Packages.buildPythonPackage rec {
|
|
name = "stabilizer" ;
|
|
src = ./py;
|
|
propagatedBuildInputs = with pkgs.python3Packages; [ setuptools ];
|
|
};
|
|
|
|
in
|
|
pkgs.mkShell {
|
|
buildInputs = [
|
|
(pkgs.python3.withPackages(ps: [
|
|
# List desired Python packages here.
|
|
ps.numpy
|
|
ps.setuptools
|
|
ps.matplotlib
|
|
gmqtt
|
|
stabilizer
|
|
miniconf
|
|
|
|
]))
|
|
|
|
# List desired non-Python packages here
|
|
# dfu ... for usb flashing
|
|
pkgs.libtool
|
|
rust_channel
|
|
pkgs.pkg-config
|
|
pkgs.libusb1
|
|
pkgs.dfu-util
|
|
pkgs.gcc-arm-embedded-8
|
|
pkgs.stlink
|
|
pkgs.mosquitto
|
|
pkgs.gdb
|
|
pkgs.automake
|
|
pkgs.autoconf
|
|
pkgs.texinfo
|
|
pkgs.libftdi
|
|
mqtt-explorer
|
|
|
|
];
|
|
|
|
shellHook = ''
|
|
export PATH="/home/$USER/.cargo/bin:$PATH"
|
|
'';
|
|
|
|
}
|
|
|