Replacing docker/podman with Nixos?

I setup a next.js project with pkgs.mkshell, and used nix develop to automatically build the project. However, when I leave the shell, the files persist. How should/can(?) I setup my shell.nix so that files in the directory it drops down into are automatically removed when leaving the ephemeral shell?

Atemu,
@Atemu@lemmy.ml avatar

WDYM by “directory it drops down into”? nix develop stays in your current working directory.

If I wanted to clean up state, I’d create a clean task in the build system or build a clean script that I’d wire up to the flake outputs such that you could run nix run .#clean.

yboutros,
@yboutros@infosec.pub avatar

I see, thanks

As for “drop down”, I was loosely referring to the newly spawned terminal

clean scripts get the job done. I was thinking of persisting changes to the filesystem state only while the ephemeral shell was live, that way every time I ran nix develop i would check to make sure my project could automatically build, and If there was any state that needed persisting, I would have to commit/push and label those changes somewhere before ending my session

Atemu,
@Atemu@lemmy.ml avatar

You could achieve something like that using bubblewrap; effectively a container. You can tell it to mount tmpfs wherever you like. That has other issues though.

That’s a big of a complex setup which other people potentially working with you may not want to have. A clean task is just better. If you’re using git anyways, you can also just use git clean.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • nixos@infosec.pub
  • DreamBathrooms
  • magazineikmin
  • Durango
  • ngwrru68w68
  • rosin
  • Youngstown
  • osvaldo12
  • cubers
  • slotface
  • InstantRegret
  • tester
  • kavyap
  • thenastyranch
  • khanakhh
  • JUstTest
  • mdbf
  • modclub
  • everett
  • cisconetworking
  • GTA5RPClips
  • anitta
  • ethstaker
  • tacticalgear
  • normalnudes
  • Leos
  • megavids
  • provamag3
  • lostlight
  • All magazines