o3de / rfcs

RFCs for the Open 3D Foundation products
8 stars 5 forks source link

RFC: Deprecate support for Linux SNAP packaging #54

Open spham-amzn opened 5 months ago

spham-amzn commented 5 months ago

Summary:

This is an RFC proposal to remove support for SNAP packaging for O3DE due to numerous issues with how O3DE is packaged with SNAP and its low adoption rate.

What is the motivation for this suggestion?

SNAP packaging provides discoverable, cross-platform, dependency-free installations of applications. It is a popular method of distribution of major applications on any Linux distribution/host that supports SNAP. Initially, this seemed like a good fit to use for O3DE as a path for installation since O3DE has a lot of dependencies and can be a challenge to install.

However, as the SNAP package was developed, a lot of work-arounds were done to end up with a hybrid snap package that no longer provided the portability and dependency-free environment that SNAP is known for. There are many reasons for this:

Although all of the above issues may be fixable, it may require significant work and possible work-arounds just to make O3DE running without external dependencies in an isolated environment and address the issues caused by its immutable confinement.

Considering that there is already support for a debian package as an alternative installation path, there is no critical need to keep supporting SNAP packaging.

Suggestion design description:

The following steps need to be done to remove SNAP support

What are the advantages of the suggestion?

This will simplify the linux installation packaging workflow a bit by removing SNAP and just maintaining the debian packaging process

What are the disadvantages of the suggestion?

Are there any alternatives to this suggestion?

Although removing from the SNAP store will make it less convenient to discover and download the O3DE installation, there are a few alternatives that can be explored

What is the strategy for adoption?

byrcolin commented 4 months ago

Sig/Platform is in favor of removal.