Skip to content

Commit d74db62

Browse files
Mitch FossenMic92
authored andcommitted
remove quotes from --label creation for bcachefs
fixes device groups, for example where the disko config given looks like: label = "fast.dev1"; after formatting, the device has a literal label of "fast.dev1" which breaks bcachefs device groups: echo fast > /sys/fs/bcachefs/<id>/options/foreground_target gives the error Invalid argument, echo fast.dev1 fails as well echo "\"fast\"" fails the same, however echo "\"fast.dev1\"" succeeds after this, device labels and groups work as expected and any component of the label can be used for a *_target
1 parent a4f7deb commit d74db62

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

lib/types/bcachefs.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
default = ''
6767
# Write device arguments to temporary directory for bcachefs_filesystem.
6868
{
69-
printf '%s\n' '--label="${config.label}"';
69+
printf '%s\n' '--label=${config.label}';
7070
${lib.concatMapStrings (args: ''printf '%s\n' '${args}';'') config.extraFormatArgs}
7171
printf '%s\n' '${config.device}';
7272
} >> "$disko_devices_dir/bcachefs-${lib.escapeShellArg config.filesystem}";

tests/bcachefs.nix

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,10 @@ diskoLib.testLib.makeDiskoTest {
4848
# Verify device membership and labels.
4949
machine.succeed("bcachefs show-super /dev/vda2 | grep 'Devices:' | grep -q '3'");
5050
machine.succeed("bcachefs show-super /dev/vdd1 | grep 'Devices:' | grep -q '1'");
51-
machine.succeed("bcachefs show-super /dev/vda2 | grep 'Label:' | grep -q 'vdb2'");
52-
machine.succeed("bcachefs show-super /dev/vda2 | grep 'Label:' | grep -q 'vdc1'");
53-
machine.succeed("bcachefs show-super /dev/vda2 | grep 'Label:' | grep -q 'vdd1'");
54-
machine.succeed("bcachefs show-super /dev/vdd1 | grep 'Label:' | grep -q 'vde1'");
51+
machine.succeed("bcachefs show-super /dev/vda2 | grep -qE '^[[:space:]]+Label:[[:space:]]+vdb2[[:space:]]\([[:digit:]]+\)'");
52+
machine.succeed("bcachefs show-super /dev/vda2 | grep -qE '^[[:space:]]+Label:[[:space:]]+vdc1[[:space:]]\([[:digit:]]+\)'");
53+
machine.succeed("bcachefs show-super /dev/vda2 | grep -qE '^[[:space:]]+Label:[[:space:]]+vdd1[[:space:]]\([[:digit:]]+\)'");
54+
machine.succeed("bcachefs show-super /dev/vdd1 | grep -qE '^[[:space:]]+Label:[[:space:]]+vde1[[:space:]]\([[:digit:]]+\)'");
5555
machine.fail("bcachefs show-super /dev/vda2 | grep 'Label:' | grep -q 'non-existent'");
5656
5757
# @todo Verify format arguments.

0 commit comments

Comments
 (0)