Skip to content

testing/dotnet6: new aport

Antoine Martin requested to merge ayakael/aports:testing/dotnet6 into master

Description

New aport for dotnet6 and dotnet6-stage0 (to build dotnet6) from source using (at first) Microsoft bootstraps, with capacity to then build using Alpine bootstraps.

A parallel thread exists on Microsoft's side here:

Accompanies merge requests: dotnet31, dotnet5

dotnet6-stage0

# Description
APKBUILD for dotnet6-stage0, prebuilt bits sourced from Microsoft

# Generated packages
* dotnet6-stage0
* dotnet6-stage0-artifacts 

# How to build dotnet6 stack
* Build testing/dotnet6-stage0 (provides prebuilt bits for first bootstrap bld)
* Build testing/dotnet6-bootstrap (provides "tainted" SDK for first build)
* Build testing/dotnet6-build ("untainted" build of dotnet)
* Build testing/dotnet6-runtime (packages runtime bits from dotnet6-build)
* Build testing/dotnet6-sdk (packages sdk bits from dotnet6-build)

# Special functions
* abuild _update_source: Stage0 adapts prebuilt artifacts packages by replacing
linux-x64 nupkgs with linux-musl-x64 versions. Any updates to artifacts will
require executing this function to update source with up to date nuget packages

dotnet6-bootstrap

# Description
APKBUILD for dotnet6-bootstrap, acting as intermediary between stage0 and 
untainted dotnet build. This is a workaround for buildrepo, allowing automatic
build of dotnet after stage0, insuring that end-user doesn't have any binaries
"tainted" by Microsoft prebuilt binaries

# Generated packages
* dotnet6-bootstrap (used by dotnet6-build for first untainted dotnet build)
* dotnet6-bootstrap-artifacts (provides nupkgs for dotnet6-build)

# Special functions
To update, execute 'abuild _update_bootstrap

dotnet6-build

# Description
APKBUILD for dotnet6-build. This is sourced by dotnet6-runtime and dotnet6-sdk,
which handles the actual packaging due to this aport building products with
varying versions

# Generated packages
* dotnet6-build (aimed for internal use)
 
# How to build dotnet6 stack
* Build testing/dotnet6-stage0 (provides prebuilt bits for first bootstrap bld)
* Build testing/dotnet6-bootstrap (provides "tainted" SDK for first build)
* Build testing/dotnet6-build ("untainted" build of dotnet)
* Build testing/dotnet6-runtime (packages runtime bits from dotnet6-build)
* Build testing/dotnet6-sdk (packages sdk bits from dotnet6-build)

# Special functions
* abuild _update_bootstrap: Updates dotnet6-bootstrap to current version

dotnet6-runtime

# Description
APKBUILD for dotnet6-runtime. Note that this doesn't actually build anything.
It depends on dotnet6-build, which handles the actual dotnet build process
This is a workaround to abuild / lua-aports not supporting custom pkgver
for subpackages. While there are pending MRs for this feature, the feature
is yet to be introduced. See abuild!137 and lua-aports!4

# Generated packages
* aspnetcore6-runtime
* aspnetcore6-targeting-pack
* dotnet6-apphost-pack (used by dotnet6-runtime)
* dotnet6-host (provides dotnet-host)
* dotnet6-host-zsh-completion (provides dotnet-host-zsh-completion)
* dotnet6-host-bash-completion (provides dotnet-host-bash-completion)
* dotnet6-host-doc (docs for dotnet6)
* dotnet6-hostfxr (provides fxr for host)
* dotnet6-runtime
* dotnet6-targeting-pack
 
# How to build dotnet6 stack
* Build testing/dotnet6-stage0 (provides prebuilt bits for first bootstrap bld)
* Build testing/dotnet6-bootstrap (provides "tainted" SDK for first build)
* Build testing/dotnet6-build ("untainted" build of dotnet)
* Build testing/dotnet6-runtime (packages runtime bits from dotnet6-build)
* Build testing/dotnet6-sdk (packages sdk bits from dotnet6-build)

dotnet6-sdk

# Description
APKBUILD for dotnet6-sdk. Note that this doesn't actually build anything.
It depends on dotnet6-build, which handles the actual dotnet build process
This is a workaround to abuild / lua-aports not supporting custom pkgver
for subpackages. While there are pending MRs for this feature, the feature
is yet to be introduced. See abuild!137 and lua-aports!4

# Generated packages
* dotnet6 (virtual package that pulls dotnet6-sdk, thus all dotnet products)
* dotnet6-sdk
* dotnet6-templates (required by sdk)
* netstandard5-targeting-pack (provides netstandard21-targeting-pack)
 
# How to build dotnet6 stack
* Build testing/dotnet6-stage0 (provides prebuilt bits for first bootstrap bld)
* Build testing/dotnet6-bootstrap (provides "tainted" SDK for first build)
* Build testing/dotnet6-build ("untainted" build of dotnet)
* Build testing/dotnet6-runtime (packages runtime bits from dotnet6-build)
* Build testing/dotnet6-sdk (packages sdk bits from dotnet6-build)
Edited by Antoine Martin

Merge request reports