52
submitted 11 months ago by GustavoM@lemmy.world to c/linux@lemmy.ml

Nothing too shabby, but still. To run it you need docker, and after that just type

docker run -it --rm --log-driver none --read-only --net none --cap-drop=ALL --security-opt=no-new-privileges defnotgustavom/pixfire4

...and you will be greeted with a little, small, very pixelated bonfire.

"Why docker and not just a simple command?"

Mostly because of those two flags: --read-only and --net none. Can't get better than this. :^)

This also came up while in a self-learning process, but I don't want to "flex" it here.

top 19 comments
sorted by: hot top controversial new old
[-] Helix@feddit.de 23 points 11 months ago

cba, can you upload a gif?

[-] QuazarOmega@lemy.lol 5 points 11 months ago
[-] Helix@feddit.de 3 points 11 months ago

Nice, thanks.

[-] JetpackJackson@feddit.de 4 points 11 months ago
[-] hersh@literature.cafe 10 points 11 months ago

Can't be arsed.

It means you don't care to put in the effort required.

https://dictionary.cambridge.org/dictionary/english/arsed

[-] JetpackJackson@feddit.de 4 points 11 months ago
[-] jmd_akbar@aussie.zone 2 points 11 months ago
[-] JetpackJackson@feddit.de 1 points 11 months ago
[-] blotz@lemmy.world 10 points 11 months ago* (last edited 11 months ago)

What is the original size of the program before docker?

edit: Also the docker sandbox is not perfect for running unsafe programs. You could still have programs slow down your entire system by taking as many resources as possible. eg. forkbombs.

[-] floridaman@lemmy.blahaj.zone 5 points 11 months ago

Doesn't docker have a flag for limiting system usage? Like max mem, cores/threads etc? I swear I remember using something like this before.

[-] blotz@lemmy.world 2 points 11 months ago

Linux has ulimit so I assume docker does aswell

[-] gomp@lemmy.ml 8 points 11 months ago

Wow! This is almost as useful as neofetch ;-)

[-] QuazarOmega@lemy.lol 6 points 11 months ago

Doesn't work with podman (on my machine at least), any suggestions?

Error: copying system image from manifest list: writing blob: adding layer with blob "sha256:f1c0eb6f4ccdca4b72528f451baf6f4027f4b0965396bc4d885e27fd58cba771": processing tar file(potentially insufficient UIDs or GIDs available in user namespace (requested 151413:12311 for /bin): Check /etc/subuid and /etc/subgid if configured locally and run "podman system migrate": lchown /bin: invalid argument): exit status 1
[-] GustavoM@lemmy.world 5 points 11 months ago

Did you tried running it as another user? I've set binary ownership via chmod to the non-root user in the container.

[-] QuazarOmega@lemy.lol 4 points 11 months ago* (last edited 11 months ago)

Tried with another user and it works, looks really cool btw!

Any way to quit gracefully though?
I tried both Ctrl+C and Ctrl+Z but it just ignores the signals, I could only resort to killing it

[-] GustavoM@lemmy.world 2 points 11 months ago* (last edited 11 months ago)

Thanks. And CTRL + C is a bit wonky since it waits for the command to reach the end of the code to trigger it, but it works. (It's intended to be "gloriously minimal", so theres that. With built-in functions, and the least amount of code and calls.)

[-] QuazarOmega@lemy.lol 2 points 11 months ago* (last edited 11 months ago)

I see, weirdly it works every time on my own user, but it is on my second one that it doesn't, the two applications are different though, did I somehow pull two different images?

With built-in functions, and the least amount of code and calls

I'm a bit curious, can you share the repository?

[-] GustavoM@lemmy.world 1 points 11 months ago* (last edited 11 months ago)

I've no idea. Still, running it on my rpi 4 and on my orange pi zero 3 has given me the same expected experience without any sudden changes.

I’m a bit curious, can you share the repository?

Here you go.

[-] QuazarOmega@lemy.lol 2 points 11 months ago* (last edited 11 months ago)

I'll try that, I also read around that I could increase my UID namespace range (not that I understand what it means 🫣), so I'll try that too

Edit: Now I half understand after reading these:

  1. https://github.com/containers/podman/issues/12715

  2. https://docs.podman.io/en/latest/markdown/podman.1.html#rootless-mode

3.https://github.com/containers/podman/blob/main/docs/tutorials/rootless_tutorial.md#etcsubuid-and-etcsubgid-configuration

4.https://opensource.com/article/19/2/how-does-rootless-podman-work

  1. https://github.com/containers/podman/issues/2542#issuecomment-523324467
this post was submitted on 08 Dec 2023
52 points (82.5% liked)

Linux

48080 readers
780 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS