diff options
Diffstat (limited to 'selfpublish.sh')
-rw-r--r-- | selfpublish.sh | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/selfpublish.sh b/selfpublish.sh index 1029556..3ec7ca8 100644 --- a/selfpublish.sh +++ b/selfpublish.sh | |||
@@ -497,17 +497,29 @@ EOF | |||
497 | echo | 497 | echo |
498 | } | 498 | } |
499 | 499 | ||
500 | control_file_unchanged() | 500 | in_temp_dir() |
501 | { | ||
502 | ( | ||
503 | __tempdir=$(mktemp -d) || return | ||
504 | __r=1 | ||
505 | trap 'rm -rf "$__tempdir"; (exit $__r)' EXIT | ||
506 | cd "$__tempdir" && "$@" | ||
507 | __r=$? | ||
508 | ) | ||
509 | } | ||
510 | |||
511 | _control_file_unchanged() | ||
501 | { | 512 | { |
502 | ( | ||
503 | destdir=$(mktemp -d) | ||
504 | trap 'rm -r "$destdir"' EXIT | ||
505 | [ "$(dpkg-query -f '${Version}' -W ${SELF_PACKAGE})" = "${SELF_VERSION}" ] || return | 513 | [ "$(dpkg-query -f '${Version}' -W ${SELF_PACKAGE})" = "${SELF_VERSION}" ] || return |
506 | 514 | ||
507 | dependencies > want-dependencies | 515 | dependencies > want-dependencies |
508 | dpkg-query -f '${Depends}\n' -W "${SELF_PACKAGE}" | sed 's/, */\n/g' | sort -u > have-dependencies | 516 | dpkg-query -f '${Depends}\n' -W "${SELF_PACKAGE}" | sed 's/, */\n/g' | sort -u > have-dependencies |
509 | diff -q want-dependencies have-dependencies | 517 | diff -q want-dependencies have-dependencies |
510 | ) | 518 | } |
519 | |||
520 | control_file_unchanged() | ||
521 | { | ||
522 | in_temp_dir _control_file_unchanged "$@" | ||
511 | } | 523 | } |
512 | 524 | ||
513 | equivocate() | 525 | equivocate() |