Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)PO
Posts
3
Comments
483
Joined
2 yr. ago

  • Made a Nix library for this. For a simple setup you can just build this (untested) and run the result:

     nix
        
    import ./encase.nix {
      name = "firefox";
      rw.home.nathan = /home/nathan/home-for/firefox;
      # other dependencies it might need...
      tmp = /tmp; # fresh tmpfs for this sandbox
      network = true;
      command = pkgs.firefox;
    }
    
      

    It doesn't have user isolation yet, so if it escapes the browser and the chroot (which doesn't have a /proc unless you set proc = /proc;, and runs in a PID namespace either way) your files are still at risk. However, this is still pretty secure, and you can run the script itself as a different user (it creates a new UID namespace so chrooting can be done without root).