anchor.diff:            WARNING #2: Do not use /dev/disk/by-uuid/… or /dev/disk/by-label/… as your swap device
             when using randomEncryption as the UUIDs and labels will get erased on every boot when
             the partition is encrypted. Best to use /dev/disk/by-partuuid/…
  -        '';
  -      };
  -
  -      randomEncryption.cipher = mkOption {
  -        default = "aes-xts-plain64";
  -        example = "serpent-xts-plain64";
  -        type = types.str;
  -        description = ''
  -          Use specified cipher for randomEncryption.
  -
  -          Hint: Run "cryptsetup benchmark" to see which one is fastest on your machine.
  -        '';
  -      };
  -
  -      randomEncryption.source = mkOption {
  -        default = "/dev/urandom";
  -        example = "/dev/random";
  -        type = types.str;
  -        description = ''
  -          Define the source of randomness to obtain a random key for encryption.
           '';
         };
   
  
positive.code: with lib;
  
  let
  
    swapCfg = {config, options, ...}: {
  
  
negative.code:         '';
        };
  
        randomEncryption = mkOption {
          default = false;
          example = {
            enable = true;
            cipher = "serpent-xts-plain64";
            source = "/dev/random";
          };
          type = types.coercedTo types.bool randomEncryptionCoerce (types.submodule randomEncryptionOpts);
          description = ''
            Encrypt swap device with a random key. This way you won't have a persistent swap device.
  
            HINT: run "cryptsetup benchmark" to test cipher performance on your machine.
  
            WARNING: Don't try to hibernate when you have at least one swap partition with
            this option enabled! We have no way to set the partition into which hibernation image
  