Auto-connections request: resources

  • name: resources
  • description: Resources is a simple yet powerful monitor for your system resources and processes, written in Rust and using GTK 4 and libadwaita for its GUI. It’s capable of displaying usage and details of your CPU, memory, GPUs, NPUs, network interfaces and block devices. It’s also capable of listing and terminating running graphical applications as well as processes.
  • snapcraft: resources-snap/snap/snapcraft.yaml at main · frenchwr/resources-snap · GitHub
  • upstream: GitHub - nokyan/resources: Keep an eye on system resources
  • upstream-relation: no relation with upstream, which only provides official support for Flatpak
  • interfaces:
    • process-control:
      • request-type: auto-connection
      • reasoning: support application termination feature. Without this interface the application will be missing a basic feature, and create a misleading and confusing experience for users.
    • hardware-observe:
      • request-type: auto-connection
      • reasoning: access to /sys and /proc is needed for system monitoring. Without this access the application would be missing basic features (displaying information about running processes).
    • system-observe:
      • request-type: auto-connection
      • reasoning: allow read access to additional data in /proc. For example, displaying per-process GPU usage for Intel and AMD GPUs requires access to /proc/PID/fdinfo, which is provided by system-observe starting in snapd 2.75 (link).
    • desktop-launch:
      • request-type: auto-connection
      • reasoning: enables access to app desktop files for other snaps on the system. This allows icons to be displayed beside applications, which is a feature of the resources application. Without this interface, the user experience is poor as resources will show a generic puzzle piece icon beside each snap application running on the system.
    • usr-share:
      • request-type: auto-connection
      • reasoning: this plug uses the system-files interface to access icon data for system packages (i.e. deb packages) at /var/lib/snapd/hostfs/usr/share. The reasoning is similar to desktop-launch. Without this access, a running application from a debian package will show a generic puzzle piece icon, which is a poor user experience as it’s harder to read and navigate the application view provided by resources.

Note that I originally uploaded this snap to the store a few months ago and it failed manual review due the requirement for super-privileged interfaces. Since resources is a system monitoring tool, it needs privileged access to a user’s system, so these are legitimate needs in order for the application to function properly as a snap.

1 Like

This request has been added to the queue for review by the @reviewers team.