HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //var/lib/dpkg/info/node-constants-browserify.postinst
#!/bin/sh

set -e

# use && in order to avoid some problem with set -e in functions
rebuild_constants_list () {
	OLD_CONSTANTS_FILE="${DPKG_ROOT:-}/usr/lib/nodejs/constants-browserify/constants.json"
	if test -e $OLD_CONSTANTS_FILE; then
		rm -f "${DPKG_ROOT:-}/usr/lib/nodejs/constants-browserify/constants.json"
		rmdir "${DPKG_ROOT:-}/usr/lib/nodejs/constants-browserify" || true
	fi
	CONSTANTS_FILE="${DPKG_ROOT:-}/usr/share/nodejs/constants-browserify/constants.json"
	# set -e is unspecified in function, moreover we want clean up
	while true; do
		# create file if not exist with some sensible right rw-r--r--
		(umask 022 && touch "$CONSTANTS_FILE.triggered") || break;
		# force right if it exist
		chmod 0644 "$CONSTANTS_FILE.triggered" || break;
		#reconstruct node constant list
		# move is atomic not redirection
		"${DPKG_ROOT:-}/usr/bin/node" -pe 'JSON.stringify(require("constants"), null, "  ")' > "$CONSTANTS_FILE.triggered" || break;
		mv "$CONSTANTS_FILE.triggered" "$CONSTANTS_FILE" || break;
		return 0;
	done
	echo "postinst failled to create $CONSTANTS_FILE" >&2
	# recover
	rm -f  "$CONSTANTS_FILE.triggered"
	rm -f  "$CONSTANTS_FILE"
	return 1
}

case "$1" in
	configure)
		rebuild_constants_list
	;;

	triggered)
		rebuild_constants_list
	;;

	abort-upgrade|abort-remove|abort-deconfigure)
	;;

	*)
		echo "postinst called with unknown argument \`$1'" >&2
		exit 1
	;;
esac



exit 0