mirror of
https://gitlab.archlinux.org/tpowa/archboot.git
synced 2024-09-19 19:40:37 +02:00
Compare commits
18 commits
9c6ef75daa
...
4b96c37d13
Author | SHA1 | Date | |
---|---|---|---|
|
4b96c37d13 | ||
|
02f83fb716 | ||
|
3974f75d9b | ||
|
60efc6c2fa | ||
|
649c689ed9 | ||
|
338004c253 | ||
|
987936be27 | ||
|
c55b56705a | ||
|
f91ba751b6 | ||
|
62d2a0c854 | ||
|
87e8aff2ec | ||
|
e487f60443 | ||
|
8ea1528772 | ||
|
ab217149ed | ||
|
b52324927d | ||
|
e1fe150cd0 | ||
|
51a692d50f | ||
|
cae5914ee5 |
17 changed files with 47 additions and 38 deletions
|
@ -11,7 +11,8 @@ Environment:
|
|||
- optimized init.sh and login.sh
|
||||
- changed eza default date colour to white
|
||||
- changed dialog to new colour scheme
|
||||
- added bandwhich, bottom and zoxide
|
||||
- added bandwhich, bottom, choose, dog, dysk, miniserve, netscanner,
|
||||
ouch, trippy and zoxide
|
||||
- fixed smb filesystem
|
||||
- removed not needed broadcom firmware and modules on x86_64
|
||||
- removed hfs, hfsplus, isofs, nfsv2, nfsv3 and udf filesystems
|
||||
|
|
|
@ -39,17 +39,17 @@ _CUSTOM_PACMAN_CONF="/etc/archboot/pacman.conf.archboot"
|
|||
_CUSTOM_MIRRORLIST="/etc/archboot/mirrorlist.archboot"
|
||||
# local paths
|
||||
_ISO_HOME="/home/tobias/Arch/iso"
|
||||
_ISO_HOME_CHROOTS="${_ISO_HOME}/chroots"
|
||||
_ISO_HOME_CONTAINERS="${_ISO_HOME}/containers"
|
||||
_ISO_HOME_ARCH="${_ISO_HOME}/${_ARCH}"
|
||||
_ISO_HOME_SOURCE="${_ISO_HOME}/${_ARCH}/sources"
|
||||
# external paths
|
||||
_SERVER="archboot.com"
|
||||
_SERVER_IMAGE_DIR="/release"
|
||||
_SERVER_SOURCE_DIR="/src/release"
|
||||
_PACMAN_AARCH64="pacman-aarch64-chroot"
|
||||
_PACMAN_AARCH64="pacman-aarch64-container"
|
||||
_PACMAN_AARCH64_CHROOT="${_PACMAN_AARCH64}-latest.tar.zst"
|
||||
_SERVER_PACMAN_AARCH64="/src/${_PACMAN_AARCH64}"
|
||||
_PACMAN_RISCV64="pacman-riscv64-chroot"
|
||||
_PACMAN_RISCV64="pacman-riscv64-container"
|
||||
_PACMAN_RISCV64_CHROOT="${_PACMAN_RISCV64}-latest.tar.zst"
|
||||
_SERVER_PACMAN_RISCV64="/src/${_PACMAN_RISCV64}"
|
||||
# public download paths
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
../lib/archboot/run/chroot-tarball.sh
|
1
usr/bin/archboot-aarch64-pacman-container-tarball.sh
Symbolic link
1
usr/bin/archboot-aarch64-pacman-container-tarball.sh
Symbolic link
|
@ -0,0 +1 @@
|
|||
../lib/archboot/run/container-tarball.sh
|
|
@ -1 +0,0 @@
|
|||
../lib/archboot/run/chroot-tarball.sh
|
1
usr/bin/archboot-riscv64-pacman-container-tarball.sh
Symbolic link
1
usr/bin/archboot-riscv64-pacman-container-tarball.sh
Symbolic link
|
@ -0,0 +1 @@
|
|||
../lib/archboot/run/container-tarball.sh
|
|
@ -15,11 +15,14 @@ _usage () {
|
|||
}
|
||||
[[ -z "${1}" || "${1}" != "run" ]] && _usage
|
||||
_root_check
|
||||
[[ -d "${_ISO_HOME_CHROOTS}" ]] || mkdir -p "${_ISO_HOME_CHROOTS}"
|
||||
cd "${_ISO_HOME_CHROOTS}" || exit 1
|
||||
[[ -d "${_ISO_HOME_CONTAINERS}" ]] || mkdir -p "${_ISO_HOME_CONTAINERS}"
|
||||
cd "${_ISO_HOME_CONTAINERS}" || exit 1
|
||||
# stop if MASK is set
|
||||
[[ -e MASK ]] && exit 0
|
||||
_FIRST_RUN=1
|
||||
for i in ${_SERVER_ARCH}; do
|
||||
[[ -z "${_FIRST_RUN}" ]] && sleep "${_SERVER_WAIT}"
|
||||
_FIRST_RUN=""
|
||||
# create container
|
||||
if ! [[ -d "${i}" ]]; then
|
||||
archboot-"${i}"-create-container.sh "${i}" -cp || exit 1
|
||||
|
@ -31,10 +34,10 @@ for i in ${_SERVER_ARCH}; do
|
|||
# if trigger successful, release new image to server
|
||||
if rg -qw "${k}" "${i}"/var/log/pacman.log; then
|
||||
archboot-"${i}"-server-release.sh || echo "Error: ${i} release!" >> error.log
|
||||
sleep "${_SERVER_WAIT}"
|
||||
break
|
||||
fi
|
||||
done
|
||||
rm "${i}"/var/log/pacman.log
|
||||
rm "${i}"/var/cache/pacman/pkg/*
|
||||
done
|
||||
# vim: set ft=sh ts=4 sw=4 et:
|
||||
|
|
|
@ -40,7 +40,7 @@ _clean_cache() {
|
|||
fi
|
||||
}
|
||||
|
||||
_pacman_chroot() {
|
||||
_pacman_container() {
|
||||
if ! [[ -f ${3} && -f ${3}.sig ]]; then
|
||||
echo "Downloading ${3}..."
|
||||
${_DLPROG} -O "${2}"/"${3}"
|
||||
|
|
|
@ -37,12 +37,12 @@ var/lib/pacman/local \
|
|||
fi
|
||||
_map _binary agetty archlinux-keyring-wkd-sync awk bat basename brotli bsdtar \
|
||||
{bus,coredump,hostname,journal,locale,login,machine,network,\
|
||||
system,timedate,userdb,home,oom,portable}ctl btm certutil chmod clear cmsutil crlutil curl date \
|
||||
system,timedate,userdb,home,oom,portable}ctl btm certutil chmod choose clear cmsutil crlutil curl date \
|
||||
dbus-{broker{,-launch},cleanup-sockets,daemon,launch,monitor,run-session,send,test-tool,\
|
||||
update-activation-environment,uuidgen} dd df dir du dust exa eza false fd fzf fzf-tmux gawk gpg{,-agent,conf,-connect-agent} \
|
||||
update-activation-environment,uuidgen} dd df dir du dust dysk exa eza false fd fzf fzf-tmux gawk gpg{,-agent,conf,-connect-agent} \
|
||||
gpgme-{tool,json} insmod install kernel-install kill{,all} loadkeys ldconfig \
|
||||
login mktemp mkhomedir_helper modutil more mount.ddi mount.nfs{,4} \
|
||||
nano nologin nss-config od p11-kit pk12util pam_timestamp_check pacman{,-conf,-key,-db-upgrade} \
|
||||
nano nologin nss-config od ouch p11-kit pk12util pam_timestamp_check pacman{,-conf,-key,-db-upgrade} \
|
||||
passwd pgrep pidof pinentry{,-curses} pk{action,check,exec,ttyagent} pluginviewer printf procs ps pwd \
|
||||
rmdir sasldblistusers2 saslpasswd2 tr true repo-{add,elephant,remove} rbash rg rmmod sd sed secret-tool \
|
||||
shlibsign sign{tool,ver} sort ssltap stat symkeyutil systemd-{ac-power,analyze,ask-password,cat,\
|
||||
|
|
|
@ -14,8 +14,10 @@ brotli/LICENSE
|
|||
bzip2/LICENSE
|
||||
curl/COPYING
|
||||
dbus/COPYING
|
||||
dog/LICENCE
|
||||
duktape/LICENSE.txt
|
||||
dust/LICENSE
|
||||
dysk/LICENSE
|
||||
e2fsprogs/MIT-LICENSE
|
||||
expat/COPYING
|
||||
eza/LICENSE
|
||||
|
@ -79,9 +81,11 @@ linux-firmware-whence/WHENCE
|
|||
lua/LICENSE
|
||||
lua51-lpeg/LICENSE
|
||||
luajit/COPYRIGHT
|
||||
miniserve/LICENSE
|
||||
msgpack-c/LICENSE
|
||||
ncurses/COPYING
|
||||
neovim/LICENSE.txt
|
||||
netscanner/LICENSE
|
||||
nfsidmap/LICENSE
|
||||
openssh/BSD-2-Clause.txt
|
||||
openssh/LICENCE
|
||||
|
@ -94,6 +98,7 @@ openssh/rijndael.Public-Domain.txt
|
|||
openssh/snprintf.Public-Domain.txt
|
||||
openssh/ssh.BSD-3-Clause.txt
|
||||
openssl/LICENSE.txt
|
||||
ouch/LICENSE
|
||||
p11-kit/COPYING
|
||||
pcre2/LICENSE
|
||||
popt/LICENSE
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
|
||||
_run ()
|
||||
{
|
||||
_map _binary arping bandwhich bridge clockdiff ctstat dcb devlink \
|
||||
elinks ethtool genl ifstat lnstat nstat rdma rtacct \
|
||||
rtmon rtstat rustscan ss ssh tc tipc tracepath vdpa
|
||||
_map _binary arping bandwhich bridge clockdiff ctstat dcb dog devlink \
|
||||
elinks ethtool genl ifstat lnstat netscanner nstat miniserve rdma \
|
||||
rtacct rtmon rtstat rustscan ss ssh tc tipc tracepath trip vdpa
|
||||
# add iproute 2, add openssl helper libraries
|
||||
_map _full_dir /usr/lib/{tc,engines-3} /usr/share/tc
|
||||
# add config for rustmap, no nmap available
|
||||
|
|
|
@ -25,7 +25,7 @@ fi
|
|||
_usage () {
|
||||
echo "CREATE ${_CAP_ARCH} PACMAN CHROOT"
|
||||
echo "-----------------------------"
|
||||
echo "This will create the ${_ARCH} pacman chroot tarball."
|
||||
echo "This will create the ${_ARCH} pacman container tarball."
|
||||
echo "usage: ${_BASENAME} <build-directory>"
|
||||
exit 0
|
||||
}
|
|
@ -35,11 +35,11 @@ else
|
|||
# running system != creating system
|
||||
if [[ "${_RUNNING_ARCH}" == "x86_64" ]]; then
|
||||
if echo "${_BASENAME}" | rg -qw 'aarch64'; then
|
||||
_pacman_chroot "${1}" "${_ARCHBOOT_AARCH64_CHROOT_PUBLIC}" \
|
||||
_pacman_container "${1}" "${_ARCHBOOT_AARCH64_CHROOT_PUBLIC}" \
|
||||
"${_ISO_HOME}/${_PACMAN_AARCH64_CHROOT}" || exit 1
|
||||
fi
|
||||
if echo "${_BASENAME}" | rg -qw 'riscv64'; then
|
||||
_pacman_chroot "${1}" "${_ARCHBOOT_RISCV64_CHROOT_PUBLIC}" \
|
||||
_pacman_container "${1}" "${_ARCHBOOT_RISCV64_CHROOT_PUBLIC}" \
|
||||
"${_ISO_HOME}/${_PACMAN_RISCV64_CHROOT}" || exit 1
|
||||
fi
|
||||
_create_pacman_conf "${1}" "use_binfmt"
|
||||
|
|
|
@ -24,12 +24,12 @@ else
|
|||
# running system != creating system
|
||||
if [[ "${_RUNNING_ARCH}" == "x86_64" ]]; then
|
||||
if echo "${_BASENAME}" | rg -qw 'aarch64'; then
|
||||
_pacman_chroot "${_REPODIR}" "${_ARCHBOOT_AARCH64_CHROOT_PUBLIC}" \
|
||||
"${_ISO_HOME}/${_PACMAN_AARCH64_CHROOT}" || exit 1
|
||||
_pacman_container "${_REPODIR}" "${_ARCHBOOT_AARCH64_CHROOT_PUBLIC}" \
|
||||
"${_ISO_HOME}/${_PACMAN_AARCH64_CHROOT}" || exit 1
|
||||
fi
|
||||
if echo "${_BASENAME}" | rg -qw 'riscv64'; then
|
||||
_pacman_chroot "${_REPODIR}" "${_ARCHBOOT_RISCV64_CHROOT_PUBLIC}" \
|
||||
"${_ISO_HOME}/${_PACMAN_RISCV64_CHROOT}" || exit 1
|
||||
_pacman_container "${_REPODIR}" "${_ARCHBOOT_RISCV64_CHROOT_PUBLIC}" \
|
||||
"${_ISO_HOME}/${_PACMAN_RISCV64_CHROOT}" || exit 1
|
||||
fi
|
||||
_create_pacman_conf "${_REPODIR}" "use_binfmt"
|
||||
_pacman_parameters "${_REPODIR}" "use_binfmt"
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
_root_check
|
||||
_container_check
|
||||
if echo "${_BASENAME}" | rg -qw 'riscv64' || echo "${_BASENAME}" | rg -qw 'aarch64'; then
|
||||
_update_pacman_chroot || exit 1
|
||||
_update_pacman_container || exit 1
|
||||
fi
|
||||
_update_source
|
||||
if echo "${_BASENAME}" | rg -qw 'x86_64'; then
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
. /usr/lib/archboot/container.sh
|
||||
_ISO_BUILD_DIR="$(mktemp -d "${_ISO_HOME_ARCH}"/server-release.XXX)"
|
||||
|
||||
_update_pacman_chroot() {
|
||||
_update_pacman_container() {
|
||||
if [[ "${_ARCH}" == "aarch64" ]]; then
|
||||
_ARCH_DIR="${_PACMAN_AARCH64}"
|
||||
_ARCH_CHROOT_PUBLIC="${_ARCHBOOT_AARCH64_CHROOT_PUBLIC}"
|
||||
|
@ -17,15 +17,15 @@ _update_pacman_chroot() {
|
|||
_PACMAN_CHROOT="${_PACMAN_RISCV64_CHROOT}"
|
||||
_SERVER_PACMAN="${_SERVER_PACMAN_RISCV64}"
|
||||
fi
|
||||
# update pacman chroot
|
||||
# update pacman container
|
||||
cd "${_ISO_HOME}" || exit 1
|
||||
[[ -d "${_ARCH_DIR}" ]] || mkdir "${_ARCH_DIR}"
|
||||
if ! [[ -f pacman-${_ARCH}-chroot-latest.tar.zst ]]; then
|
||||
echo "Downloading pacman ${_ARCH} chroot..."
|
||||
if ! [[ -f pacman-${_ARCH}-container-latest.tar.zst ]]; then
|
||||
echo "Downloading pacman ${_ARCH} container..."
|
||||
${_DLPROG} -O "${_ARCH_CHROOT_PUBLIC}"/"${_PACMAN_CHROOT}"
|
||||
${_DLPROG} -O "${_ARCH_CHROOT_PUBLIC}"/"${_PACMAN_CHROOT}".sig
|
||||
else
|
||||
echo "Using local pacman ${_ARCH} chroot..."
|
||||
echo "Using local pacman ${_ARCH} container..."
|
||||
fi
|
||||
# verify download
|
||||
#shellcheck disable=SC2024
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<h1>Archboot Home | <a href="https://archboot.com/gallery.html">Gallery</a> | <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z7GXKW4MKHK7C"><img src="donate.png" alt="Donate"></a></h1>
|
||||
<h2>2024 Fundraise: 0% <progress max="100" value="38">0%</progress> 100%</h2>
|
||||
<p><strong>© 2006 - 2024 | <a href=mailto:tpowa@archlinux.org>Tobias Powalowski</a></strong> | Arch Linux Developer <strong><a href="https://archlinux.org/people/developers/#tpowa">tpowa</a></strong><br>
|
||||
<strong>Last update: 25.07.2024 11:32</strong></p>
|
||||
<strong>Last update: 27.07.2024 17:06</strong></p>
|
||||
<nav id="TOC" role="doc-toc">
|
||||
<ul>
|
||||
<li><a href="#introduction" id="toc-introduction"><strong><span class="toc-section-number">1.</span> Introduction</strong></a></li>
|
||||
|
@ -805,17 +805,17 @@ The calculated size to boot the image follows the formula:<br>
|
|||
</tr>
|
||||
<tr class="odd">
|
||||
<td>Imagesize in MiB</td>
|
||||
<td class="MyYes">263 - 978</td>
|
||||
<td class="MyYes">266 - 993</td>
|
||||
<td class="MyNo">1173</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td>ROOTFS size in MiB</td>
|
||||
<td class="MyYes">740</td>
|
||||
<td class="MyYes">771</td>
|
||||
<td class="MyNo">1900</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td>ROOTFS packages</td>
|
||||
<td class="MyYes">218</td>
|
||||
<td class="MyYes">225</td>
|
||||
<td class="MyNo">418</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
|
@ -905,7 +905,7 @@ The calculated size to boot the image follows the formula:<br>
|
|||
<td class="MyNo">✖</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td>Rust CLI Tools:<br><a href="https://github.com/bdrung/3cpio" title="3cpio"><strong>3cpio</strong></a>, <a href="https://github.com/imsnif/bandwhich" title="bandwhich"><strong>bandwhich</strong></a>, <a href="https://github.com/sharkdp/bat" title="bat"><strong>bat</strong></a>, <a href="https://github.com/ClementTsang/bottom" title="bottom"><strong>bottom</strong></a>, <a href="https://github.com/bootandy/dust" title="dust"><strong>dust</strong></a>,<br><a href="https://eza.rocks" title="eza"><strong>eza</strong></a>, <a href="https://github.com/sharkdp/fd" title="fd"><strong>fd</strong></a>, <a href="https://github.com/junegunn/fzf" title="fzf"><strong>fzf</strong></a>, <a href="https://github.com/dalance/procs" title="procs"><strong>procs</strong></a>, <a href="https://github.com/BurntSushi/ripgrep" title="ripgrep"><strong>ripgrep</strong></a>, <a href="https://github.com/RustScan/RustScan" title="rustscan"><strong>rustscan</strong></a>,<br><a href="https://github.com/chmln/sd" title="sd"><strong>sd</strong></a>, <a href="https://github.com/ajeetdsouza/zoxide" title="zoxide"><strong>zoxide</strong></a></td>
|
||||
<td>Rust CLI Tools:<br><a href="https://github.com/bdrung/3cpio" title="3cpio"><strong>3cpio</strong></a>, <a href="https://github.com/imsnif/bandwhich" title="bandwhich"><strong>bandwhich</strong></a>, <a href="https://github.com/sharkdp/bat" title="bat"><strong>bat</strong></a>, <a href="https://github.com/ClementTsang/bottom" title="bottom"><strong>bottom</strong></a>,<br><a href="https://github.com/theryangeary/choose" title="choose"><strong>choose</strong></a>, <a href="https://github.com/ogham/dog" title="dog"><strong>dog</strong></a>, <a href="https://github.com/bootandy/dust" title="dust"><strong>dust</strong></a>, <a href="https://github.com/Canop/dysk" title="dysk"><strong>dysk</strong></a>, <a href="https://eza.rocks" title="eza"><strong>eza</strong></a>, <a href="https://github.com/sharkdp/fd" title="fd"><strong>fd</strong></a>,<br><a href="https://github.com/junegunn/fzf" title="fzf"><strong>fzf</strong></a>, <a href="https://github.com/svenstaro/miniserve" title="miniserve"><strong>miniserve</strong></a>, <a href="https://crates.io/crates/netscanner" title="netscanner"><strong>netscanner</strong></a>, <a href="https://github.com/ouch-org/ouch" title="ouch"><strong>ouch</strong></a>,<br><a href="https://github.com/dalance/procs" title="procs"><strong>procs</strong></a>, <a href="https://github.com/BurntSushi/ripgrep" title="ripgrep"><strong>ripgrep</strong></a>, <a href="https://github.com/RustScan/RustScan" title="rustscan"><strong>rustscan</strong></a>, <a href="https://github.com/chmln/sd" title="sd"><strong>sd</strong></a>,<br><a href="https://docs.rs/trippy/latest/trippy" title="trippy"><strong>trippy</strong></a>, <a href="https://github.com/ajeetdsouza/zoxide" title="zoxide"><strong>zoxide</strong></a></td>
|
||||
<td class="MyYes">✔</td>
|
||||
<td class="MyNo">✖</td>
|
||||
</tr>
|
||||
|
@ -1205,20 +1205,20 @@ Functions supported in <strong>/usr/lib/archboot/cpio/hooks/<hook></strong
|
|||
<ul>
|
||||
<li>You have to skip the tarball creation step, on <strong>aarch64</strong> or <strong>riscv64</strong> hardware.</li>
|
||||
<li><a href="https://wiki.archlinux.org/title/Install" title="Install"><strong>Install</strong></a> the <a href="https://archlinux.org/packages/?name=qemu-user-static"><strong>qemu-user-static</strong></a> package, for building on <strong>x86_64</strong> hardware.</li>
|
||||
<li>On first time setup you need to create the pacman-aarch64-chroot tarball on <strong>x86_64</strong> hardware.</li>
|
||||
<li>On first time setup you need to create the pacman-aarch64-container tarball on <strong>x86_64</strong> hardware.</li>
|
||||
</ul>
|
||||
<table>
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Create pacman chroot tarball:</th>
|
||||
<th>Create pacman container tarball:</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><code># archboot-pacman-aarch64-chroot.sh <build-directory></code></td>
|
||||
<td><code># archboot-pacman-aarch64-container.sh <build-directory></code></td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><code># archboot-pacman-riscv64-chroot.sh <build-directory></code></td>
|
||||
<td><code># archboot-pacman-riscv64-container.sh <build-directory></code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
|
Loading…
Reference in a new issue