Review for Source Package: ptyxis

[Summary]
MIR team ACK under the nont gating constraint to please have a look at
the recommended TODOs.

This does need a security review, so I'll assign ubuntu-security

List of specific binary packages to be promoted to main: ptyxis
Specific binary packages built, but NOT to be promoted to main: n/a

Required TODOs:
- n/a

Recommended TODOs:
- #1 There is (so far AFAICS) no appamor for any terminal. And one might argue
     that the terminal is just rendering between user and the shell. But in
     return should that not make it easy to create one? Not a requirement but
     having a look if it is possible would be great if this is meant to be the
     primary for the next LTS.
- #2 The package should get a team bug subscriber before being promoted
- #3 very low prio, the build log is full of "substitution variable ... unused, 
but is defined"
     I doubt that is a problem, but just have a look and ensure this isn't an 
oversight.

[Rationale, Duplication and Ownership]
- There is no other package in main providing the same functionality. Sure
  there are other terminals but it was outlined in the report why this one
  is requested. I understand and agree that this does not mean gnome-terminal
  would immediately go to universe. It should once think it can but in this case
  I think it does not "have to".
- A team is committed to own long term maintenance of this package => Desktop
- The rationale given in the report seems valid and useful for Ubuntu

[Dependencies]
OK:
- no other Dependencies to MIR due to this
  none of the dependencies (Depends
  and Recommends) that are present after build are not in main
- no -dev/-debug/-doc packages that need exclusion
- No dependencies in main that are only superficially tested requiring
  more tests now.

Problems: None

[Embedded sources and static linking]
OK:
- no embedded source present
- no static linking
- does not have unexpected Built-Using entries
- not a go package, no extra constraints to consider in that regard
- not a rust package, no extra constraints to consider in that regard

Problems: None

[Security]
OK:
- history of CVEs does not look concerning
- does not run a daemon as root
- does not use webkit1,2
- does not use lib*v8 directly
- does not parse data formats (files [images, video, audio,
  xml, json, asn.1], network packets, structures, ...) from
  an untrusted source.
- does not expose any external endpoint (port/socket/... or similar)
- does not process arbitrary web content
- does not use centralized online accounts
- does not integrate arbitrary javascript into the desktop
- does not deal with system authentication (eg, pam), etc)
- does not deal with security attestation (secure boot, tpm, signatures)
- does not deal with cryptography (en-/decryption, certificates,
  signing, ...)

Problems:
- one could say it parses text and control characters, not sure if that
  counts as for that it will mostly use the same libs the other terminals
  use (not part of ptyxis itself)
- this makes appropriate (for its exposure) use of established risk
  mitigation features. To be clear, AFAICS there is none so it it is
  debatable. One might say the actual "doing" of anything reasonable is
  by the shell in it. Yet on the other hand, that might mean a profile
  might be easy to write. If there is anything bad, breaking the terminal
  rendering code would be quite an attack. Output of commands could create the
  flow that causes it. Worth to add to suggestions to think about it, but
  not more sever than that.

=> I'm not entirely sure on my judgement here, and the policy says in that case
   we should assign it for a security review which I'll do.

[Common blockers]
OK:
- does not FTBFS currently
- This does not need special HW for build or test
- no new python2 dependency

Problems:
- does not have a test suite that runs at build time
- does not have a non-trivial test suite that runs as autopkgtest
You've outlined the struggles to test that in classic automated fashion,
and while it isn't impossible the infrastructure currently does not provide
what you'd need. The test plan 
https://wiki.ubuntu.com/DesktopTeam/TestPlans/Terminal
is fine if it will be executed. Thanks for defining that - ack.

[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking not applicable for this kind of code (no lib)
- debian/watch is present and looks ok
- Upstream update history is good
- Debian/Ubuntu update history is good
- the current release is packaged
- promoting this does not seem to cause issues for MOTUs that so far
  maintained the package
- no massive Lintian warnings
- debian/rules is rather clean
- It is not on the lto-disabled list

Problems: None

[Upstream red flags]
OK:
- no Errors/warnings during the build
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH (usage is OK inside
  tests)
- no use of user nobody
- no use of setuid / setgid
- use of setuid, but ok because TBD (prefer systemd to set those
  for services)
- no important open bugs (crashers, etc) in Debian or Ubuntu except the
  one you are aware of already.
- no dependency on webkit, qtwebkit or libseed
- part of the UI, desktop file is ok
- translation present for some more common languages

Problems: None

** Changed in: ptyxis (Ubuntu)
     Assignee: (unassigned) => Ubuntu Security Team (ubuntu-security)

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

Title:
  [MIR] ptyxis

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ptyxis/+bug/2108942/+subscriptions


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

Reply via email to