joininbox/scripts
autoblitzbot 4e5af9f1a3
Some checks are pending
amd64-image-build / amd64-image-build (push) Waiting to run
arm64-rpi-image-build / arm64-rpi-image-build (push) Waiting to run
Packer Syntax Check / Validate Packer Syntax (push) Waiting to run
Test Shellcheck / Run Shellcheck (push) Waiting to run
fix(ci): make image builds noninteractive (#196)
* fix(ci): make image builds noninteractive

Both image builds fail in packer:

- arm64-rpi: dpkg halts on the interactive initramfs.conf conffile
  prompt (Y/I/N/O/D/Z) during 'apt-get upgrade' kernel configuration,
  then cascades: E: Sub-process /usr/bin/dpkg returned an error code (1)
- amd64: debconf falls back through Dialog/Readline/Teletype frontends
  (no controlling tty) and the build later fails on
  'E: Package netcat has no installation candidate' - the netcat
  metapackage was removed in Debian trixie

Fixes:
- export DEBIAN_FRONTEND=noninteractive and install an apt.conf.d
  dropin with Dpkg::Options --force-confdef/--force-confold so conffile
  prompts resolve to the default action and keep the existing config
  (build_joininbox.sh and the amd64 update.sh kernel upgrade)
- install netcat-openbsd when the netcat metapackage is unavailable

* feat(ci): skip code signature verification on PR builds, label images

PR CI builds pull head commits from forks which are not signed by the
maintainer keys, so the mandatory PGP verification in
build_joininbox.sh fails every PR image build:

  # BUILD FAILED --> PGP verification not OK / signature(0) verify(0)

Behavior after this change:
- pull_request workflow runs pass the PR number through the packer
  build chain (workflow -> build script -> packer var -> provisioner
  env -> JOININBOX_PR_NUMBER)
- build_joininbox.sh skips the source signature verification when
  JOININBOX_PR_NUMBER is set, prints a prominent warning, and labels
  the image in /etc/joininbox-build-info as an UNVERIFIED test build
- the uploaded artifact name carries a -pr<N> suffix via BUILD_VERSION
- push-to-master and workflow_dispatch builds never set the variable,
  so production images keep mandatory verification

* fix(ci): drop apt policy after build, warn on PR images in main menu

- Remove /etc/apt/apt.conf.d/90joininbox-noninteractive at the end of
  build_joininbox.sh: the noninteractive dpkg conffile policy is a
  build-time measure and must not ship in deployed images, where
  interactive conffile handling is the default again
- Show '!!! UNVERIFIED PR BUILD #<N> - TESTING ONLY !!!' on top of the
  main menu whenever /etc/joininbox-build-info is present, so a flashed
  PR image cannot be mistaken for a production build

---------

Co-authored-by: autoblitzbot <autoblitzbot@users.noreply.github.com>
2026-08-15 07:31:05 +02:00
..
jam-remote jam remote update to v0.4.0 (#175) 2025-06-09 21:20:46 +02:00
standalone chore: migrate the watch-only Bitcoin Core wallet to use descriptors (#177) 2026-08-13 11:57:42 +02:00
.dialogrc update JoinMarket to commit ce32baf, support for Python 3.12 / 3.13, modernize build (#178) 2026-01-18 07:56:26 +01:00
.dialogrc.onerror dialog: add colors 2020-01-22 12:53:45 +00:00
_commands.sh Tweak logs and stats display (#162) 2024-11-23 08:00:30 +01:00
_functions.bitcoincore.sh chore: migrate the watch-only Bitcoin Core wallet to use descriptors (#177) 2026-08-13 11:57:42 +02:00
_functions.menu.sh Tweak logs and stats display (#162) 2024-11-23 08:00:30 +01:00
_functions.sh chore: migrate the watch-only Bitcoin Core wallet to use descriptors (#177) 2026-08-13 11:57:42 +02:00
info.conf.txt JoinMarket update to v0.9.6 with Tor by default 2022-05-09 19:36:44 +01:00
info.importwallet.sh chore: adapt to new path to bitcoin.conf in raspiblitz (#171) 2025-06-06 20:51:50 +02:00
info.qtgui.sh Fixed typos (#79) 2022-03-12 13:45:09 +03:00
info.stats.sh remove all trailing white spaces 2022-03-06 13:41:40 +00:00
install.bitcoincore.sh chore: migrate the watch-only Bitcoin Core wallet to use descriptors (#177) 2026-08-13 11:57:42 +02:00
install.hiddenservice.sh add joinmarket-api.service and connect Fully Noded 2022-07-18 18:46:40 +01:00
install.joinmarket-api.sh jam update to v0.1.5, nodejs update, fmt (#122) 2023-04-17 13:11:13 +01:00
install.joinmarket.sh chore: migrate the watch-only Bitcoin Core wallet to use descriptors (#177) 2026-08-13 11:57:42 +02:00
install.selfsignedcert.sh fix: correct path of ssl cert for joinmarket-api 2022-08-07 20:32:33 +01:00
menu.bitcoinrpc.sh remove all trailing white spaces 2022-03-06 13:41:40 +00:00
menu.config.sh chore: adapt to new path to bitcoin.conf in raspiblitz (#171) 2025-06-06 20:51:50 +02:00
menu.freeze.sh remove all trailing white spaces 2022-03-06 13:41:40 +00:00
menu.jam.sh chore: adapt to new path to bitcoin.conf in raspiblitz (#171) 2025-06-06 20:51:50 +02:00
menu.orderbook.sh Tweak logs and stats display (#162) 2024-11-23 08:00:30 +01:00
menu.payjoin.sh fix typos and add spelling (#136) 2023-07-23 08:35:04 +02:00
menu.quickstart.sh remove all trailing white spaces 2022-03-06 13:41:40 +00:00
menu.send.sh fix typos and add spelling (#136) 2023-07-23 08:35:04 +02:00
menu.sh fix(ci): make image builds noninteractive (#196) 2026-08-15 07:31:05 +02:00
menu.tools.sh chore: remove the boltzmann tool (#172) 2025-06-06 22:43:38 +02:00
menu.update.advanced.sh Bitcoin Core update to v26.0 , add update option and display (#140) 2023-12-11 08:50:42 +01:00
menu.update.sh update JoinMarket to commit ce32baf, support for Python 3.12 / 3.13, modernize build (#178) 2026-01-18 07:56:26 +01:00
menu.wallet.sh chore: migrate the watch-only Bitcoin Core wallet to use descriptors (#177) 2026-08-13 11:57:42 +02:00
menu.yg.sh Tweak logs and stats display (#162) 2024-11-23 08:00:30 +01:00
set.bitcoinrpc.py recreate JMconf only if missing 2022-03-02 22:09:50 +03:00
set.conf.sh use trap to ensure tempfiles are deleted on exit 2021-09-02 12:01:58 +01:00
set.password.sh remove all trailing white spaces 2022-03-06 13:41:40 +00:00
set.ssh.sh prevent sleep and "unable to resolve host debian" error (#151) 2024-04-05 08:33:08 +02:00
set.value.sh feat: add shellcheck test to github actions (#174) 2025-06-06 23:10:54 +02:00
start.joininbox.sh fix: identify new location of raspiblitz.conf file (#168) 2025-05-25 23:30:11 +02:00
start.script.sh remove all trailing white spaces 2022-03-06 13:41:40 +00:00
start.service.sh fix(service): add memory and CPU limits to reduce OOM kills (#182) 2026-03-29 22:36:56 +02:00
tor.newnym.py move file tor.newnym.py 2021-06-14 14:16:28 +01:00
verify.git.sh chore: joinmarket-clientserver update to v0.9.12, use AdamISZ new code signing key (#185) 2026-04-26 15:37:17 +02:00