Commit Graph

101 Commits

Author SHA1 Message Date
Michael Shigorin
1e65a52c5e install2: cleanup everything too
This destructive target is like a "people's revolution":
almost nothing left.

Some need this to achieve jeos or chaos, respectively.
2014-03-24 21:56:29 +04:00
Michael Shigorin
9efac39013 install2: deduplicate removals
{lib,}bind shouldn't have to be removed twice, really.
2014-03-24 21:56:29 +04:00
Michael Shigorin
77a97594a5 install2: font utils have done their duty
By the time these hooks run the font packages' %post scriptlets
should have fired already; no need to carry the utilities on.

Yes these are bit-by-bit savings.  No it's too expensive still.
2014-03-24 21:56:29 +04:00
Michael Shigorin
48239f73e8 install2: drop wayland, EGL
Both might be useful in some context but serve no real need
given the installer one, at least this year.
2014-03-24 21:56:29 +04:00
Michael Shigorin
86ad2dec82 install2: cpp dependencies can go too
This rotten cherry-picking is ridiculous of course
but that's the price to pay for hard dependencies...
2014-03-24 21:56:27 +04:00
Michael Shigorin
ed67687d32 install2: drop common-licenses as well
These aren't going to be really needed in that environment,
please refer to the more complete environments like rescue,
live, or an installed system.
2014-03-24 21:55:55 +04:00
Michael Shigorin
9597b7471c install2: more cleanups
xterm is pulled in by xinitrc (as xvt),
xdg-utils by alterator-browser-qt (for xdg-open).
2014-03-24 21:55:55 +04:00
Michael Shigorin
db85d65b7d install2: sometimes we don't run xorg on hardware
...or are fine with fbdev like in case of installers,
especially minimalistic ones.
2014-03-24 21:55:54 +04:00
Michael Shigorin
3927ac2198 install2: more locale cleanups
My gut feeling is that we're not going to see glib2's
messages a lot within installer environment anyways.

And there's a forgotten /usr/share/X11/locale/ too.
2014-03-24 21:55:30 +04:00
Michael Shigorin
d871db1639 install2: drop lib{cloog-,}isl
These are required by no package after the intermediate
cleanup has finished.  Argh.
2014-03-24 21:55:12 +04:00
Michael Shigorin
5d8af5b77d install2: a tiny but useless directory
Installer doesn't do systemd and needs no service files.
2014-03-24 21:55:04 +04:00
Michael Shigorin
0ba5ad6486 install2: further reduce X driver bloat
An installer needs video playback acceleration
when it has some content to show and some means to;
as long as these are not supported just drop this
unconditionally.
2014-03-24 21:54:46 +04:00
Michael Shigorin
e75d647b70 install2: potentially cleanup crypto bits as well
These are only needed for alterator-vm when making
LUKS encrypted partitions; ideally the extra libraries
would be omitted automatically when luks isn't included.
2014-03-24 21:54:46 +04:00
Michael Shigorin
791a236a70 install2: make vnc cleanup conditional
At least don't purge it with no questions answered.
Thanks naf@ for posting #29901.
2014-03-24 21:54:46 +04:00
Michael Shigorin
4639e7960d install2: add installer-common-stage3
This package has replaced installer-feature-setup-network-stage3
without declaring that; it appears that installer-distro-altlinux-*
don't require it even if most of the others do.

This is to ensure it's included, at least at the moment.
2014-02-03 22:53:43 +04:00
Michael Shigorin
978984daf1 install2: put filesystem utils into installed system too
It's a tad pointless to be able to create a filesystem
but not to be able to fsck it at boot.
2014-01-13 21:29:54 +04:00
Michael Shigorin
f044f58775 install2, sound, vmguest: support led-ws modules
led@ has different kernel-modules-* package set,
some of those "standard" names are provided but
vbox* is not the case.

As our macros and helpers will grok this just fine,
let's add both variants so what's present gets in.
2013-12-25 02:21:00 +02:00
Michael Shigorin
f6f7caec30 install2: support vbox guest
It's still inconvenient to discover mouse pointer
captured inside a box, let's overthrow the hardware
node and free it.
2013-11-25 00:38:01 +04:00
Michael Shigorin
657c0bf6ef 00example, bootloader, install2: drop sub/main
sub/main subprofile should not be requested directly
as documented in its README but rather via use/repo/main;
let's fix this discrepancy and check that no regressions
come hurling down.
2013-11-24 21:29:04 +04:00
Michael Shigorin
9b91001f5e install2: minor EFI related tweak
INSTALL2_PACKAGES turned out to be sensitive to the
feature addition order: if efi was added before install2
then the packages added by the former were overridden
by the latter.

This is also related to commit g7b76c73 as +installer
can be added pretty much anywhere, there's no warranty
that use/install2 appears early enough in configuration
build-up sequence.
2013-05-27 13:30:11 +04:00
Michael Shigorin
7b76c73472 install2: introduced +installer mixin
This one is a part of a larger rewrite to move away from
distro-centric build-up to configuration-centric one with
the particular packaging being of secondary importance
compared to actual functionality.
2013-05-24 17:45:25 +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
Michael Shigorin
99a25867b2 initial luks feature
Based on timonbl4@'s advice; might need some bleeding edge
packages right now, feel free to ask (everything should be
in place by p7/branch though).
2012-11-19 23:26:51 +02:00
Timur Aitov
6ba5e45fbe don't cleanup crypto libraries (for LUKS) 2012-11-19 23:26:51 +02:00
Michael Shigorin
06b9785816 install2: drop empty tagged/image-scripts.d/
Tagged scripts got heavily postponed
for the lack of practicability
so far.
2012-11-19 23:26:51 +02:00
Michael Shigorin
653b8e1df8 initial EFI support
EFI/UEFI is mostly about partitioning and bootloader setup,
at least from a distribution's point of view; so the
appropriate tools should be handy and firmware interface
module should not be exterminated from installer images
but get autoloaded instead.

Please note that while there exists 32-bit x86 EFI
we don't bother with it at the time being: it's relevant
to some irrelevant Xeon systems as well as for the older
Intel Macs (<2008) that are long out of fashion anyways.
That is, initially we deal with x86_64 EFI only.
2012-11-19 23:26:51 +02:00
Michael Shigorin
30d0340d56 install2: added convenient filesystems support
Thanks Serg Markov for bringing my attention to this:
http://www.opennet.ru/openforum/vsluhforumID3/86552.html#61

While the official distros might skip some filesystems for
support reasons there's no reason for community distros to
do so either.

Let's try that with icewm.iso...

NB: installer has a misfeature of dropping jfs/reiserfs
    support in runtime unless "expertmode" magic word
    is on the kernel bootargs string (#27763, #17368).
2012-09-24 11:07:49 +04:00
Michael Shigorin
b21353a00c complex subprofile delimiter changed ("/" -> "@")
That sub/stage2/install2 was somewhat clumsy actually as it looked
like a hierarchical thing while being a substitution thing:
generic stage2 would get put in place renamed as install2.

This could only get worse with hierarchical features which have
already been both requested and considered for quite a time,
and "stage2 at install2" reads much more naturally.
2012-08-11 20:11:17 +03:00
Michael Shigorin
e36792ac90 lib/functions.mk: initial xport()
A few too many downstream makefiles employed the pattern
of "export GLOBAL_VAR := $(VAR)"; macroize that.
2012-07-02 16:14:34 +03:00
Michael Shigorin
11d4f4062e vm feature renamed to vmguest
The "vm" name became a bit confusing with the introduction
of build-vm feature; let's call this one "vmguest" until we do
hierarchical (sub)features.
2012-06-25 19:29:38 +03:00
Michael Shigorin
07d812d7ff 99cleanupdb: drop silly apt purge attempt
Why would anyone try to remove apt when it's needed
for package dependency tracking for the installation,
it only takes a less cursory look at the build.log
to figure out it didn't actually happen anyways...
2012-06-18 20:55:38 +03:00
Michael Shigorin
8989fc2771 added plymouth feature
An initial draft of it was done half a year ago but several tricky
thingies had kept the code from showing up as it was rather brittle
and incomplete.

This implementation involves quite a few changes all over the place
but finally works good enough for live and installer images.

Please pay attention to the versions of these packages:
- installer-feature-setup-plymouth (0.3.2-alt1+)
- branding-altlinux-sisyphus (20110706-alt2+ if used)
- plymouth (0.8.3-alt20.git20110406+)

See also:
- http://www.altlinux.org/Branding
- http://www.altlinux.org/Plymouth
2012-06-14 17:15:24 +03:00
Michael Shigorin
e6aa4eccd9 use/installer/kms
Just like livecd-install, graphical installer KMS support
looks better as an optional part of install2 feature.

Of course it's optional only if the release manager is fine
with VESA drivers and not KMS-requiring intel/radeon/nouveau;
thanks led@ for a confirmation just in case.
2012-05-10 21:18:02 +03:00
Michael Shigorin
c83cc111a6 initial kernel and metadata features
This further refines the modular build by making
metadata being a clearly separated feature rather
than having to rely on runtime tests, and also by
moving the code which cares for kernel bits of base
installation (.base list) in a feature of its own.

There's more to it but let's get the ball rolling first.
2012-05-10 21:18:02 +03:00
Michael Shigorin
4858791145 virtualbox feature renamed to vm, extended
Initial SPICE support has been added for kvm/libvirt installation
and boot-up using qxl and spice by default as proposed by shaba@.

VirtualBox part is shifted a level deeper correspondingly
but otherwise stays the same.
2012-04-18 21:04:11 +03:00
Michael Shigorin
74d1e45a1c docs update
Status updates and readability tweaks all over the place.
2012-04-02 18:13:14 +03:00
Michael Shigorin
1b885b3d24 cleanup scripts rehashed
There's much reason for reuse instead of duplication
among the different stage2-based subprofiles.

In particular, the rather monolithic driver cleanup script
of the ancient is better done in several clear pieces with
the final depmod run.

Scripts dropping apt/rpm databases will dump pkglist first.

A script purging /boot/* will honour live-install if present.

Minor inno^Wfixups all over the map too.
2012-03-31 21:08:09 +03:00
Michael Shigorin
b6e640bd8d slimmer webkiosk with Russian layout
Thanks someone for review and feedback:
http://www.opennet.ru/openforum/vsluhforumID3/83728.html#136

Better cleanup and i18n controls are due but in the meantime,
let's at least build something actually useful.
2012-03-26 23:17:41 +03:00
Michael Shigorin
80090d1f1a minor tweaks (no functional changes)
Mostly multiline compactions, but also use/install2/net
got factored out from distro/server-ovz for future reuse.
2012-03-21 15:55:24 +02:00
Michael Shigorin
345319805d 10bootloader: replace both grub and lilo
As it happens, I've stumbled upon a successfully built image
with alterator-grub in BASE and lilo in install2's installer-steps.
Of course the installer bailed out after dealing with packages :-/

Thanks Leo-sp50 for pointing out the (hopefully) right direction.
2012-02-09 17:47:10 +02:00
Michael Shigorin
3dd020338b "untag" install2 tagged scripts
So far the tagged scripts concept is too fragile,
and these were used unconditionally anyways.

features.in/Makefile is broken regarding copying
tagged scripts right now...
2012-02-07 22:19:17 +02:00
Michael Shigorin
d6972a39bf introduced THE_{KMODULES,PACKAGES,LISTS,GROUPS}
As too many things started duplicating between distros proper
and (e.g. corresponding) LiveCDs, it became apparent that a class
of entities which end up working for THE_USER (not a sysadmin,
and not a developer, just a Linux user) is in need.

So THE_KMODULES will power installed basesystem and live image,
while THE_PACKAGES, THE_LISTS and THE_GROUPS will participate
in building those.
2011-12-19 22:32:59 +02:00
Michael Shigorin
9cedefdba9 introduced add_feature function
The features might get copy-pasted (or even copied-and-pruned)
when initialized; there's an unneccessary duplication of the
function name in the line adding it to FEATURES list, thus
prone to being forgotten and causing some havoc later on.

It was wrong in the first place but tackling this with some
double-colon rules ran into terminality issues, and further
tortures were considered unneccessary.

The current solution isn't perfect (no completely transparent
function name registration upon corresponding target being called)
but at least it is an improvement...
2011-11-19 11:47:29 +02:00
Michael Shigorin
6a280d758d stage2-based debug fixup
Employed double colon targets to eliminate
  warning: ignoring old commands for target `debug'
2011-11-04 16:54:41 +02:00
Michael Shigorin
720a579690 wash, rinse, repeat
install2 cleanups:

- functionally indifferent ones: particularly, install2/*/98system's
  "mkdir -p /image" was superfluous as it was done by that time already
  by sub.in/stage2/image-scripts.d/00stage1

- taken apart, prepared for tags: so far it's a mostly moot change
  since the installer cleanup scripts themselves are mostly the same as
  preceding 90cleanup was (with some additions corresponding to recent
  kernel development); it's still unclear what the mechanism for
  configuring the cleanups in effect will be, either directory/package
  regex lists or tagged scripts excluded from execution by yet another tag

fixes:

- image.in/Makefile: fix metadata related test; the actual test was
  assuming that stage1 kernel means installer, which is not the case
  since generic stage2 introduction; oh well

- 85cleanup-lowmem: a "_" too much was the culprit in destroying the
  needed translations along with those deemed superfluous; thanks go to
  Oleg Ivanov and Lenar Shakirov for finding the bug and proposing the
  fix altogether

additions:

- features.in/Makefile: reworked help target; it was rather inaccessible
  due to BUILDDIR normally undefined at the time of direct make
  invocation, and BUILDDIR is normally defined during normal builds
  anyways so let's try it this way.

- README++

daydreams:

- 01-genbasedir: we should drop bzip2 compressed pkglists some day
  but see genbasedir and apt-cdrom first, 90-pkg.sh (alterator-pkg)
  will fail miserably otherwise
2011-11-04 16:15:31 +02:00
Michael Shigorin
5d37a0c54d avoid setting GLOBAL_* altogether
Applying set() and only set() to a GLOBAL_* is safe
but still a potentially confusing example; so let's
just do it right (and warn unsuspecting folks too).
2011-11-04 16:15:30 +02:00
Michael Shigorin
c5bf0529bc initial features.in/cleanup
This is a sort of anti-feature which removes and not builds;
still with mkimage-profiles' approach we can at least build
up the removal procedures as well.

It's what triggered the tagged scripts, BTW.
2011-11-04 16:15:30 +02:00
Michael Shigorin
0c98733338 install2: use HSH_EXCLUDE_DOCS too
The docs would be purged anyways, let's not install them either.
2011-11-04 16:15:30 +02:00
Michael Shigorin
774169c6cd COMMON_PACKAGES and SYSTEM_PACKAGES
It was clear that "common" isn't very apt for packages that
will get *everywhere*, and became apparent when the need for
a "base+live packages" variable arrived with powerbutton feature.

So:
- the former COMMON_PACKAGES are now SYSTEM_PACKAGES;
- COMMON_PACKAGES act as "BASE+LIVE_PACKAGES".

Note that SYSTEM_PACKAGES also got factored out from stage2 based
features into stage2 subprofile itself; cleanups were due as well.
2011-11-04 16:15:30 +02:00
Michael Shigorin
cf81cc6785 live, rescue, and use tags
It's still very immature -- base lists should be really base,
and functionality should be sorted out in more consistent way.
So far moved to tagged lists (which need some more experimentation
anyways to get both lists and their use more elegant).

- fixed live.iso (now actually useful):
  + extra cleanup was being done (coming from install2 case)
  + root user was password blocked
  + there was no unprivileged user (added "altlinux" w/o password)
  + added xdm setup hook for future X-based livecd flavours
  + several picks for a less slim "base" list
  + xdm login
- tweaked rescue.iso (added ext3grep)
2011-11-04 16:15:30 +02:00
Michael Shigorin
f5a8b89381 stage2 based live subprofiles, updated docs
- introduced generic stage2 subprofile (non-standalone)
- ported installer and rescue over to stage2/{install2,rescue}
- initial stage2/live (needs more work for sure)
- use make-initrd-propagator
- updated and somewhat extended doc/

NB: mind #26133, #26134
2011-11-04 16:15:30 +02:00