Skip to content

Release 0.6.16 - #33

Merged
O6lvl4 merged 4 commits into
mainfrom
develop
Sep 27, 2026
Merged

O6lvl4 merged 4 commits into
mainfrom
develop

Conversation

@O6lvl4

@O6lvl4 O6lvl4 commented Sep 27, 2026

Copy link
Copy Markdown
Contributor
  • sudo porta setup: on Ubuntu 23.10+, copies porta to a directory only root can write (/usr/local/bin, else /usr/libexec/porta linked from it), writes the AppArmor profile for that copy alone, loads it and checks the namespaces as the user; --dry-run, --undo.
  • scripts/apparmor-userns.sh refuses a binary on a path someone other than root can write: such a profile would grant userns to whatever that user puts there.
  • CI, the action and the runtime notice use it.

🤖 Generated with Claude Code

O6lvl4 and others added 4 commits September 27, 2026 11:27
…write

scripts/apparmor-userns.sh wrote the profile for whatever path it was
given, including a porta under the home; a profile for a path its user can
write grants userns to whatever that user puts there. It now refuses one
that is not root's alone, and sudo porta setup copies porta to a
root-owned /usr/local/bin/porta, writes the profile for that copy alone,
loads it and checks the namespaces as the user who ran sudo. CI, the
action and the runtime notice use it.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…/bin

The GitHub runner leaves /usr/local/bin writable by its user, and setup
rightly refused to write a profile for a binary there. It now checks every
directory up to /, uses /usr/local/bin where it is root's alone and
otherwise /opt/porta/bin with a link from /usr/local/bin; the profile is
for the file, so replacing the link grants nothing. The action does the
same.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The runner leaves /opt writable by its user as well. /usr/libexec is the
package manager's. A refusal now names the directory someone else can
write.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@O6lvl4
O6lvl4 merged commit e31a6d2 into main Sep 27, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant