summaryrefslogtreecommitdiff
path: root/modules/disks
diff options
context:
space:
mode:
authorm4siri <git@m4siri.com>2025-11-23 10:36:43 +0545
committerm4siri <git@m4siri.com>2025-11-23 10:36:56 +0545
commit3424cfd40c046c038df0335212e8000ebd473602 (patch)
treefc800399450284e77be346311952968591a5534e /modules/disks
repo init
Diffstat (limited to 'modules/disks')
-rw-r--r--modules/disks/bcachefs/default.nix57
-rw-r--r--modules/disks/bcachefs/grub.nix7
2 files changed, 64 insertions, 0 deletions
diff --git a/modules/disks/bcachefs/default.nix b/modules/disks/bcachefs/default.nix
new file mode 100644
index 0000000..97c37c2
--- /dev/null
+++ b/modules/disks/bcachefs/default.nix
@@ -0,0 +1,57 @@
+{lib, ...}: {
+ disko.devices = {
+ disk = {
+ sda = {
+ device = "/dev/sda";
+ type = "disk";
+ content = {
+ type = "gpt";
+ partitions = {
+ boot = {
+ size = "1M";
+ type = "EF02";
+ };
+ sda2 = {
+ size = "1G";
+ content = {
+ type = "filesystem";
+ format = "ext4";
+ mountpoint = "/boot";
+ };
+ };
+
+ sda3 = {
+ size = "100%";
+ content = {
+ type = "bcachefs";
+ filesystem = "mounted_subvolumes_in_multi";
+ label = "group_a.sda2";
+ extraFormatArgs = [];
+ };
+ };
+ };
+ };
+ };
+ };
+ bcachefs_filesystems = {
+ mounted_subvolumes_in_multi = {
+ type = "bcachefs_filesystem";
+ extraFormatArgs = [
+ "--compression=lz4"
+ "--background_compression=lz4"
+ ];
+ subvolumes = {
+ "subvolumes/root" = {
+ mountpoint = "/";
+ mountOptions = [
+ "verbose"
+ ];
+ };
+ "subvolumes/nix" = {
+ mountpoint = "/nix";
+ };
+ };
+ };
+ };
+ };
+}
diff --git a/modules/disks/bcachefs/grub.nix b/modules/disks/bcachefs/grub.nix
new file mode 100644
index 0000000..ba886d2
--- /dev/null
+++ b/modules/disks/bcachefs/grub.nix
@@ -0,0 +1,7 @@
+{
+ boot.loader.grub = {
+ enable = true;
+ };
+
+ boot.supportedFilesystems = ["bcachefs"];
+}