Commit Graph
970130 Commits
Author SHA1 Message Date
Philip Taron 7494e88f86 nixosTests: share IMDSv2 server across EC2 test infrastructure
- Extract imds-server derivation into common/imds-server.nix so both
  ec2-image.nix and common/ec2.nix share the same definition.

- Update common/ec2.nix (makeEc2Test) to use the IMDSv2 server
  instead of micro_httpd, and add token/instance-id to the metadata
  directory so the full IMDSv2 flow works.

- Simplify ec2-image.nix to import from the shared definition.
2026-03-24 15:38:21 -07:00
Philip Taron b1444cab3c nixos/virtualisation/ec2: fix preflight validation and variable scoping
- Preflight validation now validates against the endpoint that issued
  the token (IMDS_BASE_URL) instead of re-scanning all endpoints. The
  previous behavior could silently switch to a different endpoint and
  wasted time retrying unreachable ones.

- Add local keyword to endpoint variables in get_imds_token and
  preflight_imds_token to avoid polluting global scope.
2026-03-24 15:38:20 -07:00
Philip Taron c66b3b2d55 nixosTests.ec2-image: replace micro_httpd with IMDSv2-aware server
micro_httpd returns 501 for PUT requests, so IMDSv2 token acquisition
was never actually tested. Replace it with a minimal Python IMDS server
that handles the full IMDSv2 flow: PUT for token, token validation on
GET requests, and file serving from a metadata directory.

This means the test now validates that:
- The fetcher correctly obtains an IMDSv2 token via PUT
- The token is passed on subsequent metadata GET requests
- Requests without a valid token are rejected (401)
2026-03-24 15:38:20 -07:00
Philip Taron 81dce7843c nixosTests.ec2-image: add IPv6 IMDS fallback subtest
Tests that the EC2 metadata fetcher falls back to the IPv6 IMDS
endpoint (fd00:ec2::254) when the IPv4 endpoint is unreachable.

Works around QEMU guestfwd being IPv4-only by running socat +
micro_httpd inside the guest on the IPv6 address, then blocking
IPv4 IMDS with iptables and re-running the fetcher.
2026-03-24 15:38:20 -07:00
Jared DunbarandPhilip Taron 2ef00e2d52 nixos/virtualization/ec2: Adds IPv6 IMDS fetch capability
Updates the EC2 IMDS metadata fetcher script to support IPv6 endpoints. If you start an instance in an IPv6 subnet, if the EC2 instance gets an IPv6 address before the IPv4 address (extremely common), systemd will trigger the IMDS fetcher script and fail to fetch your NixOS configuration, leaving you with a useless unconfigured EC2 instance. This at least allows the NixOS configuration to be fetched and applied.
2026-03-24 15:37:36 -07:00
Philip TaronandGitHub 3f7666150e dependabot-cli: 1.82.0 -> 1.84.0 (#503071) 2026-03-24 22:34:43 +00:00
Yohann BonifaceandGitHub 4a7a4e20bf bibtool: fix build with GCC >= 14 (#503132) 2026-03-24 22:32:27 +00:00
Sergei Trofimovich 8d2afe7137 gspell: 1.14.2 -> 1.14.3
Changes: https://gitlab.gnome.org/GNOME/gspell/-/blob/1.14.3/NEWS?ref_type=tags
2026-03-24 22:27:56 +00:00
R. Ryantm 9ba90f18dc sish: 2.21.1 -> 2.22.1 2026-03-24 22:19:08 +00:00
isabelandGitHub 22c2bff7e7 go-toml: 2.2.4 -> 2.3.0 (#503146) 2026-03-24 22:16:15 +00:00
Anton Mosich f5f373074c python3Packages.sphinxcontrib-newsfeed: drop
The package has last been touched upstream in 2020, and it's not
compatible with sphinx 9.1. It is no longer consumed in nixpkgs by
anything, allowing it to be dropped.
2026-03-24 23:09:44 +01:00
Anton Mosich 7d0d42afb8 khal: 0.13.0 -> 0.14.0
Changelog: https://khal.readthedocs.io/en/v0.14.0/changelog.html#id2
2026-03-24 23:09:41 +01:00
Philip TaronandGitHub a585aaaaad nixos/ec2-metadata-fetcher: decompress EC2 user data if compressed (#290346) 2026-03-24 22:08:08 +00:00
Matteo PaciniandGitHub 8bc295fb25 all-the-package-names: 2.0.2387 -> 2.0.2395 (#503156) 2026-03-24 22:03:27 +00:00
Ameer Taweel 4a1cb93b5f nixos/apparmor: fix short path literals 2026-03-25 00:02:44 +02:00
nixpkgs-ci[bot]andGitHub 142b0ca77c vicinae: 0.20.7 -> 0.20.8 (#503123) 2026-03-24 22:02:37 +00:00
dotlambdaandGitHub 7e58fa6e9d libdeltachat: 2.46.0 -> 2.47.0 (#502932) 2026-03-24 22:01:49 +00:00
dotlambdaandGitHub 0908d8751c python3Packages.coverage: 7.13.4 -> 7.13.5 (#502352) 2026-03-24 22:00:49 +00:00
dotlambdaandGitHub ec98b284f3 python3Packages.approvaltests: 17.2.1 -> 17.4.0 (#502845) 2026-03-24 22:00:14 +00:00
R. Ryantm 102cc67f7d python3Packages.pycrdt: 0.12.49 -> 0.12.50 2026-03-24 21:56:02 +00:00
Philip Taron d09e847072 nixos/ec2-metadata-fetcher: add lzip user-data decompression
Support decompressing lzip-compressed EC2 user data via lzip -dc.
Includes a corresponding NixOS test.
2026-03-24 14:51:59 -07:00
Philip Taron f3b392af9b nixos/ec2-metadata-fetcher: add zstd user-data decompression
Support decompressing Zstandard-compressed EC2 user data via zstdcat.
Includes a corresponding NixOS test.
2026-03-24 14:51:59 -07:00
Philip Taron e3789300b1 nixos/ec2-metadata-fetcher: add xz user-data decompression
Support decompressing XZ-compressed EC2 user data via xzcat.
Includes a corresponding NixOS test.
2026-03-24 14:51:59 -07:00
Philip Taron 45d8ed8f4e nixos/ec2-metadata-fetcher: add bzip2 user-data decompression
Refactor try_decompress to use a decompress_cmd variable, making it
straightforward to add new compression formats. Add bzip2 support
and a corresponding NixOS test.
2026-03-24 14:51:58 -07:00
Philip Taron ea11e1de45 nixos/ec2-image: add test for gzip user-data decompression
Verify that fetch-ec2-metadata correctly decompresses gzip-compressed
EC2 user data. Adds a test helper for reuse by subsequent compression
format tests.
2026-03-24 14:51:58 -07:00
Philip Taron cb4dcba409 nixos/ec2-metadata-fetcher: harden try_decompress
- Declare `ftype` as local to avoid leaking into caller scope
- Skip decompression attempt on empty files
- Clean up temp file on decompression failure
2026-03-24 14:51:57 -07:00
Johnny WalkerandPhilip Taron 80a4ce9ab8 nixos/ec2-metadata-fetcher: decompress gzip-compressed user data
Closes https://github.com/NixOS/nixpkgs/issues/290336
2026-03-24 14:51:56 -07:00
Anton Mosich 7188cd2a6b python3Packages.sphinxfeed-lsaffre: init at 0.3.6
This is a new dependency of khal. The package was almost completely
generated via `nix-init`.
2026-03-24 22:46:58 +01:00
Antoine du HamelandGitHub 068c188410 nodejs_20: 20.20.1 -> 20.20.2 (#503151) 2026-03-24 21:46:00 +00:00
Adam C. StephensandGitHub a24d55b784 beam26Packages.hex: 2.4.0 -> 2.4.1 (#503162) 2026-03-24 21:44:37 +00:00
Antoine du HamelandGitHub 3e8d13490b nodejs_22: 22.22.1 -> 22.22.2 (#503152) 2026-03-24 21:41:34 +00:00
R. Ryantm e0deeed4a9 typesetter: 0.11.4 -> 0.12.1 2026-03-24 21:36:21 +00:00
Antoine du HamelandGitHub a867e4c950 nodejs_25: 25.8.1 -> 25.8.2 (#503154) 2026-03-24 21:35:07 +00:00
Michael DanielsandGitHub 35c1f13b27 google-chrome: 146.0.7680.153 -> 146.0.7680.164 (#502819) 2026-03-24 21:29:52 +00:00
Michael DanielsandGitHub 92300e47ee pidginPackages.purple-lurch: fix build (#502876) 2026-03-24 21:29:38 +00:00
Michael Daniels 5c8055a8e1 google-chrome: 146.0.7680.153 -> 146.0.7680.164
Changelog: https://chromereleases.googleblog.com/2026/03/stable-channel-update-for-desktop_23.html
2026-03-24 17:26:24 -04:00
nixpkgs-ci[bot]andGitHub a2a1bad9ac copilot-language-server: 1.453.0 -> 1.457.1 (#503049) 2026-03-24 21:23:31 +00:00
Nick Cao 5a0b389e48 matrix-authentication-service: 1.13.0 -> 1.14.0
Diff: https://github.com/element-hq/matrix-authentication-service/compare/v1.13.0...v1.14.0

Changelog: https://github.com/element-hq/matrix-authentication-service/releases/tag/v1.14.0
2026-03-24 17:17:51 -04:00
Nick CaoandGitHub 46db2e09e1 helmfile: 1.4.2 -> 1.4.3 (#503120) 2026-03-24 21:09:33 +00:00
Nick CaoandGitHub 3aa415003f cloudgoat: 2.4.0 -> 2.5.0 (#503102) 2026-03-24 21:08:33 +00:00
Florian KlinkandGitHub cb08fcf47d python3Packages.pytest-check: 2.7.6 -> 2.8.0 (#503145) 2026-03-24 21:08:33 +00:00
Nick CaoandGitHub dcbc32e47b gqlgen: 0.17.88 -> 0.17.89 (#503141) 2026-03-24 21:03:59 +00:00
Nick CaoandGitHub af69c963e1 vscode-extensions.esbenp.prettier-vscode: 12.3.0 -> 12.4.0 (#502977) 2026-03-24 21:03:49 +00:00
Nick CaoandGitHub 962cc110a7 perfect_dark: 0-unstable-2026-03-14 -> 0-unstable-2026-03-23 (#502946) 2026-03-24 21:02:02 +00:00
R. Ryantm fdf8631206 aocl-utils: 5.2 -> 5.2.2 2026-03-24 21:01:14 +00:00
Nick CaoandGitHub 23535fa550 tempo: 2.10.2 -> 2.10.3 (#502941) 2026-03-24 21:00:43 +00:00
Nick CaoandGitHub ffc3cb113d tflint-plugins.tflint-ruleset-aws: 0.45.0 -> 0.46.0 (#502937) 2026-03-24 20:59:48 +00:00
Nick CaoandGitHub bd9b9d4a41 langgraph-cli: 0.4.18 -> 0.4.19 (#502936) 2026-03-24 20:59:25 +00:00
R. Ryantm 2fdd825e8e beam26Packages.hex: 2.4.0 -> 2.4.1 2026-03-24 20:58:27 +00:00
Nick CaoandGitHub b401f8dddb uutils-procps: 0.0.1-unstable-2026-03-13 -> 0.0.1-unstable-2026-03-24 (#502998) 2026-03-24 20:56:58 +00:00