!9IQChSjwSHXPPWTa:lix.systems

Lix

1103 Members
Lix user channel. Feel free to discuss on-topic issues here and give each other help. For matrix.to links to the rest of the Lix channels, see: https://wiki.lix.systems/books/lix-organisation/page/matrix-rooms295 Servers

Load older messages


SenderMessageTime
30 Nov 2025
@raitobezarius:matrix.orgraitobezarius
In reply to @jlamur:matrix.org
yep you're right, running with eg podman run --cap-add=SYS_ADMIN --security-opt unmask=/proc/* --rm -it works
I think you can get remove just the unshare blacklist
21:40:13
@raitobezarius:matrix.orgraitobezariusDon't need to unmask proc and cap add21:40:20
@raitobezarius:matrix.orgraitobezariusFor proc, you only need a partial view, not a full view anyway, but you need a proper procfs I suppose21:41:03
@jlamur:matrix.orgJules Lamur AFAIU, podman sets a policy that prevents any mount related syscall in /proc, so remounting a procfs should not work at all without the --security-opt flag above (again, if I understand correctly -- I only have a high level understanding of all that) 21:43:18
@raitobezarius:matrix.orgraitobezariusArgh, yeah, we need *a* procfs21:44:11
@raitobezarius:matrix.orgraitobezariusNot necessarily *the* procfs21:44:16
@jlamur:matrix.orgJules LamurI'm not sure that I understand what you're suggesting here21:44:51
@raitobezarius:matrix.orgraitobezarius
In reply to @jlamur:matrix.org
I'm not sure that I understand what you're suggesting here
--security-opt seccomp reduced-seccomp.json
21:45:29
@raitobezarius:matrix.orgraitobezariusThe JSON file is a fine grained control of which syscall is allowed21:46:23
@raitobezarius:matrix.orgraitobezariusAllowing unshare makes sense if you want the sandbox to work at all21:46:45
@raitobezarius:matrix.orgraitobezariusPerhaps, allowing the mount procfs is sufficiently risk free too21:46:56
@jlamur:matrix.orgJules Lamurwhat do you mean by allowing unshare? user namespaces are allowed by default in podman rootless containers so unshare should work out of the box21:48:43
@raitobezarius:matrix.orgraitobezariusI was pretty sure the default seccomp policy forbids the unshare syscall21:49:08
@jlamur:matrix.orgJules Lamur(that does not solve my problem though because of the procfs mask)21:49:13
@raitobezarius:matrix.orgraitobezariusSo maybe the question is: if you try to allow the mount syscall for procfs, does it work?21:49:35
@raitobezarius:matrix.orgraitobezariusWithout any cap or proc unmasking21:49:41
@jlamur:matrix.orgJules Lamur

If I try to run with only the unmask, then I get that:

$ podman run --security-opt unmask=/proc/* --rm -it foo unshare -r nix-build
error: changing ownership of path '/nix/store': Invalid argument
21:52:54
@jlamur:matrix.orgJules Lamur mhh I think that's because /nix/store is root:nogroup in the new user ns 21:55:10
@raitobezarius:matrix.orgraitobezariusThat's very weird to have EINVAL on chown? Do you have a clean mount namespace?21:55:12
@raitobezarius:matrix.orgraitobezarius
In reply to @jlamur:matrix.org
mhh I think that's because /nix/store is root:nogroup in the new user ns
So subuid delegation
21:55:24
@weethet:catgirl.cloudWeetHetWYM?21:56:57
@raitobezarius:matrix.orgraitobezarius
In reply to @weethet:catgirl.cloud
WYM?
The surface of API calls used for nix-doc is extremely low and trivial
21:57:48
@raitobezarius:matrix.orgraitobezariusIt's absolutely not representative of general purpose FFI for CLI alas21:58:05
@weethet:catgirl.cloudWeetHetAutocxx doesn't support exceptions 😞21:59:46
@weethet:catgirl.cloudWeetHet* Autocxx doesn't support exceptions 21:59:53
@weethet:catgirl.cloudWeetHetBut there's a PR: https://github.com/google/autocxx/pull/142622:00:05
@raitobezarius:matrix.orgraitobezariusSeems too old :p22:31:42
@raitobezarius:matrix.orgraitobezariusEven if C++ exceptions were tackled, not sure how to interpp C++ coroutines and Rust async coroutine transformations22:32:39
@anouk:kif.rocks@anouk:kif.rocks left the room.23:28:51
@niko:nrab.lolniko ⚡️ and this is even more unexpected: nix-building a file like this { __functor = self: <derivation>; }, which obviously isn't "valid" nix code (technically valid, but for the sake of brevity let's just say it's invalid), actually builds the derivation... what? Surely this is not expected, that's not how functors work 23:51:11

Show newer messages


Back to Room ListRoom Version: 10