Public bug reported:

[Availability]
The package wsl-pro-service is already available in Ubuntu main for Noble and 
later, reported in LP #2052495.
The package wsl-pro-service is already available in Ubuntu universe for Focal 
and Jammy, backported via LP #2107145.
The package wsl-pro-service build for the architectures it is designed to work 
on.
It currently builds and works for architectures (specifically for Jammy and 
Focal): amd64 and arm64.

Link to package https://launchpad.net/ubuntu/+source/wsl-pro-service

[Rationale]
Ubuntu Pro for WSL is a set of applications to manage Ubuntu WSL instances, 
grant them Pro status, orchestrate instances from Landscape and manage their 
lifecycle. Wsl-pro-service serves as a bridge between the agent running on 
Windows and Ubuntu instances. It controls the Pro and Landscape status.
The package wsl-pro-service is required to be in main to seed it by default on 
WSL images.
The package wsl-pro-service will generally be useful for corporate users.
No package in main or universe currently offers these capabilities.

The target release is all the LTS releases from 20.04 onwards.

[Security]
This is a new software developed and maintained by Canonical. It has no 
security history.

No CVEs/security issues in this software have been reported so far.

- no `suid` or `sgid` binaries
- The package installs a systemd service called wsl-pro-service
- It installs a service in /usr/libexec/wsl-pro-service, running as root. The 
service has some systemd confinement and `ConditionVirtualization=wsl` 
preventing it from even start in platforms other than WSL.
- Packages does not open privileged ports (ports < 1024)
- Packages does not contain extensions to security-sensitive software
- Communication between wsl-pro-service and the agent running on Windows is 
done over gRPC with mTLS.
- Security has been kept in mind and common isolation/risk-mitigation patterns 
are in place utilizing systemd isolation features.
- This should not require a security review, given the original MIR bug 
(#2052495) already covered it.

[Quality assurance - function/usage]
The package works well right after installation.

[Quality assurance - maintenance]
The Ubuntu Desktop team (~desktop-packages) maintains this package. It doesn’t 
have any long-term and critical, open bugs:
- https://github.com/canonical/ubuntu-pro-for-windows/issues
- https://bugs.launchpad.net/ubuntu/+source/wsl-pro-service

[Quality assurance - testing]
There is a comprehensive, non-trivial, testsuite. The testsuite includes 
integration and functional tests.
The testsuite runs at build time. The branch coverage is over 88%:
- 
https://github.com/canonical/ubuntu-pro-for-windows/actions/workflows/qa.yaml?query=branch%3Amain
- https://app.codecov.io/gh/canonical/ubuntu-pro-for-wsl

The same test suite runs as autopkgtest. It is passing on all supported 
architectures. Links to test logs:
- https://autopkgtest.ubuntu.com/packages/wsl-pro-service

Upstream CI also includes code sanity checks (golangci-lint, including
gosec) and vulnerability scanning (govulneck).

[Quality assurance - packaging]
- There is no debian/watch because wsl-pro-service is a native package.
- debian/control defines a correct Maintainer field:
- Maintainer: Ubuntu Developers <[email protected]>

This package does not yield massive lintian Warnings, Errors
```
W: wsl-pro-service source: newer-standards-version 4.6.2 (current is 4.6.0.1)
W: wsl-pro-service source: superfluous-file-pattern 
vendor/github.com/hashicorp/* [debian/copyright:26]
W: wsl-pro-service source: superfluous-file-pattern 
vendor/github.com/magiconair/* [debian/copyright:34]
W: wsl-pro-service source: superfluous-file-pattern 
vendor/github.com/mitchellh/* [debian/copyright:38]
W: wsl-pro-service source: superfluous-file-pattern 
vendor/github.com/sagikazarmark/slog-shim/* [debian/copyright:54]
W: wsl-pro-service source: superfluous-file-pattern vendor/go.uber.org/atomic/* 
[debian/copyright:100]
```

Full output from `lintian --pedantic`:

```
W: wsl-pro-service source: newer-standards-version 4.6.2 (current is 4.6.0.1)
W: wsl-pro-service source: superfluous-file-pattern 
vendor/github.com/hashicorp/* [debian/copyright:26]
W: wsl-pro-service source: superfluous-file-pattern 
vendor/github.com/magiconair/* [debian/copyright:34]
W: wsl-pro-service source: superfluous-file-pattern 
vendor/github.com/mitchellh/* [debian/copyright:38]
W: wsl-pro-service source: superfluous-file-pattern 
vendor/github.com/sagikazarmark/slog-shim/* [debian/copyright:54]
W: wsl-pro-service source: superfluous-file-pattern vendor/go.uber.org/atomic/* 
[debian/copyright:100]
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/github.com/sourcegraph/conc/README.md line 6 is 1736 characters long 
(>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/github.com/spf13/cobra/CONDUCT.md line 4 is 594 characters long (>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/net/idna/tables10.0.0.go line 2374 is 1852 characters long 
(>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/net/idna/tables11.0.0.go line 2374 is 1936 characters long 
(>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/net/idna/tables12.0.0.go line 2374 is 1992 characters long 
(>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/net/idna/tables13.0.0.go line 2538 is 2048 characters long 
(>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/net/idna/tables15.0.0.go line 2655 is 2125 characters long 
(>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/net/idna/tables9.0.0.go line 2353 is 1810 characters long 
(>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/sys/windows/types_windows.go line 618 is 527 characters 
long (>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/text/unicode/norm/tables10.0.0.go line 5678 is 1097 
characters long (>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/text/unicode/norm/tables11.0.0.go line 5708 is 1125 
characters long (>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/text/unicode/norm/tables12.0.0.go line 5717 is 1139 
characters long (>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/text/unicode/norm/tables13.0.0.go line 5742 is 1181 
characters long (>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/text/unicode/norm/tables15.0.0.go line 5859 is 1222 
characters long (>512)
P: wsl-pro-service source: very-long-line-length-in-source-file 
vendor/golang.org/x/text/unicode/norm/tables9.0.0.go line 5655 is 1076 
characters long (>512)

```

- Lintian overrides are not present.
- This package does not rely on obsolete or about to be demoted packages.
- This package has no python2 or GTK2 dependencies
- The package will be installed by default but does not ask debconf questions.

Packaging and build is easy:
- 
https://github.com/canonical/ubuntu-pro-for-windows/blob/main/wsl-pro-service/debian/rules

[UI standards]
Application is not end-user facing. However some strings are translatable and 
used for error messages via standard intltool/gettext or similar build and 
runtime internationalization system:

The system for internationalization is in place of the project and the
mo and po files are generated. It’s a question of taking the time to
mark the appropriate strings for translations. It is a background
service. Strings are used for logging and are not immediately visible to
the user.

[Dependencies]
No further depends or recommends dependencies that are not yet in main.

[Standards compliance]
- This package correctly follows FHS
- This package violates Debian Policy. It vendorizes various Go libraries (in 
vendor/). We are maintaining them up to date with dependabot in our upstream 
CI. The Go part is covered by the govulncheck security scanning on the Go 
version we are depending on.

[Maintenance/Owner]
- The owning team will be desktop-packages and I have their acknowledgement for 
that commitment
- The team desktop-packages is subscribed.
- The team desktop-packages is aware of the implications by a static build and 
commits to test no-change-rebuilds and to fix any issues found for the lifetime 
of the release (including ESM).
- The team desktop-packages is aware of the implications of vendored code and 
(as alerted by the security team) commits to provide updates to the security 
team for any affected vendored code for the lifetime of the release (including 
ESM).

[Background information]
- The Package description explains the package well.
- Upstream Name is wsl-pro-service.
- Link to upstream project https://github.com/canonical/ubuntu-pro-for-windows

** Affects: wsl-pro-service (Ubuntu)
     Importance: High
         Status: Confirmed

** Changed in: wsl-pro-service (Ubuntu)
       Status: New => Confirmed

** Changed in: wsl-pro-service (Ubuntu)
   Importance: Undecided => Medium

** Changed in: wsl-pro-service (Ubuntu)
   Importance: Medium => High

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2133940

Title:
  [MIR] wsl-pro-service for Jammy and Focal

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/wsl-pro-service/+bug/2133940/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to