at 25.11-pre 1.1 kB view raw
1{ pkgs, ... }: 2{ 3 name = "bcachefs"; 4 meta.maintainers = with pkgs.lib.maintainers; [ Madouura ]; 5 6 nodes.machine = 7 { pkgs, ... }: 8 { 9 virtualisation.emptyDiskImages = [ 4096 ]; 10 networking.hostId = "deadbeef"; 11 boot.supportedFilesystems = [ "bcachefs" ]; 12 environment.systemPackages = with pkgs; [ 13 parted 14 keyutils 15 ]; 16 }; 17 18 testScript = '' 19 machine.succeed("modprobe bcachefs") 20 machine.succeed("bcachefs version") 21 machine.succeed("ls /dev") 22 23 machine.succeed( 24 "mkdir /tmp/mnt", 25 "udevadm settle", 26 "parted --script /dev/vdb mklabel msdos", 27 "parted --script /dev/vdb -- mkpart primary 1024M 50% mkpart primary 50% -1s", 28 "udevadm settle", 29 "echo password | bcachefs format --encrypted --metadata_replicas 2 --label vtest /dev/vdb1 /dev/vdb2", 30 "echo password | bcachefs unlock -k session /dev/vdb1", 31 "echo password | mount -t bcachefs /dev/vdb1:/dev/vdb2 /tmp/mnt", 32 "udevadm settle", 33 "bcachefs fs usage /tmp/mnt", 34 "umount /tmp/mnt", 35 "udevadm settle", 36 ) 37 ''; 38}