chiark / gitweb /
hippotat.git
5 weeks agoMerge branch 'release' into 'main' main debian/1.3.3
Ian Jackson [Sun, 10 May 2026 22:54:32 +0000 (22:54 +0000)]
Merge branch 'release' into 'main'

Release 1.3.3

See merge request iwj/hippotat!75

5 weeks agoRelease 1.3.3
Ian Jackson [Sat, 9 May 2026 10:54:52 +0000 (11:54 +0100)]
Release 1.3.3

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 weeks agoMerge branch 'clippy' into 'main'
Ian Jackson [Sun, 10 May 2026 21:44:02 +0000 (21:44 +0000)]
Merge branch 'clippy' into 'main'

Fix clippy lints and add clippy to CI

See merge request iwj/hippotat!74

5 weeks agoMerge branch 'no-verbose-ci' into 'main'
Ian Jackson [Sun, 10 May 2026 21:42:54 +0000 (21:42 +0000)]
Merge branch 'no-verbose-ci' into 'main'

CI: Remove --verbose from cargo invocations

See merge request iwj/hippotat!73

5 weeks agoAdd clippy job using today's stable
Ian Jackson [Sun, 10 May 2026 18:28:49 +0000 (19:28 +0100)]
Add clippy job using today's stable

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 weeks agoSuppress a lint for let _: Future = ...
Ian Jackson [Sun, 10 May 2026 18:20:19 +0000 (19:20 +0100)]
Suppress a lint for let _: Future = ...

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 weeks agoSuppress a lint for .get().is_some()
Ian Jackson [Sun, 10 May 2026 18:07:28 +0000 (19:07 +0100)]
Suppress a lint for .get().is_some()

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 weeks agoclippy: consistently allow complexity, rather than individual lints
Ian Jackson [Sun, 10 May 2026 17:53:32 +0000 (18:53 +0100)]
clippy: consistently allow complexity, rather than individual lints

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoCI: Remove --verbose from cargo invocations
Ian Jackson [Sun, 10 May 2026 20:39:52 +0000 (21:39 +0100)]
CI: Remove --verbose from cargo invocations

This has IME never been useful.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoMerge branch 'msrv' into 'main'
Ian Jackson [Sun, 10 May 2026 20:48:16 +0000 (20:48 +0000)]
Merge branch 'msrv' into 'main'

Bump MSRV to 1.85

See merge request iwj/hippotat!71

6 weeks agoBump MSRV to 1.85
Ian Jackson [Sun, 10 May 2026 17:48:19 +0000 (18:48 +0100)]
Bump MSRV to 1.85

This package doesn't build with dependencies from bookworm (currently
oldstable) any more.

And, in our MSRV test, test the actual MSRV compiler.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoMerge branch 'ci-image' into 'main'
Ian Jackson [Sun, 10 May 2026 18:50:12 +0000 (18:50 +0000)]
Merge branch 'ci-image' into 'main'

CI: Update most jobs to use trixie

See merge request iwj/hippotat!72

6 weeks agoCI: Update most of the bookworm-using jobs
Ian Jackson [Sun, 10 May 2026 18:31:10 +0000 (19:31 +0100)]
CI: Update most of the bookworm-using jobs

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoCI: Remove duplicate image: definition
Ian Jackson [Sun, 10 May 2026 18:30:10 +0000 (19:30 +0100)]
CI: Remove duplicate image: definition

Apparently gitlab doesn't spot this?

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoMerge branch 'no-macro' into 'main'
Ian Jackson [Sun, 10 May 2026 18:10:01 +0000 (18:10 +0000)]
Merge branch 'no-macro' into 'main'

Replace proc macro with normal code, and make hippotat-macros into a tombstone

See merge request iwj/hippotat!70

6 weeks agoNo longer depend on hippotat-macros
Ian Jackson [Sun, 10 May 2026 10:31:14 +0000 (11:31 +0100)]
No longer depend on hippotat-macros

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoMake hippotat-macros into a tombstone
Ian Jackson [Sun, 10 May 2026 10:30:47 +0000 (11:30 +0100)]
Make hippotat-macros into a tombstone

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoRemove a now-redundant ampersand
Ian Jackson [Sun, 10 May 2026 10:29:36 +0000 (11:29 +0100)]
Remove a now-redundant ampersand

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoFormat lines_crlf call sites properly for new approach
Ian Jackson [Sun, 10 May 2026 10:29:05 +0000 (11:29 +0100)]
Format lines_crlf call sites properly for new approach

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoMerge branch 'cleanup-race' into 'main'
Ian Jackson [Sun, 10 May 2026 11:21:50 +0000 (11:21 +0000)]
Merge branch 'cleanup-race' into 'main'

tests: Add a sleep to try to make tests more reliable

See merge request iwj/hippotat!68

6 weeks agoLitLinesCrlf rework
Ian Jackson [Sun, 10 May 2026 10:22:24 +0000 (11:22 +0100)]
LitLinesCrlf rework

Use the indentation of the first nonempty line, rather than trimming
all whitespace from the front of every line.  That will let us do
indented lines if we want.

Cons rather less.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoAdjust LitLinesCrlf input string literals for consistent indentation
Ian Jackson [Sun, 10 May 2026 10:13:28 +0000 (11:13 +0100)]
Adjust LitLinesCrlf input string literals for consistent indentation

This will let us avoid trim, and instead trim a controlled amount.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoLitLinesCrlf: expect input without the final empty line
Ian Jackson [Sun, 10 May 2026 10:23:37 +0000 (11:23 +0100)]
LitLinesCrlf: expect input without the final empty line

Before we got rid of the macro, this was handled by the way the `{}`
were embedded in the format string.

Then it was present in the source, stripped by LitLinesCrlf and then
added back by lines_crlf.  Now it is only handled by lines_crlf and
everything is reasonably straightforward.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoMove code for into_crlfs macro to client.rs
Ian Jackson [Sat, 9 May 2026 11:38:44 +0000 (12:38 +0100)]
Move code for into_crlfs macro to client.rs

This abolishes the macro.  It will allow us to abolish our macro crate
entirely.

Right now the version in client.rs is a bit odd and flabby.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agotests: Add a sleep to try to make tests more reliable
Ian Jackson [Sat, 9 May 2026 10:35:50 +0000 (11:35 +0100)]
tests: Add a sleep to try to make tests more reliable

Hopefully it will avoid this kind of thing (seen in ci.debian.net):

  101s + fuser -Mkm /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay
  101s /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay:  2659rce  2661rce  2699rce  2742rce  2772rce  2775rce  2777rce  2778rce  2779rce  2780rce  2781rce  2782rce
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/proc
  101s umount: /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/proc: target is busy.
  101s + :
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/dev
  101s umount: /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/dev: target is busy.
  101s + :
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay/home
  101s /tmp/autopkgtest.lrleaj/build.Yox/src/adt/../test/tcommon: line 51:  2741 Killed                     $exec ip netns exec hippotat-t-$tname-$client_server "$@"
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay
  101s umount: /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay: target is busy.
  101s + :
  101s + umount /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-pidns
  101s + test -d /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay
  101s + rmdir /tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay
  101s rmdir: failed to remove '/tmp/autopkgtest.lrleaj/autopkgtest_tmp/server-overlay': Device or resource busy
  101s /tmp/autopkgtest.lrleaj/build.Yox/src/adt/adt-full: line 1:  2529 Killed                     unshare --fork --pid="$tmp"/$cs-pidns chroot "$tmp"/$cs-overlay sh -ec '
  ...

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoMerge branch 'update' into 'main'
Ian Jackson [Sun, 10 May 2026 10:56:15 +0000 (10:56 +0000)]
Merge branch 'update' into 'main'

Routine depedency updates

See merge request iwj/hippotat!67

6 weeks agoMerge branch 'minimal-nightly' into 'main'
Ian Jackson [Sun, 10 May 2026 10:51:43 +0000 (10:51 +0000)]
Merge branch 'minimal-nightly' into 'main'

CI: Update pinned nightly for minimal-versions-nightly

See merge request iwj/hippotat!69

6 weeks agoAllow use of sha2 0.11.x, and update to that
Ian Jackson [Sat, 9 May 2026 10:31:23 +0000 (11:31 +0100)]
Allow use of sha2 0.11.x, and update to that

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoRoutine cargo update (minimal versions)
Ian Jackson [Sat, 9 May 2026 10:30:26 +0000 (11:30 +0100)]
Routine cargo update (minimal versions)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoRoutine cargo update
Ian Jackson [Sat, 9 May 2026 10:29:55 +0000 (11:29 +0100)]
Routine cargo update

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 weeks agoCI: Update pinned nightly for minimal-versions-nightly
Ian Jackson [Sat, 9 May 2026 11:46:29 +0000 (12:46 +0100)]
CI: Update pinned nightly for minimal-versions-nightly

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 months agoMerge branch 'update' into 'main' debian/1.3.2
Ian Jackson [Sun, 22 Mar 2026 20:04:51 +0000 (20:04 +0000)]
Merge branch 'update' into 'main'

Dependency updates.  Allow reqwest 0.13.x.  Release 1.3.2.

See merge request iwj/hippotat!66

2 months agoRelease 1.3.2
Ian Jackson [Sun, 22 Mar 2026 19:23:08 +0000 (19:23 +0000)]
Release 1.3.2

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 months agoMakefile: Update build instructiosn for some places the version appears
Ian Jackson [Sun, 22 Mar 2026 19:22:47 +0000 (19:22 +0000)]
Makefile: Update build instructiosn for some places the version appears

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 months agoAllow use of reqwest 0.13.x (lockfile)
Ian Jackson [Sun, 22 Mar 2026 19:05:08 +0000 (19:05 +0000)]
Allow use of reqwest 0.13.x (lockfile)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 months agoAllow use of reqwest 0.13.x
Ian Jackson [Sun, 22 Mar 2026 18:56:36 +0000 (18:56 +0000)]
Allow use of reqwest 0.13.x

Closes: #1131578
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 months agoRoutine cargo update (minimal versions)
Ian Jackson [Sun, 22 Mar 2026 19:07:50 +0000 (19:07 +0000)]
Routine cargo update (minimal versions)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 months agoRoutine cargo update
Ian Jackson [Sun, 22 Mar 2026 19:04:18 +0000 (19:04 +0000)]
Routine cargo update

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoMerge branch 'packaging' into 'main' debian/1.3.1
Ian Jackson [Sun, 1 Mar 2026 22:35:35 +0000 (22:35 +0000)]
Merge branch 'packaging' into 'main'

Misc tidying

See merge request iwj/hippotat!65

3 months agoDocument 1.3.1 and finalise changelog
Ian Jackson [Sun, 1 Mar 2026 22:15:34 +0000 (22:15 +0000)]
Document 1.3.1 and finalise changelog

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoAdd debian/source/options to declare native source format
Ian Jackson [Sun, 1 Mar 2026 22:14:38 +0000 (22:14 +0000)]
Add debian/source/options to declare native source format

For use by git-debpush.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoBump crate version (including macros) to 1.3.1
Ian Jackson [Sun, 1 Mar 2026 22:10:55 +0000 (22:10 +0000)]
Bump crate version (including macros) to 1.3.1

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoMerge branch 'changelog' into 'main'
Ian Jackson [Sun, 1 Mar 2026 22:04:40 +0000 (22:04 +0000)]
Merge branch 'changelog' into 'main'

changelog: Document and finalise 1.3.0

See merge request iwj/hippotat!64

3 months agoBump crate versions to 1.3.0
Ian Jackson [Sun, 1 Mar 2026 21:33:26 +0000 (21:33 +0000)]
Bump crate versions to 1.3.0

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agochangelog: Document and finalise 1.3.0
Ian Jackson [Sun, 1 Mar 2026 21:25:37 +0000 (21:25 +0000)]
changelog: Document and finalise 1.3.0

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoMerge branch 'mr-57-combine' into 'main'
Ian Jackson [Sun, 1 Mar 2026 21:30:44 +0000 (21:30 +0000)]
Merge branch 'mr-57-combine' into 'main'

Add a systemd unit file for hippotatd.service (combined MR)

See merge request iwj/hippotat!63

3 months agoHACKING.md: Explain what the weird autopkgtest rune is for
Ian Jackson [Sun, 1 Mar 2026 20:48:23 +0000 (20:48 +0000)]
HACKING.md: Explain what the weird autopkgtest rune is for

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agotests: Run systemd debugging commands on failure
Ian Jackson [Sun, 1 Mar 2026 20:35:10 +0000 (20:35 +0000)]
tests: Run systemd debugging commands on failure

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agotests: Tell systemd that we're running hippotatd as root
Ian Jackson [Sun, 1 Mar 2026 20:35:58 +0000 (20:35 +0000)]
tests: Tell systemd that we're running hippotatd as root

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoMerge branch 'main' into mr-57-combine
Ian Jackson [Sun, 1 Mar 2026 20:46:13 +0000 (20:46 +0000)]
Merge branch 'main' into mr-57-combine

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoMerge branch 'autopkgtest' into 'main'
Ian Jackson [Sun, 1 Mar 2026 16:05:23 +0000 (16:05 +0000)]
Merge branch 'autopkgtest' into 'main'

autopkgtests: Refactoring, preparatory to testing both systemd and sysvinit

See merge request iwj/hippotat!62

3 months agoHACKING.md: Instructions for qemu-based autopkgtest
Ian Jackson [Sun, 1 Mar 2026 15:46:24 +0000 (15:46 +0000)]
HACKING.md: Instructions for qemu-based autopkgtest

Mostly for my future self.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoautopkgtests: Break out test-service-startup-main
Ian Jackson [Sun, 1 Mar 2026 15:36:20 +0000 (15:36 +0000)]
autopkgtests: Break out test-service-startup-main

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoautopkgtests: Break out test-service-startup-prep
Ian Jackson [Sun, 1 Mar 2026 15:32:59 +0000 (15:32 +0000)]
autopkgtests: Break out test-service-startup-prep

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoautopkgtests: Fix a typo
Ian Jackson [Sun, 1 Mar 2026 15:32:21 +0000 (15:32 +0000)]
autopkgtests: Fix a typo

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoMerge branch 'bjh21-typos' into 'main'
Ian Jackson [Sun, 1 Mar 2026 15:23:29 +0000 (15:23 +0000)]
Merge branch 'bjh21-typos' into 'main'

Fix typos in documentation

See merge request iwj/hippotat!60

3 months agoFix typos in config.md
Ben Harris [Sat, 28 Feb 2026 22:14:06 +0000 (22:14 +0000)]
Fix typos in config.md

Assisted by M-x ispell-buffer.

3 months agoFix typos in install.md
Ben Harris [Sat, 28 Feb 2026 16:43:11 +0000 (16:43 +0000)]
Fix typos in install.md

Assisted by M-x ispell-buffer.

3 months agoAdd a systemd unit file for hippotatd.service
Ben Harris [Sun, 1 Mar 2026 13:45:34 +0000 (13:45 +0000)]
Add a systemd unit file for hippotatd.service

This mostly replicates the functionality of the existing init script.
It uses the same /etc/default/hippotatd as the init script, but loads it
using EnvironmentFile=.  That means that variable assignments in that
file will work, but not more complicated shell constructs.

systemd doesn't have a convenient way to set the service user from an
environment variable, so users who have set USER in
/etc/default/hippotatd will instead need to create a drop-in file under
/etc/systemd/system/hippotatd.service.d containing something like:

[Service]
User=my-hippotat-user

The init script checks that USER (possibly set by
/etc/default/hippotatd) and LOGNAME (set by systemd based on User=)
agree to make sure that both sources agree on what user hippotatd should
run as.

3 months agoMerge branch 'sd-notify' into 'main'
Ian Jackson [Sat, 28 Feb 2026 16:16:03 +0000 (16:16 +0000)]
Merge branch 'sd-notify' into 'main'

Use systemd notify protocol to signal startup, when requested in env

See merge request iwj/hippotat!58

3 months agoMerge branch 'update-lockfile' into 'main'
Ian Jackson [Sat, 28 Feb 2026 16:10:03 +0000 (16:10 +0000)]
Merge branch 'update-lockfile' into 'main'

Routine dependency updates

See merge request iwj/hippotat!59

3 months agoDocument use of systemd notify protocol, in the usage message
Ian Jackson [Sat, 28 Feb 2026 15:47:11 +0000 (15:47 +0000)]
Document use of systemd notify protocol, in the usage message

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoUse systemd notify protocol to signal startup, when requested in env
Ian Jackson [Sat, 28 Feb 2026 15:38:20 +0000 (15:38 +0000)]
Use systemd notify protocol to signal startup, when requested in env

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoAdd sd-notify dependency
Ian Jackson [Sat, 28 Feb 2026 15:29:12 +0000 (15:29 +0000)]
Add sd-notify dependency

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoAllow use of nix 0.31 (and use in upstream Cargo.lock)
Ian Jackson [Sat, 28 Feb 2026 15:49:36 +0000 (15:49 +0000)]
Allow use of nix 0.31 (and use in upstream Cargo.lock)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 months agoUpdate upstream deps (Cargo.lock)
Ian Jackson [Sat, 28 Feb 2026 15:48:22 +0000 (15:48 +0000)]
Update upstream deps (Cargo.lock)

Route `cargo update`

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 months agoMerge branch 'update' into 'main'
Ian Jackson [Sun, 26 Oct 2025 23:58:46 +0000 (23:58 +0000)]
Merge branch 'update' into 'main'

Add more fixes to 1.2.3, and prepare for full release

See merge request iwj/hippotat!56

7 months agochangelog: Document the remaining changes for 1.2.3
Ian Jackson [Sun, 26 Oct 2025 22:57:02 +0000 (22:57 +0000)]
changelog: Document the remaining changes for 1.2.3

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 months agoSet cargo package versions to 1.2.3
Ian Jackson [Sun, 26 Oct 2025 23:13:03 +0000 (23:13 +0000)]
Set cargo package versions to 1.2.3

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 months agodebian/control: Drop mention of nonexistent hippotat-doc package
Ian Jackson [Sun, 26 Oct 2025 22:58:27 +0000 (22:58 +0000)]
debian/control: Drop mention of nonexistent hippotat-doc package

The docs are in -common.

Closes: #1115401
Closes: #1115402
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 months agoRoutine cargo update
Ian Jackson [Sun, 26 Oct 2025 22:56:18 +0000 (22:56 +0000)]
Routine cargo update

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
8 months agoMerge branch 'changelog' into 'main'
Ian Jackson [Sun, 28 Sep 2025 11:06:22 +0000 (11:06 +0000)]
Merge branch 'changelog' into 'main'

Document changes in 1.2.3 (planned Debian-only release)

See merge request iwj/hippotat!55

8 months agoDocument changes in 1.2.3 (planned Debian-only release)
Ian Jackson [Sun, 28 Sep 2025 09:43:48 +0000 (10:43 +0100)]
Document changes in 1.2.3 (planned Debian-only release)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
8 months agoMerge branch 'nix-30-redux' into 'main'
Ian Jackson [Sun, 28 Sep 2025 10:29:27 +0000 (10:29 +0000)]
Merge branch 'nix-30-redux' into 'main'

Compatibility with nix 30, redux

See merge request iwj/hippotat!54

8 months agoAllow use of nix 30
Ian Jackson [Sun, 28 Sep 2025 09:43:11 +0000 (10:43 +0100)]
Allow use of nix 30

No change to lockfile (used by upstream-style build system) for now.

Closes: #1116421
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
8 months agoUse libc::dup2 and libc::read rather than nix versions
Ian Jackson [Sun, 28 Sep 2025 09:56:13 +0000 (10:56 +0100)]
Use libc::dup2 and libc::read rather than nix versions

nix is doing io-safety which is an incompatible change.  It's hard to
write code which works with both versions of nix because BorrowedFd is
in Rust 1.66 which is higher than our MSRV.

Partially based on code from Peter Green.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
8 months agoUse .into_raw_fd for null_fd for compatibility with nix 30
Ian Jackson [Sun, 28 Sep 2025 10:01:49 +0000 (11:01 +0100)]
Use .into_raw_fd for null_fd for compatibility with nix 30

In nix <=29, open returns RawFd for which .into_raw_fd is a no-op.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoMerge branch 'deftly' into 'main'
Ian Jackson [Thu, 20 Mar 2025 19:13:07 +0000 (19:13 +0000)]
Merge branch 'deftly' into 'main'

Switch to derive-deftly, and release 1.2.2

See merge request iwj/hippotat!52

15 months agoUpdate version to 1.2.2
Ian Jackson [Thu, 20 Mar 2025 00:04:23 +0000 (00:04 +0000)]
Update version to 1.2.2

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agomacros: Allow use of syn 2
Ian Jackson [Wed, 19 Mar 2025 19:41:26 +0000 (19:41 +0000)]
macros: Allow use of syn 2

Now there is almost nothing here, we don't need any code changes
between syn 1 and syn 2.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agomacros: Drop unneeded dependency on itertools
Ian Jackson [Wed, 19 Mar 2025 19:38:56 +0000 (19:38 +0000)]
macros: Drop unneeded dependency on itertools

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoconfig: Fix some misspellings
Ian Jackson [Wed, 19 Mar 2025 19:32:02 +0000 (19:32 +0000)]
config: Fix some misspellings

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoconfig: Remove manual entry for inspecting `link`
Ian Jackson [Wed, 19 Mar 2025 23:52:11 +0000 (23:52 +0000)]
config: Remove manual entry for inspecting `link`

InspectableConfigAuto handles this now, since
  config derive: Switch to derive-deftly

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoconfig derive: Improve docs
Ian Jackson [Wed, 19 Mar 2025 19:32:20 +0000 (19:32 +0000)]
config derive: Improve docs

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoconfig derive: Have special no longer take an argument
Ian Jackson [Wed, 19 Mar 2025 19:12:30 +0000 (19:12 +0000)]
config derive: Have special no longer take an argument

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoconfig derive: Improve and properly document InstanceConfigGlobal
Ian Jackson [Wed, 19 Mar 2025 18:59:52 +0000 (18:59 +0000)]
config derive: Improve and properly document InstanceConfigGlobal

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoconfig derive: Use a define
Ian Jackson [Wed, 19 Mar 2025 18:56:01 +0000 (18:56 +0000)]
config derive: Use a define

This abolishes the helper type.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoconfig derive: Switch to derive-deftly
Ian Jackson [Thu, 20 Mar 2025 00:20:43 +0000 (00:20 +0000)]
config derive: Switch to derive-deftly

Replace our bespoke proc_macro with a derive-deftly macro.

The macro is based on one written for derive-adhoc 0.0.1, so could do
with a bit of updating.

I've inspeccted the changes to the generated output with a semi-manual
diff.  The only significant changes were changes to
`impl InspectableConfigAuto for InstanceConfig`, as follows:

>    +                    "link" => &self.link,

This is case is handled by the manually-written
`impl InspectableConfig for InstanceConfig` so never reaches
the derived impl.  But it is identical.

>    +                    "max_batch_up" => &self.max_batch_up,

This seems to have been an omission in the previous code.
So the addition seems good.

>                         "max_clock_skew" => &self.max_clock_skew,
>    -                    "max_clock_skew" => &self.max_clock_skew,
>    -                    "ifname_server" => &self.ifname_server,
>                         "ifname_server" => &self.ifname_server,

This is the removal of two duplicates, which arose from the odd code
structure in the previous code, which does code gen for inspect_key
once per attribute, rather than once per field.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoRoutine cargo update (minimal)
Ian Jackson [Thu, 20 Mar 2025 00:20:34 +0000 (00:20 +0000)]
Routine cargo update (minimal)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoRoutine cargo update
Ian Jackson [Thu, 20 Mar 2025 00:20:22 +0000 (00:20 +0000)]
Routine cargo update

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
15 months agoMakefile: Force pipe-based jobserver
Ian Jackson [Wed, 19 Mar 2025 18:38:41 +0000 (18:38 +0000)]
Makefile: Force pipe-based jobserver

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
16 months agoMerge branch 'release' into 'main'
Ian Jackson [Wed, 5 Feb 2025 23:56:12 +0000 (23:56 +0000)]
Merge branch 'release' into 'main'

Release 1.2.1

See merge request iwj/hippotat!51

16 months agoRelease 1.2.1
Ian Jackson [Wed, 5 Feb 2025 22:04:22 +0000 (22:04 +0000)]
Release 1.2.1

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
16 months agoMerge branch 'fixes' into 'main'
Ian Jackson [Wed, 5 Feb 2025 20:23:44 +0000 (20:23 +0000)]
Merge branch 'fixes' into 'main'

Fix the autopkgtests in ci.debian.net

See merge request iwj/hippotat!49

16 months agoMerge branch 'update' into 'main'
Ian Jackson [Wed, 5 Feb 2025 19:20:02 +0000 (19:20 +0000)]
Merge branch 'update' into 'main'

Routine Cargo.lock update

See merge request iwj/hippotat!50

16 months agoautopkgtest: adt-initscript: use restart to start
Ian Jackson [Tue, 4 Feb 2025 17:28:24 +0000 (17:28 +0000)]
autopkgtest: adt-initscript: use restart to start

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
16 months agoautopkgtest: adt-initscript: require rsyslog init script
Ian Jackson [Mon, 3 Feb 2025 17:58:18 +0000 (17:58 +0000)]
autopkgtest: adt-initscript: require rsyslog init script

We run rsyslog, so we do need its init script (unless we're running
under systemd).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
16 months agoautopkgtest: adt-initscript: turn on set -x in the init script
Ian Jackson [Tue, 4 Feb 2025 15:01:00 +0000 (15:01 +0000)]
autopkgtest: adt-initscript: turn on set -x in the init script

Via /etc/default.  This may help debugging.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
16 months agoautopkgtest: adt-full: do not start a duplicate uservd
Ian Jackson [Wed, 5 Feb 2025 14:06:50 +0000 (14:06 +0000)]
autopkgtest: adt-full: do not start a duplicate uservd

This is already done as part of setup-pair by setup-host.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
16 months agoautopkgtest: adt-full: allow systemd-sysv as alt to init script
Ian Jackson [Mon, 3 Feb 2025 17:55:04 +0000 (17:55 +0000)]
autopkgtest: adt-full: allow systemd-sysv as alt to init script

orphan-sysvinit-scripts and systemd conflict.  The effect is that in
ci.debian.net this dep would want to change the init system.

What we actually need is rsyslog to be started, which is satisfied
with systemd-sysv since then systemd is the init system and rsyslog
has a systemd unit.  (I believe.)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>