Commit Graph

28 Commits

Author SHA1 Message Date
Anton Midyukov
439fe29841 build-vm, mipsel-{bfk3,mitx}: Execute fstab scripts before 17-kernel
This is necessary for the 'rootfs' initrd feature to work properly
2021-02-14 23:22:56 +07:00
Anton Midyukov
e79b1385d4 build-vm: Add initrd features: kbd rdshell rootfs
This is a standard set of initrd features.
2021-02-14 23:22:56 +07:00
Anton Midyukov
563d99e199 build-vm: 17-kernel: Add -efu options to shebang, add verbose for make-initrd 2021-02-14 23:22:56 +07:00
Anton Midyukov
58e83cea49 build-vm, kernel: Not add specified initrd features into initrd.mk
This features not needed for auto-detect.
We also add features not only to initrd.mk, but also specify them
explicitly in the command.
2021-02-01 18:04:40 +07:00
Anton Midyukov
fe2b712557 build-vm: Added INITRDFEATURES to /etc/initrd.mk 2020-05-22 13:34:37 +07:00
Anton Midyukov
45c6adbf61 build-vm: fixed make-initrd for e2k 2020-05-22 13:34:35 +07:00
Anton Midyukov
cc248448a0 build-vm: running make-initrd later plymouth setup 2020-05-01 23:49:57 +07:00
Anton Midyukov
8c68a3c5d5 build-vm, kernel, uboot: setup /etc/fstab for build-vm
The entry in /etc/fstab about the mount parameters of the root
partition needs to be done not only for builds with u-boot.
But, if the record already exists, then it will not be added.
The file system type is set by the variable VM_FSTYPE.
2020-04-07 22:35:52 +07:00
Anton Midyukov
801e99b087 build-vm, kernel, uboot: return possibility of changing boot sequence of kernels
Since packet sorting is enabled by default, then
the order in KFLAVORS has ceased to matter.
Kernels are always installed in alphabetical order.
Therefore, it makes no sense to sort by buildtime.
See-also: https://bugzilla.altlinux.org/show_bug.cgi?id=30806

Also fixed my typo. When creating a symlink, the variable
$kver was used, i.e. the entire list of kernels, not the
last value $KVER of the list.
2020-04-07 22:35:52 +07:00
Anton Midyukov
8d4c094093 build-vm: drop 04-inittab
Not used by systemd and looks obsolete generally
as sysvinit-based disk images aren't really targeting
low-resource systems these days _by default_ but rather
_can_ target those as well; feel free to reconstruct
these "RAM saving" bits as a part of e.g. lowmem patch.
2019-09-30 21:19:22 +03:00
Anton Midyukov
0fe6b1ee7d build-vm: 07-kernel: all initrd modules are optional
The problem at hand is that different kernels can have
varying module sets, and it makes sense to put four of
those at once sometimes; so avoid silly build breakage.
2019-09-16 21:21:39 +03:00
Anton Midyukov
a8b1f11f2e build-vm: handle multiple kernels either again
KFLAVOURS can describe more than one kernel, get iterator back.

Fixes: 27674e297b
2019-08-30 19:23:16 +03:00
Anton Midyukov
8e1dd12f8e kernel, tar2fs: do not create /boot/.origver 2019-08-19 23:18:31 +03:00
Anton Midyukov
05d628313d build-vm: if make-initrd failed then exit 2019-08-19 23:17:43 +03:00
Anton Midyukov
27674e297b build-vm, kernel, tar2fs: make-initrd happens now in build-vm
NB: 07-kernel change breaks multi-kernel setup!

Breaks: 650e92bf7f
2019-08-19 23:16:06 +03:00
Anton Midyukov
ac489474a3 build-{ve,vm}: there can be no syslogd
...if it's a systemd-based image; no real error then.
2019-01-14 17:00:37 +03:00
Michael Shigorin
650e92bf7f build-vm, tar2fs: handle multiple kernels either
This was crucial for e2k rescue image supporting
multiple CPU versions but can be useful elsewhere.
2018-05-21 22:50:00 +03:00
Michael Shigorin
d813c43112 build-vm: spare all gettys on e2k
It has no VM hypervisor so far, the images are intended
for bare metal execution.
2018-04-04 12:46:21 +03:00
Michael Shigorin
3d7a0c5c39 build-vm, tar2fs: unify kver handling
No need to deduce kernel version again,
just save it in a temporary file.

The main reason to change what worked is
that e2k kernel-image package has Linux bits
named as image-$kver and not vmlinuz-$kver;
the guessing logic taking all of this into
account resulted in non-aesthetic patch.

NB: there's a duplicating script within
    kernel feature; it wasn't easy to avoid
    this and it might differ when handling
    multiple kernels, I didn't think much
    about this now as vm images tend to ship
    with the sole one.
2017-08-02 22:13:44 +03:00
Michael Shigorin
39fa788ac8 build-vm: update referenced script name
It's probably a good year to get rid of this reference practice
resulting in a known sort of misdocumentation over time :-/
2015-01-05 11:18:48 +03:00
Michael Shigorin
3f547e2504 documentation: use paths relative to toplevel dir
This change is done to reduce ambiguity in some cases;
the previous intention has been to ease navigation when
staying in a particular directory, now it's been changed
in favour of convenient toplevel `git grep' in fact.

Both variants have their pros and cons, I just find myself
leaning to this one by now hence the commit.  Feel free to
provide constructive criticism :)

Some path-related bitrot has also been fixed while at that.
2014-03-05 21:36:30 +04:00
Michael Shigorin
d22c793ee9 initial deflogin feature (security sensitive!)
The feature officially introduces the "engineering passwords"
including empty ones which have been around since forever but
weren't properly managed (and still are not, at least until
there are no stray passwd/chpasswd/usermod calls in both the
profile, installer-features and all the other related parts).

It is based on an m-p-d init3-users script by stanv@ but was
cleaned up and restructured in a pretty severe manner; thanks
glebfm@ for additional discussion.

This also cleans up the kludge previously stuck into build-vm.

Note that vm/icewm sports graphical autologin now as well as
the default root password (which can be overridden by passing
ROOTPW=... to make but it is a change from the previous state
of affairs indeed).
2013-06-17 14:03:54 +04:00
Michael Shigorin
67adab492f initial rootfs subprofile and services feature
This subprofile is akin to THE_* variables family: the configuration
bits and script hooks sitting there influence whatever chroot is
declared to be the user facing one in the end, whether it comes
from vm image or live subprofile.

The services feature ought to be a changeset of its own which would
be based on rootfs and become the base for ve/vm changes but I chose
to just do it atomically; some pre-existing duplicates are pruned now.
2013-06-17 14:03:53 +04:00
Denis Smirnov
7f805cdf79 Rename all scripts in */image-scripts.d to format \d\d-scriptname 2013-01-06 12:05:32 +04:00
Denis Smirnov
c509ddb954 /etc/firsttime.d support 2013-01-06 00:10:46 +04:00
Michael Shigorin
09be84beee initial vm-{net,ssh} features
A virtual machine isn't very useful if there are no means
to access it; let's bring up the basic networking and provide
root SSH access via pre-existing public key.

As the remote access with known default credentials is roughly
equivalent to just lending one's VMs to anyone with network
access to it, the fallback root password is now exterminated;
you have to provide one (or a long enough random string
if you plan to use keys only, see e.g. apg utility).
2012-06-25 19:29:38 +03:00
Michael Shigorin
b24bd31f45 build-vm: 06syslog should differ from VE's one
There's no need to disable console as it's emulated too,
and it still can be helpful or just convenient.
2012-06-25 19:29:38 +03:00
Michael Shigorin
75f7c62bd1 initial build-vm feature
Yes, mkimage-profiles is now able to build VM disk images.
So far the support is pretty basic:

- a single hard drive image with a single partition/FS
- only stock root password is configurable
- LILO is hardwired as a bootloader

The resulting images tend to boot under qemu/kvm though.

Please see doc/vm.txt for the warning regarding additional
privileges and setup required.  This was started back in
February but I still hoped to avoid sudo/privileged helper
(and libguestfs is almost as undistributable as can be)...

Thanks:

- http://blog.quinthar.com/2008/07/building-1gb-bootable-qemu-image-using.html
- Alexey Morarash who reworked that as https://github.com/tuxofil/linsygen
- led@, legion@, vitty@, aen@ for providing advice and inspiration
2012-06-18 21:56:46 +03:00