Commit Graph

347 Commits

Author SHA1 Message Date
Michael Shigorin
ee703cef93 factor out xdg-user-dirs feature
This script hook used to lurk in live feature but was deemed needed
in cubox images too; thus it's time to move it into a standalone
feature (maybe a configurable one, even).

Thanks glebfm@ for initial shot and sem@ for discussion.
2013-07-02 00:03:11 +04:00
Michael Shigorin
a97ef4c905 net, services: in Soviet Russia...
...net uses services, not services use net.  That is,
"network" is a service that needs to be enabled by the
now-existing mechanism of "services" feature, don't be
fooled by "network services" here.
2013-07-02 00:00:42 +04:00
Michael Shigorin
6889a65ebd armh.mk: use those new and shiny features for cubox
Some of those were long asking to be done but cubox project
managed to actually get them done at least to the extent
needed for it; so let's land those and prune things up a bit.
2013-07-02 00:00:30 +04:00
Michael Shigorin
5672e96c1f initial domain-client feature
Based on m-p-d's domain-client pkglist and scripts from
installer-feature-network-shares-client-stage3 package.

Many thanks to boyarsh@ for his kind help to get this working.

NB: this works on cubox but is not yet ready for installers!
2013-07-01 23:58:24 +04:00
Michael Shigorin
91f0c4217c obsoleted vm-net feature
Hooray, this one is almost retired by now!
2013-07-01 23:58:24 +04:00
Michael Shigorin
fb419a9f7d initial net-eth feature
This one is also putting an end to an overly long lived hack
named vm-net by replacing it with a bit more generic mechanism.
2013-07-01 23:58:24 +04:00
Michael Shigorin
3ee510aa3a initial net feature
This one supports /etc/net, NM and connman; pruning the tree
to get rid of hardwired remnants is going to take some more time.
2013-07-01 23:58:21 +04:00
Michael Shigorin
e543e6dd7b initial net-usershares feature
This is applicable at least to XFCE and MATE based images
(plugins for the appropriate file managers are available).

NB: basically untested with installers.
2013-07-01 23:36:20 +04:00
Michael Shigorin
a06a4852f0 slinux: added ARM specific target
It's different so far even if it should be more or less merged
some day so that the packagelists become reusable across x86/ARM.
2013-07-01 23:34:53 +04:00
Michael Shigorin
fac87182c9 initial oem feature
This is an experimental and known incomplete support
for the system configuration that has to be done at the
first boot-up by its user since it's their choice.

This draft uses systemd which has been a requirement :-/
Thanks sem@ for helping out with the somewhat tricky
unit file for alterator-setup.
2013-07-01 23:33:52 +04:00
Michael Shigorin
7f6947fd13 armh: cope with non-signed repository hashes
The '[alt]' signature reference in the stock package
doesn't fit current reality as the hash files for
Sisyphus/armh are *not* cryptographically signed.

This commit should be reverted when these are.
2013-06-21 22:25:17 +04:00
Michael Shigorin
a7e9cf88db deflogin: argh, fix silly thinko
That \t has lurked in the source variant of the script,
was fixed in features.in/live/live/image-scripts.d/30-users once
and still has managed to creep into this fork!

Ugh.
2013-06-20 13:45:35 +04:00
Michael Shigorin
7dae342db1 initial armh-cubox feature
This one cares for SolidRun Cubox support.
2013-06-17 19:29:12 +04:00
Michael Shigorin
6daf50b4c9 initial armh-dovefb feature
This one cares for the less platform-specific aspects
of Marvell Dove platform support.
2013-06-17 19:29:12 +04:00
Michael Shigorin
7409aa2fc1 armh: added umkimage support
It was actually done much earlier during an experiment with
Marvell ArmadaXP but is now integrated more or less properly.

NB: ext2 is not needed anymore (uboot should do it),
ext4 should become configurable by an existing knob.
2013-06-17 19:29:12 +04:00
Michael Shigorin
61ecd095bb x11: added use/x11/mate target
It was implemented in a pretty quick-and-dirty way
for regular-mate back then, clean things up a bit.
Package lists should be deduplicated either but
that's another story.
2013-06-17 19:29:12 +04:00
Michael Shigorin
d7689f30c7 tar2vm: rewrote as tar2fs
Overview of the changes:
- ARM support: separate ext2 /boot, no LILO
- avoid race condition with devmapper
- trap ERR so that -e in shebang doesn't result in extra cleanup hassle
- configurable root filesystem type (ext4 by default)
- jumps through parted hoops

Details:

1. LILO is x86-specific while the rest of the script can be used
   to prepare e.g. Marvell ArmadaXP or CuBox images; we can generally
   count on uboot supporting ext2 for relatively sane platforms but
   not ext4 that would be a better root filesystem performance-wise.

2. Apparently /dev/mapper/loopXpY can be still missing at the time
   when kpartx returns and pop up a bit later... sit there, wait
   and check for it.

3. If something went wrong with any command of the script it would bail out
   due to -e in shebang; it is now better to clean up the loopback device
   and its mappings in this situation either.

4. One size doesn't fit all, really.

5. The parted sizing was sloppy as in broken, now it's just half insane.
   Someone's decision to stick units and auto-alignment knobs into
   a single one was apparently hilarious...

   http://www.gnu.org/software/parted/manual/parted.html#unit

Manual loop/dm cleanup is described in documentation just in case.

/boot size meter is suboptimal in terms of additional I/O incurred,
will be most likely rewritten to make use of advance "du -s".
2013-06-17 19:29:11 +04:00
Michael Shigorin
3770ca2260 metadata: fix a tiny bitrot
The generated comment went wrong when the script was renamed.
2013-06-17 19:29:11 +04:00
Michael Shigorin
a00267ab8b live: disable dmeventd by default too
A service a day makes the boot a long wait!
2013-06-17 19:29:11 +04:00
Michael Shigorin
0d8e44d8fd x11-autologin: factor out x11-autostart
It has value of its own and can be used standalone;
autologin does require autostart though.

Adjust x11 feature targets accordingly.
2013-06-17 16:01:35 +04:00
Michael Shigorin
b683d5d751 live: factor out x11-autologin
Hardly belonged there in the first place and became a culprit
during armh branch development since it had to be forked in
an ugly manner; move to rootfs hooks and be done with it.

VM images will be able to benefit either *but* installed systems
might have some trouble when this is implemented:
http://lists.altlinux.org/pipermail/devel/2013-May/197447.html

Split off use/live/x11 as a common free/proprietary ground either
(this refactoring had to be performed in parallel with x11 feature
being revamped, diffs quickly became intertangled unfortunately).
2013-06-17 16:01:35 +04:00
Michael Shigorin
ea8a908931 x11: driver and purpose related refactoring
This has had several goals:
- a target suitable for x86 and armh providing a rather
  minimal set of base xorg packages and generic drivers;
- task-oriented targets for graphics use cases:
  + "desktop" means rather 2D focus with 3D being welcome
    or even essential but not performance critical, thus
    "a slower driver is fine as long as it does work";
  + "3d" means specific 3D performance being critical,
    that is "no 3D means no use at all".

Regarding the free and proprietary 3D-capable drivers:
the previous idea was to split out some common ground
and then add the contenders on top of that; the current
approach is based on the observation that the live images
requiring proprietary NVIDIA/AMD drivers *by default*
are usually of not much use with hardware that lacks
proper 3D acceleration (like Tseng cards) or the driver
support for that (like Matrox these days).

Intel videodriver makes for a special case though:
it is both free and top-notch performer.

Thanks sem@ and boyarsh@ for discussion.

PS: xorg-drv-{keyboard,mouse,void} dropped;
those who need these can usually help themselves.
2013-06-17 16:01:35 +04:00
Michael Shigorin
d9ca33af6d initial armh* features
These handle only VE-like products (think TWRP on Nexus 7);
the proper image support should be backported later on.

An experiment in layered configurations is still in its
early stages regarding ARM zoo...
2013-06-17 16:01:35 +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
b337e72ead initial init feature
This one is finally there and should help reduce the
systemd-induced mess in package lists and specifications.
2013-06-17 14:03:54 +04:00
Michael Shigorin
f1a165bbd6 fonts: consistency tweak
The issue is that use/fonts/infinality doesn't actually
require the script hook thus registering the feature's
name in FEATURES variable so that the feature's contents
get copied over is not neccessary (distcfg.mk build-up
will have happened anyways).

But that's confusing if one's forgot this peculiarity
(like me today) or never knew of it, so let's spare
some frustration.
2013-06-17 14:03:54 +04:00
Michael Shigorin
8d26de28a3 efi: generalize (stage2 += rootfs)
This feature is more generally applicable indeed;
might result in duplication due to the installer
components adding "efivars" independently but that
is to be sorted out later in those components:
- check whether it's added already sometime soon;
- maybe stop adding that at some point in the future.

install2 and rescue roots still need this too though.
2013-06-17 14:03:53 +04:00
Michael Shigorin
3e1685aeb6 fonts: generalize (stage2 -> rootfs)
This feature should be more generally applicable indeed.
2013-06-17 14:03:53 +04:00
Michael Shigorin
ee5dd31a71 build-{ve,vm}: handle THE_* and DOT_BASE too
Classic VEs don't carry any kernel since these are running
under a single OpenVZ (or potentially LXC) kernel image;
ARM Multiboot (TWRP in this particular case) allows to boot
off a chroot via kexec, and we need a kernel in it for that,
obviously.

No bootloader required inside such VE though.
2013-06-17 14:03:53 +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
Michael Shigorin
29ce07fb8d 00example: fixed a harmless typo
The script would work nevertheless (given the feature's included)
but lapses are especially wrong in examples.
2013-06-10 20:04:46 +04:00
Michael Shigorin
5b21100bed README update
These have been proofread somewhat to correspond
to the current state of affairs; a missing one
was added for fonts feature.
2013-06-10 19:43:31 +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
Michael Shigorin
8a8f8064ce live: extend user's group list with 'netadmin'
...so that they can run mtr, iftop and other goodies out-of-box;
thanks folks at forum.altlinux.org for a regular-icewm.iso
related feature request.
2013-05-23 22:42:40 +04:00
Michael Shigorin
31c6bb1f98 live: do not enable gdm
shaba@ says it's improper yet as prefdm is used (#28973).
2013-05-14 21:21:35 +04:00
Michael Shigorin
eaf287560f live: disable postfix as well
Another service that's not very useful on a LiveCD;
maybe should be enabled by default upon installation,
this also requires a proper framework in place.
2013-05-14 19:33:38 +04:00
Michael Shigorin
b1ce5a80ee Revert "vmguest: apply vboxdrv related workaround"
This reverts commit ae44169139
as libglx has been fixed already; see #27340 and #28782 for
the details, huge thanks go to Alexey Borisenkov for his
thorough investigation and patches as well as to shrek@
and sin@ for their cooperation to get this fixed in Sisyphus.
2013-05-08 03:14:49 +03:00
Michael Shigorin
6023d11521 rescue: tweaked pkglist and feature config
Moved the packages which impeded pkglist reuse for live distros
so that these stay within dedicated rescue images but don't
neccessarily go into the more generic ones where things like
fdisk are still quite useful.
2013-04-22 23:33:59 +04:00
Michael Shigorin
ae44169139 vmguest: apply vboxdrv related workaround
This is to cope with #28782 while the culprit is being found out;
not much of a loss while #27340 is open (thus no 3D with vboxdrv
anyways).

I chose to avoid pulling the service related machinery into
vmguest (and haven't got around to factoring it out from live
feature's scripts into a standalone form) so had to tweak these
as well.
2013-04-22 22:34:52 +04:00
Michael Shigorin
40743d3036 live: extend disabled services list
The newcomers have crept in with rescue+extra;
maybe it's not worth taking that one into every
regular image, after all...
2013-04-06 22:24:56 +04:00
Michael Shigorin
0f4ee98fa4 live: reworked use/live/repo
The expected behaviour is to have online repositories enabled
when the livecd is running; the trouble with runtime detection
relates to the asynchronous nature of network configuration,
connection might get probed just before it is brought up
(thus failing the test).

Systems having been installed-from-live don't misbehave this way
so left unmolested.

Runtime detection is still available via use/live/repo/online
but is definitely not the default mechanism.
2013-03-25 22:52:19 +02:00
Michael Shigorin
96e075ad28 live: added cpufreq-simple to enabled services
It's a worthwhile addition to virtually any LiveCD
thus usually included (but can be left disabled).
2013-03-25 22:52:19 +02:00
Michael Shigorin
4be9af9c31 x11: added gst-libav, pulseaudio to gnome3
The former helps totem a lot regarding actual video reproduction,
suggested for gnome3-default metapackage; the latter helps aris@
to actually get any sound out, so is supposed to land there too.
2013-03-25 22:52:19 +02:00
Michael Shigorin
e6f331e4d7 Revert "live: temporary #28669 workaround (drop fbdev)"
This reverts commit 9c766cd9e4
since vboxdrv is already fixed by sin@ (thanks a lot, great timing!).
2013-03-25 22:51:32 +02:00
Michael Shigorin
429ce58608 added live_rw support
There's a need for a separate boot target since
persistent storage is way slower than tmpfs indeed;
usbflash has a tendency for huge performance drops
given simultaneous writes in addition to reads which
are the bottleneck already.

make-initrd-propagator 0.18 introduced ext4 rw slice,
so the corresponding kernel module needs to be included
into stage1; see also #28289.

NB: not available on x86_64-efi (or hybrid GPT to be strict)
due to fragility of the hack being made: parted(8) panics
upon seeing that, and good ol' fdisk is unable to treat it.

NB: use/live/rw use/rescue/rx use/syslinux/ui/gfxboot
are unlikely to play very nice together due to the latter's
magic l10n: "session" label is taken by live_rw config snippet
and *is* translated in design-bootloader-source;
OTOH "rescue_session" is *not*.
2013-03-25 14:13:42 +04:00
Michael Shigorin
9c6b706576 isohybrid: drop postprocessing, xorriso is enough
The original mkisofs would only care for the proper ISO9660 image
but we've switched to xorriso which is able to perform the hack
to yield UEFI hybrid images; thus no need for the postprocessing.

Requires mkimage >= 0.2.5 and xorriso (obviously).
2013-03-25 14:13:42 +04:00
Denis Smirnov
298f44d360 Add use/x11/xmonad and desktop+xmonad package list 2013-03-20 02:23:05 +04:00
Michael Shigorin
a65d1c420c regular.mk: added wmaker livecd-install button
The setup has to be livecd-only thus made as a service, not a hook.
2013-03-18 16:36:59 +02:00
Michael Shigorin
d31a2ff745 regular.mk: initial regular-{wmaker,gnustep}
Thanks aen@ for the whole pkglist and vast amounts of advice
and inspiration; thanks real@ and kostyalamer for the packages
themselves.
2013-03-18 16:36:59 +02:00