jsuarezruiz/maui-linux

[Build] Rename "linux" to "gtk3"

lytico opened this issue · 3 comments

Description

rename all build variables / directories / file extensions from linux -> gkt3

Reason

  • gtk is os-agnostic, runs on mutliple *nix os'es (eg. FreeBsd, NetBsd)
  • there are more than on linux-gui-frameworks (eg. kde, qt)
  • there will (hopefully) an gkt4-implementation, and it needs to be offered in paralell with gtk3 for a long time to support linux-distros not changing to gtk4

current Directory.Build.props: https://github.com/dotnet/maui/blob/73264c777d533930d75eb6329b0b88d57b899a41/Directory.Build.props

there could be:

<BuildForGtk3 Condition="'???'">true</BuildForGtk3>

<MauiPlatforms>net6.0-ios;net6.0-maccatalyst;net6.0-android;net6.0-gtk3</MauiPlatforms>

<BuildNonNet6ForGtk3>....</BuildNonNet6ForGtk3>
<BuildNonNet6ForGtk3 Condition="'$(SolutionFileName)' == 'Microsoft.Maui.Gtk3.sln'">true</BuildNonNet6ForGtk3>

so we have to introduce an Microsoft.Maui.Gtk3.sln maybe?

in Microsoft.Maui.Graphics "Linux" is especially confusing, as there is https://github.com/dotnet/Microsoft.Maui.Graphics/tree/main/src/Microsoft.Maui.Graphics.Skia.GtkSharp
that runs on linux over skia

and there will be an implementation over Gtk directly, implementing a
NativeCanvas
using https://github.com/GtkSharp/GtkSharp/blob/develop/Source/Libs/CairoSharp/Context.cs