Compare commits

...

73 Commits

Author SHA1 Message Date
Michael Shigorin
3b2a0649bf 1.0.1-alt0.M70T.1
- important bugfix: THE_PACKAGES weren't getting through to .base
  (backported from 1.1.14)
2013-11-25 21:06:01 +04:00
Michael Shigorin
7929f61cad metadata: fix THE_PACKAGES processing
Actually the issue was worse in general: *_PACKAGES
weren't quoted when put into .base thus resulting
in a potentially broken echo command (silent one).

The macro scheme used was overgeneralized; stuffing
quoting differentiation into it was doable but ugly
(unless one is able to pass an unquoted quote sign
as a function's parameter in some elegant manner),
let's just make it straightforward.
2013-11-25 09:33:54 +04:00
Michael Shigorin
dfaf3fe3ef gear-store-tags 2013-06-17 14:03:30 +04:00
Michael Shigorin
5ffd07c65e 1.0.0-alt1
- 1.0
2013-06-17 14:02:13 +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
aa19008b22 gear-store-tags 2013-06-10 20:01:07 +04:00
Michael Shigorin
57b368d75d 0.9.16-alt1
- 1.0pre
2013-06-10 19:43:31 +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
52a6d4fd7a initial conf.d/p7.mk
Not as clean as it should be unfortunately,
main.mk has to be reworked to drop the crap...
2013-06-10 19:43:31 +04:00
Michael Shigorin
b195d895d5 regular.mk: add infinality font setup to e17
Looks better indeed, thanks cow@.
2013-06-04 12:31:04 +04:00
Michael Shigorin
3703a758a9 regular.mk: use lightdm instead of gdm3 for cinnamon
...and switch to cinnamon-regular metapackage in general:
the remaining blocker being gdm required by that and not
actually going to work (it used to start gnome-shell which
wouldn't work in that configuration either) is now fixed,
thanks cow@.

PS: plymouth is moved upstream, drop the dup.
2013-06-04 12:30:25 +04:00
Michael Shigorin
ec1b9230b3 gear-store-tags 2013-05-27 13:44:18 +04:00
Michael Shigorin
3fb5bbd846 0.9.15-alt1
- +installer
2013-05-27 13:43:28 +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
f18530f85b regular.mk: initial regular-server
A simple server image has been a pretty popular request
roughly always; thanks asy@ for specification draft.
2013-05-27 13:25:07 +04:00
Michael Shigorin
976a91e8f1 {base,desktop}+regular: move desktop bits from base
There were several packages which don't really belong to base
list but rather to the desktop one; given that both of these
are included in desktop images it's a no-op for them but the
server ones might be better off without graphics.
2013-05-24 17:45:25 +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
c58c7e36e0 regular.mk: moved use/luks to .regular-base
Commit g2b975e1 got it wrong for server-regular as it turns out now,
at least until that image decides to support LUKS either.
2013-05-24 17:33:04 +04:00
Michael Shigorin
95900b2131 server.mk: minor refactoring
There was no real reason to use/cleanup/x11-alterator downstream
every time instead of promoting it upstream to the common point.
2013-05-24 17:33:04 +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
3038cf6d1c regular.mk: care for pre-existing filesystems too
The installed livecd would lack fstab entries for the filesystems
other than those mounted explicitly during partition step; while
this might be considered either bug or feature, let's try that
and see.
2013-05-23 16:09:16 +04:00
Michael Shigorin
e319472b85 base+regular: re-added mkfs.*
Whoops: XFS, JFS, NTFS, FAT support has been lost while dancing
with reusing rescue lists and back to being lean.

Thanks Vladimir Gusev for spotting [a part of] this.
2013-05-23 16:00:23 +04:00
Michael Shigorin
727f0c8384 regular.mk: re-added plymouth support to cinnamon
Thanks cow@ cinnamon is back in Sisyphus thus in regular builds;
the old gdm3/plymouth issue seems gone just as with gnome3 flavour.
2013-05-23 15:54:17 +04:00
Michael Shigorin
8bf876f16b gear-store-tags 2013-05-20 13:11:43 +03:00
Michael Shigorin
859f8b8ea3 0.9.14-alt1
- more regular fixes
2013-05-20 13:10:49 +03:00
Michael Shigorin
51e1719f39 regular.mk: re-enabled plymouth for regular-gnome3.iso
The temporary problem between gdm and plymouth
seems gone, just get this back.
2013-05-14 21:55:07 +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
8673c78564 base+regular: added mdadm support
Thanks shaba@ for the bugreport:
http://lists.altlinux.org/pipermail/sisyphus/2013-May/360713.html
2013-05-14 18:22:04 +03:00
Michael Shigorin
c6f1671b5a gear-store-tags 2013-05-13 23:09:39 +03:00
Michael Shigorin
4b642fe538 0.9.13-alt1
- regular fixes
2013-05-13 21:58:45 +03: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
754d1bda3e base+regular: added LVM support
Otherwise these packages would have had to be installed
by hand just to deploy onto LVM volumes.

Thanks those testing p7 starter kit images.
2013-05-04 18:51:23 +03:00
Michael Shigorin
2638358d7e base+regular: added bash-completion
...as suggested for p7 starter kits.
2013-05-03 22:52:00 +03:00
Michael Shigorin
8a007449ce desktop+tde: added hal
rom_as@ asked for it to be added:
http://lists.altlinux.org/pipermail/devel-distro/2013-April/001220.html
2013-04-29 16:04:42 +04:00
Michael Shigorin
ba71869bbd gear-store-tags 2013-04-22 23:48:13 +04:00
Michael Shigorin
23abf2aaf5 0.9.12-alt1
- four weeks later...
2013-04-22 23:45:36 +04:00
Michael Shigorin
d849d26397 regular.mk: reduced rescue participation somewhat
The regular images became a bit too fat and rescueish
with all the good stuff going into rescue+extra pkglist;
that stuff does belong to dedicated rescue images but not
to each and every one.

The base+rescue pkglist has been tailored to take this
into account so we can now make regular-*.iso more fit too.
2013-04-22 23:34:04 +04: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
6c9ca9af08 tar2vm: added xfs note
The issue at hand is the ability to accomodate boot sector
payload at the start of the filesystem's underlying block device.

XFS doesn't spare that space.

Thanks vsu@ for the reminder, by the way.
2013-04-19 21:00:29 +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
b3da3da5a1 security+extra: added mcelog
Hardware reliability is somewhat related; this ought to be
moved elsewhere if/when more specifically reliability related
packages get there.
2013-04-06 22:24:56 +04:00
Dmitriy Khanzhin
c6a247029b regular.mk: added icewm-startup-xxkb-tray and icewm-startup-tray_mixer_plus 2013-04-02 16:26:52 +04:00
Michael Shigorin
c3a76bc1a7 gear-store-tags 2013-03-25 22:54:22 +02:00
Michael Shigorin
79a98d7834 0.9.11-alt1
- persistent icewm
2013-03-25 22:52:19 +02:00
Michael Shigorin
d1aaa2d3a5 QUICKSTART: tweaked build example for readability
aris@ suggested that the most important variables,
namely ARCH and APTCONF, be spelled out explicitly.
2013-03-25 22:52:19 +02:00
Michael Shigorin
5b77d22238 added desktop+xmonad+extra
aen@ suggested that darcs be added too
(due to it being mentioned on xmonad.org).
2013-03-25 22:52:19 +02:00
Michael Shigorin
cbb94da6c4 live.mk: added rw capability to live-builder
It might benefit the existing users to be able to configure the
build node persistently across reboots; though the need for something
like NFS overlay or repo settings piggybacked over DHCP is still there
(just ask ildar@).
2013-03-25 22:52:19 +02:00
Michael Shigorin
d57c9f1969 live.mk: live-builder moved to use/live/repo
livecd-online-repo is not reliable enough...
2013-03-25 22:52:19 +02: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
1a7656b977 regular.mk: move -icewm packages to a pkglist
There happened to be quite a few of those added while working
with forum feedback but let's keep the makefile rather clean :-)
2013-03-25 22:52:19 +02:00
Michael Shigorin
e2a7465ee7 regular.mk: added leafpad to icewm
Thanks Speccyfighter and YYY at the forum:
http://forum.altlinux.org/index.php/topic,28619.msg201262.html#msg201262
2013-03-25 22:52:19 +02:00
Michael Shigorin
e65729b864 initial Kazakh language support
Thanks to Baurzhan Muftakhidinov's efforts along with help
from cas@ and zerg@, regular images should now support Kazakh
fairly well at least in terms of translation; this commit amends
these images with Ukrainian too and adds an experimental razorqt
based distribution that boots in kk_KZ by default.
2013-03-25 22:52:19 +02:00
Michael Shigorin
f4b88dc235 regular.mk: added fuse-exfat
...as proposed by Nenderus at the forum:
http://forum.altlinux.org/index.php/topic,28889.msg201168.html#msg201168
2013-03-25 22:52:19 +02:00
Michael Shigorin
4add5b8333 regular.mk: added rp-pppoe-gui to icewm
There's no NetworkManager or connman in this lightweight image
so let's put at least the lightweight connection specific GUIs
like this one; proposed on the forum by Speccyfighter and
acked by squire as useful for traffic-metered plans:
http://forum.altlinux.org/index.php/topic,28619.msg201159.html#msg201159
2013-03-25 22:52:19 +02:00
Michael Shigorin
d0a082029f desktop+regular: drop system-config-printer
Suggested by YYY; the initial plan was to include CUPS
in all the regular images but that turned out to be
impractical (too much bits added with too few actual
usage per bit expected).

So let's take s-c-p along with cups.
2013-03-25 22:52:19 +02:00
Michael Shigorin
9caa00e7b8 regular.mk: added SysVinit-usermode to icewm
Thanks YYY for suggestion aimed at enabling user-triggered
shutdown and reboot actions.
2013-03-25 22:52:19 +02:00
Michael Shigorin
f32da3af06 regular.mk: added tray_mixer_plus to icewm
Thanks YYY at the forum for both the package and suggestion;
see http://forum.altlinux.org/index.php/topic,8683.0.html
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
84f2231297 regular.mk: added screengrab, gqview to icewm
...and design-icewm-themes either.

Thanks Speccyfighter for this suggestion.
2013-03-25 22:52:19 +02:00
Michael Shigorin
6e51ce11f5 regular.mk: added sysklogd to icewm
A syslogd is required by interactivesystem and we definitely
don't want any extra systemd on a sysvinit image.

Thanks Speccyfighter on the forum for the observation.
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
2b975e1bb8 regular.mk: left use/luks in bare
A duplicate has formed while factoring out bare target;
as currently only the rescue image uses it in a special way
and that one benefits from additional crypto packages as well,
let's put LUKS related packages into bare for the time being.
2013-03-25 22:52:19 +02:00
Michael Shigorin
4aaf58c69b regular.mk: moved +vmguest from bare to base
Otherwise virtualbox-guest-additions pull xinitrc in
which results in a whole bunch of extra X packages
(see also #28111).
2013-03-25 22:52:18 +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
e7a18c232a regular.mk: add persistent storage capability
The persistent storage is a nice addition to LiveCD images;
it doesn't come for free though in terms of performance
(especially for the first boot), so it should stay optional.

Note that use/live/rw belongs to base and not bare since
otherwise rescue becomes rescue+live which is superfluous;
hence the special use/rescue/rw.
2013-03-25 14:13:42 +04: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
e5533a7d6b xmonad: add livecd-regular-xmonad 2013-03-20 02:24:28 +04:00
Denis Smirnov
203ef6f0fc regular.mk: add regular-xmonad 2013-03-20 02:23:44 +04:00
Denis Smirnov
298f44d360 Add use/x11/xmonad and desktop+xmonad package list 2013-03-20 02:23:05 +04:00
Michael Shigorin
011d8634fc gear-store-tags 2013-03-18 16:37:53 +02:00
69 changed files with 402 additions and 178 deletions

View File

@@ -1,6 +1,6 @@
Name: mkimage-profiles
Version: 0.9.10
Release: alt1
Version: 1.0.1
Release: alt0.M70T.1
Summary: ALT Linux based distribution metaprofile
License: GPLv2+
@@ -78,6 +78,31 @@ cp -a * %buildroot%mpdir
%doc %docs/*
%changelog
* Mon Nov 25 2013 Michael Shigorin <mike@altlinux.org> 1.0.1-alt0.M70T.1
- important bugfix: THE_PACKAGES weren't getting through to .base
(backported from 1.1.14)
* Mon Jun 17 2013 Michael Shigorin <mike@altlinux.org> 1.0.0-alt1
- 1.0
* Mon Jun 10 2013 Michael Shigorin <mike@altlinux.org> 0.9.16-alt1
- 1.0pre
* Mon May 27 2013 Michael Shigorin <mike@altlinux.org> 0.9.15-alt1
- +installer
* Mon May 20 2013 Michael Shigorin <mike@altlinux.org> 0.9.14-alt1
- more regular fixes
* Mon May 13 2013 Michael Shigorin <mike@altlinux.org> 0.9.13-alt1
- regular fixes
* Mon Apr 22 2013 Michael Shigorin <mike@altlinux.org> 0.9.12-alt1
- four weeks later...
* Mon Mar 25 2013 Michael Shigorin <mike@altlinux.org> 0.9.11-alt1
- persistent icewm
* Mon Mar 18 2013 Michael Shigorin <mike@altlinux.org> 0.9.10-alt1
- fonts: axios!

View File

@@ -1,6 +0,0 @@
object 6605eb61bdecf70b2de7ca5cf96d0b1fa341aab6
type commit
tag v0.9.9
tagger Michael Shigorin <mike@altlinux.org> 1361826022 +0400
regular refactoring

View File

@@ -0,0 +1,6 @@
object 5ffd07c65e360561c7a04f41aff746d9caa165cd
type commit
tag v1.0.0
tagger Michael Shigorin <mike@altlinux.org> 1371463392 +0400
1.0

View File

@@ -1 +1 @@
432f34bfd2a6ee1047c2c7263bca2038fe14f3e7 v0.9.9
5f4103e2678b4db8760eda8622f094f694f9cdcd v1.0.0

View File

@@ -30,7 +30,7 @@ $ git config --global user.name "My Name"
$ mkdir ~/out
----
тестовая сборка (см. тж. lib/distro.mk, doc/params.txt)::
тестовая сборка::
----
$ make syslinux.iso
----
@@ -40,6 +40,11 @@ $ make syslinux.iso
$ make help
----
переменные, влияющие на результат (подробнее в doc/params.txt)::
---
$ make ARCH=i586 APTCONF=~/apt/apt.conf.i586 REPORT=1 ve/generic.tar
---
ссылки
~~~~~~
- http://www.altlinux.org/tmpfs

7
README
View File

@@ -1,5 +1,6 @@
[float]
=== Welcome to mkimage-profiles! ===
== Welcome to m-p! ==
*Brief summary*
Configurables: ~/.mkimage/profiles.mk;
see doc/params.txt and conf.d/README
@@ -43,7 +44,7 @@
* субпрофили:
** список собирается в $(SUBPROFILES)
** базовые комплекты помещены в подкаталогах под sub.in/;
их наборы скриптов могут расширяться фичами
их наборы скриптов могут расширяться фичами
* фичи:
** законченные блоки функциональности (или наборы таковых)
** описываются в индивидуальных features.in/*/config.mk

View File

@@ -35,6 +35,7 @@ DISKSIZE="${3:-${DEFSIZE:-268435456}}"
DISKSIZEM="$(($DISKSIZE / 1048576))"
# tested to work: ext[234], jfs
# NB: xfs doesn't have a spare sector for the bootloader
ROOTFSTYPE="${4:-ext4}"
# single root partition hardwired so far,

View File

@@ -1,7 +1,8 @@
== conf.d ==
Этот каталог содержит включаемые фрагменты конфигурации образов с тем,
чтобы было удобнее параллельно разрабатывать специфические дистрибутивы
и VE без излишних merge conflict'ов.
чтобы было удобнее параллельно разрабатывать специфические образы
без излишних merge conflict'ов.
Следует понимать, что основная цель появления mkimage-profiles на свет
-- это уменьшение "форков" внутри семейства дистрибутивных профилей.
@@ -13,47 +14,49 @@
По переменным (см. тж. ../doc/pkglists.txt):
- для пользовательского окружения (live, main) предназначены
* для пользовательского окружения (live, main) предназначены
THE_PACKAGES, THE_LISTS, THE_GROUPS, THE_PACKAGES_REGEXP
- для "обычного общего" (live, main, rescue) есть COMMON_PACKAGES
* для "обычного общего" (live, main, rescue) есть COMMON_PACKAGES
(NB: тоже попадают в базовую установку)
- SYSTEM_PACKAGES стоит применять крайне осторожно -- эти пакеты попадут
* SYSTEM_PACKAGES стоит применять крайне осторожно -- эти пакеты попадут
во все стадии, в том числе в образ чувствительной к объёму install2
(в stage1 -- только в инструментальный чрут); применяйте для того,
что обязано быть и в инсталяторе, и в готовой системе
- для направленного действия служат:
* STAGE1_PACKAGES, STAGE1_PACKAGES_REGEXP (первая стадия загрузки)
* STAGE2_PACKAGES (инсталятор и спасательная/"живая" система)
* INSTALL2_PACKAGES (инсталятор)
* BASE_PACKAGES, BASE_LISTS, BASE_PACKAGES_REGEXP (базовая система)
* MAIN_PACKAGES, MAIN_LISTS, MAIN_PACKAGES_REGEXP (дополнительные пакеты)
* LIVE_PACKAGES, LIVE_LISTS, LIVE_PACKAGES_REGEXP ("живая" система)
* для направленного действия служат:
** STAGE1_PACKAGES, STAGE1_PACKAGES_REGEXP (первая стадия загрузки)
** STAGE2_PACKAGES (инсталятор и спасательная/"живая" система)
** INSTALL2_PACKAGES (инсталятор)
** BASE_PACKAGES, BASE_LISTS, BASE_PACKAGES_REGEXP (базовая система)
** MAIN_PACKAGES, MAIN_LISTS, MAIN_PACKAGES_REGEXP (дополнительные пакеты)
** LIVE_PACKAGES, LIVE_LISTS, LIVE_PACKAGES_REGEXP ("живая" система)
- аналогично по модулям ядра:
* THE_KMODULES попадут в "пользовательскую" среду (live, main)
* STAGE1_KMODULES доступны в производных от stage2 (install2, live, rescue)
* BASE_KMODULES попадут в установку по умолчанию
* MAIN_KMODULES будут доступны для установки с носителя
* LIVE_KMODULES предназначены для LiveCD/LiveFlash
* аналогично по модулям ядра:
** THE_KMODULES попадут в "пользовательскую" среду (live, main)
** STAGE1_KMODULES доступны в производных от stage2 (install2, live, rescue)
** BASE_KMODULES попадут в установку по умолчанию
** MAIN_KMODULES будут доступны для установки с носителя
** LIVE_KMODULES предназначены для LiveCD/LiveFlash
Не стоит бояться такого разнообразия, для большинства задач достаточно THE_*.
По подстановкам:
- $(VAR) подставляются перед их записью в $(CONFIG), который distcfg.mk
- $$(VAR) раскрываются позже, при включении $(CONFIG) и востребовании
* $(VAR) подставляются перед их записью в $(CONFIG), который distcfg.mk
* $$(VAR) раскрываются позже, при включении $(CONFIG) и востребовании
значений; в этом случае их значения могут изменяться до окончания
конфигурации, а также зависеть от значений других переменных
По спискам пакетов:
- на этапе экспериментирования можно забивать прямо в описание образа
- при фиксации состояния стоит воспользоваться существующими списками,
* на этапе экспериментирования можно забивать прямо в описание образа
* при фиксации состояния стоит воспользоваться существующими списками,
а дополнительные оформить как можно более чётко обособленными по тем
задачам, для решения которых они и подобраны
- повторяющиеся логически связанные группы списков может иметь смысл
* повторяющиеся логически связанные группы списков может иметь смысл
выделить в фичу (см., например, power или x11)
- если явной фичи не наблюдается, но у группы дистрибутивов намечается
* если явной фичи не наблюдается, но у группы дистрибутивов намечается
заметная общая часть -- её можно выделить в промежуточную цель вида
distro/.name, не являющуюся самостоятельно собираемой

View File

@@ -28,7 +28,8 @@ distro/live-builder-mini: distro/.live-base use/dev/mkimage use/dev \
@$(call add,LIVE_PACKAGES,qemu-user-binfmt_misc)
@$(call add,LIVE_PACKAGES,zsh sudo)
distro/live-builder: distro/live-builder-mini use/dev/repo
distro/live-builder: distro/live-builder-mini \
use/live/rw use/live/repo use/dev/repo
@$(call add,MAIN_LISTS,$(call tags,live builder))
@$(call add,MAIN_PACKAGES,syslinux pciids memtest86+ mkisofs)

20
conf.d/p7.mk Normal file
View File

@@ -0,0 +1,20 @@
# p7 base kits
ifeq (distro,$(IMAGE_CLASS))
mixin/p7:
@$(call set,BRANDING,altlinux-starterkit)
### kludge compatibility: introspection stub for ../main.mk :-/
distro/altlinux-p7-cinnamon: distro/regular-cinnamon mixin/p7; @:
distro/altlinux-p7-e17: distro/regular-e17 mixin/p7; @:
distro/altlinux-p7-icewm: distro/regular-icewm mixin/p7; @:
distro/altlinux-p7-gnome3: distro/regular-gnome3 mixin/p7; @:
distro/altlinux-p7-kde4: distro/regular-kde4 mixin/p7; @:
distro/altlinux-p7-lxde: distro/regular-lxde mixin/p7; @:
distro/altlinux-p7-mate: distro/regular-mate mixin/p7; @:
distro/altlinux-p7-razorqt: distro/regular-razorqt mixin/p7; @:
distro/altlinux-p7-rescue: distro/regular-rescue mixin/p7; @:
distro/altlinux-p7-tde: distro/regular-tde mixin/p7; @:
distro/altlinux-p7-xfce: distro/regular-xfce mixin/p7; @:
endif

View File

@@ -2,15 +2,17 @@
ifeq (distro,$(IMAGE_CLASS))
# common ground
distro/.regular-bare: distro/.base +vmguest +wireless \
use/efi/signed use/luks use/memtest use/stage2/net-eth use/kernel/net
distro/.regular-bare: distro/.base +wireless use/efi/signed \
use/memtest use/stage2/net-eth use/kernel/net
@$(call try,SAVE_PROFILE,yes)
# WM base target
distro/.regular-base: distro/.regular-bare +live use/live/ru use/live/install \
use/live/repo use/x11/3d-free use/luks use/branding
distro/.regular-base: distro/.regular-bare +vmguest +live \
use/live/ru use/live/install use/live/repo use/live/rw \
use/luks use/x11/3d-free use/branding
@$(call add,LIVE_LISTS,$(call tags,(base || desktop) && regular))
@$(call add,LIVE_LISTS,$(call tags,rescue extra))
@$(call add,LIVE_LISTS,$(call tags,base rescue))
@$(call add,LIVE_PACKAGES,installer-feature-desktop-other-fs-stage2)
@$(call add,THE_BRANDING,indexhtml notes alterator)
@$(call add,THE_BRANDING,graphics)
@@ -18,6 +20,7 @@ distro/.regular-base: distro/.regular-bare +live use/live/ru use/live/install \
# TODO: use/plymouth/live when luks+plymouth is done, see also #28255
distro/.regular-desktop: distro/.regular-base \
use/systemd use/syslinux/ui/gfxboot use/firmware/laptop use/efi/refind
@$(call add,LIVE_PACKAGES,fuse-exfat)
@$(call add,LIVE_LISTS,domain-client)
@$(call add,THE_BRANDING,bootloader)
@$(call set,KFLAVOURS,std-def)
@@ -25,8 +28,7 @@ distro/.regular-desktop: distro/.regular-base \
distro/.regular-gtk: distro/.regular-desktop use/x11/lightdm/gtk +plymouth; @:
distro/regular-icewm: distro/.regular-base use/x11/lightdm/gtk +icewm
@$(call add,LIVE_PACKAGES,xxkb mutt)
@$(call add,LIVE_PACKAGES,deepsolver deepsolver-repo)
@$(call add,LIVE_LISTS,$(call tags,regular icewm))
@$(call set,KFLAVOURS,un-def)
distro/regular-wmaker: distro/.regular-desktop use/x11/lightdm/gtk \
@@ -42,17 +44,20 @@ distro/regular-xfce: distro/.regular-gtk use/x11/xfce; @:
distro/regular-lxde: distro/.regular-gtk use/x11/lxde use/fonts/infinality
@$(call add,LIVE_LISTS,$(call tags,desktop nm))
distro/regular-xmonad: distro/.regular-gtk use/x11/xmonad
@$(call add,LIVE_PACKAGES,livecd-regular-xmonad)
distro/regular-mate: distro/.regular-gtk
@$(call add,LIVE_LISTS,$(call tags,(desktop || mobile) && (mate || nm)))
distro/regular-e17: distro/.regular-gtk use/x11/e17
distro/regular-e17: distro/.regular-gtk use/x11/e17 use/fonts/infinality
@$(call add,LIVE_PACKAGES,xterm)
distro/regular-cinnamon: distro/.regular-desktop \
distro/regular-cinnamon: distro/.regular-gtk \
use/x11/cinnamon use/fonts/infinality
@$(call set,META_VOL_ID,ALT Linux $(IMAGE_NAME)) # see also #28271
distro/regular-gnome3: distro/.regular-desktop use/x11/gnome3; @:
distro/regular-gnome3: distro/.regular-desktop use/x11/gnome3 +plymouth; @:
distro/regular-tde: distro/.regular-desktop +tde +plymouth
@$(call add,LIVE_LISTS,$(call tags,desktop nm))
@@ -66,8 +71,12 @@ distro/regular-razorqt: distro/.regular-desktop +razorqt +plymouth; @:
distro/regular-sugar: distro/.regular-gtk use/x11/sugar; @:
distro/regular-rescue: distro/.regular-bare use/rescue \
distro/regular-rescue: distro/.regular-bare use/rescue/rw \
use/syslinux/ui/menu use/hdt use/efi/refind
@$(call set,KFLAVOURS,un-def)
distro/regular-server: distro/.regular-bare +installer \
use/bootloader/grub use/firmware use/server/mini
@$(call add,THE_LISTS,$(call tags,(base || server) && regular))
endif

View File

@@ -1,16 +1,16 @@
# server distributions
ifeq (distro,$(IMAGE_CLASS))
distro/.server-base: distro/.installer use/syslinux/ui/menu use/memtest
distro/.server-base: distro/.installer use/syslinux/ui/menu use/memtest \
use/cleanup/x11-alterator
@$(call add,BASE_LISTS,server-base openssh)
distro/server-nano: distro/.server-base \
use/cleanup/x11-alterator use/bootloader/lilo +power
distro/server-nano: distro/.server-base use/bootloader/lilo +power
@$(call add,BASE_LISTS,$(call tags,server network))
@$(call add,BASE_PACKAGES,dhcpcd cpio)
distro/server-mini: distro/.server-base use/server/mini use/kernel/net \
use/cleanup/x11-alterator use/efi use/stage2/net-eth
use/efi use/stage2/net-eth
@$(call add,BASE_PACKAGES,make-initrd-mdadm make-initrd-lvm)
distro/server-ovz: distro/server-mini use/install2/net use/hdt use/rescue \

View File

@@ -22,12 +22,20 @@ distro/live-gns3: distro/live-icewm
distro/icewm-efi: distro/icewm use/efi/debug use/firmware
@$(call add,INSTALL2_PACKAGES,strace)
distro/razorqt-kz: distro/regular-razorqt
@$(call set,GLOBAL_BOOT_LANG,kk_KZ)
@$(call add,LIVE_PACKAGES,hunspell-kk)
distro/server-systemd: distro/server-mini use/systemd
@$(call set,KFLAVOURS,std-def)
distro/server-test: distro/server-mini use/relname
@$(call set,RELNAME,Test-Server)
# something marginally useful (as a network-only installer)
# NB: doesn't carry stage3 thus cannot use/bootloader
distro/netinst: distro/.base use/install2/net; @:
# tiny network-only server-ovz installer (stage2 comes over net too)
distro/server-ovz-netinst: distro/.base sub/stage1 use/stage2 \
use/syslinux/ui/menu use/syslinux/localboot.cfg use/memtest

View File

@@ -1,4 +1,7 @@
== Предположения фрагментов кода об окружении ==
== Предположения ==
Некоторые фрагменты кода закладываются на определённое поведение
других частей mkimage-profiles либо содержание переменных.
NB: пути приводятся от верхнего уровня; проект в целом предполагает
ALT Linux 6.0+ и GNU make 3.81+ (на которых и разрабатывается),

View File

@@ -10,12 +10,16 @@
* build/build.log
** подробность зависит от значения переменной DEBUG,
которую можно передать при запуске make (см. params.txt);
которую можно передать при запуске make (см. params.txt);
** содержит коммит, из которого происходит сборка, и признак
"грязности" рабочего каталога при наличии модификаций после
этого коммита;
"грязности" рабочего каталога при наличии модификаций после
этого коммита;
** содержит список конфигурационных переменных и их конечных значений,
созданный на основании distcfg.mk (см. тж. build/vars.mk)
созданный на основании distcfg.mk (см. тж. build/vars.mk)
* REPORT=1 включает генерацию дополнительного вывода:
** build/reports/targets.png -- граф зависимостей между целями
** build/reports/scripts.log -- порядок запуска скриптовых хуков
** build/reports/cleanlog.log -- более пригодный для diff(1) журнал сборки
Общая информация по отладке сборки профилей mkimage:
Общая информация по отладке сборки профилей mkimage доступна на вики:
http://www.altlinux.org/Mkimage/debug

View File

@@ -11,14 +11,14 @@
В большинстве случаев можно рекомендовать создание feature
средствами метапрофиля, поскольку при этом дерево кода более
удобно для анализа и обновления (и в отличие от m-p-d -- нет
удобно для анализа и обновления (и в отличие от _m-p-d_ -- нет
вынужденной необходимости либо контролировать включение нужных
фич "вручную" в скриптах по косвенным признакам, либо выносить
их в пакеты installer-feature-*).
Создание и упаковку installer-feature-* можно рекомендовать, если:
* необходимы пакетные зависимости;
* необходимы пакетные зависимости (в т.ч. версии/конфликты);
* требуется компилируемый платформозависимый код (для чего бы...);
* код фичи достаточно специфичен, нетривиален и объёмен,
чтобы загромождать метапрофиль было не очень осмысленно;

View File

@@ -1,11 +1,11 @@
= mkimage-profiles =
Michael Shigorin <mike@altlinux.org>
:DocVersion: v0.2.0
:DocDate: Oct 2012
:DocVersion: v1.0
:DocDate: Jun 2013
= Введение =
mkimage-profiles, или m-p — результат осмысления и обобщения опыта создания
mkimage-profiles, или _m-p_ — результат осмысления и обобщения опыта создания
семейств дистрибутивов свободного программного обеспечения на базе ALT Linux.
*Цели*
@@ -29,40 +29,25 @@ mkimage-profiles, или m-p — результат осмысления и об
git clone git://git.altlinux.org/people/mike/packages/mkimage-profiles.git
cd mkimage-profiles
make distro/icewm.iso
include::../README[]
make icewm.iso
= Основы =
include::assumptions.txt[]
include::debug.txt[]
include::features.txt[]
include::../README[]
include::params.txt[]
include::features.txt[]
include::pkglists.txt[]
include::qemu.txt[]
include::style.txt[]
include::vm.txt[]
= Каталоги =
include::../conf.d/README[]
include::../features.in/README[]
include::../image.in/README[]
include::../lib/README[]
include::../pkg.in/README[]
include::../features.in/README[]
include::../sub.in/README[]
@@ -71,3 +56,26 @@ include::../sub.in/main/README[]
include::../sub.in/stage1/README[]
include::../sub.in/stage2/README[]
include::../pkg.in/README[]
include::../pkg.in/lists/README[]
include::../pkg.in/lists/tagged/README[]
include::../pkg.in/groups/README[]
include::../lib/README[]
= Приложения =
include::assumptions.txt[]
include::debug.txt[]
include::style.txt[]
include::vm.txt[]
include::qemu.txt[]

View File

@@ -61,7 +61,7 @@
** см. ../features.in/live/generate.mk (тж. по умолчаниям)
* ISOHYBRID
** включает постобработку ISO-образа isohybrid
** включает создание гибриднго ISO-образа
** значение: пусто (по умолчанию) либо любая строка
** см. ../features.in/pack/config.mk
@@ -114,4 +114,4 @@
[float]
=== пример ===
make DEBUG=1 CLEAN=1 distro/syslinux.iso
make DEBUG=1 CLEAN=1 syslinux.iso

View File

@@ -1,10 +1,11 @@
== Списки пакетов ==
Состав пакетной базы субпрофилей определяется значенями
следующих переменных профиля (см. тж. ../conf.d/README):
следующих переменных профиля (см. тж. ../conf.d/README;
некоторые "*" ниже заэкранированы ради парсера asciidoc):
* main: пакетная база для установки
** sub.in/main/Makefile, features.in/*/main/lib/*.mk
** sub.in/main/Makefile, features.in/\*/main/lib/*.mk
** THE_LISTS, BASE_LISTS, MAIN_LISTS
** THE_GROUPS, MAIN_GROUPS
** THE_PACKAGES, BASE_PACKAGES, MAIN_PACKAGES,
@@ -14,7 +15,7 @@
*** KFLAVOURS
* stage2: общая часть installer, live, rescue
** sub.in/stage2/Makefile, features.in/*/stage2/lib/*.mk
** sub.in/stage2/Makefile, features.in/\*/stage2/lib/*.mk
** SYSTEM_PACKAGES, STAGE2_PACKAGES
** STAGE1_KMODULES, STAGE1_KMODULES_REGEXP,
STAGE2_KMODULES, STAGE2_KMODULES_REGEXP
@@ -23,13 +24,13 @@
* installer: компактная "живая" система, содержащая только инсталятор
** см. stage2
*** features.in/install2/install2/stage2cfg.mk,
features.in/*/install2/lib/*.mk
features.in/\*/install2/lib/*.mk
*** INSTALL2_PACKAGES
* live: пользовательский LiveCD (может содержать также инсталятор)
** см. stage2
** features.in/live/live/stage2cfg.mk,
features.in/*/live/lib/*.mk
features.in/\*/live/lib/*.mk
** THE_LISTS, LIVE_LISTS
** THE_GROUPS, LIVE_GROUPS
** THE_PACKAGES, LIVE_PACKAGES, COMMON_PACKAGES
@@ -43,7 +44,7 @@
** RESCUE_LISTS
* stage1: ядро и загрузчик второй стадии
** sub.in/stage1/Makefile, features.in/*/stage1/lib/*.mk
** sub.in/stage1/Makefile, features.in/\*/stage1/lib/*.mk
** STAGE1_PACKAGES, SYSTEM_PACKAGES
** STAGE1_PACKAGES_REGEXP
** STAGE1_KMODULES_REGEXP

View File

@@ -1,4 +1,4 @@
== Требования по оформлению кода ==
== Оформление кода ==
* постарайтесь не вносить без обсуждения разнобой стилей,
если есть предметные пожелания по коррекции текущего --

View File

@@ -1,4 +1,4 @@
== Сборка образов виртуальных машин ==
== Сборка образов VM ==
*ВНИМАНИЕ:* заключительная операция создания образа жёсткого диска
из архива с содержимым корневой файловой системы требует доступа

View File

@@ -23,15 +23,15 @@
Остальное содержимое является дополнительным и используется
в таком порядке (см. ../Makefile):
- сперва в $(BUILDDIR)/image/ копируются все подкаталоги,
* сперва в $(BUILDDIR)/image/ копируются все подкаталоги,
соответствующие итоговым именам субпрофилей, запрошенных
для профиля образа; при этом они сливаются с деревом,
которое уже сформировано субпрофилями (../sub.in/*) и уже
скопированными фичами; если какие-либо файлы перекрылись
по именам, rsync должен оставить резервные копии (*~),
которые должны просигнализировать о беспорядке;
- запускается generate.sh, если существует и исполнимый;
- применяется generate.mk, если существует и непустой.
* запускается generate.sh, если существует и исполнимый;
* применяется generate.mk, если существует и непустой.
Например, если используются субпрофили stage1, stage2/install2
и main, можно решить собрать специфические для фичи скрипты

View File

@@ -5,7 +5,7 @@
# NB: to be executed, it must be marked executable first :)
# let's do something very useful
echo "$0: WORKDIR=$WORKDIR; directory listig:"
echo "$0: WORKDIR=$WORKDIR; directory listing:"
ls -l "$WORKDIR"
# and let's _not_ terminate with non-zero for no real reason;

View File

@@ -1,4 +1,5 @@
== features.in ==
Этот каталог содержит т.н. фичи (features, особенности).
Фича -- отдельно подключаемая сущность, которая содержит
@@ -37,3 +38,5 @@
Несложный пример содержится в 00example/, более близкий к жизни
и нынешним пределам возможностей метапрофиля -- в syslinux/.
См. тж. файлы README в каталогах фич (отсутствие -- баг!).

View File

@@ -12,6 +12,7 @@
останется lilo как последняя "новая" цель с точки зрения make.
При необходимости всё-таки "пересилить" последнее изменение можно
@$(call set,BASE_BOOTLOADER,grub_или_lilo)
Реализация экспериментальная (нужно модуляризовать installer-steps).

View File

@@ -9,18 +9,18 @@
Назначение и возможные значения (если требуются):
- STAGE1_BRANDING
* относится к загрузке со сгенерированного образа (например, ISO)
* bootloader bootsplash (при старте)
* STAGE1_BRANDING
** относится к загрузке со сгенерированного образа (например, ISO)
** bootloader bootsplash (при старте)
- STAGE2_BRANDING
* общая часть для всех вариантов stage2
* bootsplash (при выключении)
* STAGE2_BRANDING
** общая часть для всех вариантов stage2
** bootsplash (при выключении)
- INSTALL2_BRANDING
* специфические пакеты брендирования инсталятора
* notes slideshow
* INSTALL2_BRANDING
** специфические пакеты брендирования инсталятора
** notes slideshow
- THE_BRANDING
* общий список для использования в установленной системе и LiveCD
* alterator bootsplash graphics indexhtml notes slideshow
* THE_BRANDING
** общий список для использования в установленной системе и LiveCD
** alterator bootsplash graphics indexhtml notes slideshow

5
features.in/fonts/README Normal file
View File

@@ -0,0 +1,5 @@
Эта фича занимается конфигурированием подсистемы
конфигурации шрифтов fontconfig (sic!); помимо
возможности выставить желаемые кусочки вручную
предлагаются и заранее заданные интегральные
варианты, прошедшие обкатку в дистрибутивах.

View File

@@ -2,6 +2,9 @@
специфическими для инсталяционного образа настройками
и скриптовыми хуками.
Рекомендуется подключать при помощи +installer, чтобы обеспечить
включение типового набора связанных с инсталятором функций.
При добавлении скриптов в image-scripts.d/ следует позаботиться,
чтобы в компактном livecd, которым является инсталятор, оказались
нужные им утилиты (INSTALL2_PACKAGES). Перегружать его не следует,

View File

@@ -1,16 +1,28 @@
# alterator-based installer, second (livecd) stage
+installer: use/install2/full; @:
use/install2: use/stage2 sub/stage2@install2 use/metadata use/cleanup/installer
@$(call add_feature)
@$(call set,INSTALL2_PACKAGES,installer-distro-$$(INSTALLER)-stage2)
@$(call try,INSTALLER,altlinux-generic) # might be replaced later
@$(call add,INSTALL2_PACKAGES,installer-distro-$$(INSTALLER)-stage2)
@$(call add,INSTALL2_PACKAGES,branding-$$(BRANDING)-alterator)
@$(call add,BASE_PACKAGES,branding-$$(BRANDING)-release)
@$(call add,BASE_LISTS,$(call tags,basesystem))
@$(call xport,BASE_BOOTLOADER)
# doesn't use/install2/fs on purpose (at least so far)
use/install2/full: use/install2/packages use/install2/kms use/install2/kvm \
use/syslinux/localboot.cfg use/syslinux/ui/menu; @:
# stash local packages within installation media
use/install2/packages: use/install2 use/repo/main; @:
# for alterator-pkg to use
use/install2/net: use/install2
@$(call add,INSTALL2_PACKAGES,curl)
# modern free xorg drivers for mainstream hardware requires KMS support
# modern free xorg drivers for mainstream hardware require KMS support
use/install2/kms: use/stage2/kms
@$(call add,BASE_KMODULES_REGEXP,drm.*)

View File

@@ -1,5 +1,9 @@
# stage2 mod: build install2 subprofile (installer "live" part)
ifndef INSTALLER
$(error install2 feature enabled but INSTALLER undefined)
endif
IMAGE_PACKAGES = $(INSTALL2_PACKAGES) \
udev e2fsprogs glibc-nss

View File

@@ -1,6 +1,6 @@
Эта фича производит постобработку ISO-образа утилитой isohybrid
с целью обеспечения возможности его загрузки как с CD/DVD,
так и с USB-флэшки.
Эта фича обеспечивает формирование ISO-образа с добавлением липовой
таблицы разделов с целью обеспечения возможности его загрузки
как с CD/DVD, так и с USB-флэшки.
Можно указать в цепочке зависимостей дистрибутива явно с тем,
чтобы гарантировать гибридный вид образа, либо запросить включение
@@ -8,5 +8,5 @@
(ISOHYBRID=1, см. ../pack/config.mk).
Обратите внимание: в propagator до 20101130-alt15 поддержка
автоматической загрузки с флэш-носителя и при этом ISO-образа
автоматической загрузки с флэш-носителя, содержащего ISO-образ,
отсутствует, что компенсируется специальной обработкой в gfxboot.

View File

@@ -1,3 +1,4 @@
use/isohybrid:
@$(call add_feature)
@$(call add,POSTPROCESS_TARGETS,80isohybrid)
@$(call try,ISOHYBRID,1)
@$(call set,MKI_VER_MINIMAL,0.2.5)

View File

@@ -1,4 +0,0 @@
CHROOT_PACKAGES += syslinux
postprocess-80isohybrid:
@isohybrid "$(IMAGEDIR)/$(IMAGE_OUTFILE)"

View File

@@ -9,6 +9,14 @@ use/live: use/stage2 sub/stage2@live
use/live/base: use/live use/syslinux/ui/menu
@$(call add,LIVE_LISTS,$(call tags,base && (live || network)))
# rw slice, see http://www.altlinux.org/make-initrd-propagator and #28289
ifeq (,$(EFI_BOOTLOADER))
use/live/rw: use/live use/syslinux
@$(call add,SYSLINUX_CFG,live_rw)
else
use/live/rw: use/live; @:
endif
# a very simplistic one
use/live/x11: use/live use/firmware use/x11/xorg
@$(call add,LIVE_PACKAGES,xinit)
@@ -23,9 +31,14 @@ use/live/desktop: use/live/base use/x11/wacom use/live/sound \
@$(call add,SYSLINUX_CFG,localboot)
# preconfigure apt for both live and installed-from-live systems
use/live/repo:
@$(call add,LIVE_PACKAGES,livecd-online-repo)
use/live/repo: use/live
@$(call add,LIVE_PACKAGES,installer-feature-online-repo)
@$(call try,LIVE_REPO,http/alt)
@$(call xport,LIVE_REPO)
# preconfigure apt in runtime (less reliable)
use/live/repo/online:
@$(call add,LIVE_PACKAGES,livecd-online-repo)
# alterator-based permanent installation
use/live/install: use/metadata use/syslinux/localboot.cfg

View File

@@ -22,7 +22,6 @@ switch() {
ENABLE="
dm
gdm
kdm
wdm
prefdm
@@ -42,24 +41,32 @@ random
rpcbind
plymouth
avahi-daemon
cpufreq-simple
"
# NB: dnsmasq: https://bugzilla.altlinux.org/show_bug.cgi?id=18799
# NB: sshd might be needed for some particular cases
DISABLE="
anacron
blk-availability
bridge
clamd
crond
dhcpd
dnsmasq
lvm2-lvmetad
lvm2-monitor
mdadm
netfs
o2cb
ocfs2
openvpn
postfix
rawdevices
slapd
smartd
sshd
sysstat
update_wms
xinetd
"

View File

@@ -2,7 +2,7 @@
# * reset password for root
# * add user `altlinux' (without password)
GRPLIST="users scanner audio radio proc cdrom cdwriter wheel fuse"
GRPLIST="users scanner audio radio proc cdrom cdwriter wheel fuse netadmin"
verbose()
{

View File

@@ -0,0 +1,10 @@
#!/bin/sh
# unconditionally enable online repository
[ -n "$GLOBAL_LIVE_REPO" ] || exit 0
PROTO="${GLOBAL_LIVE_REPO%/*}" # http, ftp, rsync
MIRROR="${GLOBAL_LIVE_REPO#*/}" # alt, heanet, kiev, yandex, ...
sed -i "s,^#\(rpm \[alt\] ${PROTO:-http}.*\),\1," \
"/etc/apt/sources.list.d/${MIRROR:-alt}.list"

View File

@@ -1,4 +0,0 @@
#!/bin/sh
# a temporary workaround for #28669 (fall back to vesa)
rm -f /usr/lib*/X11/modules/drivers/fbdev_drv.so

View File

@@ -9,22 +9,25 @@ WHATEVER += metadata
# handle these too
DOT_BASE += $(BASE_PACKAGES_REGEXP)
# args: name, suffix, command
define dump-THEM
if [ -n "$($(1)_$(2))" ]; then echo -e "\n## $(1)_$(2)"; $(3) $($(1)_$(2)); fi;
# args: type, name
define dump
if [ -n "$($(2)_$(1))" ]; then \
echo -e "\n## $(2)_$(1)"; \
case "$(1)" in \
PACKAGES) echo "$($(2)_$(1))";; \
LISTS) cat $($(2)_$(1));; \
esac; \
fi;
endef
dump-PACKAGES = $(call dump-THEM,$(1),PACKAGES,echo)
dump-LISTS = $(call dump-THEM,$(1),LISTS,cat)
# BASE_PACKAGES, BASE_LISTS and whatever else goes into base install;
# thus construct requisite .base packagelist for alterator-pkg
metadata-.base:
@cd $(call list,/); \
{ \
echo "## generated by features.in/metadata/lib/metadata.mk"; \
$(foreach p,SYSTEM COMMON THE BASE,$(call dump-PACKAGES,$(p))) \
$(foreach l,THE BASE,$(call dump-LISTS,$(l))) \
echo "## generated by features.in/metadata/lib/50-metadata.mk";\
$(foreach p,SYSTEM COMMON THE BASE,$(call dump,PACKAGES,$(p))) \
$(foreach l,THE BASE,$(call dump,LISTS,$(l))) \
if [ -n "$(DOT_BASE)" ]; then \
echo -e "\n## DOT_BASE\n$(DOT_BASE)"; \
fi; \

View File

@@ -1,4 +1,6 @@
Эта фича определяет формат упаковки создаваемого образа.
На данный момент поддерживаются iso (загрузочный ISO9660
для дистрибутивов) и tar/cpio с возможностью сжатия gz/xz
(виртуальные окружения).
для дистрибутивов), tar/cpio с возможностью сжатия gz/xz
(виртуальные окружения), а также различные варианты для
образов виртуальных машин, поддерживаемые qemu-img.

View File

@@ -1,6 +1,3 @@
Эта фича конфигурирует поддержку управления питанием
-- выключение и регулировку частоты CPU для ACPI,
засыпание для APM (не проверялось).
TODO: учесть изложенное в https://bugzilla.altlinux.org/25018
(для gnome & co)

View File

@@ -1,3 +1,9 @@
Эта фича дополняет базовый "живой" образ второй стадии
специфическими для спасательного образа настройками
и скриптовыми хуками.
Цель use/rescue/rw добавляет предварительно настроенный
пункт загрузки, который в случае "просто гибридного"
(не GPT) ISO, записанного на USB Flash, обеспечит создание
и монтирование дополнительного раздела для сохранения данных
между сессиями.

View File

@@ -1,6 +1,16 @@
use/rescue: use/stage2 sub/stage2@rescue use/syslinux/sdab.cfg \
use/firmware/full +wireless
@$(call add_feature)
@$(call add,RESCUE_PACKAGES,interactivesystem sysvinit udev)
@$(call add,RESCUE_PACKAGES,startup startup-rescue lilo)
@$(call add,RESCUE_LISTS, openssh \
$(call tags,(base || extra || server || misc) && \
(rescue || network || security)))
# rw slice, see also use/live/rw (don't use simultaneously)
ifeq (,$(EFI_BOOTLOADER))
use/rescue/rw: use/rescue use/syslinux
@$(call add,SYSLINUX_CFG,rescue_rw)
else
use/rescue/rw: use/rescue; @:
endif

View File

@@ -0,0 +1,5 @@
label session
menu label LiveCD with ^sessions support
kernel alt0/vmlinuz
append initrd=alt0/full.cz fastboot live showopts automatic=method:cdrom ramdisk_size=@live_size@ stagename=live live_rw vga=0x314 @bootargs@

View File

@@ -0,0 +1,6 @@
label rescue_session
menu label Rescue with sess^ions support
kernel alt0/vmlinuz
append initrd=alt0/full.cz fastboot live showopts automatic=method:cdrom ramdisk_size=@rescue_size@ stagename=rescue live_rw

View File

@@ -1,3 +1,2 @@
Эта фича заменяет в базовой системе sysvinit на systemd;
в настоящее время является экспериментальной, читайте
http://www.altlinux.org/systemd
см. тж. http://www.altlinux.org/systemd

View File

@@ -1,5 +1,6 @@
+icewm: use/x11/icewm; @:
+razorqt: use/x11/razorqt use/x11/lightdm/razorqt; @:
+xmonad: use/x11/xmonad; @:
+tde: use/x11/tde use/x11/kdm; @:
+kde4-lite: use/x11/kde4-lite use/x11/kdm4; @:
@@ -67,6 +68,7 @@ use/x11/cinnamon: use/x11/xorg use/x11/drm
use/x11/gnome3: use/x11/xorg use/x11/drm
@$(call add,THE_PACKAGES,gnome3-default)
@$(call add,THE_PACKAGES,gst-libav pulseaudio-daemon)
use/x11/e17: use/x11/xorg use/x11/3d-free
@$(call add,THE_LISTS,$(call tags,e17 desktop))
@@ -85,3 +87,6 @@ use/x11/wmaker: use/x11/xorg
use/x11/gnustep: use/x11/xorg
@$(call add,THE_LISTS,$(call tags,gnustep desktop))
use/x11/xmonad: use/x11/xorg
@$(call add,THE_LISTS,$(call tags,xmonad desktop))

View File

@@ -1,15 +1,17 @@
== image.in ==
Этот каталог копируется из метапрофиля в профиль "как есть"
и формирует "заготовку" финальной стадии, собирающей собственно
образ из результатов работы индивидуальных субпрофилей
(для distro/*) либо непосредственно "на месте" (для ve/*).
(для distro) либо непосредственно "на месте" (для ve, vm).
Содержимое files/ копируется в корень образа.
Соответственно для сборки также потребуется или
../features.in/build-distro, или ../features.in/build-ve.
Соответственно для сборки также потребуется одна из фич
../features.in/build-*.
Пакетная база рабочего чрута минимальна (может чуть расширяться
фичами -- см. ../features.in/repo/lib/build-genbasedir.mk
фичами -- см. ../features.in/repo/lib/50-genbasedir.mk
в качестве примера).
Если требуется какая-либо иная обработка чрута, следует

View File

@@ -1,4 +1,5 @@
== lib ==
Этот каталог содержит вспомогательные makefiles,
обеспечивающие основную функциональность создания
конфигурации образа и генерации соответствующего

View File

@@ -28,12 +28,7 @@ distro/.base: distro/.init use/kernel
@$(call set,META_VOL_ID,ALT Linux $(IMAGE_NAME)/$(ARCH))
@$(call set,META_VOL_SET,ALT Linux)
# something marginally useful (as a network-only installer)
# NB: doesn't carry stage3 thus cannot use/bootloader
distro/installer: distro/.base use/syslinux/localboot.cfg \
use/install2 use/install2/kms use/firmware use/install2/kvm
@$(call set,INSTALLER,altlinux-generic)
distro/.installer: distro/installer use/bootloader/grub use/repo/main; @:
# this one should not be fundamental as it appears (think armh)
distro/.installer: distro/.base use/bootloader/grub +installer; @:
endif

View File

@@ -1,4 +1,5 @@
== pkg.in ==
Этот каталог содержит все возможные списки пакетов и описания групп,
которые по мере необходимости копируются из метапрофиля в формируемый
профиль.

View File

@@ -1,5 +1,6 @@
[float]
=== pkg.in/groups ===
Этот каталог содержит описания групп, копируемые из метапрофиля
в создаваемый профиль по необходимости (только фигурирующие в
списке, которым является значение переменной MAIN_GROUPS).

View File

@@ -1,3 +1,5 @@
=== pkg.in/lists ===
Этот каталог содержит списки пакетов, копируемые из метапрофиля
в создаваемый профиль по необходимости (определяется по наличию
имён списков в переменных *_LISTS, см. реализацию в Makefile).

View File

@@ -1,9 +1,10 @@
=== pkg.in/lists/tagged ===
Этот каталог содержит тегированные списки; на данный момент
реализация (../../../bin/tags2lists) требует, чтобы каждый
из тегов был отдельным словом, состоящим из символов из набора
a-zA-Z0-9_ (внимание: не используйте в слове "-"); рекомендуется
разделять слова "+".
[a-zA-Z0-9_] (внимание: не используйте в слове "-");
рекомендуется разделять слова "+".
Применение: дополнение жёстко статически заданной функциональности
более "плавающим" в долгосрочном плане результатом раскрытия

View File

@@ -1,3 +1,15 @@
xfsprogs
jfsprogs
ntfs-3g
dosfstools
fatresize
lvm2
make-initrd-lvm
mdadm
make-initrd-mdadm
openssh
net-tools
@@ -5,14 +17,10 @@ strace
powertop
acpi
livecd-online-repo
apt-repo
update-kernel
synaptic-usermode
eepm
alterator-standalone
bash-completion
cpufreq-simple
xdg-user-dirs
firefox-ru
eject

View File

@@ -1,18 +1,11 @@
# Startup
rootfiles
sysvinit
interactivesystem
startup
startup-rescue
udev
# Common
coreutils
glibc-locales
glibc-nss
glibc-utils
lilo
man
man-pages
sysfsutils

View File

@@ -1,2 +1,2 @@
cinnamon-default
cinnamon-regular
installer-feature-xdg-user-dirs

View File

@@ -1,4 +1,11 @@
synaptic
synaptic-usermode
xdg-user-dirs
firefox-ru
firefox-uk
firefox-kk
alterator-browser-qt
alterator-standalone
@@ -23,4 +30,4 @@ alterator-xkb
#alterator-datetime
system-config-printer
#system-config-printer

View File

@@ -19,3 +19,6 @@ kdeaddons-konqueror
#digikam-image-plugins
kaffeine
kdemultimedia-kmix
# rom_as@ says it's still needed
hal

View File

@@ -0,0 +1,7 @@
xmonad
xmonad-contrib
xmonad-utils
xinit
rxvt-unicode
libXinerama-devel
libXext-devel

View File

@@ -0,0 +1 @@
^ghc.*-darcs

View File

@@ -1,3 +1,2 @@
livecd-tmpfs
livecd-online-repo
mkimage-profiles

View File

@@ -0,0 +1,20 @@
sysklogd
SysVinit-usermode
deepsolver
deepsolver-repo
xxkb
icewm-startup-xxkb-tray
mutt
elinks
tray_mixer_plus
icewm-startup-tray_mixer_plus
leafpad
gqview
screengrab
design-icewm-themes
rp-pppoe-gui

View File

@@ -0,0 +1,4 @@
sysklogd
vim-console
nano
mc

View File

@@ -7,3 +7,6 @@ md5deep
osec
osec-cronjob
osec-mailreport
# hardware reliability
mcelog

View File

@@ -17,19 +17,19 @@
Краткое описание существующих вариантов:
- stage1: propagator и загрузчик (совместно с фичей syslinux);
* stage1: propagator и загрузчик (совместно с фичей syslinux);
типично требуется для инсталяторов, live- и rescue-образов,
но может использоваться без добавления таковых в образ,
обеспечивая сетевую загрузку второй стадии
- stage2: наиболее сложный технологически субпрофиль, поскольку
* stage2: наиболее сложный технологически субпрофиль, поскольку
он является только базовым для получения ряда итоговых частей
дистрибутива (install2, live, rescue); задействуется для этого
только опосредованно через use/stage2/* и модифицирует stage1
в силу наличия связи между ними (в stage1 попадает образ ядра
и firmware, в stage2 -- соответствующие модули)
- main: пакетная база, укладываемая на образ (NB: поскольку рабочий
* main: пакетная база, укладываемая на образ (NB: поскольку рабочий
чрут в этом случае не содержит ничего, кроме пакетов, добавлять
image-scripts.d/* смысла нет, только scripts.d/*)

View File

@@ -6,12 +6,13 @@
как локальный репозиторий для сборки.
Подбирает:
* SYSTEM_PACKAGES, COMMON_PACKAGES, BASE_PACKAGES, BASE_LISTS:
в установку по умолчанию;
* MAIN_PACKAGES, MAIN_LISTS: дополнительные пакеты.
В image-scripts.d/* смысла нет, только scripts.d/* --
рабочий чрут не содержит исполняемых файлов.
В image-scripts.d смысла нет, только scripts.d, т.к. рабочий чрут
не содержит исполняемых файлов.
Не следует использовать этот субпрофиль напрямую, для добавления
пакетного репозитория в образ предназначена фича use/repo/main.

View File

@@ -1,4 +1,5 @@
=== sub.in/stage1 ===
Этот каталог содержит субпрофиль первой стадии загрузки;
здесь место syslinux (загрузчик) и propagator (ориентировка
на местности, вытягивание второй стадии с CD/FTP/...).

View File

@@ -87,6 +87,7 @@ eth16i.ko
ewrk3.ko
ext2
ext3.ko
ext4.ko
fat.ko
fdomain_cs.ko
fdomain.ko