core icon indicating copy to clipboard operation
core copied to clipboard

Add support for Debian bookworm

Open rbhanda opened this issue 2 years ago • 4 comments

This issue is created to track progress for the work to enable Debian bookworm support for .NET 6.0 and .NET 7.0

Product and Test updates

  • [ ] [All teams] Do a compatibility check for the product with the new OS
  • [ ] [CoreCLR/CoreFX] Runtime / RID Support update https://github.com/dotnet/runtime/pull/86284
  • [ ] [Infra] Ensure that the correct Docker images used by teams are built in the dotnet-buildtools-prereqs (if applicable)
  • [ ] [Infra] Replace docker tags used in builds across repos and branches
  • [ ] [CLI team] Update CI legs to latest updated Dockerfile
  • [ ] [All teams] Update test infrastructure to support the new version
  • [ ] [Acquisition] Add support within nightly repos: https://github.com/dotnet/dotnet-docker/issues/4322, https://github.com/dotnet/dotnet-docker/issues/4535
  • [ ] [Acquisition] Deploy to master (GA) during next patch release cycle

Release team:

  • [x] Notify .NET Core teams regarding new OS release
  • [ ] Update the supported OS content on GitHub and marketing sites.

Document updates:

  • [ ] Add OS prerequisites to the dependencies document
  • [ ] Update distro install page

rbhanda avatar May 22 '23 19:05 rbhanda

Any update on the status of this work?

FYI the RID support update item references the Alpine 3.18 PR instead of a Bookworm PR.

MichaelSimons avatar Jun 12 '23 14:06 MichaelSimons

@rbhanda does the linked PRs for Deb12 include bookworm?

adegeo avatar Aug 10 '23 20:08 adegeo

I installed dotnet6 for Debian 12 as described by Microsoft.

I compiled a dotnet application: dotnet publish --configuration Release --runtime linux-x64 --framework net6.0 --self-contained true

I created a deb file with dotnet-deb (version 0.1.220): dotnet deb -c Release --runtime linux-x64

When I installed the deb file, the system gave me the error that libssl1 and libicu70 are not available:

sudo apt install ./myApp.1.1.0.linux-x64.deb                                                                                                                                        
[sudo] password for user16: 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 myApp : Depends: libssl1.1 but it is not installable or
                            libssl1.0.2 but it is not installable or
                            libssl1.0.1 but it is not installable or
                            libssl1.0.0 but it is not installable or
                            libssl0.9.8 but it is not installable
                   Depends: libicu70 but it is not installable or
                            libicu69 but it is not installable or
                            libicu68 but it is not installable or
                            libicu67 but it is not installable or
                            libicu66 but it is not installable or
                            libicu65 but it is not installable or
                            libicu64 but it is not installable or
                            libicu63 but it is not installable or
                            libicu62 but it is not installable or
                            libicu61 but it is not installable or
                            libicu60 but it is not installable or
                            libicu59 but it is not installable or
                            libicu58 but it is not installable or
                            libicu57 but it is not installable or
                            libicu56 but it is not installable or
                            libicu55 but it is not installable or
                            libicu54 but it is not installable or
                            libicu53 but it is not installable or
                            libicu52 but it is not installable

Here is my dotnet version:

.NET SDK (reflecting any global.json):
 Version:   6.0.414
 Commit:    dc3b5c4341

Runtime Environment:
 OS Name:     debian
 OS Version:  12
 OS Platform: Linux
 RID:         debian.12-x64
 Base Path:   /usr/share/dotnet/sdk/6.0.414/

global.json file:
  Not found

Host:
  Version:      6.0.22
  Architecture: x64
  Commit:       4bb6dc195c

.NET SDKs installed:
  6.0.414 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 6.0.22 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 6.0.22 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

Is this a problem of dotnet-deb or dotnet6 sdk?

/edit:

On Debian 12, only libssl3 and libicu72 are available.

electron4692 avatar Oct 06 '23 13:10 electron4692

Regarding the problem from my previous comment:

It is caused by the tool dotnet deb.

In the csproj file I set the property SkipDebDependencies to true. You need a recent version of the tool. See: https://github.com/quamotion/dotnet-packaging/issues/222

In order to define the correct dependencies of my application, I need to know what the dependencies of the dotnet framework are. Could you please document them here for Debian Bookworm? https://github.com/dotnet/core/blob/main/release-notes/6.0/linux-packages.md

electron4692 avatar Oct 09 '23 14:10 electron4692