[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: preseeding in auto mode URL syntax without hardcoding directory of release name



john doe <johndoe65534@mail.com> writes:

> At [1, B.2.3] says that if an URL has no slash in it 
> "d-i/trixie/./preseed.cfg" the default path will be used.
>
> Is there a way to have that same path for an other file than preseed.cfg 
> (E.G: "url=example.com/alternative.cfg" would translate to 
> "d-i/bookworm|trixie/./alternative.cfg")?

I suppose that we could perhaps do something like treating `~` as the
bit that gets expanded into the codename bit, but it seems like a bit of
a niche interest, and that code is already overly complicated.

What you probably ought to be doing instead is specifying the option you
want via the `classes` setting (an alias for `auto-install/classes`),
and then implementing the behaviour you want by setting `preseed/run` in
a minimal preseed.cfg, and having a script do whatever you want in
response to the classes= setting you specified.

So your preseed.cfg would just be:
=-=-=-=
d-i	preseed/run	string start.sh
=-=-=-=

and your start.sh would be something like:
=-=-=-=
#!/bin/sh
. /usr/share/debconf/confmodule

db_get auto-install/classes
db_set preseed/include "${RET:-default}".cfg;;
=-=-=-=
(you might want to check that the value of $RET makes sense before using
it)

Then the real configs go in `default.cfg` and `alternative.cfg`
(assuming you're planning on specifying `classes=alternative`)

If that works for you, please say so, and then I'll see if I can find a
good place to add it to the docs as as an example (suggestions, and MRs,
welcome :-) ).

You may be able to get inspiration from here:

  https://hands.com/d-i/

although the class handling there is quite deeply buried.

Here's a simpler example of using preseed/run to do odd things to D-I,
that while not involving classes, is easier to follow:

  https://hands.com/d-i/bug/846002/

BTW `auto-install/classes` is reserved for users (it is not used by D-I
internally), so it's there specifically for you to implement whatever
scheme you like.

Cheers, Phil.
-- 
Philip Hands -- https://hands.com/~phil

Attachment: signature.asc
Description: PGP signature


Reply to: