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
