Add booster add-on configuration #4

Open
esavkin wants to merge 2 commits from esavkin/defenestrate:booster-addon into master
7 changed files with 52 additions and 76 deletions
Showing only changes of commit 2b5e037a47 - Show all commits

5
README
View File

@ -9,7 +9,4 @@
* sudo nix-collect-garbage -d
* history clear
Add-on for Boosters:
* copy `booster` to the /opt
* mkdir -p ~/.config/nixpkgs && echo '{permittedInsecurePackages = ["electron-9*"];}' > ~/.config/nixpkgs/config.nix
* echo 'For Booster-related apps, use `nix-shell /opt/booster/booster_shell.nix`' > ~/README.md
Add-on for Boosters: uncomment packages in configuration.nix before auto-install.

View File

@ -1,27 +0,0 @@
let
pkgs = import <nixpkgs> { };
mqtt-explorer = pkgs.callPackage /opt/booster/mqtt-explorer.nix {} ;
gmqtt = pkgs.callPackage /opt/booster/gmqtt.nix {};
miniconf = pkgs.callPackage /opt/booster/miniconf.nix {};
in
pkgs.mkShell {
buildInputs = [
(pkgs.python3.withPackages(ps: [
ps.numpy
ps.setuptools
ps.matplotlib
gmqtt
miniconf
]))
pkgs.libtool
pkgs.libusb1
pkgs.mosquitto
pkgs.libftdi
pkgs.cutecom
mqtt-explorer
];
}

View File

@ -4,23 +4,23 @@ python3Packages.buildPythonPackage rec {
name = "gmqtt";
version = "v0.6.12";
src = fetchFromGitHub {
owner = "wialon" ;
repo = "gmqtt";
rev = "190d12156890efcfc5099fea0f7ef3ce072c4a27" ;
sha256 = "sha256-lhvRRZsrJy2U7b705GTlquAP/LwKEmInuVC4zzivmKk=";
owner = "wialon";
Outdated
Review

inconsistent indentation

inconsistent indentation
repo = "gmqtt";
rev = "190d12156890efcfc5099fea0f7ef3ce072c4a27";
sha256 = "sha256-lhvRRZsrJy2U7b705GTlquAP/LwKEmInuVC4zzivmKk=";
};
buildInputs = [
(pkgs.python3.withPackages(ps: [
ps.codecov
ps.pytest-asyncio
ps.pytest
ps.pytestcov
ps.six
ps.uvloop
ps.more-itertools
ps.atomicwrites
]))
(pkgs.python3.withPackages (ps: [
ps.codecov
ps.pytest-asyncio
ps.pytest
ps.pytestcov
ps.six
ps.uvloop
ps.more-itertools
ps.atomicwrites
]))
];
propagatedBuildInputs = with pkgs.python3Packages; [ setproctitle ];

View File

@ -1,22 +1,20 @@
{ stdenv, lib, python3Packages, callPackage, fetchgit, makeWrapper }:
let
gmqtt = callPackage /opt/booster/gmqtt.nix {};
in
python3Packages.buildPythonPackage rec {
pname = "miniconf";
version = "0.1.0";
src = fetchgit {
url = "https://github.com/quartiq/miniconf";
rev = "01caac4adb3f81cbcd34d8a48087f5df962c096f";
sha256 = "sha256-ssRV4FtdMehPA4+mKQ4Ub+wtEakpKX5jXRubFtHpanA=";
};
prePatch = ''
cd py/miniconf-mqtt
'';
doCheck = false;
propagatedBuildInputs = [
let gmqtt = callPackage ./gmqtt.nix { };
in python3Packages.buildPythonPackage rec {
pname = "miniconf";
Outdated
Review

indentation

indentation
version = "0.1.0";
src = fetchgit {
url = "https://github.com/quartiq/miniconf";
rev = "01caac4adb3f81cbcd34d8a48087f5df962c096f";
sha256 = "sha256-Gco56sl2mQ2y+M1evzLhtuFvrhJZbAvbIq7N6J9uiFE=";
};
prePatch = ''
cd py/miniconf-mqtt
'';
doCheck = false;
propagatedBuildInputs = [
# Specify dependencies
gmqtt
];
gmqtt
];
}

View File

@ -1,20 +1,18 @@
{ stdenv, lib, fetchurl, appimageTools, electron_9, makeWrapper }:
{ stdenvNoCC, lib, fetchurl, appimage-run, makeWrapper, symlinkJoin }:
stdenv.mkDerivation rec {
let
Outdated
Review

stdenvNoCC?

stdenvNoCC?
pname = "MQTT-Explorer";
version = "0.4.0-beta1";
src = appimageTools.extract {
name = pname;
src = fetchurl {
url = "https://github.com/thomasnordquist/${pname}/releases/download/0.0.0-${version}/${pname}-${version}.AppImage";
sha256 = "0x9ava13hn1nkk2kllh5ldi4b3hgmgwahk08sq48yljilgda4ppn";
};
mqtt-explorer = fetchurl {
url ="https://github.com/thomasnordquist/${pname}/releases/download/0.0.0-${version}/${pname}-${version}.AppImage";
sha256 = "0x9ava13hn1nkk2kllh5ldi4b3hgmgwahk08sq48yljilgda4ppn";
};
in symlinkJoin {
name = "mqtt-explorer";
paths = [ appimage-run ];
buildInputs = [ makeWrapper ];
installPhase = ''
install -m 444 -D resources/app.asar $out/libexec/app.asar
install -m 444 -D mqtt-explorer.png $out/share/icons/mqtt-explorer.png
install -m 444 -D mqtt-explorer.desktop $out/share/applications/mqtt-explorer.desktop
makeWrapper ${electron_9}/bin/electron $out/bin/mqtt-explorer --add-flags $out/libexec/app.asar
postBuild = ''
mv $out/bin/appimage-run $out/bin/mqtt-explorer
wrapProgram $out/bin/mqtt-explorer --add-flags "${mqtt-explorer}"
'';
Outdated
Review

Does this work?

Does this work?
}
Outdated
Review

Isn't the electron bloatware already included in the appimage binary? Is using the nixpkgs version instead the recommended way?

Isn't the electron bloatware already included in the appimage binary? Is using the nixpkgs version instead the recommended way?

Not sure about recommended way, but changed to appimage-run

Not sure about recommended way, but changed to appimage-run

View File

@ -40,6 +40,7 @@ let
mount /dev/disk/by-label/boot /mnt/boot
nixos-generate-config --root /mnt
cp ${./final}/* /mnt/etc/nixos
cp ${./booster}/* /mnt/etc/nixos/
nixos-install --no-root-password --flake /mnt/etc/nixos#artiq
'';

View File

@ -55,6 +55,9 @@
pyserial
spyder
artiq.packages.x86_64-linux.artiq
## Booster python packages:
# (callPackage ./gmqtt.nix { })
# (callPackage ./miniconf.nix { })
]))
artiq.packages.x86_64-linux.openocd-bscanspi
texlive.combined.scheme-full
@ -69,6 +72,12 @@
gnome3.gnome-tweaks
libreoffice-fresh
vscode
## Booster packages:
# mosquitto
# libftdi
# libusb1
# cutecom
# (pkgs.callPackage ./mqtt-explorer.nix { })
];
programs.wireshark.enable = true;
programs.wireshark.package = pkgs.wireshark;