Build-configs/Xfce32/build.sh

241 lines
7.3 KiB
Bash
Raw Normal View History

2023-02-04 18:25:27 -01:00
#!/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 \
2023-02-28 16:23:39 -01:00
--architectures i386 \
--linux-flavours 686-pae \
2023-06-14 11:07:50 +00:00
--distribution bookworm \
2024-02-13 17:29:46 -01:00
--uefi-secure-boot enable \
2023-06-14 11:07:50 +00:00
--archive-areas "main contrib non-free non-free-firmware" \
2023-02-04 18:25:27 -01:00
--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" \
2023-02-04 18:25:27 -01:00
--win32-loader false \
--iso-preparer "acoros-https://sourceforge.net/projects/acor-os/" \
--iso-publisher "acoros-https://sourceforge.net/projects/acor-os/ "\
--iso-volume "AcorOS "\
2023-02-04 18:25:27 -01:00
--image-name "AcorOS" \
--win32-loader false \
--checksums sha512 \
--zsync false \
"${@}"
2023-02-28 16:23:39 -01:00
# Install the Xfce Desktop
2023-02-04 18:25:27 -01:00
mkdir -p $acorbuild/build/config/package-lists
2023-02-28 16:23:39 -01:00
echo xfce4 xfce4-goodies > $acorbuild/build/config/package-lists/desktop.list.chroot
2023-02-04 18:25:27 -01:00
# Install software
echo "# Install software to the squashfs for calamares to unpack to the OS.
2023-02-28 16:23:39 -01:00
linux-headers-686-pae
2023-02-04 18:25:27 -01:00
locales
nala
dbus-x11
ntp
acoros-keyring
xorg
xserver-xorg
xserver-xorg-input-synaptics
xserver-xorg-input-all
xserver-xorg-video-vmware
xserver-xorg-video-all
2023-02-28 16:23:39 -01:00
w32codecs
2023-02-04 18:25:27 -01:00
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
2023-02-28 16:23:39 -01:00
sambashare
2023-02-04 18:25:27 -01:00
network-manager
network-manager-gnome
bluez
blueman
gufw
acoros-icons
2023-06-25 00:35:27 +00:00
materia-gtk-theme
tela-icon-theme
tela-circle-icon-theme
teja-gtk-theme
2023-02-28 16:23:39 -01:00
acoros-backgrounds
2023-02-04 18:25:27 -01:00
plymouth
plymouth-themes
cups
system-config-printer
lightdm
2023-06-25 00:35:27 +00:00
lightdm-gtk-greeter
2023-02-04 18:25:27 -01:00
lightdm-gtk-greeter-settings
2023-02-28 16:23:39 -01:00
menulibre
mugshot
2023-02-04 18:25:27 -01:00
xscreensaver
xscreensaver-data
xscreensaver-data-extra
xscreensaver-gl
xscreensaver-gl-extra
2023-02-28 16:23:39 -01:00
gnome-system-tools
gnome-disk-utility
2023-02-04 18:25:27 -01:00
gnome-calculator
2023-02-28 16:23:39 -01:00
neofetch
accountsservice
catfish
timeshift
2023-02-04 18:25:27 -01:00
gnome-software
gnome-software-plugin-flatpak
gnome-software-plugin-snap
fwupd
bleachbit
dconf-editor
gimp
gimp-data-extras
2023-02-28 16:23:39 -01:00
evince
xsane
2023-02-04 18:25:27 -01:00
transmission-gtk
thunderbird
2023-10-09 19:25:45 +00:00
thunderbird-l10n-all
firefox-esr
firefox-esr-l10n-all
2023-02-04 18:25:27 -01:00
libreoffice
libreoffice-gtk3
2023-10-09 19:25:45 +00:00
libreoffice-l10n*
2023-02-04 18:25:27 -01:00
printer-driver-cups-pdf
gnome-2048
2023-02-28 16:23:39 -01:00
gnome-chess
2023-06-25 00:35:27 +00:00
gnome-mahjongg
2023-02-04 18:25:27 -01:00
gnome-sudoku
guvcview
vlc
qt5-style-plugins
qt5ct
calamares-settings-debian
2023-02-04 18:25:27 -01:00
calamares
gdebi
f2fs-tools
xfsprogs
xfsdump
2023-02-28 16:23:39 -01:00
tumbler
tumbler-plugins-extra
ffmpegthumbnailer
xterm
2023-02-04 18:25:27 -01:00
grub-pc
2023-06-25 00:35:27 +00:00
baobab
2023-07-06 20:12:59 +00:00
console-setup
2023-07-11 11:17:20 +00:00
spice-vdagent
xdg-user-dirs-gtk
2023-07-06 20:12:59 +00:00
2023-02-04 18:25:27 -01:00
" > $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
grub2-common
2023-02-28 16:23:39 -01:00
grub-efi-ia32
grub-efi-ia32-bin
grub-efi-ia32-signed
2023-02-04 18:25:27 -01:00
libefiboot1
libefivar1
mokutil
os-prober
2023-02-28 16:23:39 -01:00
shim-helpers-i386-signed
2023-02-04 18:25:27 -01:00
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
2023-02-04 18:25:27 -01:00
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
2023-02-28 16:23:39 -01:00
mkdir -p $acorbuild/build/config/includes.chroot/boot/grub
mkdir -p $acorbuild/build/config/includes.chroot/etc/default
2023-06-17 19:06:58 +00:00
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
2023-06-25 00:35:27 +00:00
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/i386-linux-gnu/calamares/modules/fstab
2023-02-04 18:25:27 -01:00
# 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
2023-02-04 18:25:27 -01:00
cp $acorbuild/acorhooks/normal/* $acorbuild/build/config/hooks/normal
cp $acorbuild/acorlightdm/* $acorbuild/build/config/includes.chroot/etc/lightdm
2023-06-16 17:44:55 +00:00
cp $acorbuild/acorgrub/grub $acorbuild/build/config/includes.chroot/etc/default
2023-06-25 00:35:27 +00:00
cp $acorbuild/acorconfigs/.face $acorbuild/build/config/includes.chroot/etc/skel
cp $acorbuild/acorinstaller/bootloader-config-32/* $acorbuild/build/config/includes.chroot/usr/sbin
cp $acorbuild/acorinstaller/add-calamares-desktop-icon $acorbuild/build/config/includes.chroot/usr/bin
2023-07-04 20:15:59 +00:00
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/i386-linux-gnu/calamares/modules/fstab
2023-02-04 18:25:27 -01:00
2023-06-17 19:06:58 +00:00
cp -r $acorbuild/acorbootloaders/* $acorbuild/build/config/includes.binary
2023-02-04 18:25:27 -01:00
cp -r $acorbuild/acorrepos/* $acorbuild/build/config/archives
cp -r $acorbuild/acorcsv/* $acorbuild/build/config/includes.chroot/usr/share/distro-info
2023-02-28 16:23:39 -01:00
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
2023-07-03 18:31:38 +00:00
cp -r $acorbuild/acorinstaller/calamares $acorbuild/build/config/includes.chroot/etc
cp -r $acorbuild/acorinstaller/pixmaps $acorbuild/build/config/includes.chroot/usr/share
2023-02-04 18:25:27 -01:00
#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