Debian

My excalidraw tracings.

Share your links here :spider_web: .

Packaging

Flashbots software

Ethereum execution clients

Ethereum consensus clients

Incus setup for debian development

Install:

$ sudo apt install incus
$ sudo adduser $USER incus-admin
$ newgrp incus-admin
$ incus admin init --minimal

Launch a container:

$ incus launch images:debian/trixie <container-name>
$ incus config device add <container-name> workspace disk source=/home/<user>/workspace path=/home/<user>/workspace shift=true
# adduser --disabled-password <user>
# passwd --delete <user>
# usermod --append --group sudo <user>
# exit
$ incus exec <container-nami> -- su --login <user>

Go packaging

Install the dh-make-golang patched by otto:

$ curl -LO https://salsa.debian.org/otto/dh-make-golang/-/jobs/8033558/artifacts/raw/debian/output/dh-make-golang_0.8+git20250820.a6fe7fa-1~otto+salsaci+20250820+39_amd64.deb
$ apt install --yes ./dh-make-golang*.deb
export DEBEMAIL=<my-email>
export DEBFULLNAME="<my-name>"
  1. Run dh-make-golang make -dep14 -pristine-tar -type library -upstream_git_history -wrap-and-sort ast -git_revision=<git-revision> <go import path>
  2. Run dh-make-golang estimate. It will report the missing dependencies, so go back to (1) until there are no dependencies.
  3. File the intent to package bug.
  4. Run dh-make-golang create-salsa-project <package>
  5. cd <project>
  6. From outside the container: git push --force --verbose
  7. Make a branch for the latest release: git checkout -b import/$(dpkg-parsechangelog -SVersion)
  8. Edit debian/changelog.
  9. Edit debian/control, add Otto Kekäläinen <otto@debian.org>, to uploaders.
  10. Edit debian/copyright.
  11. Verify that upstream uses tags and edit debian/gbp.conf.
  12. Run grep --recursive --fixed-strings TODO debian.
  13. Run debputy reformat --style=black.
  14. Run git add debian.
  15. Run git commit --message 'Initial packaging (Closes: #<itp bug>)'.
  16. Run debuild.
  17. Run lintian --pedantic --display-info.
  18. Run git push.
  19. Create the merge request.
  20. Run the pipeline.