WIP: feat(config): allow using a unix socket #818

Draft
jalil wants to merge 1 commit from jalil/allow-unix-sockets into main
Owner

This should be slightly more secure? I hope.

This should be slightly more secure? I hope.
jalil self-assigned this 2026-05-21 20:25:24 +02:00
feat(config): allow using a unix socket
All checks were successful
/ build (pull_request) Successful in 31s
/ checks (x86_64-linux, deny) (pull_request) Successful in 3s
/ checks (x86_64-linux, clippy) (pull_request) Successful in 17s
/ checks (x86_64-linux, module-ipv4-test) (pull_request) Successful in 36s
/ checks (x86_64-linux, module-ipv4-only-test) (pull_request) Successful in 51s
/ checks (x86_64-linux, module-ipv6-only-test) (pull_request) Successful in 50s
/ checks (x86_64-linux, module-ipv6-test) (pull_request) Successful in 34s
/ checks (x86_64-linux, treefmt) (pull_request) Successful in 3s
/ report-size (pull_request) Successful in 18s
/ checks (x86_64-linux, module-nginx-test) (pull_request) Successful in 50s
/ checks (x86_64-linux, nextest) (pull_request) Successful in 52s
/ trigger-release (pull_request) Successful in 38s
e331399f9e
This should be slightly more secure? I hope.

Signed-off-by: Jalil David Salamé Messina <jalil.salame@gmail.com>
jalil changed title from feat(config): allow using a unix socket to WIP: feat(config): allow using a unix socket 2026-05-21 20:25:35 +02:00

Flake output sizes

Definitions
  • Name: the name of the package/configuration.
  • Size: the closure size (size on disk/NAR size + all transitive dependencies).
  • NAR Size: the size of the build output (package without the dependencies).
  • [NAR] Size Change: the amount changed compared to the main branch.
Tips on reading this data
  • For NixOS/Home-Manager configurations you generally care only about the Size (closure size/size on disk).
    • Reduce the Size by disabling unneeded services/default packages.
  • For Packages you care about both the Size and the NAR Size.
    • Reduce the NAR Size by reducing the size of the build outputs, e.g. don't copy unnecessary data to the $out dir, optimize binaries for size, etc.
    • Reduce the Size by reducing the dependencies (e.g. buildInputs).
    • Don't worry too much about size, some dependencies are deduplicated, e.g. glibc adds ~40MiB to the Size, but is generally shared by ~every binary on the system, so, chances are, you are already including it from somewhere else and statically linking with e.g. musl is not gonna improve things.

Packages

Name Size Size Change NAR Size NAR Size Change
default 49MiB 49MiB 2.1MiB 2.1MiB
release-script 416MiB 416MiB 752B 752B
webnsupdate 49MiB 37KiB 2.1MiB 37KiB
<!-- AUTOGENERATED by nix-flake-outputs-size action --> ## Flake output sizes <details><summary><b>Definitions</b></summary> - `Name`: the name of the package/configuration. - `Size`: the closure size (size on disk/NAR size + all transitive dependencies). - `NAR Size`: the size of the build output (package without the dependencies). - `[NAR] Size Change`: the amount changed compared to the main branch. </details> <details><summary><b>Tips on reading this data</b></summary> - For NixOS/Home-Manager configurations you generally care only about the `Size` (closure size/size on disk). - Reduce the `Size` by disabling unneeded services/default packages. - For Packages you care about both the `Size` and the `NAR Size`. - Reduce the `NAR Size` by reducing the size of the build outputs, e.g. don't copy unnecessary data to the $out dir, optimize binaries for size, etc. - Reduce the `Size` by reducing the dependencies (e.g. `buildInputs`). - Don't worry too much about size, some dependencies are deduplicated, e.g. `glibc` adds ~40MiB to the `Size`, but is generally shared by ~every binary on the system, so, chances are, you are already including it from somewhere else and statically linking with e.g. `musl` is not gonna improve things. </details> ## Packages | Name | Size | Size Change | NAR Size | NAR Size Change | |------|-----:|------------:|---------:|----------------:| | `default` | 49MiB | 49MiB | 2.1MiB | 2.1MiB | | `release-script` | 416MiB | 416MiB | 752B | 752B | | `webnsupdate` | 49MiB | 37KiB | 2.1MiB | 37KiB |
All checks were successful
/ build (pull_request) Successful in 31s
Required
Details
/ checks (x86_64-linux, deny) (pull_request) Successful in 3s
Required
Details
/ checks (x86_64-linux, clippy) (pull_request) Successful in 17s
Required
Details
/ checks (x86_64-linux, module-ipv4-test) (pull_request) Successful in 36s
Required
Details
/ checks (x86_64-linux, module-ipv4-only-test) (pull_request) Successful in 51s
Required
Details
/ checks (x86_64-linux, module-ipv6-only-test) (pull_request) Successful in 50s
Required
Details
/ checks (x86_64-linux, module-ipv6-test) (pull_request) Successful in 34s
Required
Details
/ checks (x86_64-linux, treefmt) (pull_request) Successful in 3s
Required
Details
/ report-size (pull_request) Successful in 18s
Required
Details
/ checks (x86_64-linux, module-nginx-test) (pull_request) Successful in 50s
Required
Details
/ checks (x86_64-linux, nextest) (pull_request) Successful in 52s
Required
Details
/ trigger-release (pull_request) Successful in 38s
Required
Details
This pull request is marked as a work in progress.
This branch is out-of-date with the base branch
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin jalil/allow-unix-sockets:jalil/allow-unix-sockets
git switch jalil/allow-unix-sockets
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
jalil/webnsupdate!818
No description provided.