Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .azldev-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0256227f5434d9e00d7c8501b16848efa400a72b
830e6fed79750f8e24ae17cd630248f50c90c8a9
18 changes: 0 additions & 18 deletions base/comps/anaconda-webui/anaconda-webui.comp.toml
Original file line number Diff line number Diff line change
@@ -1,19 +1 @@
[components.anaconda-webui]

# The upstream Fedora spec requires fedora-logos (gated behind %if 0%{?fedora}).
# AZL uses generic-logos for branding; fedora-logos is not shipped and breaks
# repoclosure. Replace with system-logos, the distro-neutral virtual provide.
# Ref: https://github.com/microsoft/azurelinux/pull/16413 removed fedora-logos
# from the component list; this patches the consumer side.

[[components.anaconda-webui.overlays]]
description = "Remove Requires: fedora-logos (Fedora-specific)"
type = "spec-remove-tag"
tag = "Requires"
value = "fedora-logos"

[[components.anaconda-webui.overlays]]
description = "Add Requires: system-logos (distro-neutral virtual provide)"
type = "spec-add-tag"
tag = "Requires"
value = "system-logos"
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# The upstream Fedora spec requires fedora-logos (gated behind %if 0%{?fedora}).
# AZL uses generic-logos for branding; fedora-logos is not shipped and breaks
# repoclosure. Replace with system-logos, the distro-neutral virtual provide.
# Ref: https://github.com/microsoft/azurelinux/pull/16413 removed fedora-logos
# from the component list; this patches the consumer side.

[metadata]
category = "azl-branding-policy"
upstream-status = "upstreamed"
commits = [{ url = "https://src.fedoraproject.org/rpms/anaconda-webui/c/d4ef9345b8787c46f9280b2239c07b23af83f0aa?branch=f44" }]

[[overlays]]
description = "Remove Requires: fedora-logos (Fedora-specific)"
type = "spec-remove-tag"
tag = "Requires"
value = "fedora-logos"

[[overlays]]
description = "Add Requires: system-logos (distro-neutral virtual provide)"
type = "spec-add-tag"
tag = "Requires"
value = "system-logos"
Original file line number Diff line number Diff line change
@@ -1,58 +1,2 @@
[components.azurelinux-rpm-config]
spec = { type = "upstream", upstream-name = "redhat-rpm-config" }
overlays = [
#
# Overlays for spec.
#

# Set the component's name.
{ type = "spec-set-tag", tag = "Name", value = "azurelinux-rpm-config" },
# Set this distro's URL.
{ type = "spec-set-tag", tag = "URL", value = "https://aka.ms/azurelinux" },
# Set our version.
{ type = "spec-update-tag", tag = "Version", value = "1004" },

# WORKAROUND: manually bump the Release value for Stage2 bring-up.
{ type = "spec-update-tag", tag = "Release", value = "2%{?dist}" },

# Provide compatibility with Fedora's upstream version.
{ type = "spec-add-tag", tag = "Provides", value = "redhat-rpm-config = %{version}-%{release}" },
# Make sure this package takes precedence over (and would replace) any Fedora variant.
# Note that Fedora's version of redhat-rpm-config has a version equal to 300 + the release number
# (e.g., 343 for Fedora 43).
{ type = "spec-add-tag", tag = "Obsoletes", value = "redhat-rpm-config < 1000" },
{ type = "spec-add-tag", tag = "Conflicts", value = "redhat-rpm-config < 1000" },

# Create symlink for our own name: /usr/lib/rpm/azurelinux -> /usr/lib/rpm/redhat
# Note that we don't do the reverse to avoid conflicts with upstream Fedora
# redhat-rpm-config during bootstrapping (replacing a dir with a symlink is
# problematic in RPM land).
# TODO: remove symlinks after bootstrap
{ type = "spec-prepend-lines", section = "%install", lines = ["mkdir -p %{buildroot}/usr/lib/rpm", "ln -sf redhat %{buildroot}/usr/lib/rpm/azurelinux"] },
{ type = "spec-prepend-lines", section = "%files", lines = ["/usr/lib/rpm/azurelinux"] },

# Create symlink for lua dir: /usr/lib/rpm/lua/azurelinux -> /usr/lib/rpm/lua/fedora
# This allows the distro-specific name to be used with minimal required churn to
# spread references to the standard path in Fedora.
{ type = "spec-append-lines", section = "%install", lines = ["ln -sf fedora %{buildroot}%{_rpmluadir}/azurelinux"] },
{ type = "spec-append-lines", section = "%files", lines = ["%{_rpmluadir}/azurelinux"] },

#
# Overlays for non-spec files.
#

# Update all references to the Fedora version of this package to the Azure Linux one.
{ type = "file-search-replace", file = "**/*", regex = "redhat-rpm-config", replacement = "azurelinux-rpm-config" },

# Update vendor macro.
{ type = "file-search-replace", file = "macros", regex = "%_vendor.*", replacement = "%_vendor azurelinux" },

# Remove dist.sh file; we'll replace it wholesale with our own version.
{ type = "file-remove", file = "dist.sh" },
# Add our own version of dist.sh customized for Azure Linux.
{ type = "file-add", file = "dist.sh", source = "dist.sh" },

# Targeted adjustments in some macros files.
{ type = "file-search-replace", file = "macros.fedora-misc-srpm", regex = "/lib/swidtag/fedoraproject.org", replacement = "/lib/swidtag/microsoft.com" },
{ type = "file-search-replace", file = "macros.fedora-misc-srpm", regex = "[Ff]edora", replacement = "azurelinux" },
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
#
# Overlays for spec.
#

# Set the component's name.

[metadata]
category = "azl-branding-policy"
upstream-status = "inapplicable"

[[overlays]]
type = "spec-set-tag"
tag = "Name"
value = "azurelinux-rpm-config"

# Set this distro's URL.
[[overlays]]
type = "spec-set-tag"
tag = "URL"
value = "https://aka.ms/azurelinux"

# Set our version.
[[overlays]]
type = "spec-update-tag"
tag = "Version"
value = "1004"

# WORKAROUND: manually bump the Release value for Stage2 bring-up.
[[overlays]]
type = "spec-update-tag"
tag = "Release"
value = "2%{?dist}"

# Provide compatibility with Fedora's upstream version.
[[overlays]]
type = "spec-add-tag"
tag = "Provides"
value = "redhat-rpm-config = %{version}-%{release}"

# Make sure this package takes precedence over (and would replace) any Fedora variant.
# Note that Fedora's version of redhat-rpm-config has a version equal to 300 + the release number
# (e.g., 343 for Fedora 43).
[[overlays]]
type = "spec-add-tag"
tag = "Obsoletes"
value = "redhat-rpm-config < 1000"

[[overlays]]
type = "spec-add-tag"
tag = "Conflicts"
value = "redhat-rpm-config < 1000"

# Create symlink for our own name: /usr/lib/rpm/azurelinux -> /usr/lib/rpm/redhat
# Note that we don't do the reverse to avoid conflicts with upstream Fedora
# redhat-rpm-config during bootstrapping (replacing a dir with a symlink is
# problematic in RPM land).
# TODO: remove symlinks after bootstrap
[[overlays]]
type = "spec-prepend-lines"
section = "%install"
lines = ["mkdir -p %{buildroot}/usr/lib/rpm", "ln -sf redhat %{buildroot}/usr/lib/rpm/azurelinux"]

[[overlays]]
type = "spec-prepend-lines"
section = "%files"
lines = ["/usr/lib/rpm/azurelinux"]

# Create symlink for lua dir: /usr/lib/rpm/lua/azurelinux -> /usr/lib/rpm/lua/fedora
# This allows the distro-specific name to be used with minimal required churn to
# spread references to the standard path in Fedora.
[[overlays]]
type = "spec-append-lines"
section = "%install"
lines = ["ln -sf fedora %{buildroot}%{_rpmluadir}/azurelinux"]

[[overlays]]
type = "spec-append-lines"
section = "%files"
lines = ["%{_rpmluadir}/azurelinux"]

#
# Overlays for non-spec files.
#

# Update all references to the Fedora version of this package to the Azure Linux one.
[[overlays]]
type = "file-search-replace"
file = "**/*"
regex = "redhat-rpm-config"
replacement = "azurelinux-rpm-config"

# Update vendor macro.
[[overlays]]
type = "file-search-replace"
file = "macros"
regex = "%_vendor.*"
replacement = "%_vendor azurelinux"

# Remove dist.sh file; we'll replace it wholesale with our own version.
[[overlays]]
type = "file-remove"
file = "dist.sh"

# Add our own version of dist.sh customized for Azure Linux.
[[overlays]]
type = "file-add"
file = "dist.sh"
source = "../dist.sh"

# Targeted adjustments in some macros files.
[[overlays]]
type = "file-search-replace"
file = "macros.fedora-misc-srpm"
regex = "/lib/swidtag/fedoraproject.org"
replacement = "/lib/swidtag/microsoft.com"

[[overlays]]
type = "file-search-replace"
file = "macros.fedora-misc-srpm"
regex = "[Ff]edora"
replacement = "azurelinux"
17 changes: 0 additions & 17 deletions base/comps/chrony/chrony.comp.toml
Original file line number Diff line number Diff line change
@@ -1,19 +1,2 @@
[components.chrony]

[[components.chrony.overlays]]
description = "Enable use of confdir at /etc/chrony.d"
type = "spec-search-replace"
regex = "^touch -r examples/chrony.conf.example2 chrony.conf"
replacement = "echo -e '\\n# Use confdir\\nconfdir /etc/chrony.d' >> chrony.conf\n\ntouch -r examples/chrony.conf.example2 chrony.conf"

[[components.chrony.overlays]]
description = "Create /etc/chrony.d dir"
type = "spec-search-replace"
regex = '\$RPM_BUILD_ROOT%\{_sysconfdir\}/\{sysconfig,logrotate.d\}'
replacement = '$RPM_BUILD_ROOT%{_sysconfdir}/{sysconfig,logrotate.d,chrony.d}'

[[components.chrony.overlays]]
description = "Add /etc/chrony.d dir to package"
type = "spec-append-lines"
section = "%files"
lines = ["%dir %{_sysconfdir}/chrony.d"]
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
[metadata]
category = "azl-compatibility"
upstream-status = "inapplicable"

[[overlays]]
description = "Enable use of confdir at /etc/chrony.d"
type = "spec-search-replace"
regex = "^touch -r examples/chrony.conf.example2 chrony.conf"
replacement = "echo -e '\\n# Use confdir\\nconfdir /etc/chrony.d' >> chrony.conf\n\ntouch -r examples/chrony.conf.example2 chrony.conf"

[[overlays]]
description = "Create /etc/chrony.d dir"
type = "spec-search-replace"
regex = "\\$RPM_BUILD_ROOT%\\{_sysconfdir\\}/\\{sysconfig,logrotate.d\\}"
replacement = "$RPM_BUILD_ROOT%{_sysconfdir}/{sysconfig,logrotate.d,chrony.d}"

[[overlays]]
description = "Add /etc/chrony.d dir to package"
type = "spec-append-lines"
section = "%files"
lines = ["%dir %{_sysconfdir}/chrony.d"]
10 changes: 10 additions & 0 deletions base/comps/components.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
includes = ["**/*.comp.toml", "component-check-disablement.toml", "component-mingw-disablement.toml", "components-publish-channels.toml"]

# Project-wide default: every component automatically discovers per-file overlay
# documents under its own `overlays/` directory. The glob is resolved relative
# to each concrete component's config file, so components without an `overlays/`
# directory simply match nothing (non-matching globs are ignored). This lets
# components keep their overlays as one-logical-change-per-file `*.overlay.toml`
# documents without repeating `overlay-files` in every comp.toml.
# See https://github.com/microsoft/azure-linux-dev-tools/blob/main/docs/user/reference/config/overlays.md#per-file-overlay-format
[default-component-config]
overlay-files = ["overlays/*.overlay.toml"]

#
# Components imported from Fedora with no per-component modifications.
# Please keep this list sorted alphabetically for readability.
Expand Down
9 changes: 0 additions & 9 deletions base/comps/firewalld/firewalld.comp.toml
Original file line number Diff line number Diff line change
@@ -1,11 +1,2 @@
[components.firewalld]

[[components.firewalld.overlays]]
type = "spec-remove-tag"
description = "Remove Fedora patch that opens mdns port in public (default) zone"
tag = "Patch0"

[[components.firewalld.overlays]]
type = "file-remove"
description = "Remove Fedora patch that opens mdns port in public (default) zone"
file = "fedora-only-MDNS-default.patch"
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[metadata]
category = "azl-security-compliance"
upstream-status = "inapplicable"

[[overlays]]
type = "spec-remove-tag"
description = "Remove Fedora patch that opens mdns port in public (default) zone"
tag = "Patch0"

[[overlays]]
type = "file-remove"
description = "Remove Fedora patch that opens mdns port in public (default) zone"
file = "fedora-only-MDNS-default.patch"
7 changes: 0 additions & 7 deletions base/comps/gd/gd.comp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,3 @@ release = { calculation = "manual" }
# AZL does not ship libavif — disable avif support.
# The avif bcond defaults ON via %bcond_without on Fedora.
build.without = ["avif"]

# Bump release for avif removal rebuild.
[[components.gd.overlays]]
description = "Bump release for avif removal rebuild"
type = "spec-set-tag"
tag = "Release"
value = "20%{?prever}%{?short}%{?dist}"
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Bump release for avif removal rebuild.

[metadata]
category = "azl-release-management"
upstream-status = "inapplicable"

[[overlays]]
description = "Bump release for avif removal rebuild"
type = "spec-set-tag"
tag = "Release"
value = "20%{?prever}%{?short}%{?dist}"
5 changes: 0 additions & 5 deletions base/comps/java-25-openjdk/java-25-openjdk.comp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,3 @@ build.without = ["slowdebug"]
# new AZL-only changes on top of the pinned upstream commit.
azl_release = "2"

[[components.java-25-openjdk.overlays]]
description = "Add azl_release to upstream %{rpmrelease} so we can bump release independently of upstream while keeping a single-number Fedora-style Release schema"
type = "spec-search-replace"
regex = '^Release:\s+%\{\?eaprefix\}%\{rpmrelease\}%\{\?extraver\}%\{\?dist\}$'
replacement = 'Release: %{?eaprefix}%[%{rpmrelease} + %{azl_release}]%{?extraver}%{?dist}'
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[metadata]
category = "azl-release-management"
upstream-status = "inapplicable"

[[overlays]]
description = "Add azl_release to upstream %{rpmrelease} so we can bump release independently of upstream while keeping a single-number Fedora-style Release schema"
type = "spec-search-replace"
regex = "^Release:\\s+%\\{\\?eaprefix\\}%\\{rpmrelease\\}%\\{\\?extraver\\}%\\{\\?dist\\}$"
replacement = "Release: %{?eaprefix}%[%{rpmrelease} + %{azl_release}]%{?extraver}%{?dist}"
Loading
Loading