Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade RootFS #7717

Merged
merged 12 commits into from
Nov 27, 2023
28 changes: 14 additions & 14 deletions 0_RootFS/Rootfs/build_tarballs.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# select the branch corresponding to the version of Alpine you want to use, browse to
# the directory `x86_64` and obtain the permanent link of the image (press `Y`). NOTE:
# if you upgrade version of Alpine Linux, makes sure to use the same version of Musl
# libc as upstream (see below), otherwise system application may not work
# libc as upstream (see below), otherwise system applications may not work
# * version of Meson (https://github.com/mesonbuild/meson/releases)
# * version of patchelf (https://github.com/NixOS/patchelf/releases/)
# * version of CSL in `bundled/libs/csl/download_csls.sh`
Expand Down Expand Up @@ -113,21 +113,21 @@ insert_compiler_shard(name, version, rootfs_squashfs_hash, :squashfs)
sources = [
ArchiveSource(rootfs_url, rootfs_hash),
# Objconv is very useful
ArchiveSource("https://github.com/staticfloat/objconv/archive/v2.49.tar.gz",
"5fcdf0eda828fbaf4b3d31ba89b5011f649df3a7ef0cc7520d08fe481cac4e9f"),
GitSource("https://github.com/staticfloat/objconv.git",
"c68e441d2b93074b01ea193cb17e944ed751750f"), # v2.54
# As is patchelf
GitSource("https://github.com/NixOS/patchelf.git",
"bf3f37ec29edcdb3e2a163edaf84aeece39f8c9d"), # v0.14.3
"99c24238981b7b1084313aca8f5c493bb46f302c"), # v0.18.0
# We need a very recent version of meson to build gtk stuffs, so let's just grab the latest
ArchiveSource("https://github.com/mesonbuild/meson/releases/download/1.0.1/meson-1.0.1.tar.gz",
"d926b730de6f518728cc7c57bc5e701667bae0c3522f9e369427b2cc7839d3c1"),
GitSource("https://github.com/mesonbuild/meson.git",
"7368795d13081d4928a9ba04d48498ca2442624b"), # v1.3.0
# We're going to bundle a version of `ldid` into the rootfs for now. When we split this up,
# we'll do this in a nicer way by using JLLs directly, but until then, this is what we've got.
ArchiveSource("https://github.com/JuliaBinaryWrappers/ldid_jll.jl/releases/download/ldid-v2.1.2%2B0/ldid.v2.1.2.x86_64-linux-musl-cxx11.tar.gz",
"960ebcd32842f81d140293157d90e4e829fd16241bf5b0a23929e4938256a572",
ArchiveSource("https://github.com/JuliaBinaryWrappers/ldid_jll.jl/releases/download/ldid-v2.1.3%2B0/ldid.v2.1.3.x86_64-linux-musl-cxx11.tar.gz",
"d37c2a8f5bfb75c6a4b9fafb97160c8065e1281b9fe85ac51557fe490edad142",
unpack_target="ldid"),
ArchiveSource("https://github.com/JuliaBinaryWrappers/libplist_jll.jl/releases/download/libplist-v2.2.0%2B0/libplist.v2.2.0.x86_64-linux-musl.tar.gz",
"1b02d6fd8b77b71eaf672f15fecd8b38ef1e167baf469399b7d52435c11d414b",
ArchiveSource("https://github.com/JuliaBinaryWrappers/libplist_jll.jl/releases/download/libplist-v2.2.1%2B0/libplist.v2.2.1.x86_64-linux-musl-cxx11.tar.gz",
"f881818f288d3a82a1ca98e4a011f44289f2bc8c1ba8cfdafe4f1690af0cf4ae",
unpack_target="ldid"),
# And also our own local patches, utilities, etc...
DirectorySource("./bundled"),
Expand Down Expand Up @@ -163,7 +163,7 @@ NET_TOOLS="curl wget git openssl ca-certificates"
MISC_TOOLS="python2 python3 py3-pip sudo file libintl patchutils grep zlib"
FILE_TOOLS="tar zip unzip xz findutils squashfs-tools rsync" # TODO: restore `unrar` when it comes back to Alpine Linux
INTERACTIVE_TOOLS="bash gdb vim nano tmux strace"
BUILD_TOOLS="make patch gawk autoconf automake libtool bison flex pkgconfig cmake samurai ccache"
BUILD_TOOLS="make patch gawk autoconf automake libtool bison flex pkgconfig cmake samurai ccache ninja"
apk add --update --root $prefix ${NET_TOOLS} ${MISC_TOOLS} ${FILE_TOOLS} ${INTERACTIVE_TOOLS} ${BUILD_TOOLS}
# chgrp and chown should be no-ops since we run in a single-user mode
Expand Down Expand Up @@ -243,16 +243,16 @@ for arch in x86_64 i686; do
done
# Build/install meson
cd ${WORKSPACE}/srcdir/meson-*/
cd ${WORKSPACE}/srcdir/meson/
python3 setup.py build
python3 setup.py install --prefix=/usr --root="${prefix}"
# Build/install objconv
cd ${WORKSPACE}/srcdir/objconv*/
cd ${WORKSPACE}/srcdir/objconv/
g++ -O2 -o ${prefix}/usr/bin/objconv src/*.cpp
# Build/install patchelf
cd ${WORKSPACE}/srcdir/patchelf*/
cd ${WORKSPACE}/srcdir/patchelf/
./bootstrap.sh
./configure --prefix=${prefix}/usr
make -j${nproc}
Expand Down