diff --git a/pkgs/development/compilers/fasmg/default.nix b/pkgs/development/compilers/fasmg/default.nix index e98715795458..67f47202615c 100644 --- a/pkgs/development/compilers/fasmg/default.nix +++ b/pkgs/development/compilers/fasmg/default.nix @@ -1,14 +1,22 @@ { lib, stdenv , fetchzip + +# update script +, writeScript +, coreutils +, curl +, gnugrep +, htmlq +, nix-update }: stdenv.mkDerivation rec { pname = "fasmg"; - version = "kd3c"; + version = "kl0e"; src = fetchzip { url = "https://flatassembler.net/fasmg.${version}.zip"; - sha256 = "sha256-duxune/UjXppKf/yWp7y85rpBn4EIC6JcZPNDhScsEA="; + sha256 = "sha256-qUhsUMwxgUduGz+D8+Dm4EXyh7aiE9lJ1mhvTjHP6Tw="; stripRoot = false; }; @@ -48,6 +56,18 @@ stdenv.mkDerivation rec { cp docs/*.txt $doc/share/doc/fasmg ''; + passthru.updateScript = writeScript "update-fasmg.sh" '' + export PATH="${lib.makeBinPath [ coreutils curl gnugrep htmlq nix-update ]}:$PATH" + version=$( + curl 'https://flatassembler.net/download.php' \ + | htmlq .links a.boldlink -a href \ + | grep -E '^fasmg\..*\.zip$' \ + | head -n1 \ + | cut -d. -f2 + ) + nix-update fasmg --version "$version" + ''; + meta = with lib; { description = "x86(-64) macro assembler to binary, MZ, PE, COFF, and ELF"; mainProgram = "fasmg";