diff --git a/README.md b/README.md index 55c3583e..a36406cd 100644 --- a/README.md +++ b/README.md @@ -41,9 +41,9 @@ recursive layouts. Disko doesn't require installation: it can be run directly from nix-community repository. The [Quickstart Guide](./docs/quickstart.md) documents how to run -Disko in its simplest form when installing NixOS. Alternativly you can -also use the new [disko-install](./docs/disko-install.md) tool, which combines -the `disko` and `nixos-install` into one step. +Disko in its simplest form when installing NixOS. Alternativly you can also use +the new [disko-install](./docs/disko-install.md) tool, which combines the +`disko` and `nixos-install` into one step. For information on other use cases, including upgrading from an older version of **disko**, using **disko** without NixOS and downloading the module, see the @@ -120,7 +120,8 @@ This software is provided free under the ## Get in touch -We have a public matrix channel at [disko](https://matrix.to/#/#disko:nixos.org). +We have a public matrix channel at +[disko](https://matrix.to/#/#disko:nixos.org). --- diff --git a/docs/disko-images.md b/docs/disko-images.md index d03c0505..8ca0b69b 100644 --- a/docs/disko-images.md +++ b/docs/disko-images.md @@ -80,8 +80,8 @@ In the this example we create a flake containing a nixos configuration for The script will generate the actual image outside of the nix store in the current working directory. The create image names depend on the names used in - `disko.devices.disk` attrset in the NixOS configuration. In our code example it will - produce the following image: + `disko.devices.disk` attrset in the NixOS configuration. In our code example + it will produce the following image: ``` $ ls -la vdb.raw diff --git a/docs/reference.md b/docs/reference.md index d87f559f..104ba1da 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -41,4 +41,3 @@ Options: * --debug run with set -x ``` - diff --git a/docs/table-to-gpt.md b/docs/table-to-gpt.md index 60dbeb0b..e739379b 100644 --- a/docs/table-to-gpt.md +++ b/docs/table-to-gpt.md @@ -58,16 +58,21 @@ for example like this: ## Remediation -The new GPT layout (`type = "gpt"`) uses partlabels to realize the partiton numbering. For this reason you have to manually set up partition labels, if you want to resolve this issue. +The new GPT layout (`type = "gpt"`) uses partlabels to realize the partiton +numbering. For this reason you have to manually set up partition labels, if you +want to resolve this issue. ### Create GPT partition labels For each partition involved, create the partition label from these components: - The partition number (e.g. /dev/nvme0n**1**, or /dev/sda**1**) -- The parent type in your disko config (value of `disko.device.disk.example.type = "disk";`) -- The parent name in your disko config (attribute name of `disko.devices.disk.example`, so `example` in this example) -- The partition name in your disko config (attribute name of `disko.devices.disk.content.partitions.*.name`) +- The parent type in your disko config (value of + `disko.device.disk.example.type = "disk";`) +- The parent name in your disko config (attribute name of + `disko.devices.disk.example`, so `example` in this example) +- The partition name in your disko config (attribute name of + `disko.devices.disk.content.partitions.*.name`) ```bash # sgdisk -c 1:disk-example-ESP /dev/nvme0n1 @@ -84,14 +89,18 @@ Make the following changes to your disko configuration: 1. Set `disko.devices.disk.example.content.type = "gpt"` 1. Remove `disko.devices.disk.example.format` -1. Convert `disko.devices.disk.example.partitions` to an attribute set and promote the `name` field to the key for its partition -1. Add a `priority` field to each partition, to reflect the intended partition number +1. Convert `disko.devices.disk.example.partitions` to an attribute set and + promote the `name` field to the key for its partition +1. Add a `priority` field to each partition, to reflect the intended partition + number Then rebuild your system and reboot. ### Recovering from mistake -If you made a mistake here, your system will be waiting for devices to appear, and then run into timeouts. You can easily recover from this, since rebooting into an old generation will still use the legacy way of numbering of partitions. +If you made a mistake here, your system will be waiting for devices to appear, +and then run into timeouts. You can easily recover from this, since rebooting +into an old generation will still use the legacy way of numbering of partitions. ## Result diff --git a/install-cli.nix b/install-cli.nix index c173bf81..64081125 100644 --- a/install-cli.nix +++ b/install-cli.nix @@ -53,8 +53,8 @@ let boot.loader.efi.canTouchEfiVariables = lib.mkVMOverride writeEfiBootEntries; boot.loader.grub.devices = lib.mkVMOverride diskoSystem.config.boot.loader.grub.devices; imports = [ - ({ _file = "disko-install --system-config"; } // (builtins.fromJSON extraSystemConfig)) - ]; + ({ _file = "disko-install --system-config"; } // (builtins.fromJSON extraSystemConfig)) + ]; } ) ]; diff --git a/lib/make-disk-image.nix b/lib/make-disk-image.nix index 6f0178f2..a61e9376 100644 --- a/lib/make-disk-image.nix +++ b/lib/make-disk-image.nix @@ -82,9 +82,11 @@ let QEMU_OPTS = lib.concatStringsSep " " ([ "-drive if=pflash,format=raw,unit=0,readonly=on,file=${pkgs.OVMF.firmware}" "-drive if=pflash,format=raw,unit=1,file=efivars.fd" - ] ++ builtins.map (disk: - "-drive file=${disk.name}.raw,if=virtio,cache=unsafe,werror=report,format=raw" - ) (lib.attrValues nixosConfig.config.disko.devices.disk)); + ] ++ builtins.map + (disk: + "-drive file=${disk.name}.raw,if=virtio,cache=unsafe,werror=report,format=raw" + ) + (lib.attrValues nixosConfig.config.disko.devices.disk)); in { pure = vmTools.runInLinuxVM (pkgs.runCommand name diff --git a/tests/disko-install/default.nix b/tests/disko-install/default.nix index 48e1357f..be048789 100644 --- a/tests/disko-install/default.nix +++ b/tests/disko-install/default.nix @@ -4,7 +4,7 @@ let dependencies = [ self.nixosConfigurations.testmachine.pkgs.stdenv.drvPath - (self.nixosConfigurations.testmachine.pkgs.closureInfo { rootPaths = []; }).drvPath + (self.nixosConfigurations.testmachine.pkgs.closureInfo { rootPaths = [ ]; }).drvPath self.nixosConfigurations.testmachine.config.system.build.toplevel self.nixosConfigurations.testmachine.config.system.build.diskoScript ] ++ builtins.map (i: i.outPath) (builtins.attrValues self.inputs);