diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/misc/avrdudess')
-rw-r--r-- | nixpkgs/pkgs/applications/misc/avrdudess/default.nix | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/misc/avrdudess/default.nix b/nixpkgs/pkgs/applications/misc/avrdudess/default.nix new file mode 100644 index 000000000000..4133fd8e5a29 --- /dev/null +++ b/nixpkgs/pkgs/applications/misc/avrdudess/default.nix @@ -0,0 +1,45 @@ +{ lib, stdenv, runtimeShell, fetchurl, unzip, mono, avrdude, gtk2, xdg-utils }: + +stdenv.mkDerivation { + pname = "avrdudess"; + version = "2.16"; + + src = fetchurl { + url = "https://github.com/ZakKemble/AVRDUDESS/releases/download/v2.16/AVRDUDESS-2.16-portable.zip"; + sha256 = "sha256-Ow6WYdQfEDldI9q9CTpd13wtLZGTEkcHxz0Zg7QIZIs="; + }; + + nativeBuildInputs = [ unzip ]; + + dontUnpack = true; + dontInstall = true; + + buildPhase = '' + mkdir -p "$out/avrdudess" + mkdir -p "$out/bin" + + unzip "$src" -d "$out/avrdudess" + + cat >> "$out/bin/avrdudess" << __EOF__ + #!${runtimeShell} + export LD_LIBRARY_PATH="${lib.makeLibraryPath [gtk2 mono]}" + # We need PATH from user env for xdg-open to find its tools, which + # typically depend on the currently running desktop environment. + export PATH="\$PATH:${lib.makeBinPath [ avrdude xdg-utils ]}" + + # avrdudess must have its resource files in its current working directory + cd $out/avrdudess && exec ${mono}/bin/mono "$out/avrdudess/avrdudess.exe" "\$@" + __EOF__ + + chmod a+x "$out/bin/"* + ''; + + meta = with lib; { + description = "GUI for AVRDUDE (AVR microcontroller programmer)"; + homepage = "https://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/"; + changelog = "https://github.com/ZakKemble/AVRDUDESS/blob/v${version}/Changelog.txt"; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = [ maintainers.bjornfor ]; + }; +} |