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

Re: Various options in Debian Live



On 28/01/16 10:24 PM, Michael . wrote:
> I have saved a copy of Debian Live to my own github account to take a
> look at and have found some things that I never knew existed so I
> thought I'd ask about them and if they are usable. I also have some
> other questions relating to config settings.
>
> 1. In /usr/lib/live/build/config I have found an option "if [
> "${LB_DERIVATIVE}" = "true" ]" yet I have, that I can remember, never
> seen it mentioned in any documentation. Where is the actual setting
> for this?

It's an internal variable. That file is not intended to be read/edited.
Use the interface provided via 'lb config' instead.

Determining what the internal variables are used for and how they're set
can be determined by reading the code. (By definition, internal
variables are not intended for the user and so no user doc exists.)

See functions/defaults.sh:

        # Setting distribution name
        case "${LB_MODE}" in
                progress-linux)
                        LB_DISTRIBUTION="${LB_DISTRIBUTION:-cairon}"
                        LB_DERIVATIVE="true"
                        LB_DERIVATIVE_IS_BASED_ON="debian"
                        ;;

                *)
                        LB_DISTRIBUTION="${LB_DISTRIBUTION:-stretch}"
                        LB_DERIVATIVE="false"
                        ;;
        esac


Currently nothing but --mode progress-linux uses this. Other derivatives
could be made in similar fashion by forking live-build and adding a case
for each derivative in the fork for that derivative.

>
> 2. The options
> # $LB_PARENT_MIRROR_BOOTSTRAP: set parent mirror to bootstrap from
> # $LB_PARENT_MIRROR_CHROOT: set parent mirror to fetch packages from
> # $LB_PARENT_MIRROR_BINARY: set parent mirror which ends up in the image
> # $LB_PARENT_MIRROR_DEBIAN_INSTALLER: set debian-installer parent mirror
> # $LB_MIRROR_BOOTSTRAP: set mirror to bootstrap from
> # $LB_MIRROR_CHROOT: set mirror to fetch packages from
> # $LB_MIRROR_BINARY: set mirror which ends up in the image
> # $LB_MIRROR_DEBIAN_INSTALLER: set debian-installer mirror
> all default, and I assume are hard coded, to
> http://ftp.debian.org/debian/. I would like to change the hard coding
> to http://http.debian.net/debian/ so the download is automatically
> from the closest-fastest mirror but I am unsure what files contain
> these options coded into them.

The PARENT variables are also for the benefit of derivatives, and in
particular for an "is based on" derivative like progress-linux. Again,
simply grepping through the code is the most straightforward way of
finding out what they are and where they are used.

> FYI I am doing this to see if I can maintain live-build for my own
> purposes. My intent is to apply patches that have already been
> offered, if I can find them, in order to increase live-build's
> usability on EFI machines etc. I also intend to make kernel options
> easier to work with so I can choose either stable, backported, or even
> Liquorix kernel depending on my needs at the time.

Sounds like you're planning to start a personal fork. If so, I think it
would be better to help fix the bugs and get the patches into shape so
they can be accepted, thereby ensuring the version in Debian is actively
maintained. Please note that mere existence of patches attached to bugs
does not mean they are production-ready. They need to be reviewed,
discussed and rigorously tested along the road to final acceptance.

I'm sorry the state of live-build development is such that this is a
slow and somewhat unclear process, but as I've said before numerous
times, someone needs to take the lead to formally take over upstream
maintainership. That would be a person with a strong technical
grounding, experience with, proficiency in, and keen interest in
continuing to work with live-build, and ability to work with the Debian
Live team. They need not do all the work needed on live-build, but would
be taking on a leadership role, helping give direction to its future
development.

Regards,
Ben



Reply to: