Skip to content

a zig build mode intended to be used when packaging an application or library for a system distribution #14281

@andrewrk

Description

@andrewrk

This proposal is accepted; please see these comments for the criteria for closing the issue:


Extracted from #14265.

The use case is as follows:

Someone wants to take an upstream application, and package it for a Linux distribution, or another kind of distribution such as Homebrew or Nix.

The application knows exactly what versions of each dependency it wants to build against, but distributions only provide a limited set of versions. Furthermore, the system distribution wants to be in charge of providing all dependencies, building the application from source without access to any files outside of those provided by the system itself, via its own dependency management system.

For this use case, instead of fetching dependencies from the URLs provided by zig build.zig.zon files, instead there should be some kind of override that makes the dependencies fetched from the system package manager.

Related: Stay Together For The Kids: Why System Package Managers and Language Package Managers Struggle to Cooperate

Metadata

Metadata

Assignees

No one assigned

    Labels

    acceptedThis proposal is planned.enhancementSolving this issue will likely involve adding new logic or components to the codebase.proposalThis issue suggests modifications. If it also has the "accepted" label then it is planned.zig build systemstd.Build, the build runner, `zig build` subcommand, package management

    Type

    No type

    Projects

    Status

    Uncategorized

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions