name: curseforge
description: CurseForge is a mod management platform for games including Minecraft,
World of Warcraft, The Sims 4, and others. It allows users to discover, install,
and manage mods, addons, and modpacks.
snapcraft: curseforge-snap/snap/snapcraft.yaml at main · Phqen1x/curseforge-snap · GitHub
upstream: PRIVATE
upstream-relation: third-party snap packager, not affiliated with Overwolf or CurseForge
interfaces:
network-observe:
request-type: auto-connection
reasoning: >
CurseForge’s core service is Curse.Agent.Host, a .NET NativeAOT binary
responsible for mod installation, updates, and game detection. On startup
it initialises an internal network monitor using the .NET runtime’s
SystemNative_CreateNetworkChangeListenerSocket, which opens an
AF_NETLINK/RTNETLINK socket to receive kernel network-change events.
Without the network-observe interface connected, AppArmor blocks the
socket(AF_NETLINK, …) syscall, causing the monitor to fail. The agent
catches this failure and exits immediately with the message “An error has
occurred while starting the CurseForge Agent Host. Error: Network Manager
is not initialized.”, which the Electron UI surfaces to the user as “An
error occurred on startup. Core service not detected.”, leaving the
application completely non-functional.
The interface is used solely to receive read-only kernel network-change notifications — no network configuration is read or modified beyond that. Without auto-connection, every user must run ‘sudo snap connect curseforge:network-observe’ manually before the app will start, which is not a viable experience for a general audience.
This request has been added to the queue for review by the @reviewers team.
This is sensible to me, I’ll give it a +1
Same as the original post, but better formatting. I wasn’t able to edit the post, so this is all I can do.
name: curseforge
description: CurseForge is a mod management platform for games including Minecraft, World of Warcraft, The Sims 4, and others. It allows users to discover, install, and manage mods, addons, and modpacks.
snapcraft: curseforge-snap/snap/snapcraft.yaml at main · Phqen1x/curseforge-snap · GitHub
upstream: PRIVATE
upstream-relation: third-party snap packager, not affiliated with Overwolf or CurseForge
interfaces: network-observe:
request-type: auto-connection
reasoning: CurseForge’s core service is Curse.Agent.Host, a .NET NativeAOT binary responsible for mod installation, updates, and game detection. On startup it initialises an internal network monitor using the .NET runtime’s SystemNative_CreateNetworkChangeListenerSocket, which opens an AF_NETLINK/RTNETLINK socket to receive kernel network-change events. Without the network-observe interface connected, AppArmor blocks the socket(AF_NETLINK, …) syscall, causing the monitor to fail. The agent catches this failure and exits immediately with the message “An error has occurred while starting the CurseForge Agent Host. Error: Network Manager is not initialized.”, which the Electron UI surfaces to the user as “An error occurred on startup. Core service not detected.”, leaving the application completely non-functional.
The interface is used solely to receive read-only kernel network-change notifications — no network configuration is read or modified beyond that. Without auto-connection, every user must run ‘sudo snap connect curseforge:network-observe’ manually before the app will start, which is not a viable experience for a general audience.
1 Like
@reviewers can someone else please look at this?
Hello @phqen1x,
Apologies for the delay on this request. This is a +1 (#voteFor) from me for granting the curseforge snap auto-connection to the network-observe interface given the provided context and reasoning. Excited to see Curseforge coming to the snap community!
As a side note, while it is not a requirement for this request, we do ask that maintainers of unofficial snaps either clarify in the snap description that they are unofficial and not associated with upstream, or reach out to the upstream for permission to act as the official snap maintainer.
Thank you!
This request also sounds reasonable to me (+1).
As a side note, while it is not a requirement for this request, we do ask that maintainers of unofficial snaps either clarify in the snap description that they are unofficial and not associated with upstream.
This is really best practice. I also think it is a good habit to instruct user to report bugs directly to you, so you can then debug whether they are issues with the snap packaging or the upstream software.
That said, +2 for, 0 against granting curseforge auto-connection to the network-observe interface. This is now live
1 Like