diff --git a/pkgs/applications/editors/emacs/elisp-packages/update b/pkgs/applications/editors/emacs/elisp-packages/update new file mode 100755 index 000000000000..02701fb546d9 --- /dev/null +++ b/pkgs/applications/editors/emacs/elisp-packages/update @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +set -euo pipefail + +SCRIPT_DIR="$( cd "$(dirname "$0")" ; pwd -P )" +cd "$SCRIPT_DIR" + +./update-from-overlay + +./update-manual +git commit -m "emacs.pkgs.manualPackages: $(date --iso)" -- . diff --git a/pkgs/applications/editors/emacs/elisp-packages/update-manual b/pkgs/applications/editors/emacs/elisp-packages/update-manual new file mode 100755 index 000000000000..3b199eecc3d2 --- /dev/null +++ b/pkgs/applications/editors/emacs/elisp-packages/update-manual @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +set -euo pipefail + +SCRIPT_DIR="$( cd "$(dirname "$0")" ; pwd -P )" +cd "$SCRIPT_DIR" + +nix-build --no-out-link update-manual.nix | xargs -n 1 -P $(nproc) bash -c diff --git a/pkgs/applications/editors/emacs/elisp-packages/update-manual.nix b/pkgs/applications/editors/emacs/elisp-packages/update-manual.nix new file mode 100644 index 000000000000..788d096e6ec6 --- /dev/null +++ b/pkgs/applications/editors/emacs/elisp-packages/update-manual.nix @@ -0,0 +1,11 @@ +let + pkgs = import ../../../../../. { + config.allowBroken = true; + }; + inherit (pkgs) lib emacs; + inherit (lib) isDerivation hasAttr filterAttrs mapAttrs attrValues; + + # Extract updateScript's from manually package emacs packages + hasScript = filterAttrs (_: v: isDerivation v && hasAttr "updateScript" v) emacs.pkgs.manualPackages; + +in attrValues (mapAttrs (_: v: v.updateScript) hasScript)