Commit graph

798 commits

Author SHA1 Message Date
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
Lassulus
d07de570ba
Merge pull request #532 from gehaxelt/gehaxelt-update-readme
Update README.md
2024-02-10 07:13:44 +07:00
Sebastian Neef
54274cc65f
Update README.md
Rename `/dev/nvme0n1` to `/dev/sda` to match the provided configuration.
2024-02-09 17:38:29 +01:00
NAHO
15b52c3c8a example: fix typo 2024-02-08 10:44:38 +01:00
github-actions[bot]
c49bb95ac8 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/79a13f1437e149dc7be2d1290c74d378dad60814' (2024-02-03)
  → 'github:NixOS/nixpkgs/f8e2ebd66d097614d51a56a755450d4ae1632df1' (2024-02-07)
2024-02-08 01:15:35 +00:00
github-actions[bot]
2e9b88f02e flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/160b762eda6d139ac10ae081f8f78d640dd523eb' (2024-01-27)
  → 'github:NixOS/nixpkgs/79a13f1437e149dc7be2d1290c74d378dad60814' (2024-02-03)
2024-02-05 01:19:32 +00:00
github-actions[bot]
f67ba65528 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/4fddc9be4eaf195d631333908f2a454b03628ee5' (2024-01-25)
  → 'github:NixOS/nixpkgs/160b762eda6d139ac10ae081f8f78d640dd523eb' (2024-01-27)
2024-01-29 01:18:04 +00:00
danjujan
f7424625dc
Rework Hybrid MBR https://github.com/nix-community/disko/pull/168 (#508)
Add hybrid MBR functionality to the gpt type
2024-01-26 21:59:23 +01:00
Jörg Thalheim
c12719812d bcachefs: stick to nixos's default bcachefs kernel 2024-01-26 09:38:59 +00:00
github-actions[bot]
5a2dc95464 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e5d1c87f5813afde2dda384ac807c57a105721cc' (2024-01-19)
  → 'github:NixOS/nixpkgs/b43bb235efeab5324c5e486882ef46749188eee2' (2024-01-23)
2024-01-25 01:24:19 +00:00
github-actions[bot]
9fcdf3375e flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/757637581797f148c50977b6127147c5d298f9e9' (2024-01-17)
  → 'github:NixOS/nixpkgs/e5d1c87f5813afde2dda384ac807c57a105721cc' (2024-01-19)
2024-01-22 02:26:05 +00:00
github-actions[bot]
0033adc6e3 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/ea780f3de2d169f982564128804841500e85e373' (2024-01-14)
  → 'github:NixOS/nixpkgs/757637581797f148c50977b6127147c5d298f9e9' (2024-01-17)
2024-01-18 01:22:53 +00:00
dependabot[bot]
d0b4408eaf build(deps): bump cachix/install-nix-action from 24 to 25
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 24 to 25.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v24...v25)

---
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-01-15 20:50:29 +01:00
Jörg Thalheim
38af7137e0 tests/bcachefs: switch to linux_latest 2024-01-15 14:29:04 +00:00
github-actions[bot]
2a561be6b5 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/eabe8d3eface69f5bb16c18f8662a702f50c20d5' (2024-01-09)
  → 'github:NixOS/nixpkgs/ea780f3de2d169f982564128804841500e85e373' (2024-01-14)
2024-01-15 01:25:59 +00:00