Commit graph

578 commits

Author SHA1 Message Date
Dor Askayo
fa2a09b63f Rename "chroot" to "create_disk_image" in sysc's prepare()
This better describes the action, and will make more sense with the
addition of the rootless bootstrap mode that doesn't require a disk
image either.
2022-05-23 17:45:53 +03:00
Dor Askayo
c429cf9dd7 Keep chroot indication only in prepare()
It's not actually needed by other methods.
2022-05-23 17:45:53 +03:00
Dor Askayo
7040b550a9 Make rootfs_dir local to prepare()
It's not needed by other methods.
2022-05-23 17:45:53 +03:00
Dor Askayo
537cdb6540 Detach loopback device only if it was attached
Also change the print to better describe the action taken.
2022-05-23 17:45:53 +03:00
Dor Askayo
8c605f213a Ensure umount isn't called when self.mounted_tmpfs=False
This is accomplished by calling SysGeneral's __del__() method,
in which self.mounted_tmpfs is already checked.
2022-05-23 17:45:53 +03:00
Andrius Štikonas
b2814c9a97
Merge pull request #170 from stikonas/checksums
Checksum source tarballs during bootstrap.
2022-05-21 23:50:58 +01:00
Andrius Štikonas
9d15314ebc Checksum source tarballs during bootstrap. 2022-05-21 23:49:37 +01:00
Andrius Štikonas
ca4f141be0
Merge pull request #173 from doraskayo/run2-kaem-permissions
Fix file permissions for run2.kaem
2022-05-21 22:57:52 +01:00
Dor Askayo
cf1964b3bf Fix file permissions for run2.kaem 2022-05-22 00:23:53 +03:00
Andrius Štikonas
7a7c239fe4
Merge pull request #172 from doraskayo/update-mes
Update mes to the latest git snapshot
2022-05-21 20:20:51 +01:00
Dor Askayo
7adff2dcd3 Update mes to the latest git snapshot
This should include a fix for S_ISUID that we "lost" when switching
away from mes-m2's libc.

See http://git.savannah.gnu.org/cgit/mes.git/commit/?id=ce54ccc2c04b0a6ec9105522e4b8b4cc278c5106
2022-05-21 21:48:23 +03:00
Andrius Štikonas
f320539dd2 Update DEVEL.md 2022-05-21 19:29:55 +01:00
Andrius Štikonas
0d1a1a5a19
Merge pull request #171 from doraskayo/early-update-checksums
Add support for --update-checksums in early bootstrap
2022-05-21 19:23:47 +01:00
Dor Askayo
653f31b59f Add support for --update-checksums in early bootstrap
This allows creating *.checksums files instead of checking against
them when UPDATE_CHECKSUMS is set to True in bootstrap.cfg.

The checksums are also copied to /usr/src so they can be accessed
easily after the bootstrap completes.
2022-05-21 20:51:41 +03:00
Andrius Štikonas
c6ca548d5b Add after.sh hook to sysc (similarly to after.kaem hook in stage0-posix). 2022-05-21 00:50:37 +01:00
Dor Askayo
18fa642100 Rename checksums to ${pkg}.checksums 2022-05-21 02:34:23 +03:00
Dor Askayo
d12d0e0f9c Make bootstrap.cfg available during early bootstrap 2022-05-20 19:49:19 +03:00
Dor Askayo
d1fea647ee Use ${bindir} in after.kaem 2022-05-20 19:33:36 +03:00
fosslinux
fc0368aa6a
Merge pull request #169 from stikonas/links
Merge symlinks into tarball packages.
2022-05-20 22:46:30 +10:00
fosslinux
b199aa3396
Merge pull request #163 from doraskayo/rootless-prep-2
Additional preparations for rootless bootstrap
2022-05-20 22:45:37 +10:00
Andrius Štikonas
8f61b8400e Merge symlinks into tarball packages. 2022-05-20 09:39:57 +01:00
Andrius Štikonas
081912058f
Merge pull request #161 from doraskayo/local-bootstrap-config
Don't export variables from bootstrap.cfg
2022-05-19 20:45:35 +01:00
Dor Askayo
0a98a6e13d Use "rm -f" in libtool to avoid an interactive prompt 2022-05-19 21:55:25 +03:00
Dor Askayo
507f945419 Remove /dev/null only if it's not a character device 2022-05-19 21:55:25 +03:00
Dor Askayo
8054f60a3c Use existing mounts in sysc when available
This would be the case when bubblewrap is used for sandboxing the
bootstrap.
2022-05-19 21:54:56 +03:00
fosslinux
940d4003f2
Merge pull request #168 from stikonas/packaging
Fix packaging issues
2022-05-18 15:56:03 +10:00
Andrius Štikonas
21f4174dc3 Fix packaging issues
* Bzip2 was manually installed directly into filesystem, so bzip2 package was empty.
  Fixed by installing it to destdir. bzip2 moves out its binary before installing
  its own package.
* sha256sum from stage0-posix was not checking any checksums because it does not
  accept piped input. Fixed by using temporary file.
* grep was broken for a short time (but with fixed bzip2 package this caused failures)
  due to touch creating grep file of zero size (egrep symlink was touched).
  Fixed by implementing touch -h

Resolves #156, resolves #166, resolves #167
2022-05-17 10:19:50 +01:00
Andrius Štikonas
3e4f823ffb
Merge pull request #165 from doraskayo/reproducible-packages
Improve reproduciblity of tarball and XBPS packages
2022-05-15 19:26:35 +01:00
Dor Askayo
fcea28eb38 Don't export variables from bootstrap.cfg
These variables should only affect live-bootstrap's scripts, yet they
currently "pollute" the build environment of most packages during the
bootstrap unnecessarily.

This change also makes bootstrap.cfg keep the same format between the
different bootstrap stages, which simplifies the input to each step.
2022-05-15 18:15:30 +03:00
Dor Askayo
fde1bbc571 Update bootstrap.cfg immediately after interactive prompts
This improves the readablility of the scripts. It also helps avoid
cases where a variable could be set twice in bootstrap.cfg, such as
the DISK variable.
2022-05-15 18:15:30 +03:00
Andrius Štikonas
6bf53927de Readd gunzip. 2022-05-15 14:05:12 +01:00
Dor Askayo
d32d0f1d51 Improve reproducibility of XBPS packages
XBPS packages don't seem to have an option to manipulate file
permissions at package creation time.

So as a best effort, set the umask as soon as possible to ensure
file permissions are the same when running the bootstrap.

This is enough to allow reproducible XBPS packages when starting the
bootstrap with a umask different than 0022.
2022-05-15 10:46:18 +03:00
Dor Askayo
3c60bdebc3 Improve reproducibility of tarball packages
This ensures the user running the bootstrap and its umask don't
affect the permission metadata in the tar archive.
2022-05-15 10:46:18 +03:00
fosslinux
fba7ecf96a
Merge pull request #162 from doraskayo/libtool-archive-order
Fix libtool archive reproducibility
2022-05-15 13:48:15 +10:00
fosslinux
857ca16195
Merge pull request #160 from stikonas/sed
Move make immediately after tcc-0.9.26.
2022-05-15 12:50:59 +10:00
Dor Askayo
24e3fa3601 Fix libtool archive reproducibility
This makes the order of objects in archives created by libtool
consistent.

It is known to affect cases where the *_LIBADD automake variable is
used to add extra objects from a separate archive.

Fixing this allows us to remove a few workarounds.
2022-05-15 00:35:39 +03:00
Andrius Štikonas
3fd451a909 Swamp make and gzip. 2022-05-14 19:40:52 +01:00
Andrius Štikonas
e4f5342ee4 Swap make and tar. 2022-05-14 12:42:03 +01:00
Andrius Štikonas
b9079045db Swap sed and make.
This allows to use makefile rather than kaem script for building sed.
Makefiles for musl and mes are unified into one makefile with some
conditional code.
2022-05-14 12:41:27 +01:00
fosslinux
3ed5daa5aa
Merge pull request #159 from stikonas/musl_upgrade
Upgrade musl to 1.2.3.
2022-05-12 20:01:47 +10:00
Andrius Štikonas
98ba2759b2 Upgrade musl to 1.2.3. 2022-05-12 00:41:17 +01:00
Andrius Štikonas
b4243bf95d Remove stray build dirs that propagate into automake-1.10.3 package.
Fixes: !155
2022-05-10 23:22:49 +01:00
Andrius Štikonas
937964fd4e
Merge pull request #158 from doraskayo/losetup-partitions
Add -P to the losetup command
2022-05-10 20:41:22 +01:00
Dor Askayo
c9868f4312 Add -P to the losetup command
It seems to be required for partitions to be recognized.
2022-05-10 22:37:52 +03:00
fosslinux
53803ed46f
Merge pull request #157 from stikonas/transition_packages
Reinstall system from packages during sysa->sysc and sysb->sysc transitions
2022-05-10 20:23:11 +10:00
Andrius Štikonas
6c4b98a17a Some shellcheck fixes. 2022-05-09 22:53:46 +01:00
Andrius Štikonas
ef0030bbf3 Reinstall system from packages during sysa->sysc and sysb->sysc transitions. 2022-05-09 22:53:46 +01:00
fosslinux
594fd62e7e
Merge pull request #154 from stikonas/mes-0.24
Move from mes-m2 to mes-0.24.
2022-05-06 22:30:30 +10:00
Andrius Štikonas
424aa5be38 Move from mes-m2 to mes-0.24. 2022-05-05 23:59:52 +01:00
fosslinux
52e4366fb6
Merge pull request #153 from fosslinux/wip-fixes
Various fixes
2022-05-05 17:54:38 +10:00