Commit Graph

95 Commits

Author SHA1 Message Date
Anton Midyukov
d5e87819c9 params.txt: Update description of the LOGDIR parameter
Now it cannot be set from the config ~/mkimage/profiles.mk
2021-06-18 18:06:29 +07:00
Anton Midyukov
32d5b027c9 doc/params.txt: update description of the REPORT parameter
It was fixed in the commit:
187d0a5d51
2021-06-18 18:06:29 +07:00
Anton Midyukov
ff2c1ce800 doc/params.txt: Added information on how to set parameters 2021-06-06 19:55:23 +07:00
Anton Midyukov
6fcf9c5b39 params.txt: Add missing parameter descriptions (IMAGEDIR, LOGDIR) 2021-06-06 19:55:23 +07:00
Anton Midyukov
9fba17972c Makefile, params.txt: add new parametr NO_SYMLINK
NO_SYMLINK disables the creation of symlinks for the builded image.
2021-06-06 19:55:23 +07:00
Anton Midyukov
1d598f14b8 doc/Makefile: not clean .fop.xconf
.fop.xconf needed for building pdf.
2021-06-06 19:15:17 +07:00
Anton Midyukov
6d584b06e8 main.mk, mixin.mk, doc: add parametr BRANCH
The BRANCH parameter indicates that the target is a starterkit and
not a regular build for Sisyphus.
2021-06-06 19:06:36 +07:00
Anton Midyukov
b2570d8246 lib/profile.mk, doc/params.txt: add parameter MKIMAGE_PREFIX
Previously, you had to specify two parameters MKIMAGE_PREFIX and
GLOBAL_PREFIX with the same value - the path to mkimage. And this
behavior has not been documented. The GLOBAL_PREFIX variable is
defined in mkimage in config.mk and rules.mk.
2021-05-17 18:14:29 +07:00
Anton Midyukov
2987fa8f61 build-vm, image.in: add VM_SAVE_TARBALL parameter
The parameter is used to save the intermediate tarball used to
build the virtual machine image.
2021-05-01 01:39:54 +07:00
Anton Midyukov
d9dca6cb1a doc, grub, stage1, stage2: Add support multiple kernels for grub only
At the moment, the ability to select the kernel with which to boot is
implemented only for grub (grub-pc, grub-efi, ieee1275boot).
note that renamed STAGE1_KFLAVOUR to STAGE1_KFLAVOURS, as multiple
kernels can now be added.
2021-04-12 23:13:47 +07:00
Michael Shigorin
91a285a04d doc/archdep.txt: adjust accordingly
Those willing to reuse archdep-filter elsewhere
will likely have to figure it out from Makefiles
anyway, so probably not worth overdocumenting...
2019-10-23 15:33:44 +03:00
Michael Shigorin
8801891551 doc: drop the outdated arch list
It was misleading already, and riscv64 is going to join the gang
(but not there yet) following aarch64, mipsel, ppc64le and more
e2k* subarches...
2019-08-19 23:43:41 +03:00
Michael Shigorin
f8a264bbb3 doc: assorted updates/fixups
doc/archdep.txt was the reason to look closer,
and some other files needed a bit of facelift
by now too (would be better to do that in sync).
2018-07-25 16:49:05 +03:00
Mikhail Efremov
2af6d0be75 image: Add DISTRO_VERSION variable support
Use it in the image filename, so we'll know what version of a distro
it is.
2018-07-16 20:52:16 +03:00
Michael Shigorin
7573547328 profiles: introduce @IA32, @X86 archdep macros
See commit 2d257a425b
for details, this just brings those to pkg.in/profiles/
(along with the generic archdep support, of course).
2018-06-25 09:55:01 +03:00
Michael Shigorin
03312d7f5d doc: mention #34638
pauli@ has proposed slightly different setup to what is provided
by livecd-qemu-arch; but the use case might be different either.
At least provide the link to those interested.
2018-03-21 11:56:34 +03:00
Michael Shigorin
2d257a425b lists, doc: introduce @IA32, @X86 archdep macros
The former ("proper 32-bit x86 package form") has been suggested
by zerg@ quite some time ago but the desired interface wasn't clear
at the moment IIRC; a quiet morning helped me realize that

  ICAClient-preinstall@IA32

is rather more readable than

  ICAClient-preinstall@i586 i586-ICAClient-preinstall@x86_64

so here's the (trivial) implementation; and I actually needed
the latter, @X86 ("any-x86") to mark x86-only packages so

  xorg-drv-intel@X86

is now equivalent to

  xorg-drv-intel@i586 xorg-drv-intel@x86_64
2018-03-14 08:45:07 +03:00
Michael Shigorin
31ecda7272 docs update
Another minor facelift:
- s/ALT Linux/ALT/gc (where applicable);
- s/7.0/8.0/g;
- 2017;
- e2k;
- links.
2017-06-09 19:31:42 +03:00
Michael Shigorin
f293239d5b build-vm: try system tar2fs first
It's at least removing the very obvious user->root
attack through (maliciously) modifying bin/tar2fs
and waiting for it to be run; if mkimage-profiles
is installed system-wide as a package, the script
from /usr/share/mkimage-profiles will be tried so
those willing to allow vm/* build to themselves
can provide for a passwordless sudo (as described
in doc/vm.txt) to run a root-only writable script,
not user-writable.

Still not perfect but a step away from the abyss.
2016-11-07 19:47:53 +03:00
Michael Shigorin
15f0b520f1 build.mk: added AUTOCLEAN variable
This performs distclean upon successful image build.

Suggested-by: Andrey Cherepanov <cas@altlinux.org>
2016-09-12 18:48:48 +03:00
Michael Shigorin
47d38cb1c1 assumptions.txt: mention REPORTS
It wasn't clear enough what the whole tracing affair is for;
thanks ykos@ for spelling it aloud.
2016-06-16 15:16:31 +03:00
Michael Shigorin
3f53a7a3f3 debug.txt: uncosmetic fix
A fellow got confused by the original header somehow,
let's spell this a lil' bit differently.
2016-02-15 21:27:33 +03:00
Michael Shigorin
522eff5708 README, pkglists.txt: minor fixes
Thanks cas@ and Ivan Khakhaev for feedback!
My docs are clearly not the best in town,
please help bring those into shape :-)
2016-02-10 16:49:17 +03:00
Michael Shigorin
93f9a2080a doc: added mkimage-profiles(7)
This initial page might lack a lot, don't be shy to blame me!
(thanks ldv@ for having skimmed it through though)
2016-02-08 22:51:55 +03:00
Michael Shigorin
97eee80f27 style.txt: avoid merge commits!
Merge commits aren't going to be merged upstream
for these break all sorts of git tools including
log -p, blame, bisect, etc (or make their use less
convenient).
2016-01-10 13:34:36 +03:00
Michael Shigorin
41d2644ebe style.txt: slightly better call for documenting
Sometimes we tend to "just" translate the code to human
which doesn't really help; what usually helps is noting
down what the code author intended to implement or fix,
and what was the case for that.
2016-01-10 13:31:38 +03:00
Michael Shigorin
f1704f27dd mkimage-profiles.asciidoc: index optimization
The new archdep part has been initially included into
"The Basics" chapter which it doesn't really belong to,
let's move it into Addendum.

NB: I'd better try building a package and skimming over
    at least the index upon having modified docs next time.
2015-05-05 15:58:43 +03:00
Michael Shigorin
15c75c1092 archdep.txt: these are quotes
Build process would choke on "unescaped" stuff otherwise,
and these blocks should be blockquotes in the first place.
2015-05-04 23:55:11 +03:00
Michael Shigorin
ac5dbb4bba pkg.in/lists: archdep suffices for pkglists
This is an initial implementation of architecture dependent
contents handling for package lists more or less in the vein
of mkimage-profiles-desktop's one *but* using suffix part to
filter words in or out *not* prefix part to replace it with
a comment marker (thus filtering out lines).

The syntax should be pretty obvious:

  a b@i586 c@x86_64

will get "a b" given ARCH=i586 and "a c" given ARCH=x86_64;
please see doc/archdep.txt for a more elaborate description
and a conversion script.
2015-04-20 23:09:55 +03:00
Michael Shigorin
3cb4d9ae6a introduce QUIET variable
This one reduces the amount of output that's only
interesting when one is actually watching the console
during builds (at least the early stage) -- these tend
to look boilerplate and be useless when inspecting the
output of a large batch build like [[regular]] one.
2015-04-02 20:48:42 +03:00
Michael Shigorin
c8a7e55cf8 QUICKSTART: it's p7/t7 or later now
0.6.3 has introduced some changes that were deemed incompatible
with t6/p6 branches; it should be possible to restore compatibility
at least for non-EFI images but the effort required hasn't been
up for grabs so far.

See also https://bugzilla.altlinux.org/30474
2014-11-16 21:34:36 +03:00
Michael Shigorin
b5ff2b24b4 initial l10n feature
Aimed at live images at first but should cover installers as well.

This has been brewing for quite some time and while the proper
implementation is considerably more complex (and hard to do)
looks like there's demand for the particular important use case,
namely LiveCDs for Russian users, so this code has been shared
with a few people before merge.
2014-11-14 15:07:09 +03:00
Michael Shigorin
8faf140777 kernel, stage2: rearranged initrd hooks
stage2 has been thinking it's synonymous with propagator
and used to usurp kernel's belongings either; carefully
tear scripts apart so that kernel feature makes sure
initrd gets generated, and stage2 (which is still all
about propagator) cares for its bits.
2014-09-19 20:53:24 +04:00
Michael Shigorin
1eda19cff8 doc: better clean target
A bunch of intermediate files would be sitting around otherwise.
2014-08-12 13:15:08 +04:00
Michael Shigorin
e0004a2621 added docs-publish toplevel goal
This one is long overdue as I keep forgetting to update
the published copy of generated documentation all the time.

Note that you must pass DOCS_PUBLISH (as a local directory
or host:dir suitable for rsync/ssh) via make arguments,
environment or ~/.mkimage/profiles.mk file.
2014-06-24 15:29:10 +04:00
Michael Shigorin
0fcb491500 mkimage-profiles.asciidoc: tac the goals
The goals listed are pretty important to have them ordered
by priority; collaboration is definitely more important
than dynamic range of release managers' experience.
2014-03-06 00:35:10 +04: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
f30fb765b6 mkimage-profiles.asciidoc: change example target
icewm.iso is an installer needing further hassle to try;
rescue.iso is immediately useful OTOH.
2014-03-05 17:55:25 +04:00
Michael Shigorin
364488e588 mkimage-profiles.asciidoc: fix formatting
"Goals" paragraph ended up with all of list items on a single line;
a colon has been missing in another one.
2014-03-05 17:55:25 +04:00
Michael Shigorin
45842a0773 pkglists.txt: s/installer/install2/
It was less clear/greppable what "installer" refers to...
or maybe so it seems to me.
2013-11-24 21:29:04 +04:00
Michael Shigorin
50c72650e2 mkimage-profiles.asciidoc: fix list formatting
It got missed somehow that it's a bullet list indeed...
2013-10-09 12:07:41 +04:00
Michael Shigorin
674f7db26e clean.mk: allow to forbid cleanup explicitly
The behaviour that sort of settled didn't actually follow
the principle of the least surprise when one really wanted
to have BUILDDIR available for inspection; DEBUG=2 would be
effective to achieve that but CLEAN=0 would not.

Thanks led@ for spotting and reporting this.
2013-08-13 22:32:27 +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
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
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
Michael Shigorin
6d8cbcb61d assumptions.txt: clarified sisyphus/branch status
Folks have been wondering already whether e.g. t6 breakage
qualifies as a bug; it does indeed unless the "broken" part
depends on the features not available with that branch yet,
e.g. EFI support.
2013-02-04 22:18:26 +04:00
Denis Smirnov
2ff873eb73 Add .gitignore for docs 2013-01-20 20:27:19 +04:00
Michael Shigorin
2e1e4d6f09 assumptions.txt: ported to make-3.82 already
That is, p6/t6 continue to use 3.81 (while providing 3.82
alongside with it), and Sisyphus has moved to 3.82 before
p7/t7.  We support both versions by now.
2012-12-03 17:18:27 +02:00
Michael Shigorin
6694882715 doc/Makefile: refactoring
The initial sketch did work but was somewhat redundant
while lacking the knob conveniently change output directory
as well as means to get it cleaned up.
2012-11-05 17:20:12 +04:00
Michael Shigorin
12de346ddd asciidoc: use dejavu fonts
Thanks torabora@ for the tip along with reference to his
http://altlinux.org/asciidoc page.
2012-11-05 17:20:12 +04:00