Added build scripts for arm64 xfce
Manuel, I just wanted to make a good faith attempt to at least finish what was started, as far as arm64 work goes. All it needs are symlinks to the arm64-specific bits in the lxqt-arm64 directory, and the symlinks used for the other two xfce builders. All other changes have been straightened out in the scripts. If you can do that, I can test them and let you know if they work...
This commit is contained in:
parent
b956d2c6fe
commit
b50ece6560
|
@ -0,0 +1,53 @@
|
|||
#!/bin/bash
|
||||
|
||||
################################################################################
|
||||
# Title: Bldhelper.sh
|
||||
# Description: Script to build AçorOS ISO image
|
||||
# Author: PeppermintOS Team <peppermintosteam@proton.me>
|
||||
# Date: May 10, 2023
|
||||
# License: GPL-3.0-or-later
|
||||
################################################################################
|
||||
|
||||
# Set environment variables
|
||||
PREFIX=AcorOS-xfce
|
||||
SUFFIX=amd64
|
||||
BUILD=xfce
|
||||
TODAY=$(date -u +"%Y-%m-%d")
|
||||
FileName="${PREFIX}-${SUFFIX}"
|
||||
LOCATION=/var/www/html/nightly/AcorOS/${BUILD}
|
||||
LogDir=/var/log/Live-Build
|
||||
WorkingDir=/home/pepadmin/Build-configs/Xfce
|
||||
|
||||
# Execute the ISO building script
|
||||
cd ${WorkingDir}
|
||||
./build.sh 2>&1 | tee /tmp/build_log.txt
|
||||
|
||||
# Move and rename the ISO file
|
||||
cd build
|
||||
mv *.iso ${FileName}-${TODAY}.iso
|
||||
|
||||
# Create the checksum file for the ISO
|
||||
sha512sum ${FileName}-${TODAY}.iso > ${FileName}-${TODAY}-sha512.checksum
|
||||
|
||||
# Remove old ISO and checksum files from the desired location
|
||||
rm -f ${LOCATION}/${FileName}*.iso
|
||||
rm -f ${LOCATION}/${FileName}*-sha512.checksum
|
||||
|
||||
# Move the ISO and checksum files to the desired location
|
||||
mkdir -p ${LOCATION}
|
||||
mv ${FileName}-${TODAY}.iso ${LOCATION}
|
||||
mv ${FileName}-${TODAY}-sha512.checksum ${LOCATION}
|
||||
|
||||
# Move the log file to the log directory (if it exists)
|
||||
if [ -f /tmp/build_log.txt ]; then
|
||||
LogFileName="${PREFIX}-${SUFFIX}-${BUILD}.log"
|
||||
mv /tmp/build_log.txt ${LogDir}/${LogFileName}
|
||||
fi
|
||||
|
||||
# Clean the build folder
|
||||
lb clean
|
||||
|
||||
# Remove the "build" directory and its contents
|
||||
cd ..
|
||||
rm -rf build
|
||||
|
|
@ -0,0 +1,242 @@
|
|||
#!/bin/bash
|
||||
PATH="/sbin:/usr/sbin:/usr/local/sbin:$PATH"
|
||||
|
||||
# Set the working folder variable
|
||||
acorbuild="$(pwd)"
|
||||
|
||||
|
||||
# Create the build folder, move into it removing stale mountpoints and files there.
|
||||
[ -e build ] && [ ! -d build ] && rm -f build || [ ! -e build ] && mkdir build
|
||||
cd build
|
||||
umount $(mount | grep "${PWD}/chroot" | tac | cut -f3 -d" ") 2>/dev/null
|
||||
for i in ./* ./.build ./cache/bootstrap ; do [ $i = ./cache ] && continue || rm -rf $i ; done
|
||||
|
||||
|
||||
# Set of the structure to be used for the ISO and Live system.
|
||||
# See /usr/lib/live/build/config for a full list of examples.
|
||||
# Up above is the manual description of what options I used so far.
|
||||
|
||||
lb config noauto \
|
||||
--binary-images iso-hybrid \
|
||||
--mode debian \
|
||||
--bootstrap-qemu-arch arm64 \
|
||||
--bootstrap-qemu-static /usr/sbin/qemu-debootstrap \
|
||||
--architectures arm64 \
|
||||
--linux-flavours arm64 \
|
||||
--distribution bookworm \
|
||||
--archive-areas "main contrib non-free non-free-firmware" \
|
||||
--mirror-bootstrap https://deb.debian.org/debian \
|
||||
--parent-mirror-bootstrap https://deb.debian.org/debian \
|
||||
--parent-mirror-chroot https://deb.debian.org/debian \
|
||||
--parent-mirror-chroot-security https://security.debian.org/debian-security \
|
||||
--parent-mirror-binary https://deb.debian.org/debian \
|
||||
--parent-mirror-binary-security https://security.debian.org/debian-security \
|
||||
--mirror-chroot https://deb.debian.org/debian \
|
||||
--mirror-chroot-security https://security.debian.org/debian-security \
|
||||
--updates true \
|
||||
--security true \
|
||||
--backports false \
|
||||
--cache true \
|
||||
--apt-recommends true \
|
||||
--iso-application "AcorOS" \
|
||||
--win32-loader false \
|
||||
--iso-preparer "acoros-https://sourceforge.net/projects/acor-os/" \
|
||||
--iso-publisher "acoros-https://sourceforge.net/projects/acor-os/ "\
|
||||
--iso-volume "AcorOS "\
|
||||
--image-name "AcorOS" \
|
||||
--win32-loader false \
|
||||
--checksums sha512 \
|
||||
--zsync false \
|
||||
"${@}"
|
||||
|
||||
|
||||
|
||||
# Install the Xfce Desktop
|
||||
mkdir -p $acorbuild/build/config/package-lists
|
||||
echo xfce4 xfce4-goodies > $acorbuild/build/config/package-lists/desktop.list.chroot
|
||||
|
||||
# Install software
|
||||
echo "# Install software to the squashfs for calamares to unpack to the OS.
|
||||
linux-headers-arm64
|
||||
locales
|
||||
nala
|
||||
dbus-x11
|
||||
ntp
|
||||
acoros-keyring
|
||||
xorg
|
||||
xserver-xorg
|
||||
xserver-xorg-input-synaptics
|
||||
xserver-xorg-input-all
|
||||
xserver-xorg-video-all
|
||||
#w64codecs
|
||||
pulseaudio
|
||||
pavucontrol
|
||||
alsa-utils
|
||||
aptitude
|
||||
synaptic
|
||||
gparted
|
||||
apt-config-auto-update
|
||||
libelf-dev
|
||||
htop
|
||||
package-update-indicator
|
||||
desktop-base
|
||||
gnome-packagekit
|
||||
gvfs-backends
|
||||
samba
|
||||
gnome-packagekit
|
||||
sambashare
|
||||
network-manager
|
||||
network-manager-gnome
|
||||
bluez
|
||||
blueman
|
||||
gufw
|
||||
acoros-icons
|
||||
materia-gtk-theme
|
||||
tela-icon-theme
|
||||
tela-circle-icon-theme
|
||||
teja-gtk-theme
|
||||
acoros-backgrounds
|
||||
plymouth
|
||||
plymouth-themes
|
||||
cups
|
||||
system-config-printer
|
||||
lightdm
|
||||
lightdm-gtk-greeter
|
||||
lightdm-gtk-greeter-settings
|
||||
menulibre
|
||||
mugshot
|
||||
xscreensaver
|
||||
xscreensaver-data
|
||||
xscreensaver-data-extra
|
||||
xscreensaver-gl
|
||||
xscreensaver-gl-extra
|
||||
gnome-system-tools
|
||||
gnome-disk-utility
|
||||
gnome-calculator
|
||||
neofetch
|
||||
accountsservice
|
||||
catfish
|
||||
timeshift
|
||||
gnome-software
|
||||
gnome-software-plugin-flatpak
|
||||
gnome-software-plugin-snap
|
||||
fwupd
|
||||
bleachbit
|
||||
dconf-editor
|
||||
gimp
|
||||
gimp-data-extras
|
||||
evince
|
||||
xsane
|
||||
transmission-gtk
|
||||
thunderbird
|
||||
thunderbird-l10n-all
|
||||
firefox-esr
|
||||
firefox-esr-l10n-all
|
||||
libreoffice
|
||||
libreoffice-gtk3
|
||||
libreoffice-l10n*
|
||||
printer-driver-cups-pdf
|
||||
gnome-2048
|
||||
gnome-chess
|
||||
gnome-mahjongg
|
||||
gnome-sudoku
|
||||
guvcview
|
||||
vlc
|
||||
qt5-style-plugins
|
||||
qt5ct
|
||||
calamares-settings-debian
|
||||
calamares
|
||||
gdebi
|
||||
f2fs-tools
|
||||
xfsprogs
|
||||
xfsdump
|
||||
tumbler
|
||||
tumbler-plugins-extra
|
||||
ffmpegthumbnailer
|
||||
xterm
|
||||
#grub-pc
|
||||
baobab
|
||||
console-setup
|
||||
spice-vdagent
|
||||
xdg-user-dirs-gtk
|
||||
|
||||
" > $acorbuild/build/config/package-lists/packages.list.chroot
|
||||
|
||||
|
||||
# Packages to be stored in /pool but not installed in the OS .
|
||||
echo "# These packages are available to the installer, for offline use.
|
||||
efibootmgr
|
||||
grub-common
|
||||
grub2-common
|
||||
grub-efi
|
||||
grub-efi-arm64
|
||||
grub-efi-arm64-bin
|
||||
grub-efi-arm64-signed
|
||||
libefiboot1
|
||||
libefivar1
|
||||
mokutil
|
||||
os-prober
|
||||
shim-helpers-arm64-signed
|
||||
shim-signed
|
||||
shim-signed-common
|
||||
shim-unsigned
|
||||
|
||||
" > $acorbuild/build/config/package-lists/installer.list.binary
|
||||
|
||||
|
||||
# Setup the chroot structure
|
||||
mkdir -p $acorbuild/build/config/archives
|
||||
mkdir -p $acorbuild/build/config/includes.binary
|
||||
mkdir -p $acorbuild/build/config/hooks/normal
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/usr/lib/live/config
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/usr/share/applications
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/etc/live/config.conf.d
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/usr/share/distro-info
|
||||
mkdir -p $acorbuild/build/config/includes.chroot//usr/share/python-apt/templates
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/etc/dpkg/origins
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/usr/bin
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/usr/local/bin
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/etc/lightdm
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/boot/grub
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/etc/default
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/boot/grub
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/usr/sbin
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/usr/share
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/etc/skel/Desktop
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/etc/skel/.config
|
||||
mkdir -p $acorbuild/build/config/includes.chroot/lib/x86_64-linux-gnu/calamares/modules/fstab
|
||||
|
||||
# Copy Configs to the chroot
|
||||
cp $acorbuild/acoruserconfig/* $acorbuild/build/config/includes.chroot/etc/live/config.conf.d
|
||||
cp $acorbuild/acorapplication/* $acorbuild/build/config/includes.chroot/usr/share/applications
|
||||
cp $acorbuild/acorhooks/live/* $acorbuild/build/config/includes.chroot/usr/lib/live/config
|
||||
cp $acorbuild/acorhooks/normal/* $acorbuild/build/config/hooks/normal
|
||||
cp $acorbuild/acorlightdm/* $acorbuild/build/config/includes.chroot/etc/lightdm
|
||||
cp $acorbuild/acorgrub/grub $acorbuild/build/config/includes.chroot/etc/default
|
||||
cp $acorbuild/acorconfigs/.face $acorbuild/build/config/includes.chroot/etc/skel
|
||||
cp $acorbuild/acorinstaller/bootloader-config-arm64 $acorbuild/build/config/includes.chroot/usr/sbin/bootloader-config
|
||||
cp $acorbuild/acorinstaller/bootloader-config $acorbuild/build/config/includes.chroot/usr/sbin
|
||||
cp $acorbuild/acorinstaller/add-calamares-desktop-icon $acorbuild/build/config/includes.chroot/usr/bin
|
||||
cp $acorbuild/acorinstaller/install-debian $acorbuild/build/config/includes.chroot/usr/bin
|
||||
cp $acorbuild/acorinstaller/sources-final $acorbuild/build/config/includes.chroot/usr/sbin
|
||||
cp $acorbuild/acorinstaller/main.py $acorbuild/build/config/includes.chroot/lib/x86_64-linux-gnu/calamares/modules/fstab
|
||||
|
||||
cp -r $acorbuild/acorbootloaders/* $acorbuild/build/config/includes.binary
|
||||
cp -r $acorbuild/acorrepos/* $acorbuild/build/config/archives
|
||||
cp -r $acorbuild/acorcsv/* $acorbuild/build/config/includes.chroot/usr/share/distro-info
|
||||
cp -r $acorbuild/acorgrub/themes $acorbuild/build/config/includes.chroot/boot/grub
|
||||
cp -r $acorbuild/acorconfigs/xfce/* $acorbuild/build/config/includes.chroot/etc/skel/.config
|
||||
cp -r $acorbuild/acorinstaller/calamares $acorbuild/build/config/includes.chroot/etc
|
||||
cp -r $acorbuild/acorinstaller/pixmaps $acorbuild/build/config/includes.chroot/usr/share
|
||||
|
||||
#symlinks chroot
|
||||
ln -s Debian.info $acorbuild/build/config/includes.chroot/usr/share/python-apt/templates/Acoros.info
|
||||
ln -s Debian.mirrors $acorbuild/build/config/includes.chroot/usr/share/python-apt/templates/Acoros.mirrors
|
||||
ln -s debian.csv $acorbuild/build/config/includes.chroot/usr/share/distro-info/acoros.csv
|
||||
ln -s acoros $acorbuild/build/config/includes.chroot/etc/dpkg/origins/default
|
||||
|
||||
|
||||
# Build the ISO #
|
||||
lb build #--debug --verbose
|
||||
|
||||
|
Loading…
Reference in New Issue