Package Details: pufferpanel-bin 3.0.5-1

Git Clone URL: https://aur.archlinux.org/pufferpanel-bin.git (read-only, click to copy)
Package Base: pufferpanel-bin
Description: PufferPanel: A web-base game management system (binary version).
Upstream URL: https://github.com/PufferPanel/PufferPanel
Licenses: Apache
Conflicts: pufferpanel
Provides: pufferpanel
Submitter: Disconsented
Maintainer: Disconsented (PufferPanel)
Last Packager: Disconsented
Votes: 1
Popularity: 0.000000
First Submitted: 2020-06-26 23:49 (UTC)
Last Updated: 2026-03-03 22:30 (UTC)

Pinned Comments

Disconsented commented on 2026-01-26 20:24 (UTC) (edited on 2026-01-26 22:05 (UTC) by Disconsented)

PufferPanel uses openat2 to prevent guard against a timing attack that allows for access to the rest of the fs. If you're using a weird kernel (or Catchy), you may get errors like the following:

[ERROR] OpenAt2 is not supported. Cowardly not starting to avoid security issues.
goroutine 1 [running]:
runtime/debug.Stack()
github.com/pufferpanel/pufferpanel/v3/utils.DetermineKernelSupport()
        /home/runner/work/pufferpanel/pufferpanel/utils/kernel.go:18 +0xbb

For folks who wish to continue, edit /etc/pufferpanel/config.json, add a "security" section, with "forceOpenat" being "true".

Latest Comments

1 2 Next › Last »

SergeantBiggs commented on 2026-03-14 10:09 (UTC)

This package overwrites /etc/pufferpanel/config.json on every update, which breaks running installations when they are updated.

Could you add the config file to the backup= array in the PKGBUILD? This would ensure that .pacnew files are created if the config file is modified by the user.

Disconsented commented on 2026-01-26 20:24 (UTC) (edited on 2026-01-26 22:05 (UTC) by Disconsented)

PufferPanel uses openat2 to prevent guard against a timing attack that allows for access to the rest of the fs. If you're using a weird kernel (or Catchy), you may get errors like the following:

[ERROR] OpenAt2 is not supported. Cowardly not starting to avoid security issues.
goroutine 1 [running]:
runtime/debug.Stack()
github.com/pufferpanel/pufferpanel/v3/utils.DetermineKernelSupport()
        /home/runner/work/pufferpanel/pufferpanel/utils/kernel.go:18 +0xbb

For folks who wish to continue, edit /etc/pufferpanel/config.json, add a "security" section, with "forceOpenat" being "true".

Disconsented commented on 2023-07-30 07:05 (UTC)

2.6.8 is being held back from release, due to a change introduced in go 1.20 which breaks an important dependency.

jkhsjdhjs commented on 2023-07-22 13:31 (UTC)

Hey, can you please implement the changes I suggested several months ago?

You really shouldn't install pufferpanel.service to /etc/systemd/system, it's for user-defined services and user-overrides only. Packages should instead install to /usr/lib/systemd/system.

And it would be great if you could also specify when mode when installing pufferpanel.service. The default is 755, but it really doesn't need to be executable, so 644 would fully suffice.

PolarianDev commented on 2023-03-22 01:49 (UTC)

Nope, it’s not, as the packages name is pufferpanel-bin it will only infer provides=('pufferpanel-bin').

Whoops I was probably half asleep and missed the fact that -bin was there.

It already is a simple service, and systemd by default waits 90s for any service to stop before killing it.

Ah well, I do not think there is any way to make systemctl start/stop any faster in this case, "forking" services I have seen sometimes take longer so that is why I mentioned it.

As for @Disconsented although my stupid mistake with provides was wrong, you really do not need to specify blank configuration options such as depends()

jkhsjdhjs commented on 2023-03-14 10:29 (UTC)

Also an improvements: provides=('pufferpanel') provides is redundant here, it is inferred from the package.

Nope, it’s not, as the packages name is pufferpanel-bin it will only infer provides=('pufferpanel-bin').

The service file comes from upstream, it can take a fair while to shut down as it tries to stop all of its servers, which can take a fair while.

Hmm, yeah you have a point here. Can you implement the other changes I suggested?

This could always be changed to a "Simple" service which would simply start the application and kill the application, not wait for it to start, and wait for it to stop.

It already is a simple service, and systemd by default waits 90s for any service to stop before killing it.

PolarianDev commented on 2023-03-14 09:53 (UTC)

The service file comes from upstream, it can take a fair while to shut down as it tries to stop all of its servers, which can take a fair while.

This could always be changed to a "Simple" service which would simply start the application and kill the application, not wait for it to start, and wait for it to stop.

Disconsented commented on 2023-03-14 09:49 (UTC) (edited on 2023-03-14 09:55 (UTC) by Disconsented)

Besides, does pufferpanel really take 5 minutes for shutting down, as you defined it in the pufferpanel.service? And it would be great if you could also specify when mode when installing pufferpanel.service. The default is 755, but it really doesn't need to be executable, so 644 would fully suffice.

The service file comes from upstream, it can take a fair while to shut down as it tries to stop all of its servers, which can take a fair while.

PolarianDev commented on 2023-03-14 09:15 (UTC)

Also an improvements:

provides=('pufferpanel')

provides is redundant here, it is inferred from the package.

Also if you have no dependencies remove the depends()

PolarianDev commented on 2023-03-14 09:10 (UTC)

Ah a commit was pushed... the maintainer is there :)

I will request the orphan to be rejected!

I would still like to co-maintain however :)