IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
This has been asked for by lewellyn@freenode, why not.
NB: distro/.regular-sysv doesn't include use/net-eth/dhcp
(as it looks like asking for) since there's still hope
to get NM cooperating with sysvinit again.
Both locale and keyboard have been set up already,
no use to waste time on those (which results in 'us'
keyboard layout missing out totally, ironically).
Thanks aris@ for the tip.
There are quite a few potentially useful packages
implementing FUSE based (userspace) filesystems,
these are typically lightweight and still might be
helpful to someone stuck with our rescue image...
xfdashboard is a GNOME Shell-like window switching interface
and application runner; xfce4-whiskermenu-plugin is another
(KDE-like) menu search facility; thanks sem@ for suggestions.
The issue at hand is that interactivesystem pulls in
network-config-subsystem and that one has several providers
by now, systemd-networkd being one of them since recently
(and pulling in systemd).
Just the same problem as with systemd-journal; both might be
fixed by reworking mkimage to allow for different package name
resolution modes:
- "slap everything together and resolve with one-shot"
to handle conflictless situations (most of those);
- "process multiple transactions to allow for conflicts"
thus making it possible to include e.g. a few MTAs into
the provided package base.
Ensure that systemd is outside by explicitly telling so
in the pkglist.
E19 would ask the user if they want to shut down
when facing power button event; it won't get a chance
though as the system will hurl down immediately as per
acpid-events-power package provided configuration.
set() is a function of two variables but the and()
check for *both* is incorrect as one might need to
override a previously set variable with empty string;
this has manifested itself with a case like this:
@$(call set,ROOTPW_EMPTY,1)
# ...
@$(call set,ROOTPW_EMPTY,)
This should avoid ruining principle of the least surprise
with ROOTPW_EMPTY=0 or ROOTPW_EMPTY=n actually *enabling*
empty root password; overriding an already set "1" with "0"
becomes possible either.
This one has been inspired by these guys:
http://www.informatimago.com/linux/emacs-on-user-mode-linux.htmlhttps://raymii.org/s/blog/Vim_as_PID_1_Boot_to_Vim.html
It's aimed at building images running their main userspace
piece instead of ramdisk's init, that means PID=1, UID=0.
Mostly fun of course but it suddenly became interesting with
kernel IP autoconfiguration and e.g. elinks running this way
(NB: requires patched make-initrd 0.8.8 at the moment to get
resolver configured).
And startup times are way better than sysvinit and systemd combined!
This function's got its argument order chosen for "aesthetical"
reason of $(2) following $(1) in the macros but the logical order
is exactly the opposite: we care for kernel flavour much more than
for module set (which is dependent upon it).
So while silent dropout of kernel-image if KFLAVOURS is set
but KMODULES is empty could be fixed by testing for $(2) only,
it looks like a good time to fix this discrepancy altogether.
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.
It's been a given that any stage2 is propagator-based
but that's not neccessarily so; the "run X as PID 1"
sort of contest has sparkled interest in some others.
xorg-drv-vmware is desirable for guests with X11
but undesirable for text-only ones; let's provide
this knob at least but ideal m-p would figure out
that an image with use/x11 and use/vmguest/vmware
should receive this intersection either.
This aims to work around URW fonts deficiencies combined
with the relatively high position of their standard ones
in default /etc/fonts/conf.avail/60-alt-post-user.conf;
see also #30293, #30294.
It's not EFI-bootable due to the extra size penalty
with current build/boot technology, but it's also
not ISO-hybrid as most images are made hybrid by
making them EFI-capable as well since the processes
are related.
Thanks dango at the forum for asking:
http://forum.altlinux.org/index.php/topic,33094.msg236808.html#msg236808
Borders with archive+extra but that one contains standalone tools
and this is a FUSE-based one -- with more of those included in this
particular pkglist already; if we decide that it's a worthy addition
to any image requesting a bunch of archiving tools then it might move.
It's useless as of right now:
- menu file and udisks2 dependency are missing
- udisks2 itself lacks an initscript
Let's note these deficiencies at least...
Maybe firmware feature should be merged into kernel feature
as the firmware binaries added by it are only used by kernel
but let's clean up a bit at a time.
Just spotted that .disk/profile.tgz would hold
distcfg.mk with pre-expanded $(HOME) from build
host which is both info leak (user account that
was used to build the particular image) and just
wrong given that the in-image profile archive was
conceived as a means to pass that part of build
environment over instead of tying it to vendor.
Morale: premature optimization is premature.
It should state clearly both the positive and negative examples
of rootfs concept use (its name is not consiceenough unfortunately,
and I haven't come up with a better one yet).
+net-eth covers both stage2 and base installation parts
while use/stage2/net-eth would result in an inobvious
catch when udev-rule-generator-net would hit install2
but not the installed system, and interface bindings
would be carried over from installer to the installation
but would *not* be updated in case of changed network
card(s) configuration.
It was spilled over an intermediate target and a mixin
for what looks like no good reason; let's factor these
in by means of +net-eth as *both* are really needed
for an installer anyways, and if/when we do installers
with those new and crippled ethernet interface names
this addition can be dropped to be used where required.
The bare intermediate target did use/stage2/net-eth but it
was found out by sem@ that an installed server would lack
udev-rule-generator-net package so its ethernet interface
naming would be inherited from install2 stage only; fix it
by adding use/net-eth and reduce the churn with +net-eth.
"use/stage2/net-eth use/net-eth" would be common enough
for installers or livecd images to just get these pulled in
together by a convenient shortcut thus reducing confusion
and chances to just forget one of these counterparts.
It looks *ugly* on-screen, at least within regular builds,
even if the screen is 166dpi.
Based on a quick experiment this morning I'd suggest using
fonts-otf-adobe-source-{code,sans}-pro instead -- and it's
available as use/fonts/otf/adobe now, incidentally.
The documentation is still built with it though as a2x/fop look
unhappy otherwise (as in replacing Cyrillic glyphs with "#"s).
Font packages are sprinkled all over the metaprofiles,
let's try and help make their use more systematic.
This is a sort of a feature abuse as it was conceived
for fontconfig setup originally but spawning features
with confusing names looks grim; so let all things fonts
live within a feature named "fonts" for the time being.
Thanks mithraen@ for creating a universal frontend script
for udisksctl/pmount/hmount user mount tools; let's try it
within the minimalistic GUI image for the starters.
There's not much sense in overduplication of documentation
(tends to get stale faster then), still it's not good to
just refer to the code as the PDF/HTML book is less useful
then; maybe drifting towards "recommended" bits with more
"advanced" things being impleentation-defined is better.
That's a part of ALT Linux conveniences: system log
messages at tty12 (helps immensely in case of disk crash
or cable problems as running anything, including utilities
to view logs, becomes painful to impossible in such cases).
systemd lacks this kind of setup out-of-box for sure
so zerg@ hacked a substitute together; just pull that in.
vkni@ removed fonts-bitmap-cyr_rfx-iso10646-0400
from WindowMaker dependencies; I think that's wrong
but life is short so let's compensate that here as
at least regular-gnustep.iso degrades (GNUstep menus
are rendered in fixed bitmap font then).
A nice little hack that looks up running instances of cp/mv/tar/gzip/...
in /proc and comes up with job completion percentage. Useful when one
didn't bother to use pv(1) or the process has been running for quite
some time already.
There's no sense to duplucate sysklogd requirement
in plethora of fallback places when a specific feature
responsible for comprehensive init system choice has been
implemented since; just use/init/sysv as needed.
systemd-214 has major problems with starting these services,
and KDC should definitely not even try to start up before
setup (which is not feasible given that these are LiveCDs).
domain-client pkglist inhabitants and net-usershares feature
are nasty enough to bring a lot of extra garbage in unfortunately
(alterator-auth, alterator-kdc, alterator-net-shares involved).
fonts-ttf-droid have been superseded by fonts-ttf-google-droid-sans
in Sisyphus which might be lacking; I've considered replacing it
with Fira anyways, so let's just do that.
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.
Neither qupzilla nor pcmanfm-qt will fire this up
automatically when dealing with a PDF file so rather
adding a reminder to have a look at it some day.
This needs further refinement regarding p7/t7 specifically:
NM behaviour regarding defaults differs in sisyphus and this
has led to livecds booting with DHCP networking but installed
systems booting without configured interfaces.
Commit 78f2158 left those images which required NM but not
its applet explicitly broken (as in "no applet at all");
this should probably be redone alike to browser feature
but let's provide a 20140612 band-aid at least.
I thought about this again and came to conclusion that bringing
alteratord and ahttpd up or down should rather be done at the same
time as backends and frontend are useless without each other
(at least for your average sysadmin).
Matt Lewandowsky suggested that alteratord be enabled
but ahttpd be disabled so as to avoid extra port being
listened to out-of-box but to be able to turn web GUI on
when needed.
Non-GUI packages moved to base+nm pkglist to enable standalone
installation of those; and GTK bits left in desktop+nm for use
by images lacking their own new and improved(tm) variant.
Note that both GNOME3 and KDE4 aren't lacking anymore.
This is a similar trouble: p7/t7 branches had
plasma-applet-networkmanager while sisyphus has
switched to kde4-plasma-nm* (there's a bunch of
subpackages there, basically all of them desired).
The current branches lack both firefox 29+ and
firefox-classic_theme_restorer, correspondingly;
sisyphus has those; the feature shouldn't pose
any problems in both cases, should it?
Suggested by frbrgeorge@ and sounds quite reasonable
given that live-rescue.iso is very immature yet and
there are only a few -- but compelling -- reasons
to provide a graphical rescue image, gparted being
one of them for sure.
It's actually worth working into the offline docs probably
but it appears that overlooking this howto's existence is
easier than I thought; thanks manowar@ for pointing this out.
The logic is pretty much the same as with live.mk,
even somewhat extended as this has actually been
the driver of this change: some images like icewm
or lxqt-based ones might show off other browsers
explicitly (in addition to zerg@'s request).
Firefox was the very reasonable default for initial livecd
implementation but now that at least initial browser chooser
infrastructure is in place it's time to un-hardwire its use.
It's _the_ default but switchable now so that images providing
a comprehensive browser can avoid feature duplication.
This one has been asking to be implemented for too long already,
and zerg@ was interested in a bit more lean and mean regular-kde4
either (there are two browsers provided with it via metapackage).
There's another reason to do it recently: Firefox Australis UI
is not exactly the best for many of us, and good ol' seamonkey
seems preferable for "vintage"/low-resource images coming with
icewm or windowmaker.
This should better lurk here unless someone (including myself)
either forgets or doesn't realize the inobvious chain of the
assumptions made for the read-only warranty to actually work.
This is actually downplaying: the net effect is that
a few images continue to carry krb5-ticket-watcher
and have avahi service enabled by default while most
of the images have one "weird" item less on their menus
and a few hundred kilobytes less in total RSS.
These are not really needed by default in lightweight
distros sporting reduced application and services set,
and the heavier ones will take relatively less hit
by default while being more ready as ALT Domain clients
(which was the whole motivation behind adding the feature
and the corresponding pkglist).
This package contains a custom dialog-based dc3dd frontend
aimed to help non-expert CLI users to deal with common tasks
involving full-drive imaging and contributed by Maxim Suhanov.
A virtual machine lacking DHCP client seems much less useful,
and being able to shut one down via emulated ACPI button press
seems like no luxury either.
led-ws kernel flavour has gained kernel-modules-vmware
recently, let's add this to the appropriate targets.
It's used in regular-jeos already but THE_ part was missing.
dm service is set up to autostart when installed anyways,
and explicit `chkconfig dm on' results in it being turned on
at runlevels 2, 3 and 4 too which is really not needed.
Thanks led@ for spotting and reporting this.
These are rather foreignsic:
liblnk-tools: Tools to access the Windows Shortcut File (LNK) format
libregf-tools: Utilities to inspect Windows REGF-type Registry files
libuna-tools: Utilities from libuna for Unicode/ASCII Byte Stream conversions
libvshadow-tools: Tools to access the Volume Shadow Snapshot (VSS) format
Suggested by Maxim Sunahov and ported from OBS packages.
cfg.in/README should be explicit regarding
"automatic=method:cdrom" being usable for
flash media too (propagator has been fixed
since 20101130-alt10 or so, and gfxboot is
able to tweak the cmdline having figured
out it's running off the flash either).
It's by no means substitution for proper l10n feature
but forcing users into POSIX locale for recovery ops
is no good at all.
This is basically a fork of live feature's 20-locale,
a font has been changed to save some face though.
This should provide the fix for #30024 (thanks ildar@):
vmware relies on mptspi.ko by default and that's been
split out into scsi and not guest subpackage for led-ws.
BTW use/install2/vmguest instead of a bunch.
VMware specific bits went into use/install2/vmware target,
and all of those targets are worth their use/install2/vmguest
collective one instead of just sticking the kitchen sink into
use/install2/full immediately.
plasma-applet-networkmanager has been superseded by a bunch
of kde4-plasma-nm* packages; only the main one has been included
in regular-kde4 flavour since the switch resulting in the lack of
VPN/mobile connectivity options.
My opinion still is that plasma-applet-networkmanager should be
returned as a metapackage for p7/branch timespan so that images
could be built no matter whether it's sisyphus or p7 at hand.
Oh well.
These plugins should be required by a metapackage providing
plasma-applet-networkmanager so that branch and sisyphus builds
use the same pkglist; let's add those explicitly while that's
not done yet.
This feature intrinsically depends on predictable
ethernet interface names and makes no sense without
those; so it only seems reasonable to bring this
nice package in, huge thanks go to shaba@ of course.
There's a whole slew of improved dd(1) forks out there
and several more utilities around, some might stick to
this one and others to that one; let's try and make'em
all happy even if it's not really feasible...
Package has been prepared by shaba@ and sem@,
and it looks like ALT Linux with un-def kernel
is one of the few (or just the one) distribution
running on Hyper-V Gen.2 rather flawlessly
thanks to efforts by boyarsh@ and vitty@.
There's a nuance: libaff used to contain the utilities
and is required by sleuthkit; 3.7.4-alt1 has aff-tools
split into a subpackage of its own so we'd better keep
the binaries by adding this one.
This value is used to authenticate rescue rootfs image
by verifying the squashfs file's sha256sum before use
(propagator-20140419+).
Looks like this check might be useful for other stage2
images as well but let's get started with this one.
Thanks Maxim Suhanov <suhanov/group-ib.ru> for both
http://www.forensicswiki.org/wiki/Forensic_Live_CD_issues
and propagator patches.
Thanks Maxim Suhanov (suhanov <AT> group-ib.ru,
http://www.forensicswiki.org/wiki/User:.FUF)
for taking the time to review regular-rescue image.
Note that there are more than just filesystems:
arrays, logical volumes and swaps aren't activated either;
startup-rescue >= 0.18 should make that clear enough.
syslinux shortcut handling is case-insensitive,
let's find yet another letter...
biew was strangely missing indeed; several more
http://www.forensicswiki.org/wiki/Category:Tools
added as these have been packaged for ALT already;
fatback is on the way and dc3dd should come soon.
Debugging department has seen a /minor facelift/ too.
Some tools depend on X11 though and have been put
into a separate pkglist for that matter.
Just a convenient knob for a few things done previously
to help spare the interesting bits from being overrun.
NB: live_rw isn't added although it might be useful
since that would yield too many boot targets overall;
this is likely to change some day, hopefully when
media type detection/handling is implemented.
Let's bump syslinux timeout to 20 seconds either
so that iKVM users have a chance to select anything
and not just see the default booting after a few
screen area size changes.
A variant of rescue that marks the need to be careful
towards block devices and filesystems thus reducing
the amount of auto-activation done by startup-rescue
(0.17 or newer).
cvltonemap is no more available in sisyphus/p7;
xsane and usbutils were sorely missing (thanks dd@).
NB: fim is currently i586-only, need to fix or drop it.
server-zabbix.iso is ready for deployment,
and live-zabbix.iso is zabbix agent + firefox
(needs at least Server to be specified properly
within zabbix_agentd.conf when booted).
This is a refactored result of Zabbix-related experiments;
we can do a rough zabbix server sketch that still requires
its own setup to go.
NB: both the pkglist and the target are describing several
distinct things actually: zabbix server, zabbix agent,
and the underlying SQL/HTTP/SMTP servers which might get
their own smaller targets some day.
It used to be added in server-ovz but it really belongs to
the underlying server-mini already as more images built
upon that one should perform correct shutdown given ATX
compatible case/mobo or a VM that can do ACPI.
This reverts commit fd8f375573.
xdg-su is broken (some would say beyond repair) regarding DE
detection and handling of various GUI helper utilities,
especially in graceful fallback department; only a few images
can get imagewriter until this is fixed, let kde4 be the one.
It appears that live feature has been buggy regarding user
groups: its 30-users script would create a predefined account
with fixed supplementry groups list, and even if deflogin feature
got used too it would fail to add any groups to already existing
account since its useradd(8) call would fail.
Let's drop this duplication which has been long overdue anyways.
Thanks dd@ for both reporting the problem and carrying out
initial investigation.
There have been several problems with this feature:
- a typo;
- non-existant GROUPS (even a single one) would block setting
all of the supplementary groups but separately-set 'wheel';
- this feature isn't used much actually so sees no battle testing.
The typo has been just fixed; GROUPS are now applied by iteration
which is less effective but more reliable; an additional script
hook to write down login invitation for the first passwordless
account (if any) has been implemented; and several more group
managing targets have been added (based on live feature's script).
This relates to commit f2892ad3e4
as there's an obvious need to be able to set empty root password
for LiveCDs but previous implementation was very fragile (and is
going to stay that way) -- so clear and separate knob for making
an image defenseless looks better.
Whoops, the very first build of a real distro with gfxboot
has shown that the label isn't picked up there... and things
are actually worse: iso.needscheck gfxboot test seems to look
up "check=1" in sectors where it might have been landing back
then but it's just not there by now; some kludgery is due in
branding-altlinux-sisyphus unfortunately.
No use to hunt make or diff file-by-file.
Well this chroot should have been more lean
in the first place (or a few files in initrd)
but life is short so better use/baby/steps.
This one is quite different already and utility-based name
was pretty clumsy; meet the new feature and retire the old
experimental one.
Please note that quite aggressive cleanups are implemented
within this stage2-based subprofile for the simple reason
that it has a single task to do; nothing else is expected
to be configured into it for that matter.
This functionality asks to be further moved into initrd of course;
adding it there will take a few more decisions to be made, mostly
regarding user interaction in failure scenarios, and it looks like
mkimage will have to be patched in case this doesn't just go into
full.cz under some sort of conditional check.
The whole story with this installer has been due to a query
at #altlinux whether there's a distribution image similar
to altlinux-p7-rescue.iso which appears to be booting under
Hyper-V Gen. 2 without a hitch; changing just the kernel
towards the newer one made the user rather happy since
everything worked out-of-box for him, even unimportant bits.
Of course it's mostly due to boyarsh@'s preceding work :)
NB: there's no use to build i586 version as that hypervisor
lacks CSM (BIOS implementation) and would only boot UEFI
compatible operating systems with pretty strict requirements.
It has dawned on me that gdm2.20 is more widely useful
within sysvinit based builds: lightdm with gtk greeter
would fail to poweroff/reboot while this one would not.
It's not exactly obvious how install2_size, live_size or rescue_size
get defined since the variable names themselves get constructed;
help git grep these down.
acpid is not enough since power button handling configuration
has been split apart; and tracking this in zillion places is
utterly useless in face of a specially trained power feature.
Just use it.
aen@ asked to ship this one as well; no problem given mixins,
still being able to *switch* the init instead of regrafting
would be very beneficial.
NB:
- wdm can't do autologin;
- wdm can poweroff/halt;
- wdm+autologin won't work under systemd (via prefdm.service);
- nodm will work under systemd;
- nodm will ruin consolehelper -> livecd-install by root's PATH;
- gdm2.20 is lightweight, feature complete and sovereign enough.
The reason for an explicit cleanup is that VNC installation support
is now left in by default (see #29901); thus this commit is only
keeping the status quo for this image.
It's missing in Sisyphus since php5 update to 5.5.x;
while an opcode cache would be a powerful boost for
many webapps this has to be sorted out in repos first.
It's still a GUI installer but pretty much barebone one by now...
in particular, it needs no xorg-drv-$hardware being mostly targeted
at VMs and demo appliances where fbdev is rather enough.
Cleanup extra kernel drivers too.
This one has been missing for quite some time (infiniband modules
should have triggered a commit like this back then), finally there
in very crude and draft form for the starters.
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.
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.
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.
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.
The mixin concept and name has been borrowed from Ruby
language -- it's a kind of thing that can be added to
more or less whatever suitable; the problem it tries
to solve is that incrementally building up the image
configuration breaks when one would like to change
something that's been configured in early enough so that
grafting early will warrant a lot of duplication later on
but inheriting too much things that need to be changed
gets too much hackery in.
It started while trying to build an installer image
using configuration bits and pieces collected while
bringing an installable LiveCD together: there are
just too many livecdish things in a LiveCD to try
and rebase the actual desktop configuration things
onto an installer, so putting these into a mixin
to be reused within both livecd and installer
seems the way to go.
Looks like today's xorg won't autoload radeon_drv but
insists on ati_drv falling back to fbdev if it's not there;
FlightGear runs definitely slow on C-60 APU with that.
I didn't specify ati since it pulls r128 and mach64 modules in
which are rather useless in this context (accelerated 3D graphics).
Burn.app won't list a USB DVDRW drive with CD-RW inside
(NOT_FOUND), and its README states explicitly that wodim
is not supported yet.
Mixer.app would start with three knobs none of which would
actually change any mixer channel.
This time it autostarts using livecd-fgfs and primus
if possible; firefox and GUI mixer are the notable loss
but the clarity of "boot into FlightGear" should sort of
compensate for that.
Ah, and Tu-154 by default.
Current Sisyphus' xorg-drv-intel works somewhat better
with recent kernel drivers on my HD4000 GPU, and icewm
is not compositing at all; providing another test/backup
image fitted with newer kernel should do no harm.
This package has been built and recommended by cas@;
it requires Qt5 which hasn't been needed for anything else
included in regular builds so far so let's extend kde4 one
to begin with.
lightdm isn't going to turn off the system properly
with no systemd-logind around ("for no good reason",
that is); good ol' wdm for installed system and the
similarly ol' autologin just work though.
nodm is not gonna cut it since user PATH is weird
within the session breaking livecd-install by putting
/usr/sbin before /usr/bin while it shouldn't be there
in the first place.
Looks like nodm doesn't reset the PATH set within
/etc/rc.d/init.d/functions which results in sbin
path components hitting user's PATH; livecd-install
which uses consolehelper was what broke first for me.
And this link should illustrate some of the problems
tackled by this kind of scripts...
Servers can POST much longer so having to play hide and seek
with a boot menu isn't going to be exactly entertaining;
let's bump the delay to something comparable at least.
Thanks hiddenman@ for mentioning the obvious-but-unnoticed.
As it happens regular-rc testing has shown that cinnamon,
gnome3 and kde4 flavours included NM via their pkglists
and dependencies (which used to result in live feature
enabling NetworkManager service wholesale when found);
now when handling default services has become more strict
it became apparent that these images have got their LiveCD
mode running without network by default (installation does
set that up though).
It looks like an easy way to just stick +nm into .regular-desktop
dependencies but then razorqt, sugar, xmonad would get NM which
is not what they're gonna handle; e17/e18 too.
This has to be present with default RPM macros, otherwise:
rpmdb: /home/altlinux/tmp: No such file or directory
rpmdb: unable to create temporary backing file
See also http://bugzilla.altlinux.org/26514
We don't really want to disable NFS portmapper completely
but having some extra root code listening to the world is
really unneccessary unless explicitly required.
Applying "control rpcbind local", thanks ldv@ for advice.
50-setup-network was a hasty hack (surprise!) that used to do
what net and net-eth features have been created to do since;
just drop the duplicated crufty code.
Unconditional resolver setup isn't done now: those with static
setup are better off doing it explicitly, and those with DHCP
should be fine already.
NB: /etc/hosts *is* fine within setup package *but* hasher will
overwrite it with a copy of host's one; let's reset contents
to initial at least until hasher gets fixed and the fix is
rather deployed in the wild.
There was an extra DISABLED=no line written to interface configurarion
that's been superceded by the subsequently added parametrized one;
just drop it.
Thanks glebfm@ for spotting the garbage.
Well actually it shouldn't -- except for rEFInd the boot manager:
branding graphics within the build environment are used to add
a single background image to EFI/refind/icons/ thus the change.
Wonder how this got lost though as this screenshot:
http://en.altlinux.org/File:Altlinux-rescue-uefi-memtest86.jpg
clearly illustrates it was working back in December indeed!
It conflicts with r8169.ko inobviously.
The whole mess looks like this:
- r8169.ko doesn't work for all of Realtek 8111/8168/8169 mutations
- r8168.ko works with some of the chips r8169.ko doesn't
- r8168.ko also works with many chips r8169.ko works with
- r8169.ko is provided by kernel-image package (thus default)
- r8168.ko is provided by kernel-modules-r8168 package (optional)
- kernel-modules-r8168 package requires r8168-blacklist package
- r8168-blacklist package is a one-liner that blacklists r8169.ko
- STAGE1_KMODULES wouldn't include r8168 (std-def) or rtl8168 (led-ws)
- sub.in/stage1/modules would mention r8168.ko (m-p-d: r8169.ko)
So a LiveCD built with use/kernel/net might work with RTL8111/8110
just fine when booted live but fail to automatically load the module
when installed onto hard drive; manual modprobe r8169 would work though.
NB: some of the chips (those available to me) would work just fine
both ways -- this has contributed to fixing this *that* late.
Bottom line:
do not install backup/kludge drivers overriding main ones by default!
Thanks sem@ for providing the crucial hint.
use/deflogin will result in ROOTPW being exported no matter
is it set or not; xport() can't check before exporting as it
relies on lazy evaluation when the actual ROOTPW value can be
set or modified after exporting GLOBAL_ROOTPW for mkimage.
So let's not even pretent we can differ unset ROOTPW from
empty ROOTPW: both result in empty GLOBAL_ROOTPW as of today.
Fixing this would require moving the exports into a separate
makefile being included after all the configuration and checking
each variable for being defined before exporting the corresponding
GLOBAL_ prefixed one.
Yes this might be a security fix in some cases.
TDE images are pretty modest regarding resource consumption
thus suitable for older hardware; a slower flash drive can
stall indefinitely showing slideshow and not going any further
with actual package installation so let's put a cap on that.
Added use/branding/slideshow/once as one of the uses
albeit the interface is universal; see this page for
more info: http://altlinux.org/branding/slideshow [ru]
The service and initscript have "connmand" name
while the package is called "connman" indeed.
Shame on me; this became apparent
while building regular-e18-sysv.
Defining a one-time variable is useless in this case,
and README should state the undefined ROOTPW status
explicitly (since it's now as advertized, heh).
The goals listed are pretty important to have them ordered
by priority; collaboration is definitely more important
than dynamic range of release managers' experience.
Some more editing has been due over pkg.in/lists/tagged/README
to make it more comprehensible and up-to-date; the problem with
groups isn't actually that bad as alterator-pkg's groups concept
is currently aligned with the requisite functionality provided by
pkg.in/lists/* directly; the tagged pkglists come into play when
we want to add "something like that" and don't really care about
the fine details of a secondary thing trusting that it's actually
comprised and working as advertized through its name tags.
Compare to reusing the pre-existing image configuration or features
versus reimplementing things in a rigid manner -- it's a flexibility
vs predictability question, and both scenarios are supported within
m-p explicitly.
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.
Its name might still change through 1.1.x series
("userfs"?) but things like this should be mentioned
at least -- or superfluous references to neighbouring
entities should be removed.
It's required for NFS mounts but having a rescue image listening
to any non-localhost ports is too bad an idea, IMNSHO.
So let's fix this while spotted.
Well, some of the maintainers clearly prefer t7/branch
to publish their works; at least GNUstep and TDE packages
are updated there and might migrate to p7/branch later.
No need to fight that, really.
Split development packages into dev+gnustep pkglist -- these are
worth including in "full" version but will need thorough testing
so as to present the tools to those who value these.
Some of user packages are problematic and shouldn't be included
right now; the problems are mostly of these kinds:
- app won't start (at all or effectively);
- useless for being too alpha quality/incomplete;
- menu file for a commandline app lacking any feedback;
- package lacks the dependencies needed;
- it's a LoginPanel ;-)
Thanks a lot to upstream authors, real@ the packager
and kostyalamer who prepared a lot of menufiles anyways!
Thanks glebfm@ for spotting that it's = instead of +=
as it goes in all the other places; I remember no good
reason to overwrite the potentially preexisting contents.
KVM and VirtualBox support packages are pretty tiny
but essential when these images get deployed within
virtual environments for any reason, let's add 'em.
It's been gfxboot-free but no user visible facility to select locale
has emerged through these years; it's been decided to put gfxboot
until some text chooser is available (thanks aen@ for discussion).
This is a minimalistic ALT-based system installer tailored
for those who know how to bring up networking and apt-get
the packages they actually need; thanks frbrgeorge@ for
proposing the specification as well as sem@ and glebfm@
for discussion.
No mc, no glibc-locales, even no man and interactivesystem!
Packages included: apt basesystem openssh vim-console
PS: Sisyphus-based regular build is not the main goal though
thus the p7/branch {bri,klu}dge.
This image is largely a rebase of server-ovz.iso onto regular-server;
it's not feasible to provide a single image that would install either
"mini" server or openvz/kvm one based on user choice during boot alas
(even if both ovz-el and std-def kernels are provided within "ovz" ISO
and vzctl&co could be stuffed into a package list/group).
Maybe this is fixed some day...
OpenVZ related part is now a reusable use/server/ovz target,
and service related groups which have been largely taken from
rider@'s server-light project are now use/server/groups/base.
TerraSync might come handy (just as online manuals) but one's
going to need internet access for that so let's put at least
DHCP-over-Ethernet configuration preset in.
There's a beautiful airliner model out there thanks to the guys
at flightgear.ru, and it was asking to be included but its unclear
licensing status; now that 3.0 is GPLed I'm glad to add this package.
The use/x11/nvidia/optimus target will pull the bits required
to operate NVIDIA Optimus GPU scheme which relies on integrated
GPU to actually drive the screen; much thanks to barssc@ for
good walkthrough: http://altlinux.org/optimus
NB: this *will* break if nouveau gets in, YHBW.
This might belong to test.mk actually but it's been instrumental
in getting bumblebee support operational within these LiveCDs;
icewm and sysvinit are a commonplace among those currently
but aren't set in stone for that matter.
"messagebus" service is autostarted since dbus gets in being required
by wpa_supplicant <- alterator-net-wifi <- alterator-net-eth; it is
really not needed in the minimalistic server, let's just turn it off.
"lvm2-lvmetad" service requires setup to be actually useful (#29474).
This is long overdue: services feature influences live
and rescue but doesn't do anything to the installed system
as that's behind the installation barrier; some piggybacking
required to do that has been merged into installer back in
2012 apparently (thanks to boyarsh@ for both doing that and
bringing my attention to this fact; it's 65-setup-services.sh
as of today).
So the only thing missing has been the bridge to prepare
those files -- still some more tweakery is required given the
two-stage process arranged so that reusable configuration could
include some sane defaults but the release manager is ultimately
able to override anything without extra kludges; thank legion@
for his wonderful libshell either.
NB: install2 script is a partial clone of rootfs one since
processing the variables is identical; still rootfs script
has to change service state directly while install2 one
has to deposit the information for installer to handle.
use/live/textinstall target is a base for those images whose
target audience tends to be somewhat more experienced; these
might prefer to just boot off the image instead of having to
perform any extra action like pressing down arrow and enter.
This is also to help msp@'s homeros-*.iso boot immediately.
Actually a copy of 10localboot.cfg with a different name
and sorting order so as to address #26608: there's no possibility
to make a LiveCD image that would boot itself by default if localboot
has been configured in.
It's only a partial solution as it doesn't override 10localboot
in case it's there already but a step in that direction...
A hint regarding livecd-net-eth is due -- as well as
review and cleanup of live, net, net-eth features
involved in configuring that ethernet for a LiveCD.
This is not strictly required but is basically requisite for some
operations with both packages (did you know about rpm2cpio.sh?)
and initramfs images (which are gzipped cpio archives).
So let's put it in.
It's hardwired at 1/10 of the default /etc/net value
since 3 seconds are enough for properly functioning
DHCP servers in properly maintained networks (those
improper ones tend to have problems with 30 seconds
anyways), and waiting for too long makes users feel
bad for a reason.
Thanks msp@ for bringing attention to this.
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.
The initial revision was brilliantly buggy: it is *so* apparent
that cdrom will never be actually used for rw slice that this
has evaded my attention rather completely.
This change tries to force loading the storage driver
for cases when SecureBoot is "helping" the chainloader
to fail, see #29705 for details collected so far.
Of course ahci.ko only does AHCI but that's every storage
controller I've seen on UEFI/SecureBoot systems so far.
Let's put osec tools into installable packages at least
(aiming to shift these into default install probably);
these are worthwile addition to sysadmin's toolbox.
Thanks dobr@ for bringing this up.
It turns out that regular-rescue.iso lacks sshfs,
which is unfortunate (even if it could be installed
with apt in this particular case); three more FUSE
based filesystems have been added just in case.
Thanks mithraen@ for suggesting davfs2.
I'm fed up with graphical software occasionally making it
into regular-rescue.iso and bloating it for no good reason
given that window managers or xinitrc aren't included.
This has been spotted and solved manually several times already,
and that's just boring so let's add the ability to state that
X11-based software is not accepted into a particular rescue image.
Not that I would hate X but things like that belong to a carefully
crafted image which includes either X server or reasonable means
to ensure that GUI software can actually be used.
NB: this is a somewhat new entity: test/rescue/no-x11 knob
for an image-script intended to make it blow up the build
when libX11 is found within the chroot that makes up
the rescue image's filesystem.
The interface is not documented intentionally: it will take
some time to find out whether it sticks or is bad enough.
Please do remind/ask if interested in using that.
Seeing tagged/base+rescue~ in build.log isn't particularly
heart-warming; while other editors but the one leaving tilda
marked backups and .sw* swap files might exist let's do this
step at this time.
Wonder what changed though, this used not to happen before.
Dank Bagryantsev asked if it could be added to available packages
at least; well it is there now but not in default install
as aptitude is currently unsupported.
I don't think we're gonna like plymouth over rescue image
anytime soon, especially when it hides the moment when shell
pops up somewhere under it without startup-rescue caring to
remove the splash.
So let's put that $(INSTALL2_BRANDING) into proper stage2
flavours only and avoid choking on missing plymouth as well.
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.
This kernel can help save almost 50 megabytes of image size
and shave off several megs of RAM consumption as well which
is important after the installation has been through.
Adding rescue image was requested by Speccyfighter (in Russian):
http://lists.altlinux.org/pipermail/community/2013-December/681045.html
...and it seems hard but doable if one doesn't mind barebone rescue;
still efi-shell shouldn't spoil x86_64 build as that one won't fit CD-R
and doesn't have to anyways.
In these tough times there are no extra resources to waste
for wars or some extra rescue; so it is imperative to provide
some lean and mean help, you know.
IOW a common base has been split out and a more tight rescue
image configuration has been added on top of that so as to
try and fit altlinux-p7-sysv-tde.iso for i586 into CD-R.
Argh, so alterator-auth was hiding under a name it provides too
-- now *that* is the cause for those last-step failures as the
rest of the environment hasn't been getting set up apparently.
Just drop it, there's a proper domain-client pkglist for that.
This is what 63293ff22a should
have done too.
un-def got unsuitable due to initial ramdisk migrating from
initramfs to tmpfs by default in newer kernels, and propagator
was using pretty kludgy way to determine that /dev has been
mounted already; led-ws (and supposedly lks-wks) have stumbled
upon this earlier.
20130822 version has been fixed regarding that.
I've noted that this bit of code should be fixed up
before pushing but managed to overlook that in the end :(
mkimage version bump is due to the somewhat changed layout
of EFI packages and binaries within those (linked message in Russian):
http://lists.altlinux.org/pipermail/devel-distro/2013-December/001283.html
...instead of installer-distro-desktop which pulls in
alterator-auth which breaks things big time for sysv-tde
installer image due to avahi-daemon lazy to run.
Of course it's the last step of installation that has to fail.
And I've been considering this for several months already anyways.
I wondered how regular-e18 lacked econnman but it only
took a closer look to understand that it's just not told
to go in, plain and simple!
There are no e18-extra-modules (at least so far),
confine that to desktop+e17.
It's proprietary now but still very useful with no free software
alternatives for UEFI platform so far; let's include efi-memtest86
into the rescue image at least.
We chose to provide methods to sign packages but to avoid
signing these by default (with some arbitrary test keys)
the signatures are being added *after* the build by means
of rpmrebuild-pesign; all of this is made significantly
more complicated if there are separate -signed subpackages.
So these are being dropped in the packages; account for that.
Everything is handled within mki-copy-efiboot currently
but it needs an image to process; extracting one from
bootloader branding seems less hassle than forcing it
into every flavour of branding.
The changes in commits gb3e3234 and ga860b17 were actually useless
as rescue+fs list wasn't included into RESCUE_LISTS... and I need
pv(1) for convenient local disk cloning with time estimate.
This basically reverts commit c18ef37274
for all practical purposes and restores the problem with chromium livecd
still that's less of a problem compared to regular builds complaining
that firefox is not the default browser when it's the only one anyways.
A bit longer version is: add the script which cares to protect
the interfaces which has been brought up during NFS root bootup
already from being tampered with by NetworkManager so as to avoid
losing network with networked rootfs.
live-webkiosk doesn't really need it and mixin/desktop-installer
was picking it up due to d+n+l satisfying d+n query. This could
be fixed with && !live but fixing bitrot is the better way to go.
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.
distro/.regular-install depends on use/luks now too;
this isn't a hard decision but so far looks good
given the overall functionality range and balance
within regular builds.
I've been considering a way to avoid confusion between:
- a tde based livecd with systemd;
- a tde based livecd with sysvinit;
- a tde based installer with sysvinit
and finally came to conclusion that regular-sysv prefix
will be common for installers with sysvinit within regular.mk
and p7.mk; this might be not perfect but should be good enough.
Note that while regular-sysv-tde.iso is buildable and installs
just fine at the moment I don't plan to publish Sisyphus based
installer builds as a rule since these require extra knowledge
regarding daily use (starting with http://altlinux.org/changes
and/or https://lists.altlinux.org/mailman/listinfo/sisyphus ML
subscription).
Sisyphus-based rescue image is fine as well as LiveCDs are;
installable LiveCDs (most of regular-*.iso) are actually
risky in case user actually installs *and* updates those
having ignored the red "unstable" status in the branding,
and that's the line I'm not going to cross that often.
BASE_BOOTLOADER must have been set to any of the supported
bootloader names somewhere during configuration; it is not
impossible to avoid this elsewhere so let's put a guardian
script which will stop the build which is known to result
in a broken image.
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.
This image family doesn't inherit from distro/.installer
and thus could miss the bootloader setup with no problems
(at least until an installed system would attempt booting
without a bootloader).
The whole thing requires some more thinking over and probably
moving more bits to mixins but in the mean time let's make sure
the bootloader *is* configured.
distro/.regular-install is now factored out to be reused in
tde based installer (and potentially more images later on).
This implies sysvinit at the moment which might change too
but looks just fine right now.
What was added for networked desktop installers is now needed
for regular desktop installers as well; moved to a mixin.
These will probably get reshaked at some point.
It's amazing but I've managed to miss out this brilliant
Qt-based Jabber client; a small selection of plugins is
added as well, suggestions are welcome.
- speech-ru and speech-en features are added;
- speech-related things removed from homeros features;
- speech/ directory for package lists added and other corresponding changes.
Networking is *not* brought up by these rescue images
by default, one is expected to know enough to do that
by hand if needed; still there's no harm to have apt
preconfigured so that it would be operational then.
There are various bootloaders around there and some of them
are supported in ALT Linux; let's provide all the mainstream
ones so that knowledgeable root@ has every tool needed for
most situations needing bootloader repairs.
These might require particular knowledge or special boot mode
(like EFI ones).
Being able to handle [compressed] archives of all kinds
tends to be pretty instrumental in rescue operations,
and some backup system clients won't hurt either.
Some ancient Serial words like "minicom" still come handy
at times too.
Comments, constructive criticism and proposals are welcome.
This doesn't add much but complements the compression utilities.
Maybe it should be moved to rescue+archive, especially if more
tools of this kind get written and packaged.
This package list is somewhat non-trivial and controversial:
- bacula client support is a pretty tiny addition; it does require
extensive knowledge of what's being done and too new client version
can actually hurt (as the bacula director version must not be lower);
- duplicity was added due to lav@ seemingly using it (it's tiny either).
Suggestions are welcome.
It was the proposal to add fsarchiver that has started this;
the package was there in X11-bearing live-rescue.iso but appears
to be a console program thus moved to rescue+misc pkglist;
more than a few rescue-grade utilities have turned up during
a quick look at what else is missing.
shellinabox and dvdsaster have been "added" as candidates since
the former does require additional actions but can provide a nice
security hole if these are taken without extra consideration,
and the latter is just pretty large although might still be useful.
This neat little utility helps immendely to deal with
the eternal "where all of my mega/giga/tera/petabyte disk
space went so busy?"... wonder how it could evade m-p ;-)
I considered these two to be either close forks differing in init system
used (and things involved too much like NM at the moment), or to bring
some more choice along; this commit sticks with the former approach,
namely "let's only toggle the init system and let the rest be the same"
so that choosing the particular implementation can be based on this very
difference and not any other ones added along with it.
...so that locale is selectable at boot (unfortunately there's no
way to do that with text menu so far as cmdline is only changed
in its entirety there and generating it from the bits involved
is Not Implemented Yet as usual).
Some of the excluded dockapps would crash on startup
or just require manual configuration thus getting those
into the default menu on a live image would rather harm.
distro/.regular-sysv{,-gtk} intermediate targets are factored out
to form the base for more image targets as at least e17, icewm,
tde and wmaker are fine without systemd-logind. These represent
both GTK and Qt based environments hence the two footholds.
LUKS seems like a worthwile addition to this particular image;
it's also switched to use installer-distro-altlinux-server
for both LUKS support (until installer-steps are dynamic)
and server-oriented partitioning presets.
Let's ensure that make-initrd-luks gets to the base install
until installer is tweaked to enable in-flight installation
of options like this.
Adding luks to stage1 [make-initrd] features makes no sense
on the other hand (and it wasn't happening anyways due to
the lack of add_feature function call in config.mk as was
accidentally spotted).
And putting luks packages into an installer image lacking
the reference to alterator-luks isn't that sensible, let's
complain to logs at the very least (this isn't going to hit
the default output though).
"prompt" and subsequent first "label" were not separated
in any way while second "label" and forth were; let's make
the resulting isolinux.cfg a tiny bit more pretty.
This is to avoid NM messing with network interface
involved in NFS root filesystem being operational
(see alterator-netinst); thanks sem@ for the hint.
Make it automatically start in desktop ones,
and let it be available in rescue too (there's
a risk of gpm picking up a wrong protocol and
selecting/pasting at random which is not exactly
the right thing for rescue environment with root
shells all around).
alterator-netinst currently relies on "default"
being specified explicitly; it's wrong and it should
cope with the first "label" clause as well but we're
better off being strict to this script, not that one.
This commit should be no-op regarding syslinux itself.
It's a great tool giving the ability to at least debug
the novel problems that weren't there before systemd.
Good that it doesn't want half of GNOME or python yet...
It was a desperate kludge to warrant fallback localization
for cases when livecd-setlocale failed to work out properly;
"thanks" to systemd paralizing startup the order was chaotic,
see #28991 for some details.
Now that livecd-setlocale >= 0.3.1 looks like working this
should be dropped for good.
And the proper preset solution will be l10n feature.
That one requires part of alterator-sysconfig backend
factored out into a standalone package along with its data.
Setting up apt configuration in every container
is pretty annoying, let's enable it by default.
Some provision to add/enable local mirror would
be beneficial but not there yet...
etckeeper was suggested by george@ along with vim-console;
the latter should come by server,base tags but so far does not
(splitting server-base list into common, bare metal and virtualized
parts in haste looked suboptimal).
That is, no need to pull in systemd as syslogd-daemon provider
when an unspecified one has been requested by interactivesystem
or anything else.
The tricky issue is that THE_LISTS will get expanded separately
and too late to specify a particular provider which will have been
auto-chosen while expanding e.g. BASE_PACKAGES.
So the autobuilds were failing for these two weeks since
commit e43386c1fe was *totally*
braindead: there's no "arm-e17" target neither "arm-kde4" one.
Fixed while awake and adjusted (in sync with build node)
to reference particular nexus7 and not just "arm".
The sad thing is that it should now read "nexus7old" TBH,
2013 model is not Linux friendly at all at the moment...
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.
gvfs pulls gnome-online-accounts and dconf in;
these add considerable bloat that well may be
undesirable in a lightweight distro, just pull
this into a separate pkglist.
It was a temporary hack actually, and is better dropped long-term:
things like predefined root accounts with remote access are *evil*
and this hook was a half of that "solution".
Use of oem feature to integrate first-boot setup is recommended
to deal with this issue, at least when graphics are available.
This one was asked for and is pretty reasonable common base
to play with cubox from scratch (being ALT); the intermediate
targets had to be refactored with:
- vm/.cubox-bare becoming *that* bare (it doesn't even
warrant an init anymore, let alone xorg);
- vm/.cubox-desktop accomodating most of desktop bits;
- vm/.cubox-base becoming vm/.cubox-oem as it should be.
The just-introduced tty feature is employed either.
The initial suggestion that any cubox image is a desktop one
didn't hold out for long; and xorg related bits are not that
related to boot script setup in terms of neccessity.
It basically reads the same but was referring to a neighbour
script that has been moved to a separate deflogin feature
during heavy refactoring of initial implementation draft.
This one was replaced by the net feature completely
and has been declared obsolete since 1.1.1 (a month ago).
A few remaining users trivially adjusted.
There was no need to split carrying over the pubkey
and tightening up permissions on the file and its parent
directory to be done in two separate scripts; this should
be more generic now as a bonus.
Users adjusted accordingly.
Minor fix: /boot directory is not cleaned for livecd if there are
homeros-install or luwrain-install files (in addition to live-install
and livecd-install being already checked).
The automated build relies on particular names
to be buildable and this broke during some sync;
http://nightly.altlinux.org/sisyphus-arm/snapshots/
were empty as autobuild was failing since 20130710.
p7 aliases go in too.
This inobvious buglet has been spotted shortly after
1.1.0 refactoring was roughly over; the problem is
that armh-specific targets would get ignored without
explicit ARCH=armh.
It's commit 768df7e9e9
which streamlined introspection within main.mk
and a bug in Makefile which left ARCH empty
even upon having autodetected it for ARCHES.
The current version is more straightforward as a bonus.
Thanks glebfm@ for nudging me to do this; initial draft
was the very firsh armh distro target successfully built
and tested but the effort has refocused onto nexus7 ones
with cubox images joining the party a bit later.
Now it's the time for all good servers...
It was sitting next to the wrong line after refactoring
of cubox related target and was referring to "king"
instead of "kind", very kind of me but not so kingly.
george@ spotted gqview in regular-lxde.iso and wondered why;
it's not being developed since 2006 or so while there's a fork
named geeqie which has continued to improve upon it.
Intro: NetworkManager-wait-online.service would, well, wait
for some network interface to become online or for timeout
to kick in.
Problem: if a LiveCD is tested in offline environment
that timeout will only impede the boot.
Proposed solution: use/net/nm/nodelay target has been implemented
to disable that service as proposed by sem@ and done in Simply;
"+nm" target changed to be an alias to this one.
It's old, it uses consolekit (even if not neccessarily),
it borders obsolescence *but* removal of udev-alsa has caused
massive regressions (e.g. regular-gnome3 had soundcard mixer
levels dropped to zero from the start, regular-razorqt added
inability to poweroff to that...).
Just get it back.
Thanks boyarsh@ and cas@ for pointing out that the branding
that takes MATE peculiarities (e.g. background settings)
into account is in Sisyphus/armh already.
This one is IMHO best suited DE for cubox' meagre performance
(especially on I/O side due to microSD) as it incurs quite modest
I/O, CPU and RAM footprint quite suitable for PII-300 times
(cubox feels quite like that but has lots of RAM compared to
even maxed-out Pentium II workstation).
The image includes OpenSCADA as a nice and unique feature
which has been developed with TDE environment in mind
and was used on ARM hardware like N900, incidentally;
thanks aen@ for this suggestion.
Most of these are slated to employ oem feature by now,
no sense to call it in almost every dependency chain;
the only image left with predefined locale and credentials
is cubox-xfce-ru.
The nuance being that:
- alterator-setup package would change default.target
for systemd providing a symlink of its own and making
a backup of what was there (rc3 basically);
- 40-x11-autostart would ignore that backup;
- 99-oem-setup would do nothing about it all either;
- alterator-setup removal would restore rc3 symlink.
It's not pretty either, something more robust should be
invented some day.
rootfs presented a special case when there is no resulting
directory at all as it gets merged with the target subprofile
by design.
Still those features adding only rootfs scripts need to depend
on it but this resulted in an attempt to process a missing subdir.
This is brought back to sanity now.
Few things:
- extend feature specification
+ SysVinit can be chosen explicitly via init feature,
no need to keep sysklogd in yet another pkglist;
+ power management should be included too
(both cpufreq setup and power button handling);
+ LILO seems to be heavily preferred among the
target audience :)
- use desktop installer for regular-server
+ the seeming controversy is explained easily:
installer-distro-altlinux-generic has very few
modules to the point of being inconvenient for
anything but quick rounds of basic testing,
and distributions rather do need network setup
along with a non-privileged user.
The funny thing while debugging this was "how the heck
could a sound related change induce privilege related shift?"
-- turns out that udev-alsa (which pulls in ConsoleKit)
was the culprit... looks like LXDE hasn't dumped it yet :)
As 50-sudo-su script cares for sudo and su control facilities no more
that hook is aptly renamed to 50-sshd-root (should be generalized
either some day).
Setting NM_CONTROLLED is apparently not enough to disable
/etc/net handling of a particular interface; thanks sem@
for noticing the fortunate error messages in logs
and explaining this peculiarity to me.
This bunch of commits was done so these can be
mixed and matched (or even reverted) later if needed;
it was tempting to just revamp things wholesale again
but coarse grained approach is worse to maintain.
The client side might benefit a bit more in the future
but the server side does not (and should not) require
everything client side does; thus use base ALSA target.
This replaces the many sets of the corresponding packages
wandering all over pkglists, features and configurations;
the interface should be rather well-defined by now.
use/live/install stopped to provide a desktop icon; the nuance is
that zdg-user-dirs-install.sh script in livecd-install package
expects ~/.config/user-dirs.dirs to actually do that.
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.
regular-xfce managed to lack NM somehow (so it even lacked
network after being installed since some build which wasn't
identified right away unfortunately); let's fix that either
during this small refactoring.
...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.
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.
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!
This is applicable at least to XFCE and MATE based images
(plugins for the appropriate file managers are available).
NB: basically untested with installers.
...as per aen@'s advice: parole can use gst0.10 specific
hardware acceleration on Cubox but Firefox doesn't, so it's
way more reasonable to download video and watch it and not some
kind of slideshow.
XFCE seems fine on that device while E17 has segfaulted on me so far
(specifically on Cubox and not on e.g. Nexus 7).
In a nutshell, cubox-xfce is an experiment into OEM-like flashware
while cubox-xfce-ru strives to become something more or less ready
for actual use.
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.
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.
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.
The issue with the original hasty code that stuck around
was that it bluntly ignored any ifdef/ifeq constructs due to
an obvious reason of being essentially a grep, not a makefile
interpreter.
It's now fixed so that e.g. arch-specific targets won't pop up
for no good reason.
Thanks ldv@ for discussion and a reminder about the dump mode
(make -p).
lib/*.mk aren't going to be parsed for build targets
in the near future; and the early placement of those
targets was superseded by a dedicated configuration
snippet directory so just move these bits there.
- 1.1.x branch: public alpha development status
+ new subprofile: rootfs
+ new features: armh*, deflogin, init, services
+ refactored features: build-*, efi, fonts, live, x11*
+ tar2vm got rewritten as tar2fs, gained ARM support
- minor spec metadata update
I've finally moved away from LC_MESSAGES=C on my main
development system half a year ago and finally spotted
that a grep for "Stop\.$" stopped to yield anything now.
Those based on x86 ones but pruned according to armh repo
presence; most notably, these are missing:
compiz compiz-gtk
java-1.6.0-sun mozilla-plugin-java-1.6.0-sun
libreoffice
remmina
xfcalendar
yagf
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.
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.
gdm-theme-simply is still around but turns out that it counts
on gdm2.20 (providing gdm) to be installed, and it is not;
thus gdm-3 is actually pulled in and it doesn't work here.
The package should be dropped from Sisyphus probably,
let's drop it here anyways.
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".
The issue at hand is the hack to be employed in the init feature:
@$(call add,THE_LISTS,$$(INIT_TYPE))
where INIT_TYPE is set separately; $(value $V) would leave that kind
of substitution unmolested while we would actually need it done.
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).
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.
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...
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).
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.
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.
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.
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.
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.