anchor.diff:  
     system = config.nixpkgs.system;
   
  -  mkBindFlag = d: if d.isReadOnly then " --bind-ro=${d.host}:${d.container}" else " --bind=${d.host}:${d.container}";
  -  mkBindFlags = bs: concatMapStrings mkBindFlag bs;
  +  bindMountOpts = { name, config, ... }: {
  +  
  +    options = {
  +      mountPoint = mkOption {
  +        example = "/mnt/usb";
  +        type = types.str;
  +        description = "Location of the mounted in the container file systems";
  +      };
  +      hostPath = mkOption {
  +        default = null;
  +        example = "/home/alice";
  +        type = types.uniq (types.nullOr types.string);
  +        description = "Location of the host path to be mounted";
  +      };
  +      isReadOnly = mkOption {
  +        default = false;
  +        example = true;
  +        type = types.bool;
  +        description = "Determine whether the mounted path will be accessed in read-only mode";
  +      };
  +    };
  +    
  +    config = {
  +      mountPoint = mkDefault name;
  +    };
  +    
  +  };
  +  
  +  mkBindFlag = d:
  +               let flagPrefix = if d.isReadOnly then " --bind-ro=" else " --bind=";
  +                   mountstr = if d.hostPath != null then "${d.hostPath}:${d.mountPoint}" else "${d.mountPoint}";
  +               in flagPrefix + mountstr ;
  +
  +  mkBindFlags = bs: concatMapStrings mkBindFlag (lib.attrValues bs);
   
   in
   
  
positive.code:               '';
              };
  
              extraBinds = mkOption {
                type = types.listOf types.attrs;
  	      default = [];
  	      example = [ { host = "/home/alice";
                              container = "/home";
  			    isReadOnly = false; }
                          ];
                description =
  	        ''
                    An extra list of directories that is bound to the container.
                  '';
              };
  
              #extraBindsRW = mkOption {
              #  type = types.listOf types.str;
  	    # default = [];
  	    #  example = [ "/home/alice" ];
              #  description =
  	    #    ''
              #      An extra list of directories that is bound to the container with read-only permission. 
              #    '';
              #};
  
            };
  
  
negative.code:              AUTO_START=1
             ''}
  
             EXTRABINDS="${mkBindFlags cfg.bindMounts}"
  
            '';
        }) config.containers;
  
      # Generate /etc/hosts entries for the containers.
      networking.extraHosts = concatStrings (mapAttrsToList (name: cfg: optionalString (cfg.localAddress != null)
  