| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
One example of such a command is
echo 'NAME="Linux From Scratch"' > /etc/os-release
in systemd. If adding >> $TEST_LOG we'll not create the /etc/os-release
files and test failures will happen.
|
|
|
|
|
| |
This code path has been incorrect but the vanilla book does not invoke
it. But fix it anyway for customized LFS branches.
|
|
|
|
|
|
|
|
|
|
|
|
| |
We've added --from lfs for chown commands in the beginning of chap 7 to
avoid breaking host distro completely in case the user has not set $LFS
correctly. But jhalfs deletes the lfs user before running the
changingowner script, thus "chown --from lfs" fails because "lfs" does
not exist.
For now just remove "--from lfs" from the chown commands. Technically
we should remove the lfs user after the chown commands (because having
files owned by unnamed UID is bad).
|
| |
|
|
|
|
|
| |
boost uses now a more conventional version string, so that having a
special case for it is not needed anymore.
|
|\
| |
| |
| | |
I've used it for a while, and nothing bad seems to be occurring...
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
In gen-special.sh, the generated specialCases.xsl takes installed
version for $package instead of plasma-post-install (copy/paste
error). This generates a bad version (the one of plasma instead of
the dummy 1.0.0). Change $package to plasma-post-install...
|
| |\ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
This is needed the first time plasma is installed. There are
some links from /usr/share to $KF5_PREFIX, and also the
pam.d files.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
kf5-intro contains kf5-frameworks version, so should be run
each time there is a new version. We retrieve this version
from packages.ent, and we put it in packages.xml. This should
be enough.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
some subpackage names contain digits (for example libX11), but
we test that the tarball name with digits replaced with "X"
contain $package-X. The problem is that the digits have been
replaced in the whole tarball name, and don't match $package.
So translate
$package too. Note that there is no problem if some
packages have names only differing with digits, since
we are sure that the tarball name contain "$package-".
We just want to rule out the case when what comes after
$package- is not a version string.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Some kf5 packages are in a subdirectory "portingAids" of the
main download directory. There is no way to know which ones
by simply examining the frameworks-<version>.md5 file. So
use directly a list of packages known to be in the subdirectory.
This may change when kf5 changes...
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We remove lines containing "cat" and "EOF", but some subpackage
names may contain "cat" (for example knotifications). the lines
to remove contain also a tag, so change the regexp to >cat
and EOF<
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There are two problems:
- "mypw" is in a dictionary of forbidden passwords
- "-pw" cannot be after the login name when running "addprinc"
change automatic password to "lupw"
change order of replacement of "loginname"
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
kf5 has one push and to popd in its instructions.
We used to just use what was between push and popd.
But now, we need to only use what is in the
case instruction for one package, and what is
after the esac for all the others.
|
| | |
| | |
| | |
| | |
| | | |
When this is the case they are both installed.
We need to check exact names.
|
| | | |
|
| |\ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Also change a %%-[[:digit:]* to %-[[:digit:]]* because we want to
select only the last occurrence of this pattern.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is a workaround for instructions that would wait forever
for a password (or timeout) in krb5. But it sets very simple
passwords, that should be changed afterwards.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
when we have a command followed by prompts:
command
<prompt>command:</prompt> instr
...
we want to transform to:
command << PROMPT_EOF
instr
...
quit
PROMPT_EOF.
This patch implements this. The problem is that the <prompt>
tags may occur in several consecutive <screen> ones. So we create
a fragment tree and process it recursively.
|
| |_|/
|/| |
| | |
| | |
| | |
| | | |
Since jhalfs may be run on dsitros where the default shell invoked
by python is not bash, it may happen that "&>" does not produce
the expected result. Fix by using the "posix" way: ">xxx 2>&1".
|
| | |
| | |
| | |
| | |
| | | |
Describe each item in the menu, fix layout, and try to follow
the order of tasks to do to run jhalfs.
|
| | |
| | |
| | |
| | |
| | | |
It is no more at the end of chapter five now... Also the tar file is
not compressed
|
| | |
| | |
| | |
| | |
| | | |
The settings don't depend on book version, and you can answer y even
with old books.
|
| | |
| | |
| | |
| | |
| | | |
Now that parallelism has been included into the book, this is no
more an advanced configuration...
|
|\ \ \ |
|
| | | | |
|
|\| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It's been broken for years, and nobody has complained, so I'd say
it is not useful. If a user wants to use a mirror instead of upstream,
better use a wget-list directly on this server...
|
| | | |
| | | |
| | | |
| | | |
| | | | |
ftp urls have been removed from book, and in case you have to use
an alternate server, better download directly to /sources/yourself.
|
| | |/
| |/| |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
If all cores are used, it should be set to 0, which will use nproc
after the cpuset has been defined, and not nproc (which is the number
of cores/threads on the machine).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Now that MAKEFLAGS is defined at the beginning of the scriptlet,
there is no need to pass MAKEFLAGS as an envar to the scriptlet.
But still NINJAJOBS is not defined. In most cases, when we want
to use all cores, this is not a problem. But if N_PARALLEL is
defined, it needs to be passed. Note that we also pass
MAKEFLAGS in this case, because we use the old "wrt_xxx" function,
but it is not used.
|
| | |
| | |
| | |
| | |
| | | |
We need a special case for binutils-pass1 in case REALSBU is set
to y. Use variables JOBSBP1 in shell and jobs-bp1 in .xsl.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Previously, the "update" target was just added to the end of
the "all" target prerequisites, so that it was run at the end.
But now, we enter make with some -j value in MAKEFLAGS, so that
the "update" target may well be run before the other targets, which
is wrong: for example if it is run before the "xxx-z-libxslt" target,
xsltproc is not found and the update target fails.
To fix, define "update" as the default target, and have it depend
on "all".
|
| | |
| | |
| | |
| | |
| | |
| | | |
Now, we have ALL_CORES set to y or n, and depending on this,
we want either JOBS to be set to $(nproc) or to the value
of N_PARALLEL.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Now that we have MAKEFLAGS in the environment, "make" in chroot
is run with MAKEFLAGS set. This cause it to pass the -j value
into MAKEFLAGS to inferiors (scriptlets), but it is passed with
a --jobserver-auth value added. If we do not precede the command
running the scriptlet with a +, it passes --jobserver-auth=-2,-2
meaning that the jobserver is disabled, and "make" in the scriptlet
understands that it should only run one job at a time (defeating
the value of the -j flag). But even if we do precede the command
running the scriptlet with a +, it passes --jobserver-auth=3,4,
which shows it is running, but this jobserver will authorize only
one job at a time since the parent make contains the target
.NOTPARALLEL!
To work around this problem, tje only solution is to change the
MAKEFLAGS at the beginning of the scriptlet. Fortunately, lfs.xsl
knows what we want as job number (either $(nproc) or a fixed number),
so use it to set MAKEFLAGS.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When using "sh << EOF", what is between this line and EOF runs
with no attached terminal. But we need a terminal for running the
build. So we have to use "sh -c ". But then nesting of double
quotes, $, etc is too complicated. So run as root, and become back
user only when exec'ing. For some reason $@ does not work, so use
a variable set to $@.
|
| | |
| | |
| | |
| | | |
The name of the script is run-in-cgroup.sh, not run-in-cgroup ...
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Still WIP but some progress...
When moving a shell to a cgroup not associated with a session,
then subsequent calls to pam_systemd or pam_elogind create
a new session, and a new cgroup for that session, so that the
cgroup of the calling process is not used (this is a problem
with both systemd and elogind). For systemd, the problem can be
solved by passing --slice <user slice> to systemd-run. For elogind,
we need to first move the shell to a non session cgroup, then run
sudo so that a new session is created, then pass the cpuset to that
session's cgroup. Hopefully, if neither systemd nor elgind is used,
then the former solution should work (to be tested!!!).
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If using a new book, MAKEFLAGS is set to -j$(nproc), so that if
we want to easure timings with 4 processors and our computer has
more than that, we need to restrict the number of processors.
Jhalfs allows to do that using th cpuset cgroup controller, so that
it only restrits the make job and not the whole machine. For that
use a small scripts written by Xi Ruoyao that restarts make this
the cpuset set.
|