Commit 5d778d1f authored by Niklas Hambüchen's avatar Niklas Hambüchen
Browse files

Add `programs.ecryptfs` for mount wrappers.

The `ecryptfs` package refers to the setuid wrapper paths, but they do
not exist so far in NixOS.
parent 3c15feef
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -163,6 +163,7 @@
  ./programs/direnv.nix
  ./programs/dmrconfig.nix
  ./programs/droidcam.nix
  ./programs/ecryptfs.nix
  ./programs/environment.nix
  ./programs/evince.nix
  ./programs/extra-container.nix
+31 −0
Original line number Diff line number Diff line
{ config, lib, pkgs, ... }:

with lib;

let
  cfg = config.programs.ecryptfs;

in {
  options.programs.ecryptfs = {
    enable = mkEnableOption (lib.mdDoc "ecryptfs setuid mount wrappers");
  };

  config = mkIf cfg.enable {
    security.wrappers = {

      "mount.ecryptfs_private" = {
        setuid = true;
        owner = "root";
        group = "root";
        source = "${lib.getBin pkgs.ecryptfs}/bin/mount.ecryptfs_private";
      };
      "umount.ecryptfs_private" = {
        setuid = true;
        owner = "root";
        group = "root";
        source = "${lib.getBin pkgs.ecryptfs}/bin/umount.ecryptfs_private";
      };

    };
  };
}