pub struct NfpmConfig {Show 40 fields
pub id: Option<String>,
pub package_name: Option<String>,
pub formats: Vec<String>,
pub vendor: Option<String>,
pub homepage: Option<String>,
pub maintainer: Option<String>,
pub description: Option<String>,
pub license: Option<String>,
pub bindir: Option<String>,
pub contents: Option<Vec<NfpmContent>>,
pub dependencies: Option<HashMap<String, Vec<String>>>,
pub overrides: Option<HashMap<String, Value>>,
pub file_name_template: Option<String>,
pub scripts: Option<NfpmScripts>,
pub recommends: Option<Vec<String>>,
pub suggests: Option<Vec<String>>,
pub conflicts: Option<Vec<String>>,
pub replaces: Option<Vec<String>>,
pub provides: Option<Vec<String>>,
pub ids: Option<Vec<String>>,
pub goamd64: Option<Vec<String>>,
pub epoch: Option<String>,
pub release: Option<String>,
pub prerelease: Option<String>,
pub version_metadata: Option<String>,
pub section: Option<String>,
pub priority: Option<String>,
pub meta: Option<bool>,
pub umask: Option<StringOrU32>,
pub mtime: Option<String>,
pub rpm: Option<NfpmRpmConfig>,
pub deb: Option<NfpmDebConfig>,
pub apk: Option<NfpmApkConfig>,
pub archlinux: Option<NfpmArchlinuxConfig>,
pub ipk: Option<NfpmIpkConfig>,
pub libdirs: Option<NfpmLibdirs>,
pub changelog: Option<String>,
pub if_condition: Option<String>,
pub templated_contents: Option<Vec<NfpmContent>>,
pub templated_scripts: Option<NfpmScripts>,
}Fields§
§id: Option<String>Unique identifier for cross-referencing this nFPM config.
package_name: Option<String>Package name (defaults to crate name).
formats: Vec<String>Package formats to produce: deb, rpm, apk, archlinux (at least one required).
vendor: Option<String>Package vendor name.
homepage: Option<String>Project homepage URL.
maintainer: Option<String>Package maintainer in “Name
description: Option<String>Package description (multiline supported).
license: Option<String>SPDX license identifier (e.g., “MIT”, “Apache-2.0”).
bindir: Option<String>Installation directory for binaries (default: /usr/bin).
contents: Option<Vec<NfpmContent>>Files to include in the package beyond the main binary.
dependencies: Option<HashMap<String, Vec<String>>>Runtime package dependencies keyed by format (e.g., {“deb”: [“libc6”], “rpm”: [“glibc”]}).
overrides: Option<HashMap<String, Value>>Per-format setting overrides (e.g., {“deb”: {compression: “xz”}}).
file_name_template: Option<String>Package filename template (supports templates).
scripts: Option<NfpmScripts>Package lifecycle scripts (preinstall, postinstall, preremove, postremove).
recommends: Option<Vec<String>>Packages recommended (soft dependency) by this package.
suggests: Option<Vec<String>>Packages suggested (weaker than recommends) by this package.
conflicts: Option<Vec<String>>Packages this package conflicts with.
replaces: Option<Vec<String>>Packages this package replaces (for upgrade paths from old package names).
provides: Option<Vec<String>>Virtual packages provided by this package.
ids: Option<Vec<String>>Build IDs filter: only include artifacts from builds whose id is in this list.
goamd64: Option<Vec<String>>amd64 microarchitecture variant filter (["v1"], ["v2", "v3"], etc.).
When set, only amd64 binaries with amd64_variant matching one of the
listed values are included. Mirrors GoReleaser nfpm’s
goamd64: []string (pkg/config/config.go:711, nfpm.go:147).
When unset, all amd64 variants are included (no filtering).
epoch: Option<String>Package epoch for versioning (integer as string).
release: Option<String>Package release number.
prerelease: Option<String>Prerelease version suffix.
version_metadata: Option<String>Version metadata (e.g. git commit hash).
section: Option<String>Package section (e.g. “utils”, “devel”).
priority: Option<String>Package priority (e.g. “optional”, “required”).
meta: Option<bool>Whether this is a meta-package (no files, only dependencies).
umask: Option<StringOrU32>File permission umask. Accepts a YAML int (18), an octal-prefixed
string ("0o022"), or a leading-zero octal string ("022").
mtime: Option<String>Default modification time for files in the package.
rpm: Option<NfpmRpmConfig>RPM-specific configuration.
deb: Option<NfpmDebConfig>Deb-specific configuration.
apk: Option<NfpmApkConfig>APK-specific configuration.
archlinux: Option<NfpmArchlinuxConfig>Archlinux-specific configuration.
ipk: Option<NfpmIpkConfig>IPK-specific configuration (OpenWrt packages).
libdirs: Option<NfpmLibdirs>CGo library installation directories (header, carchive, cshared).
changelog: Option<String>Path to a YAML-format changelog file for deb/rpm packages.
if_condition: Option<String>Template-conditional: skip this nfpm config if rendered result is “false” or empty. (GoReleaser Pro v2.4+.)
templated_contents: Option<Vec<NfpmContent>>Extra file contents whose source files are Tera-rendered before packaging (GoReleaser Pro).
Each entry mirrors contents; the difference is that at stage time the file at src is
read, rendered through the template engine, written to a temp file, and then included
in the package at dst using the temp file as the real source. Useful for shipping
config files with templated values (version, commit, maintainer, etc.).
templated_scripts: Option<NfpmScripts>Lifecycle scripts whose script-file bodies are Tera-rendered before packaging
(GoReleaser Pro). Each path is read, rendered through the template engine, written to
a temp file, and used as the real script. If a field is set on both scripts and
templated_scripts, the templated version wins.
Trait Implementations§
Source§impl Clone for NfpmConfig
impl Clone for NfpmConfig
Source§fn clone(&self) -> NfpmConfig
fn clone(&self) -> NfpmConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for NfpmConfig
impl Debug for NfpmConfig
Source§impl Default for NfpmConfig
impl Default for NfpmConfig
Source§fn default() -> NfpmConfig
fn default() -> NfpmConfig
Source§impl<'de> Deserialize<'de> for NfpmConfigwhere
NfpmConfig: Default,
impl<'de> Deserialize<'de> for NfpmConfigwhere
NfpmConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for NfpmConfig
impl JsonSchema for NfpmConfig
Source§fn schema_name() -> String
fn schema_name() -> String
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
$ref keyword. Read more