diff --git a/pkgs/by-name/cd/cdemu-client/package.nix b/pkgs/by-name/cd/cdemu-client/package.nix index c45fda289abc..54abd96a1d23 100644 --- a/pkgs/by-name/cd/cdemu-client/package.nix +++ b/pkgs/by-name/cd/cdemu-client/package.nix @@ -7,6 +7,7 @@ gobject-introspection, fetchurl, lib, + writeScript, }: python3Packages.buildPythonApplication (finalAttrs: { pname = "cdemu-client"; @@ -37,6 +38,20 @@ python3Packages.buildPythonApplication (finalAttrs: { makeWrapperArgs+=("''${gappsWrapperArgs[@]}") ''; + passthru = { + updateScript = writeScript "update-cdemu-client" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl pcre2 common-updater-scripts + + set -eu -o pipefail + + # Fetch the latest version from the SourceForge RSS feed for cdemu-client + newVersion="$(curl -s "https://sourceforge.net/projects/cdemu/rss?path=/cdemu-client" | pcre2grep -o1 'cdemu-client-([0-9.]+)\.tar\.xz' | head -n 1)" + + update-source-version cdemu-client "$newVersion" + ''; + }; + meta = { description = "Suite of tools for emulating optical drives and discs"; longDescription = '' diff --git a/pkgs/by-name/cd/cdemu-daemon/package.nix b/pkgs/by-name/cd/cdemu-daemon/package.nix index 42cac77cba31..4f5f43c006dd 100644 --- a/pkgs/by-name/cd/cdemu-daemon/package.nix +++ b/pkgs/by-name/cd/cdemu-daemon/package.nix @@ -9,6 +9,7 @@ coreutils, fetchurl, lib, + writeScript, }: stdenv.mkDerivation (finalAttrs: { @@ -41,6 +42,20 @@ stdenv.mkDerivation (finalAttrs: { --replace /bin/true ${coreutils}/bin/true ''; + passthru = { + updateScript = writeScript "update-cdemu-daemon" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl pcre2 common-updater-scripts + + set -eu -o pipefail + + # Fetch the latest version from the SourceForge RSS feed for cdemu-daemon + newVersion="$(curl -s "https://sourceforge.net/projects/cdemu/rss?path=/cdemu-daemon" | pcre2grep -o1 'cdemu-daemon-([0-9.]+)\.tar\.xz' | head -n 1)" + + update-source-version cdemu-daemon "$newVersion" + ''; + }; + meta = { description = "Suite of tools for emulating optical drives and discs"; longDescription = '' diff --git a/pkgs/by-name/gc/gcdemu/package.nix b/pkgs/by-name/gc/gcdemu/package.nix index 11fd3c2c7c88..82586645a2fa 100644 --- a/pkgs/by-name/gc/gcdemu/package.nix +++ b/pkgs/by-name/gc/gcdemu/package.nix @@ -11,6 +11,7 @@ libappindicator-gtk3, fetchurl, lib, + writeScript, }: python3Packages.buildPythonApplication (finalAttrs: { @@ -48,6 +49,20 @@ python3Packages.buildPythonApplication (finalAttrs: { makeWrapperArgs+=("''${gappsWrapperArgs[@]}") ''; + passthru = { + updateScript = writeScript "update-gcdemu" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl pcre2 common-updater-scripts + + set -eu -o pipefail + + # Fetch the latest version from the SourceForge RSS feed for gcdemu + newVersion="$(curl -s "https://sourceforge.net/projects/cdemu/rss?path=/gcdemu" | pcre2grep -o1 'gcdemu-([0-9.]+)\.tar\.xz' | head -n 1)" + + update-source-version gcdemu "$newVersion" + ''; + }; + meta = { description = "Suite of tools for emulating optical drives and discs"; longDescription = '' diff --git a/pkgs/by-name/im/image-analyzer/package.nix b/pkgs/by-name/im/image-analyzer/package.nix index 90fdb30a1821..16e8c6616460 100644 --- a/pkgs/by-name/im/image-analyzer/package.nix +++ b/pkgs/by-name/im/image-analyzer/package.nix @@ -12,6 +12,7 @@ libmirage, fetchurl, lib, + writeScript, }: python3Packages.buildPythonApplication (finalAttrs: { pname = "image-analyzer"; @@ -50,6 +51,20 @@ python3Packages.buildPythonApplication (finalAttrs: { makeWrapperArgs+=("''${gappsWrapperArgs[@]}") ''; + passthru = { + updateScript = writeScript "update-image-analyzer" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl pcre2 common-updater-scripts + + set -eu -o pipefail + + # Fetch the latest version from the SourceForge RSS feed for image-analyzer + newVersion="$(curl -s "https://sourceforge.net/projects/cdemu/rss?path=/image-analyzer" | pcre2grep -o1 'image-analyzer-([0-9.]+)\.tar\.xz' | head -n 1)" + + update-source-version image-analyzer "$newVersion" + ''; + }; + meta = { description = "Suite of tools for emulating optical drives and discs"; longDescription = '' diff --git a/pkgs/by-name/li/libmirage/package.nix b/pkgs/by-name/li/libmirage/package.nix index 16e1cc2e3a01..7b2427774cb8 100644 --- a/pkgs/by-name/li/libmirage/package.nix +++ b/pkgs/by-name/li/libmirage/package.nix @@ -17,6 +17,7 @@ libsepol, fetchurl, lib, + writeScript, }: stdenv.mkDerivation (finalAttrs: { @@ -57,6 +58,20 @@ stdenv.mkDerivation (finalAttrs: { libsepol ]; + passthru = { + updateScript = writeScript "update-libmirage" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl pcre2 common-updater-scripts + + set -eu -o pipefail + + # Fetch the latest version from the SourceForge RSS feed for libmirage + newVersion="$(curl -s "https://sourceforge.net/projects/cdemu/rss?path=/libmirage" | pcre2grep -o1 'libmirage-([0-9.]+)\.tar\.xz' | head -n 1)" + + update-source-version libmirage "$newVersion" + ''; + }; + meta = { maintainers = with lib.maintainers; [ bendlas ]; license = lib.licenses.gpl2Plus;