mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-06-05 21:03:40 +00:00
*mt32emu*: Add passthru.updateScript (#521302)
This commit is contained in:
@@ -2,6 +2,10 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
gitUpdater,
|
||||
nix,
|
||||
writeShellApplication,
|
||||
_experimental-update-script-combinators,
|
||||
cmake,
|
||||
}:
|
||||
|
||||
@@ -36,6 +40,58 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
--replace "$dev/$dev/" "$dev/"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
# Otherwise x.y.z in version != x_y_z in tag, and bump to same version is attempted
|
||||
unfixVersionScript = writeShellApplication {
|
||||
name = "unfix-libmt32emu-version";
|
||||
|
||||
runtimeInputs = [
|
||||
nix
|
||||
];
|
||||
|
||||
text = ''
|
||||
export UPDATE_NIX_ATTR_PATH="''${UPDATE_NIX_ATTR_PATH:-libmt32emu}"
|
||||
|
||||
preUpdateScriptVersion="$(nix-instantiate . --eval --strict -A "$UPDATE_NIX_ATTR_PATH.version" | cut -d'"' -f2)"
|
||||
unfixedVersion="''${preUpdateScriptVersion//\./_}"
|
||||
|
||||
pkgFile="$(nix-instantiate --eval -E "with import ./. {}; (builtins.unsafeGetAttrPos \"version\" $UPDATE_NIX_ATTR_PATH).file" | cut -d'"' -f2)"
|
||||
|
||||
sed -i -e "s/version = \"$preUpdateScriptVersion\"/version = \"$unfixedVersion\"/g" "$pkgFile"
|
||||
'';
|
||||
};
|
||||
|
||||
updateTagScript = gitUpdater {
|
||||
rev-prefix = "libmt32emu_";
|
||||
};
|
||||
|
||||
# gitUpdater lacks an option for modifying new tag
|
||||
fixVersionScript = writeShellApplication {
|
||||
name = "fix-libmt32emu-version";
|
||||
|
||||
runtimeInputs = [
|
||||
nix
|
||||
];
|
||||
|
||||
text = ''
|
||||
export UPDATE_NIX_ATTR_PATH="''${UPDATE_NIX_ATTR_PATH:-libmt32emu}"
|
||||
|
||||
postUpdateScriptVersion="$(nix-instantiate . --eval --strict -A "$UPDATE_NIX_ATTR_PATH.version" | cut -d'"' -f2)"
|
||||
fixedVersion="''${postUpdateScriptVersion//_/.}"
|
||||
|
||||
pkgFile="$(nix-instantiate --eval -E "with import ./. {}; (builtins.unsafeGetAttrPos \"version\" $UPDATE_NIX_ATTR_PATH).file" | cut -d'"' -f2)"
|
||||
|
||||
sed -i -e "s/version = \"$postUpdateScriptVersion\"/version = \"$fixedVersion\"/g" "$pkgFile"
|
||||
'';
|
||||
};
|
||||
|
||||
updateScript = _experimental-update-script-combinators.sequence [
|
||||
(lib.getExe finalAttrs.passthru.unfixVersionScript)
|
||||
(finalAttrs.passthru.updateTagScript.command)
|
||||
(lib.getExe finalAttrs.passthru.fixVersionScript)
|
||||
];
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://munt.sourceforge.net/";
|
||||
description = "Library to emulate Roland MT-32, CM-32L, CM-64 and LAPC-I devices";
|
||||
|
||||
@@ -2,6 +2,10 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
gitUpdater,
|
||||
nix,
|
||||
writeShellApplication,
|
||||
_experimental-update-script-combinators,
|
||||
alsa-lib,
|
||||
cmake,
|
||||
libpulseaudio,
|
||||
@@ -70,6 +74,58 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
ln -s $out/{Applications/mt32emu-qt.app/Contents/MacOS,bin}/mt32emu-qt
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
# Otherwise x.y.z in version != x_y_z in tag, and bump to same version is attempted
|
||||
unfixVersionScript = writeShellApplication {
|
||||
name = "unfix-mt32emu-qt-version";
|
||||
|
||||
runtimeInputs = [
|
||||
nix
|
||||
];
|
||||
|
||||
text = ''
|
||||
export UPDATE_NIX_ATTR_PATH="''${UPDATE_NIX_ATTR_PATH:-mt32emu-qt}"
|
||||
|
||||
preUpdateScriptVersion="$(nix-instantiate . --eval --strict -A "$UPDATE_NIX_ATTR_PATH.version" | cut -d'"' -f2)"
|
||||
unfixedVersion="''${preUpdateScriptVersion//\./_}"
|
||||
|
||||
pkgFile="$(nix-instantiate --eval -E "with import ./. {}; (builtins.unsafeGetAttrPos \"version\" $UPDATE_NIX_ATTR_PATH).file" | cut -d'"' -f2)"
|
||||
|
||||
sed -i -e "s/version = \"$preUpdateScriptVersion\"/version = \"$unfixedVersion\"/g" "$pkgFile"
|
||||
'';
|
||||
};
|
||||
|
||||
updateTagScript = gitUpdater {
|
||||
rev-prefix = "mt32emu_qt_";
|
||||
};
|
||||
|
||||
# gitUpdater lacks an option for modifying new tag
|
||||
fixVersionScript = writeShellApplication {
|
||||
name = "fix-mt32emu-qt-version";
|
||||
|
||||
runtimeInputs = [
|
||||
nix
|
||||
];
|
||||
|
||||
text = ''
|
||||
export UPDATE_NIX_ATTR_PATH="''${UPDATE_NIX_ATTR_PATH:-mt32emu-qt}"
|
||||
|
||||
postUpdateScriptVersion="$(nix-instantiate . --eval --strict -A "$UPDATE_NIX_ATTR_PATH.version" | cut -d'"' -f2)"
|
||||
fixedVersion="''${postUpdateScriptVersion//_/.}"
|
||||
|
||||
pkgFile="$(nix-instantiate --eval -E "with import ./. {}; (builtins.unsafeGetAttrPos \"version\" $UPDATE_NIX_ATTR_PATH).file" | cut -d'"' -f2)"
|
||||
|
||||
sed -i -e "s/version = \"$postUpdateScriptVersion\"/version = \"$fixedVersion\"/g" "$pkgFile"
|
||||
'';
|
||||
};
|
||||
|
||||
updateScript = _experimental-update-script-combinators.sequence [
|
||||
(lib.getExe finalAttrs.passthru.unfixVersionScript)
|
||||
(finalAttrs.passthru.updateTagScript.command)
|
||||
(lib.getExe finalAttrs.passthru.fixVersionScript)
|
||||
];
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://munt.sourceforge.net/";
|
||||
description = "Synthesizer application built on Qt and libmt32emu";
|
||||
|
||||
@@ -2,6 +2,10 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
gitUpdater,
|
||||
nix,
|
||||
writeShellApplication,
|
||||
_experimental-update-script-combinators,
|
||||
cmake,
|
||||
glib,
|
||||
libmt32emu,
|
||||
@@ -50,6 +54,58 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
(lib.cmakeBool "munt_WITH_MT32EMU_SMF2WAV" true)
|
||||
];
|
||||
|
||||
passthru = {
|
||||
# Otherwise x.y.z in version != x_y_z in tag, and bump to same version is attempted
|
||||
unfixVersionScript = writeShellApplication {
|
||||
name = "unfix-mt32emu-smf2wav-version";
|
||||
|
||||
runtimeInputs = [
|
||||
nix
|
||||
];
|
||||
|
||||
text = ''
|
||||
export UPDATE_NIX_ATTR_PATH="''${UPDATE_NIX_ATTR_PATH:-mt32emu-smf2wav}"
|
||||
|
||||
preUpdateScriptVersion="$(nix-instantiate . --eval --strict -A "$UPDATE_NIX_ATTR_PATH.version" | cut -d'"' -f2)"
|
||||
unfixedVersion="''${preUpdateScriptVersion//\./_}"
|
||||
|
||||
pkgFile="$(nix-instantiate --eval -E "with import ./. {}; (builtins.unsafeGetAttrPos \"version\" $UPDATE_NIX_ATTR_PATH).file" | cut -d'"' -f2)"
|
||||
|
||||
sed -i -e "s/version = \"$preUpdateScriptVersion\"/version = \"$unfixedVersion\"/g" "$pkgFile"
|
||||
'';
|
||||
};
|
||||
|
||||
updateTagScript = gitUpdater {
|
||||
rev-prefix = "mt32emu_smf2wav_";
|
||||
};
|
||||
|
||||
# gitUpdater lacks an option for modifying new tag
|
||||
fixVersionScript = writeShellApplication {
|
||||
name = "fix-mt32emu-smf2wav-version";
|
||||
|
||||
runtimeInputs = [
|
||||
nix
|
||||
];
|
||||
|
||||
text = ''
|
||||
export UPDATE_NIX_ATTR_PATH="''${UPDATE_NIX_ATTR_PATH:-mt32emu-smf2wav}"
|
||||
|
||||
postUpdateScriptVersion="$(nix-instantiate . --eval --strict -A "$UPDATE_NIX_ATTR_PATH.version" | cut -d'"' -f2)"
|
||||
fixedVersion="''${postUpdateScriptVersion//_/.}"
|
||||
|
||||
pkgFile="$(nix-instantiate --eval -E "with import ./. {}; (builtins.unsafeGetAttrPos \"version\" $UPDATE_NIX_ATTR_PATH).file" | cut -d'"' -f2)"
|
||||
|
||||
sed -i -e "s/version = \"$postUpdateScriptVersion\"/version = \"$fixedVersion\"/g" "$pkgFile"
|
||||
'';
|
||||
};
|
||||
|
||||
updateScript = _experimental-update-script-combinators.sequence [
|
||||
(lib.getExe finalAttrs.passthru.unfixVersionScript)
|
||||
(finalAttrs.passthru.updateTagScript.command)
|
||||
(lib.getExe finalAttrs.passthru.fixVersionScript)
|
||||
];
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://munt.sourceforge.net/";
|
||||
description = "Produces a WAVE file from a Standard MIDI file (SMF)";
|
||||
|
||||
Reference in New Issue
Block a user