Commit graph

962 commits

Author SHA1 Message Date
github-actions[bot]
502241afa3 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/7872526e9c5332274ea5932a0c3270d6e4724f3b' (2024-03-19)
  → 'github:NixOS/nixpkgs/07262b18b97000d16a4bdb003418bd2fb067a932' (2024-03-25)
2024-03-28 01:18:20 +00:00
Jörg Thalheim
a6717b1afe disko-install: check if it runs as root 2024-03-26 14:19:03 +00:00
lassulus
5d2d3e421a
Merge pull request #580 from Janik-Haag/master
docs: update HowTo module instructions
2024-03-24 13:21:35 +07:00
Janik H.
307365d9f9
docs: update HowTo module instructions 2024-03-24 01:27:02 +01:00
lassulus
a8c966ee11
Merge pull request #578 from nix-community/zpool_update
types zpool: create pool if device is a zfs_member
2024-03-21 14:28:25 +07:00
lassulus
f6f2e009d6 types zpool: create pool if device is a zfs_member 2024-03-21 05:36:42 +01:00
github-actions[bot]
1efdc66977 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/34ad8c9f29a18b4dd97a9ad40ceb16954f24afe7' (2024-03-17)
  → 'github:NixOS/nixpkgs/7872526e9c5332274ea5932a0c3270d6e4724f3b' (2024-03-19)
2024-03-21 01:19:06 +00:00
lassulus
e9875b9690
Merge pull request #574 from nix-community/table_update_fix
types table: fix duplicate create run
2024-03-20 10:53:12 +07:00
lassulus
b7a91b50fd types table: fix duplicate create run 2024-03-20 03:26:36 +01:00
github-actions[bot]
c09c3a9639 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/a0906f14161a5c5792e9883117b9471f5bf6df72' (2024-03-13)
  → 'github:NixOS/nixpkgs/34ad8c9f29a18b4dd97a9ad40ceb16954f24afe7' (2024-03-17)
2024-03-18 01:19:08 +00:00
dependabot[bot]
21d89b333c build(deps): bump cachix/install-nix-action from 25 to 26
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 25 to 26.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v25...v26)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-14 15:51:43 +01:00
github-actions[bot]
cc69c2340b flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d40e866b1f98698d454dad8f592fe7616ff705a4' (2024-03-10)
  → 'github:NixOS/nixpkgs/a0906f14161a5c5792e9883117b9471f5bf6df72' (2024-03-13)
2024-03-14 01:19:15 +00:00
lassulus
59e50d4ecb
Merge pull request #568 from nix-community/idempotent-create
types *: make create idempotent
2024-03-13 19:22:52 +07:00
lassulus
f6b72bfed7 types *: make create idempotent 2024-03-13 09:58:33 +01:00
Jörg Thalheim
fe064a6393 use nom-build if available
Nicer progress bars etc
2024-03-11 16:10:06 +01:00
Jörg Thalheim
a949edef70 accept relative paths for flakes in disko/disko-install
builtins.getFlake wants absolute paths
2024-03-11 16:10:06 +01:00
Jörg Thalheim
5866ae41f7 disko-install: fix case where lib in NixOS is not defined
This seems like a recent addition that we don't have on all NixOS machines.
2024-03-11 16:10:06 +01:00
Jörg Thalheim
7d25dc74c5 docs: clarify generated image names 2024-03-11 11:27:55 +01:00
Jörg Thalheim
714768a174 docs: expand diskoImagesScript example 2024-03-11 09:40:38 +01:00
github-actions[bot]
d389901567 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/43d259f8d726113fac056e8bb17d5ac2dea3e0a8' (2024-03-05)
  → 'github:NixOS/nixpkgs/d40e866b1f98698d454dad8f592fe7616ff705a4' (2024-03-10)
2024-03-11 01:19:14 +00:00
Jörg Thalheim
72818e54ec move disko-install into disko package 2024-03-09 07:05:35 +00:00
github-actions[bot]
a2009bc2b4 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/fa9a51752f1b5de583ad5213eb621be071806663' (2024-03-02)
  → 'github:NixOS/nixpkgs/43d259f8d726113fac056e8bb17d5ac2dea3e0a8' (2024-03-05)
2024-03-07 01:05:29 +00:00
lassulus
ad5e8bd14d
Merge pull request #559 from Ma27/fix-manual-build
Fix manual build
2024-03-06 06:45:52 +07:00
Maximilian Bosch
007625baaa
Fix manual build
The option `disko.devices.lvm_vg.<name>.lvs.<name>.priority` depends on
a different option that's unset by default breaking the manual build
like this:

    … while evaluating the attribute 'optionalValue.value'

     at /nix/store/lwyjz70qh12nq6cb7fixl85vryzxqm3c-source/lib/modules.nix:856:5:

      855|
      856|     optionalValue =
         |     ^
      857|       if isDefined then { value = mergedValue; }

    … while evaluating a branch condition

     at /nix/store/lwyjz70qh12nq6cb7fixl85vryzxqm3c-source/lib/modules.nix:857:7:

      856|     optionalValue =
      857|       if isDefined then { value = mergedValue; }
         |       ^
      858|       else {};

    (stack trace truncated; use '--show-trace' to show the full trace)

    error: The option `disko.devices.lvm_vg.<name>.lvs.<name>.size' is used but not defined.

This is especially noticeable when using `documentation.nixos.includeAllModules` locally.

Fixed the issue itself by adding a `defaultText` and added the
`disko-doc` job to the `checks` output so that CI hopefully catches this
from now on.
2024-03-05 17:35:13 +01:00
Jörg Thalheim
cf185d687f disko-install: improve error message if disk is not passed 2024-03-05 14:03:10 +00:00
Jörg Thalheim
0d11aa8d64 disko-install: add extra-files option 2024-03-05 09:52:34 +00:00
Jörg Thalheim
337abec03f make disko-install captialize 2024-03-05 09:45:10 +00:00
Jörg Thalheim
3704ee3926 add efi var install option 2024-03-05 09:45:10 +00:00
Jörg Thalheim
f61c7d28d5 add documentation for disko-install 2024-03-05 09:45:10 +00:00
lassulus
05f0e3fd56 lib/tests: use startCommand for create_machine 2024-03-05 08:56:58 +01:00
Jörg Thalheim
0c9b003a48 bcachefs: drop zfs hack 2024-03-05 08:56:58 +01:00
lassulus
c54e7e2b2b
Merge pull request #553 from nix-community/long_device_names
types gpt: hash long device names
2024-03-05 07:46:52 +07:00
lassulus
6a423861cd
Merge pull request #555 from nix-community/dependabot/github_actions/DeterminateSystems/update-flake-lock-21
build(deps): bump DeterminateSystems/update-flake-lock from 20 to 21
2024-03-05 07:45:55 +07:00
dependabot[bot]
5c57c06779
build(deps): bump DeterminateSystems/update-flake-lock from 20 to 21
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock) from 20 to 21.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases)
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/v20...v21)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-04 19:50:30 +00:00
lassulus
561579a631 add long-device-name test & example 2024-03-04 14:55:56 +01:00
lassulus
56f6d3d4af types gpt: hash label if it's > 36 characters 2024-03-04 14:55:56 +01:00
lassulus
3cb3775f9b lib/tests: use startCommand for create_machine 2024-03-04 01:51:42 +01:00
lassulus
1f76b318aa
Merge pull request #552 from ivan770/lv-priority
lvm_vg: add priority option
2024-03-03 11:16:38 +07:00
ivan770
2ca4b06bdf lvm_vg: add priority option 2024-03-02 13:08:52 -05:00
Jörg Thalheim
bde7dd352c add disko-install command
disko-install combines disko and nixos-install into a single command.

Example usage:

  sudo ./disko-install --flake /someflake#eva --disk sda /dev/zvol/zroot/test
2024-03-01 09:48:08 +00:00
github-actions[bot]
a13f36255c flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b50a77c03d640716296021ad58950b1bb0345799' (2024-02-21)
  → 'github:NixOS/nixpkgs/9a9dae8f6319600fa9aebde37f340975cab4b8c0' (2024-02-24)
2024-02-26 01:19:10 +00:00
github-actions[bot]
23d308f005 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/045b51a3ae66f673ed44b5bbd1f4a341d96703bf' (2024-02-18)
  → 'github:NixOS/nixpkgs/b50a77c03d640716296021ad58950b1bb0345799' (2024-02-21)
2024-02-22 01:15:20 +00:00
Jörg Thalheim
590245271a add assertion if mirroredBoots is used in vm test 2024-02-22 00:01:18 +00:00
github-actions[bot]
1ae1f57dad flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/89653a03e0915e4a872788d10680e7eec92f8600' (2024-02-14)
  → 'github:NixOS/nixpkgs/045b51a3ae66f673ed44b5bbd1f4a341d96703bf' (2024-02-18)
2024-02-19 01:18:37 +00:00
lassulus
d8a4377cd8
Merge pull request #538 from nix-community/legacy_tables_warning
types table: add deprecation warning
2024-02-18 09:02:10 +07:00
lassulus
0661bb800c types table: add deprecation warning 2024-02-17 05:31:02 +01:00
github-actions[bot]
4d81082b2c flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/f8e2ebd66d097614d51a56a755450d4ae1632df1' (2024-02-07)
  → 'github:NixOS/nixpkgs/89653a03e0915e4a872788d10680e7eec92f8600' (2024-02-14)
2024-02-17 04:23:55 +00:00
lassulus
c13d481b78 hybrid-mbr: cleanup test, wait for udev after paritioning 2024-02-17 04:06:51 +00:00
Jason Yundt
810eccbad2 Allow Disko to be run in a systemd service
Before this change, if you created a systemd service that ran
“disko --mode disko <path-to-config>”, then you would (probably) get
this error:

    disk-deactivate: line 6: /dev/stderr: No such device or address

Since disk-deactivate uses “set -e”, that error would prevent
disk-deactivate from actually deactivating any disks. The problem is
that disk-deactivate tries to print text to stderr by doing this:

    echo "Text" >/dev/stderr

systemd.exec(5) explains why that doesn’t work and goes on to say [1]:

> This means when executing shell scripts the construct
> **echo "hello" > /dev/stderr** for writing text to stderr will not
> work. To mitigate this use the construct **echo "hello" >&2** instead,
> which is mostly equivalent and avoids this pitfall.

[1]: <https://www.freedesktop.org/software/systemd/man/latest/systemd.exec.html#StandardOutput=>

---

You can test this commit by doing the following:

1. Download a copy of this gist:
   <https://gist.github.com/Jayman2000/60b483659e89283716582ac38856dca6>

2.  Build a custom NixOS installation ISO that contains a systemd service
    that runs disko:

        nix-build --arg diskoDir <path-to-disko-repo> <path-to-gist>

    Once that command finishes, the ISO will be in ./result/iso/.

3. Create a VM. Make sure that it has a VirtIO disk that’s more than
   500M large. Also make sure that it has an optical disc drive.

4. Put the ISO file from step 2 into the VM’s optical disc drive.

5. Turn on the VM and boot into the installation ISO.

6. Start the systemd service:

    sudo systemctl start disko-test

7. Check journalctl to see if there are any errors related to
   disk-deactivate.
2024-02-15 20:31:41 +00:00
Jason Yundt
2cb47338ec List all copyright years 2024-02-15 20:31:41 +00:00