Unable to use the anaconda-ks.cfg file generated by install from minutes ago to kickstart install

I installed fresh Fedora 38 using the netinst.iso and then I put the resulting anaconda-ks.cfg on my web server and tried to reinstall on the vm and I get this error.

Why? It’s the same vm and same iso.

I appears to be saying that the repos are not configured.

Does it work if you add these lines just before the %packages section?

Taken from fedora-repo-not-rawhide.ks:

repo --name=fedora --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
repo --name=updates --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
#repo --name=updates-testing --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-testing-f$releasever&arch=$basearch
url --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch

Nope. Still same error. I recorded the install session via VirtualBox Fedora_-screen0.webm - Google Drive. First w/o your edits and then with.

It might be because, by default, the installer looks for the needed installation files on the DVD (ref: anaconda-installer.readthedocs.io - boot-options - inst.repo). However, the netinst.iso image does not include those files. You might need to set something like inst.repo=https://download.fedoraproject.org/pub/fedora/linux/releases/38/Everything/x86_64/os/ in addition to inst.ks=....

Edit: Notice that early in your startup, it reports that it cannot find install.img. I suspect that is the root of the problem.

Edit2: You might be able to use $releasever and $basearch in place of 38 and x86_64, respectively, if you are trying to automate things (the variables should resolve to the values that correspond with the version of netinst.iso you are using).

The other issue is the Installation Destination. As I said, I used the same vm to test the kickstart that was created during the manual installation. In that manual installation, I had to remove the partitions that were there but that wasn’t captured in the kickstart so I added ‘clearpart --list=sda,sdb’ but that doesn’t work. Initially it had ‘clearpart --none --initlabel’ and that didn’t work either.

I see that fedora-disk-base.ks has:

clearpart --all --initlabel --disklabel=msdos

Though you may want to use gpt instead of msdos.

In any case, https://pagure.io/fedora-kickstarts/tree/main is a good place to look for inspiration.

I think I see the problem. --list=... is to clear partitions (e.g. sda1, sdb3, etc.). To clear the entire drive, you need to use --drives=... (i.e. clearpart --drives=sda,sdb).

There is some documentation here.