From f4aa06f1e99900267f5842856df0afa15c68bd67 Mon Sep 17 00:00:00 2001 From: mollusk Date: Tue, 19 Nov 2019 00:48:57 -0700 Subject: [PATCH] A year worth of changes --- base-x64.packages | 4 +- base-x64.sh | 14 + build-images.sh | 370 +++++++++++++++++++---- build-images.sh.bak | 346 +++++++++++++++++++++ cinnamon-x64.packages | 21 +- cinnamon-x64.sh | 15 +- e17-x64.packages | 75 +++++ gnome-x64.packages | 16 +- gnome-x64.sh | 14 +- i3-x64.packages | 16 +- i3-x64.sh | 15 +- image_contents/base-x64.packages.txt | 25 ++ image_contents/cinnamon-x64.packages.txt | 53 ++++ image_contents/i3-x64.packages.txt | 55 ++++ image_contents/lxde-x64.packages.txt | 52 ++++ image_contents/lxqt-x64.packages.txt | 53 ++++ image_contents/mate-x64.packages.txt | 50 +++ image_contents/xfce-x64.packages.txt | 60 ++++ kde-x64.packages | 19 +- kde-x64.sh | 14 +- lxde-x64.packages | 14 + lxde-x64.sh | 15 +- lxqt-x64.packages | 14 + lxqt-x64.sh | 17 +- mate-x64.packages | 14 + mate-x64.sh | 17 +- mv-images.sh | 5 + package_lists/base-x64.packages.txt | 1 + package_lists/cinnamon-x64.packages.txt | 5 + package_lists/e17-x64.packages.txt | 62 ++++ package_lists/i3-x64.packages.txt | 1 + package_lists/lxde-x64.packages.txt | 1 + package_lists/lxqt-x64.packages.txt | 1 + package_lists/mate-x64.packages.txt | 1 + package_lists/xfce-x64.packages.txt | 1 + sha256sums.txt | 65 ++++ tom-x64.packages | 72 +++++ voidbuilds-logo.png | Bin 0 -> 25398 bytes xfce-x64.packages | 14 + xfce-x64.sh | 17 +- 40 files changed, 1541 insertions(+), 83 deletions(-) create mode 100755 build-images.sh.bak create mode 100644 e17-x64.packages create mode 100644 image_contents/base-x64.packages.txt create mode 100644 image_contents/cinnamon-x64.packages.txt create mode 100644 image_contents/i3-x64.packages.txt create mode 100644 image_contents/lxde-x64.packages.txt create mode 100644 image_contents/lxqt-x64.packages.txt create mode 100644 image_contents/mate-x64.packages.txt create mode 100644 image_contents/xfce-x64.packages.txt create mode 100644 package_lists/e17-x64.packages.txt create mode 100644 sha256sums.txt create mode 100644 tom-x64.packages create mode 100644 voidbuilds-logo.png diff --git a/base-x64.packages b/base-x64.packages index 0c82dd2..9e8088f 100644 --- a/base-x64.packages +++ b/base-x64.packages @@ -6,8 +6,7 @@ grub-x86_64-efi dialog cryptsetup lvm2 -mdadm -ConsoleKit2 +mdadm @@ -20,6 +19,7 @@ git xterm htop tuxc +topgrade ntp void-repo-multilib ntfs-3g diff --git a/base-x64.sh b/base-x64.sh index 396ce1b..1974dd5 100755 --- a/base-x64.sh +++ b/base-x64.sh @@ -23,9 +23,23 @@ sudo ./mklive.sh \ -o ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso +if [ ! -f ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso ];then + echo "Error: ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso : does not exist! Aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt + + + +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi diff --git a/build-images.sh b/build-images.sh index c92f8f8..a086d42 100755 --- a/build-images.sh +++ b/build-images.sh @@ -1,82 +1,342 @@ #!/bin/bash HTMLDIR="/var/www/voidbuilds.xyz/public" -FILENAME="BUILD_STATUS.html" -TOTAL="7" +FILENAME="status.html" +ISODIR="download" -echo "0/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} +echo "checking for updates" +xbps-install -Syu && xbps-install -yu -echo "Building Image: Base
" >> ${HTMLDIR}/${FILENAME} -echo "Building: Base Image..." -sleep 1 -./base-x64.sh -echo "1/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} -echo "Building Image: Cinnamon
" >> ${HTMLDIR}/${FILENAME} -echo " Building: Cinnamon Image..." +mvImages(){ + PKGLISTDIR="package_lists" -sleep 1 -./cinnamon-x64.sh + if [ ! -f sha256sums.txt ];then + echo "checksum file not found, aborting!" + exit 1 + fi -echo "2/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + if [ -d "${HTMLDIR}" ];then + rm ${HTMLDIR}/${ISODIR}/*.iso + rm ${HTMLDIR}/${ISODIR}/*.txt + rm ${HTMLDIR}/${ISODIR}/*.sig + mv sha256sums.txt build + mv sha256sums.txt.sig build + mv build/* ${HTMLDIR}/${ISODIR} + else + echo "${HTMLDIR}/${ISODIR} does not exist" + fi -#echo "Building Image: GNOME
" >> ${HTMLDIR}/${FILENAME} -#echo " Building: Gnome Image..." -#sleep 1 -#./gnome-x64.sh + if [ ! -d "${PKGLISTDIR}" ];then + mkdir "${PKGLISTDIR}" + fi -echo "Building Image: i3
" >> ${HTMLDIR}/${FILENAME} -echo "Building: i3 image..." -sleep 1 -./i3-x64.sh + rm ${PKGLISTDIR}/* + cp base-x64.packages ${PKGLISTDIR}/base-x64.packages.txt + cp cinnamon-x64.packages ${PKGLISTDIR}/cinnamon-x64.packages.txt + cp e17-x64.packages ${PKGLISTDIR}/e17-x64.packages.txt + cp mate-x64.packages ${PKGLISTDIR}/mate-x64.packages.txt + cp lxde-x64.packages ${PKGLISTDIR}/lxde-x64.packages.txt + cp lxqt-x64.packages ${PKGLISTDIR}/lxqt-x64.packages.txt + cp i3-x64.packages ${PKGLISTDIR}/i3-x64.packages.txt + #cp kde-x64.packages ${PKGLISTDIR}/kde-x64.packages.txt + #cp gnome-x64.packages ${PKGLISTDIR}/gnome-x64.packages.txt + cp xfce-x64.packages ${PKGLISTDIR}/xfce-x64.packages.txt -echo "3/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + cp -r ${PKGLISTDIR} ${HTMLDIR} -#echo "Building Image: KDE
" >> ${HTMLDIR}/${FILENAME} -#echo "Building: Kde image..." -#sleep 1 -#./kde-x64.sh + return +} -echo "Building Image: LXDE
" >> ${HTMLDIR}/${FILENAME} -echo "Building: Lxde Image..." -sleep 1 -./lxde-x64.sh +runBuilds(){ + TOTAL="8" + ERR_FILE="error-status.txt" -echo "4/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + if [ -f "${ERR_FILE}" ];then + echo "removing error file" + rm ${ERR_FILE} + fi -echo "Building Image: LXQT
" >> ${HTMLDIR}/${FILENAME} -echo "Building: Lxqt Image..." -sleep 1 -./lxqt-x64.sh + if [ ! -z "$(ls -A build)" ];then + rm build/* + fi -echo "5/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + echo "0/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} -echo "Building Image: MATE
" >> ${HTMLDIR}/${FILENAME} -echo "Building: Mate Image..." -sleep 1 -./mate-x64.sh + echo "Building Image: Base
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Base Image..." -echo "6/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + sleep 1 + ./base-x64.sh -echo "Building Image: XFCE
" >> ${HTMLDIR}/${FILENAME} -echo "Building: Xfce Image..." -sleep 1 -./xfce-x64.sh + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'base', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "1/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi -echo "7/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + echo "Building Image: Cinnamon
" >> ${HTMLDIR}/${FILENAME} + echo " Building: Cinnamon Image..." + + sleep 1 + ./cinnamon-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'Cinnamon', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "2/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + #echo "Building Image: GNOME
" >> ${HTMLDIR}/${FILENAME} + #echo " Building: Gnome Image..." + #sleep 1 + #./gnome-x64.sh + + echo "Building Image: i3
" >> ${HTMLDIR}/${FILENAME} + echo "Building: i3 image..." + + sleep 1 + ./i3-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'i3', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "3/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: Enlightenment
" >> ${HTMLDIR}/${FILENAME} + echo "Building: enlightenment image..." + + sleep 1 + ./e17-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'i3', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "4/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: KDE
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Kde image..." + sleep 1 + ./kde-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'KDE', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "5/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + #echo "Building Image: LXDE
" >> ${HTMLDIR}/${FILENAME} + #echo "Building: Lxde Image..." + #sleep 1 + #./lxde-x64.sh + + #if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + # echo "Build failed for image: 'LXDE', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + # rm ${ERR_FILE} + # ${0} -bl + #else + # echo "6/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + #fi + + echo "Building Image: LXQT
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Lxqt Image..." + sleep 1 + ./lxqt-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'LXQT', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "6/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: MATE
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Mate Image..." + sleep 1 + ./mate-x64.sh + + if [ "$(cat ${ERR_FILE})" = "ERR=1" ];then + echo "Build failed for image: 'MATE', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "7/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: XFCE
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Xfce Image..." + sleep 1 + ./xfce-x64.sh + + if [ "$(cat ${ERR_FILE})" = "ERR=1" ];then + echo "Build failed for image: 'XFCE', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "8/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + if [ ! -f sha256sums.txt ];then + echo "sha manifest does not exist!" + else + echo "Signing checksum file
" >> ${HTMLDIR}/${FILENAME} + ./sign-file.sh -f sha256sums.txt + mvImages + fi + + -if [ ! -f sha256sums.txt ];then - echo "sha manifest does not exist!" echo "Done!" - exit 0; -fi - -echo "Signing checksum file
" >> ${HTMLDIR}/${FILENAME} -./sign-file.sh -f sha256sums.txt -./mv-images.sh + return +} -echo "Done!" +genSpecs(){ + HTMLDIR="/var/www/voidbuilds.xyz/public" + FILENAME="specs.html" + + echo "" > ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + + echo "" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo '' >> ${HTMLDIR}/${FILENAME} + echo '

System Specs

' >> ${HTMLDIR}/${FILENAME} + echo "CPU Cores: 1
" >> ${HTMLDIR}/${FILENAME} + echo "Disk Size: $(df -h| tr -s ' ' $'\t' | grep vda1 | cut -f2)
" >> ${HTMLDIR}/${FILENAME} + echo "Disk Space Used: $(df | tr -s ' ' $'\t' | grep vda1 | cut -f5)
" >> ${HTMLDIR}/${FILENAME} + echo "Memory Size: $(free -m| tr -s ' ' $'\t' | grep Mem: | cut -f2) Mb
" >> ${HTMLDIR}/${FILENAME} + echo "Memory Free: $(free -m| tr -s ' ' $'\t' | grep Mem: | cut -f4) Mb
" >> ${HTMLDIR}/${FILENAME} + echo "Swap Size: $(free -m| tr -s ' ' $'\t' | grep Swap: | cut -f2) Mb
" >> ${HTMLDIR}/${FILENAME} + echo "Swap Used: $(free -m| tr -s ' ' $'\t' | grep Swap: | cut -f3) Mb

" >> ${HTMLDIR}/${FILENAME} + + echo "

Live Image Specs

" >> ${HTMLDIR}/${FILENAME} + echo "
System
" + echo "Kernel Version: $(xbps-query -R linux| grep pkgver | sed 's/pkgver://') series
" >> ${HTMLDIR}/${FILENAME} + echo "GlibC Version: $(xbps-query -R glibc| grep pkgver | sed 's/pkgver://')

" >> ${HTMLDIR}/${FILENAME} + echo "AMDGPU Version: $(xbps-query -R xf86-video-amdgpu| grep pkgver | sed 's/pkgver://')

" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} +} +genHtml(){ + FILENAME="status.html" + + + + echo "" > ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo '" >> ${HTMLDIR}/${FILENAME} + + echo "" >> ${HTMLDIR}/${FILENAME} + + echo "" >> ${HTMLDIR}/${FILENAME} + echo '' >> ${HTMLDIR}/${FILENAME} + echo "
This page will refresh every 10 seconds

" >> ${HTMLDIR}/${FILENAME} + + + echo "

Build process initiated at:

$(date +%R) MST ($(date -u +%R) UTC) on $(date +%D)" >> ${HTMLDIR}/${FILENAME} + echo "

ETA: 2 hours from initiation time


" >> ${HTMLDIR}/${FILENAME} + + + echo "
" >> ${HTMLDIR}/${FILENAME} + + #cat ${HTMLDIR}/${FILENAME} + + echo "

Status

" >> ${HTMLDIR}/${FILENAME} + + runBuilds + + echo "Disk Space Used: $(df | tr -s ' ' $'\t' | grep vda1 | cut -f5)
" >> ${HTMLDIR}/${FILENAME} + echo "All images were completed at $(date +%R) MST ($(date -u +%R) UTC)
" >> ${HTMLDIR}/${FILENAME} + echo "Next build round in 24 hours" >> ${HTMLDIR}/${FILENAME} + echo 'Return to landing page' >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + + return +} + +cleanUp(){ + + + BUILDDIR="build" + echo "[Cleaning up...]" + echo "Checking for local XBPS cache dir..." + if [ -d xbps-cachedir-x86_64 ];then + echo "Removing local XBPS cache dir" + rm -r xbps-cachedir-x86_64/ + fi + echo "Removing orphans..." + xbps-remove -yo + echo "Clearing system XBPS cache files..." + tux c + echo "Checking for unused image files..." + if [ "$(ls -A $BUILDDIR)" ];then + echo "Removing unused image files.." + rm build/* + fi + + echo "Checking for and removing unused kernels..." + vkpurge rm all + +} + +case ${1} in + + +-bl|--build-later) + while true;do + snooze -v && cleanUp && genSpecs && genHtml && cleanUp && genSpecs + done +;; + +-bn|--build-now) + while true;do + cleanUp && genSpecs && genHtml && cleanUp && genSpecs && snooze -v + done +;; + + +*) + echo -e "\nusage: ${0} [-bn, -bl]\n" + echo -e "\n-bn run builds now, snooze after\n" + echo -e "-bl snooze now, run builds after\n\n" +;; +esac diff --git a/build-images.sh.bak b/build-images.sh.bak new file mode 100755 index 0000000..c4b5e24 --- /dev/null +++ b/build-images.sh.bak @@ -0,0 +1,346 @@ +#!/bin/bash + +HTMLDIR="/var/www/voidbuilds.xyz/public" +FILENAME="status.html" +ISODIR="download" + + +echo "checking for updates" +xbps-install -Syu && xbps-install -yu + + + + +mvImages(){ + PKGLISTDIR="package_lists" + + if [ ! -f sha256sums.txt ];then + echo "checksum file not found, aborting!" + exit 1 + fi + + if [ -d "${HTMLDIR}" ];then + rm ${HTMLDIR}/${ISODIR}/*.iso + rm ${HTMLDIR}/${ISODIR}/*.txt + rm ${HTMLDIR}/${ISODIR}/*.sig + mv sha256sums.txt build + mv sha256sums.txt.sig build + mv build/* ${HTMLDIR}/${ISODIR} + else + echo "${HTMLDIR}/${ISODIR} does not exist" + fi + + if [ ! -d "${PKGLISTDIR}" ];then + mkdir "${PKGLISTDIR}" + fi + + rm ${PKGLISTDIR}/* + cp base-x64.packages ${PKGLISTDIR}/base-x64.packages.txt + cp cinnamon-x64.packages ${PKGLISTDIR}/cinnamon-x64.packages.txt + cp e17-x64.packages ${PKGLISTDIR}/e17-x64.packages.txt + cp mate-x64.packages ${PKGLISTDIR}/mate-x64.packages.txt + cp lxde-x64.packages ${PKGLISTDIR}/lxde-x64.packages.txt + cp lxqt-x64.packages ${PKGLISTDIR}/lxqt-x64.packages.txt + cp i3-x64.packages ${PKGLISTDIR}/i3-x64.packages.txt + #cp kde-x64.packages ${PKGLISTDIR}/kde-x64.packages.txt + #cp gnome-x64.packages ${PKGLISTDIR}/gnome-x64.packages.txt + cp xfce-x64.packages ${PKGLISTDIR}/xfce-x64.packages.txt + + cp -r ${PKGLISTDIR} ${HTMLDIR} + + return +} + +runBuilds(){ + TOTAL="8" + ERR_FILE="error-status.txt" + + if [ -f "${ERR_FILE}" ];then + echo "removing error file" + rm ${ERR_FILE} + fi + + if [ ! -z "$(ls -A build)" ];then + rm build/* + fi + + echo "0/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + + echo "Building Image: Base
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Base Image..." + + sleep 1 + ./base-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'base', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "1/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: Cinnamon
" >> ${HTMLDIR}/${FILENAME} + echo " Building: Cinnamon Image..." + + sleep 1 + ./cinnamon-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'Cinnamon', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "2/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + #echo "Building Image: GNOME
" >> ${HTMLDIR}/${FILENAME} + #echo " Building: Gnome Image..." + #sleep 1 + #./gnome-x64.sh + + echo "Building Image: i3
" >> ${HTMLDIR}/${FILENAME} + echo "Building: i3 image..." + + sleep 1 + ./i3-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'i3', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "3/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: Enlightenment
" >> ${HTMLDIR}/${FILENAME} + echo "Building: enlightenment image..." + + sleep 1 + ./e17-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'i3', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "4/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: KDE
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Kde image..." + sleep 1 + ./kde-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'KDE', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "5/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: LXDE
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Lxde Image..." + sleep 1 + ./lxde-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'LXDE', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "6/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: LXQT
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Lxqt Image..." + sleep 1 + ./lxqt-x64.sh + + if [ $(cat ${ERR_FILE}) = "ERR=1" ];then + echo "Build failed for image: 'LXQT', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "7/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: MATE
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Mate Image..." + sleep 1 + ./mate-x64.sh + + if [ "$(cat ${ERR_FILE})" = "ERR=1" ];then + echo "Build failed for image: 'MATE', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "8/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + echo "Building Image: XFCE
" >> ${HTMLDIR}/${FILENAME} + echo "Building: Xfce Image..." + sleep 1 + ./xfce-x64.sh + + if [ "$(cat ${ERR_FILE})" = "ERR=1" ];then + echo "Build failed for image: 'XFCE', trying again at 00:00 MST
" >> ${HTMLDIR}/${FILENAME} + rm ${ERR_FILE} + ${0} -bl + else + echo "9/${TOTAL} completed at $(date +%T)

" >> ${HTMLDIR}/${FILENAME} + fi + + if [ ! -f sha256sums.txt ];then + echo "sha manifest does not exist!" + else + echo "Signing checksum file
" >> ${HTMLDIR}/${FILENAME} + ./sign-file.sh -f sha256sums.txt + mvImages + fi + + + + echo "Done!" + return +} + + +genSpecs(){ + HTMLDIR="/var/www/voidbuilds.xyz/public" + FILENAME="specs.html" + + echo "" > ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + + echo "" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo '' >> ${HTMLDIR}/${FILENAME} + echo '

System Specs

' >> ${HTMLDIR}/${FILENAME} + echo "CPU Cores: 1
" >> ${HTMLDIR}/${FILENAME} + echo "Disk Size: $(df -h| tr -s ' ' $'\t' | grep vda1 | cut -f2)
" >> ${HTMLDIR}/${FILENAME} + echo "Disk Space Used: $(df | tr -s ' ' $'\t' | grep vda1 | cut -f5)
" >> ${HTMLDIR}/${FILENAME} + echo "Memory Size: $(free -m| tr -s ' ' $'\t' | grep Mem: | cut -f2) Mb
" >> ${HTMLDIR}/${FILENAME} + echo "Memory Free: $(free -m| tr -s ' ' $'\t' | grep Mem: | cut -f4) Mb
" >> ${HTMLDIR}/${FILENAME} + echo "Swap Size: $(free -m| tr -s ' ' $'\t' | grep Swap: | cut -f2) Mb
" >> ${HTMLDIR}/${FILENAME} + echo "Swap Used: $(free -m| tr -s ' ' $'\t' | grep Swap: | cut -f3) Mb

" >> ${HTMLDIR}/${FILENAME} + + echo "

Live Image Specs

" >> ${HTMLDIR}/${FILENAME} + echo "
System
" + echo "Kernel Version: $(xbps-query -R linux| grep pkgver | sed 's/pkgver://') series
" >> ${HTMLDIR}/${FILENAME} + echo "GlibC Version: $(xbps-query -R glibc| grep pkgver | sed 's/pkgver://')

" >> ${HTMLDIR}/${FILENAME} + echo "AMDGPU Version: $(xbps-query -R xf86-video-amdgpu| grep pkgver | sed 's/pkgver://')

" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} +} +genHtml(){ + FILENAME="status.html" + + + + echo "" > ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo '" >> ${HTMLDIR}/${FILENAME} + + echo "" >> ${HTMLDIR}/${FILENAME} + + echo "" >> ${HTMLDIR}/${FILENAME} + echo '' >> ${HTMLDIR}/${FILENAME} + echo "
This page will refresh every 10 seconds

" >> ${HTMLDIR}/${FILENAME} + + + echo "

Build process initiated at:

$(date +%R) MST ($(date -u +%R) UTC) on $(date +%D)" >> ${HTMLDIR}/${FILENAME} + echo "

ETA: 2 hours from initiation time


" >> ${HTMLDIR}/${FILENAME} + + + echo "
" >> ${HTMLDIR}/${FILENAME} + + #cat ${HTMLDIR}/${FILENAME} + + echo "

Status

" >> ${HTMLDIR}/${FILENAME} + + runBuilds + + echo "Disk Space Used: $(df | tr -s ' ' $'\t' | grep vda1 | cut -f5)
" >> ${HTMLDIR}/${FILENAME} + echo "All images were completed at $(date +%R) MST ($(date -u +%R) UTC)
" >> ${HTMLDIR}/${FILENAME} + echo "Next build round in 24 hours" >> ${HTMLDIR}/${FILENAME} + echo 'Return to landing page' >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + echo "" >> ${HTMLDIR}/${FILENAME} + + return +} + +cleanUp(){ + + if [ $(df | tr -s ' ' $'\t' | grep vda1 | cut -f5) > "42%" ];then + + BUILDDIR="build" + echo "[Cleaning up...]" + echo "Checking for local XBPS cache dir..." + if [ -d xbps-cachedir-x86_64 ];then + echo "Removing local XBPS cache dir" + rm -r xbps-cachedir-x86_64/ + fi + echo "Removing orphans..." + xbps-remove -yo + echo "Clearing system XBPS cache files..." + tux c + echo "Checking for unused image files..." + if [ "$(ls -A $BUILDDIR)" ];then + echo "Removing unused image files.." + rm build/* + fi + + echo "Checking for and removing unused kernels..." + vkpurge rm all + + else + return 0 + fi +} + +case ${1} in + + +-bl|--build-later) + while true;do + snooze -v && cleanUp && genSpecs && genHtml && cleanUp && genSpecs + done +;; + +-bn|--build-now) + while true;do + cleanUp && genSpecs && genHtml && cleanUp && genSpecs && snooze -v + done +;; + + +*) + echo -e "\nusage: ${0} [-bn, -bl]\n" + echo -e "\n-bn run builds now, snooze after\n" + echo -e "-bl snooze now, run builds after\n\n" +;; +esac diff --git a/cinnamon-x64.packages b/cinnamon-x64.packages index e167cf6..e64f940 100644 --- a/cinnamon-x64.packages +++ b/cinnamon-x64.packages @@ -6,8 +6,7 @@ grub-x86_64-efi dialog cryptsetup lvm2 -mdadm -ConsoleKit2 +mdadm # X PACKAGES xorg-minimal @@ -27,8 +26,25 @@ lxdm pm-utils nano xdg-utils +xdg-desktop-portal +xdg-desktop-portal-gtk +xdg-desktop-portal-kde +xdg-user-dirs +xdg-user-dirs-gtk +libappindicator +AppStream +libvdpau-va-gl +vdpauinfo +pipewire +gstreamer1-pipewire +upower +flatpak git vim +dtrx +unzip +p7zip +unrar bash-completion cinnamon xrandr @@ -39,6 +55,7 @@ pavucontrol xterm htop tuxc +topgrade ntp octoxbps gksu diff --git a/cinnamon-x64.sh b/cinnamon-x64.sh index 7ff921a..3fead19 100755 --- a/cinnamon-x64.sh +++ b/cinnamon-x64.sh @@ -5,7 +5,7 @@ echo "| ${DESKTOP} VOID x86_64 |" echo " ------------------------" CURRENT=https://alpha.de.repo.voidlinux.org/current MUTILIB=https://alpha.de.repo.voidlinux.org/current/multilib -#NONFREE=https://repo.voidlinux.eu/current/nonfree +NONFREE=https://alpha.de.repo.voidlinux.org/current/nonfree FILENAME="void-live-${DESKTOP}-unofficial" DATE=$(date +%Y%m%d) KERNEL=$(uname -r) @@ -19,14 +19,25 @@ sudo ./mklive.sh \ -a x86_64 \ -r ${CURRENT} \ -r ${MUTILIB} \ + -r ${NONFREE} \ -p "$(grep '^[^#].' ${DESKTOP}-x64.packages)" \ -T "Void Linux ${DESKTOP} Unofficial" \ -o ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso - +if [ ! -f ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso ];then + echo "Error: ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso : does not exist! Aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi diff --git a/e17-x64.packages b/e17-x64.packages new file mode 100644 index 0000000..19bc20e --- /dev/null +++ b/e17-x64.packages @@ -0,0 +1,75 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm + +# X PACKAGES +xorg-minimal +xorg-input-drivers +xorg-video-drivers +xrandr +intel-ucode +setxkbmap +xauth +font-misc-misc +terminus-font +dejavu-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +lxdm +enlightenment +terminology +econnman +upower +xdg-utils +xdg-desktop-portal +xdg-desktop-portal-gtk +xdg-desktop-portal-kde +xdg-user-dirs +xdg-user-dirs-gtk +libappindicator +AppStream +libvdpau-va-gl +vdpauinfo +pipewire +gstreamer1-pipewire +upower +flatpak +zenity +bash-completion +pm-utils +nano +xdg-utils +vim +git +alsa-utils +paprefs +pasystray +pavucontrol +xterm +htop +tuxc +topgrade +ntp +void-repo-multilib +void-repo-nonfree +octoxbps +gksu +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +network-manager-applet +firefox +Adapta +papirus-icon-theme +gnome-themes-standard diff --git a/gnome-x64.packages b/gnome-x64.packages index c7a0a23..e8a01fc 100644 --- a/gnome-x64.packages +++ b/gnome-x64.packages @@ -7,7 +7,6 @@ dialog cryptsetup lvm2 mdadm -ConsoleKit2 dbus avahi avahi-utils @@ -37,11 +36,24 @@ vim alsa-utils paprefs xdg-utils -pasystray +xdg-desktop-portal +xdg-desktop-portal-gtk +xdg-desktop-portal-kde +xdg-user-dirs +xdg-user-dirs-gtk +libappindicator +AppStream +libva-vdpau-driver +vdpauinfo +pipewire +gstreamer1-pipewire +upower +flatpak pavucontrol xterm htop tuxc +topgrade ntp void-repo-multilib void-repo-nonfree diff --git a/gnome-x64.sh b/gnome-x64.sh index 37ad66c..390a2fe 100755 --- a/gnome-x64.sh +++ b/gnome-x64.sh @@ -23,12 +23,22 @@ sudo ./mklive.sh \ -T "Void Linux ${DESKTOP} Unofficial" \ -o ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso - +if [ ! -f ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso ];then + echo "Error: ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso : does not exist! Aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi -mv ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso build \ No newline at end of file +mv ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso build diff --git a/i3-x64.packages b/i3-x64.packages index d23f5ad..90f99b9 100644 --- a/i3-x64.packages +++ b/i3-x64.packages @@ -7,7 +7,6 @@ dialog cryptsetup lvm2 mdadm -ConsoleKit2 # X PACKAGES xorg-minimal @@ -28,8 +27,22 @@ lxdm pm-utils nano xdg-utils +xdg-desktop-portal +xdg-desktop-portal-gtk +xdg-desktop-portal-kde +xdg-user-dirs +xdg-user-dirs-gtk +libappindicator +AppStream +libvdpau-va-gl +vdpauinfo +pipewire +gstreamer1-pipewire +upower +flatpak git vim +upower bash-completion i3-gaps i3blocks @@ -41,6 +54,7 @@ xterm mc htop tuxc +topgrade ntp dmenu sakura diff --git a/i3-x64.sh b/i3-x64.sh index 2e9419a..bbb273a 100755 --- a/i3-x64.sh +++ b/i3-x64.sh @@ -5,7 +5,7 @@ echo "| ${DESKTOP} VOID x86_64 |" echo " ------------------------" CURRENT=https://alpha.de.repo.voidlinux.org/current MUTILIB=https://alpha.de.repo.voidlinux.org/current/multilib -#NONFREE=https://repo.voidlinux.eu/current/nonfree +NONFREE=https://alpha.de.repo.voidlinux.org/current/nonfree FILENAME="void-live-${DESKTOP}-unofficial" DATE=$(date +%Y%m%d) KERNEL=$(uname -r) @@ -19,14 +19,25 @@ sudo ./mklive.sh \ -a x86_64 \ -r ${CURRENT} \ -r ${MUTILIB} \ + -r ${NONFREE} \ -p "$(grep '^[^#].' ${DESKTOP}-x64.packages)" \ -T "Void Linux ${DESKTOP} Unofficial" \ -o ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso - +if [ ! -f ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso ];then + echo "Error: ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso : does not exist! Aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi diff --git a/image_contents/base-x64.packages.txt b/image_contents/base-x64.packages.txt new file mode 100644 index 0000000..0c82dd2 --- /dev/null +++ b/image_contents/base-x64.packages.txt @@ -0,0 +1,25 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + + + +#USERLAND PACKAGES +NetworkManager +nano +vim +bash-completion +git +xterm +htop +tuxc +ntp +void-repo-multilib +ntfs-3g diff --git a/image_contents/cinnamon-x64.packages.txt b/image_contents/cinnamon-x64.packages.txt new file mode 100644 index 0000000..e167cf6 --- /dev/null +++ b/image_contents/cinnamon-x64.packages.txt @@ -0,0 +1,53 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + +# X PACKAGES +xorg-minimal +xorg-input-drivers +xorg-video-drivers +intel-ucode +setxkbmap +xauth +font-misc-misc +terminus-font +dejavu-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +lxdm +pm-utils +nano +xdg-utils +git +vim +bash-completion +cinnamon +xrandr +colord +gnome-terminal +alsa-utils +pavucontrol +xterm +htop +tuxc +ntp +octoxbps +gksu +void-repo-multilib +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +network-manager-applet +firefox diff --git a/image_contents/i3-x64.packages.txt b/image_contents/i3-x64.packages.txt new file mode 100644 index 0000000..d23f5ad --- /dev/null +++ b/image_contents/i3-x64.packages.txt @@ -0,0 +1,55 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + +# X PACKAGES +xorg-minimal +xorg-input-drivers +xorg-video-drivers +intel-ucode +setxkbmap +xauth +xrandr +font-misc-misc +terminus-font +dejavu-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +lxdm +pm-utils +nano +xdg-utils +git +vim +bash-completion +i3-gaps +i3blocks +i3status +alsa-utils +pulsemixer +pasystray +xterm +mc +htop +tuxc +ntp +dmenu +sakura +void-repo-multilib +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +network-manager-applet +qutebrowser diff --git a/image_contents/lxde-x64.packages.txt b/image_contents/lxde-x64.packages.txt new file mode 100644 index 0000000..722ab90 --- /dev/null +++ b/image_contents/lxde-x64.packages.txt @@ -0,0 +1,52 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + +# X PACKAGES +xorg-minimal +xorg-input-drivers +xorg-video-drivers +intel-ucode +setxkbmap +xrandr +xauth +font-misc-misc +terminus-font +dejavu-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +lxdm +pm-utils +bash-completion +nano +git +vim +lxde +xdg-utils +gnome-terminal +alsa-utils +pavucontrol +xterm +htop +tuxc +ntp +octoxbps +gksu +void-repo-multilib +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +network-manager-applet +falkon diff --git a/image_contents/lxqt-x64.packages.txt b/image_contents/lxqt-x64.packages.txt new file mode 100644 index 0000000..3673274 --- /dev/null +++ b/image_contents/lxqt-x64.packages.txt @@ -0,0 +1,53 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + +# X PACKAGES +xorg-minimal +xorg-input-drivers +xorg-video-drivers +xrandr +intel-ucode +setxkbmap +xauth +font-misc-misc +terminus-font +dejavu-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +qt5-plugin-sqlite +pm-utils +nano +bash-completion +git +xdg-utils +vim +lxdm +lxqt +lxterminal +alsa-utils +pavucontrol +xterm +htop +tuxc +ntp +octoxbps +gksu +void-repo-multilib +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +network-manager-applet +falkon diff --git a/image_contents/mate-x64.packages.txt b/image_contents/mate-x64.packages.txt new file mode 100644 index 0000000..db987eb --- /dev/null +++ b/image_contents/mate-x64.packages.txt @@ -0,0 +1,50 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + +# X PACKAGES +xorg-minimal +xorg-input-drivers +xorg-video-drivers +intel-ucode +setxkbmap +xauth +xrandr +font-misc-misc +terminus-font +dejavu-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +lxdm +mate +mate-extra +bash-completion +caja-extensions +alsa-utils +xdg-utils +pavucontrol +alsa-plugins-pulseaudio +xterm +htop +tuxc +ntp +octoxbps +gksu +void-repo-multilib +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +network-manager-applet +firefox diff --git a/image_contents/xfce-x64.packages.txt b/image_contents/xfce-x64.packages.txt new file mode 100644 index 0000000..c2b2d42 --- /dev/null +++ b/image_contents/xfce-x64.packages.txt @@ -0,0 +1,60 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + +# X PACKAGES +xorg-minimal +xorg-input-drivers +xorg-video-drivers +xrandr +intel-ucode +setxkbmap +xauth +font-misc-misc +terminus-font +dejavu-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +lxdm +xdg-utils +zenity +bash-completion +pm-utils +nano +xdg-utils +vim +git +alsa-utils +paprefs +pasystray +pavucontrol +xterm +htop +tuxc +ntp +void-repo-multilib +void-repo-nonfree +octoxbps +gksu +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +network-manager-applet +firefox +xfce4 +xfce4-plugins +Adapta +papirus-icon-theme +gnome-themes-standard diff --git a/kde-x64.packages b/kde-x64.packages index e7bad7a..61b2edc 100644 --- a/kde-x64.packages +++ b/kde-x64.packages @@ -7,13 +7,11 @@ dialog cryptsetup lvm2 mdadm -ConsoleKit2 # X PACKAGES xorg xorg-input-drivers xorg-video-drivers -intel-ucode setxkbmap xauth xrandr @@ -32,6 +30,19 @@ nano git vim xdg-utils +xdg-desktop-portal +xdg-desktop-portal-gtk +xdg-desktop-portal-kde +xdg-user-dirs +xdg-user-dirs-gtk +libappindicator +AppStream +libvdpau-va-gl +vdpauinfo +pipewire +gstreamer1-pipewire +upower +flatpak alsa-utils alsa-plugins-pulseaudio plasma-pa @@ -44,6 +55,7 @@ curl xterm htop tuxc +topgrade keepassxc octoxbps ntp @@ -61,6 +73,9 @@ NetworkManager plasma-nm firefox kde5 +kde5-baseapps +kaccounts-integration +kaccounts-providers dolphin adapta-kde papirus-icon-theme diff --git a/kde-x64.sh b/kde-x64.sh index 4123f68..5222ba7 100755 --- a/kde-x64.sh +++ b/kde-x64.sh @@ -23,12 +23,22 @@ sudo ./mklive.sh \ -T "Void Linux ${DESKTOP} Unofficial" \ -o ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso - +if [ ! -f ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso ];then + echo "Error: ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso : does not exist! Aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi -mv ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso build \ No newline at end of file +mv ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso build diff --git a/lxde-x64.packages b/lxde-x64.packages index 722ab90..91fd83d 100644 --- a/lxde-x64.packages +++ b/lxde-x64.packages @@ -32,12 +32,26 @@ git vim lxde xdg-utils +xdg-desktop-portal +xdg-desktop-portal-gtk +xdg-desktop-portal-kde +xdg-user-dirs +xdg-user-dirs-gtk +libappindicator +AppStream +libvdpau-va-gl +vdpauinfo +pipewire +gstreamer1-pipewire +upower +flatpak gnome-terminal alsa-utils pavucontrol xterm htop tuxc +topgrade ntp octoxbps gksu diff --git a/lxde-x64.sh b/lxde-x64.sh index 250049a..2f2fe25 100755 --- a/lxde-x64.sh +++ b/lxde-x64.sh @@ -5,7 +5,7 @@ echo "| ${DESKTOP} VOID x86_64 |" echo " ------------------------" CURRENT=https://alpha.de.repo.voidlinux.org/current MUTILIB=https://alpha.de.repo.voidlinux.org/current/multilib -#NONFREE=https://repo.voidlinux.eu/current/nonfree +NONFREE=https://alpha.de.repo.voidlinux.org/current/nonfree FILENAME="void-live-${DESKTOP}-unofficial" DATE=$(date +%Y%m%d) KERNEL=$(uname -r) @@ -19,14 +19,25 @@ sudo ./mklive.sh \ -a x86_64 \ -r ${CURRENT} \ -r ${MUTILIB} \ + -r ${NONFREE} \ -p "$(grep '^[^#].' ${DESKTOP}-x64.packages)" \ -T "Void Linux ${DESKTOP} Unofficial" \ -o ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso - +if [ ! -f ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso ];then + echo "Error: ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso : does not exist! Aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi diff --git a/lxqt-x64.packages b/lxqt-x64.packages index 3673274..6bf1977 100644 --- a/lxqt-x64.packages +++ b/lxqt-x64.packages @@ -30,6 +30,19 @@ nano bash-completion git xdg-utils +xdg-desktop-portal +xdg-desktop-portal-gtk +xdg-desktop-portal-kde +xdg-user-dirs +xdg-user-dirs-gtk +libappindicator +AppStream +libvdpau-va-gl +vdpauinfo +pipewire +gstreamer1-pipewire +upower +flatpak vim lxdm lxqt @@ -39,6 +52,7 @@ pavucontrol xterm htop tuxc +topgrade ntp octoxbps gksu diff --git a/lxqt-x64.sh b/lxqt-x64.sh index b37eb8e..dde3390 100755 --- a/lxqt-x64.sh +++ b/lxqt-x64.sh @@ -5,7 +5,7 @@ echo "| ${DESKTOP} VOID x86_64 |" echo " ------------------------" CURRENT=https://alpha.de.repo.voidlinux.org/current MUTILIB=https://alpha.de.repo.voidlinux.org/current/multilib -#NONFREE=https://repo.voidlinux.eu/current/nonfree +NONFREE=https://alpha.de.repo.voidlinux.org/current/nonfree FILENAME="void-live-${DESKTOP}-unofficial" DATE=$(date +%Y%m%d) KERNEL=$(uname -r) @@ -19,17 +19,28 @@ sudo ./mklive.sh \ -a x86_64 \ -r ${CURRENT} \ -r ${MUTILIB} \ + -r ${NONFREE} \ -p "$(grep '^[^#].' ${DESKTOP}-x64.packages)" \ -T "Void Linux ${DESKTOP} Unofficial" \ -o ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso - +if [ ! -f ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso ];then + echo "Error: ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso : does not exist! Aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi -mv ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso build \ No newline at end of file +mv ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso build diff --git a/mate-x64.packages b/mate-x64.packages index db987eb..8d0511c 100644 --- a/mate-x64.packages +++ b/mate-x64.packages @@ -31,11 +31,25 @@ bash-completion caja-extensions alsa-utils xdg-utils +xdg-desktop-portal +xdg-desktop-portal-gtk +xdg-desktop-portal-kde +xdg-user-dirs +xdg-user-dirs-gtk +libappindicator +AppStream +libvdpau-va-gl +vdpauinfo +pipewire +gstreamer1-pipewire +upower +flatpak pavucontrol alsa-plugins-pulseaudio xterm htop tuxc +topgrade ntp octoxbps gksu diff --git a/mate-x64.sh b/mate-x64.sh index 340ab50..1611b20 100755 --- a/mate-x64.sh +++ b/mate-x64.sh @@ -5,8 +5,7 @@ echo "| MATE VOID x86_64 |" echo " ------------------------" CURRENT=https://alpha.de.repo.voidlinux.org/current MUTILIB=https://alpha.de.repo.voidlinux.org/current/multilib -#NONFREE=https://repo.voidlinux.eu/current/nonfree - +NONFREE=https://alpha.de.repo.voidlinux.org/current/nonfree FILENAME="void-live-${DESKTOP}-unofficial" DATE=$(date +%Y%m%d) KERNEL=$(uname -r) @@ -20,15 +19,27 @@ BUILDDIR="$(pwd)/build" -a x86_64 \ -r ${CURRENT} \ -r ${MUTILIB} \ + -r ${NONFREE} \ -p "$(grep '^[^#].' ${DESKTOP}-x64.packages)" \ -T "Void Linux ${DESKTOP} Unofficial" \ -o ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso - +if [ ! -f ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso ];then + echo "Error: ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso : does not exist! Aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi diff --git a/mv-images.sh b/mv-images.sh index 6ea0303..2b371bf 100755 --- a/mv-images.sh +++ b/mv-images.sh @@ -3,6 +3,11 @@ HTMLDIR="/var/www/voidbuilds.xyz/public" PKGLISTDIR="package_lists" +if [ ! -f sha256sums.txt ];then + echo "checksum file not found, aborting!" + exit 1 +fi + if [ -d "${HTMLDIR}" ];then rm ${HTMLDIR}/*.iso rm ${HTMLDIR}/*.txt diff --git a/package_lists/base-x64.packages.txt b/package_lists/base-x64.packages.txt index 0c82dd2..9f7e7af 100644 --- a/package_lists/base-x64.packages.txt +++ b/package_lists/base-x64.packages.txt @@ -20,6 +20,7 @@ git xterm htop tuxc +topgrade ntp void-repo-multilib ntfs-3g diff --git a/package_lists/cinnamon-x64.packages.txt b/package_lists/cinnamon-x64.packages.txt index e167cf6..eccbb4d 100644 --- a/package_lists/cinnamon-x64.packages.txt +++ b/package_lists/cinnamon-x64.packages.txt @@ -29,6 +29,10 @@ nano xdg-utils git vim +dtrx +unzip +p7zip +unrar bash-completion cinnamon xrandr @@ -39,6 +43,7 @@ pavucontrol xterm htop tuxc +topgrade ntp octoxbps gksu diff --git a/package_lists/e17-x64.packages.txt b/package_lists/e17-x64.packages.txt new file mode 100644 index 0000000..e922c72 --- /dev/null +++ b/package_lists/e17-x64.packages.txt @@ -0,0 +1,62 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + +# X PACKAGES +xorg-minimal +xorg-input-drivers +xorg-video-drivers +xrandr +intel-ucode +setxkbmap +xauth +font-misc-misc +terminus-font +dejavu-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +lxdm +enlightenment +terminology +econnman +xdg-utils +zenity +bash-completion +pm-utils +nano +xdg-utils +vim +git +alsa-utils +paprefs +pasystray +pavucontrol +xterm +htop +tuxc +topgrade +ntp +void-repo-multilib +void-repo-nonfree +octoxbps +gksu +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +network-manager-applet +firefox +Adapta +papirus-icon-theme +gnome-themes-standard diff --git a/package_lists/i3-x64.packages.txt b/package_lists/i3-x64.packages.txt index d23f5ad..68f473d 100644 --- a/package_lists/i3-x64.packages.txt +++ b/package_lists/i3-x64.packages.txt @@ -41,6 +41,7 @@ xterm mc htop tuxc +topgrade ntp dmenu sakura diff --git a/package_lists/lxde-x64.packages.txt b/package_lists/lxde-x64.packages.txt index 722ab90..301ebfc 100644 --- a/package_lists/lxde-x64.packages.txt +++ b/package_lists/lxde-x64.packages.txt @@ -38,6 +38,7 @@ pavucontrol xterm htop tuxc +topgrade ntp octoxbps gksu diff --git a/package_lists/lxqt-x64.packages.txt b/package_lists/lxqt-x64.packages.txt index 3673274..ac79f17 100644 --- a/package_lists/lxqt-x64.packages.txt +++ b/package_lists/lxqt-x64.packages.txt @@ -39,6 +39,7 @@ pavucontrol xterm htop tuxc +topgrade ntp octoxbps gksu diff --git a/package_lists/mate-x64.packages.txt b/package_lists/mate-x64.packages.txt index db987eb..ab638bd 100644 --- a/package_lists/mate-x64.packages.txt +++ b/package_lists/mate-x64.packages.txt @@ -36,6 +36,7 @@ alsa-plugins-pulseaudio xterm htop tuxc +topgrade ntp octoxbps gksu diff --git a/package_lists/xfce-x64.packages.txt b/package_lists/xfce-x64.packages.txt index c2b2d42..84cb807 100644 --- a/package_lists/xfce-x64.packages.txt +++ b/package_lists/xfce-x64.packages.txt @@ -40,6 +40,7 @@ pavucontrol xterm htop tuxc +topgrade ntp void-repo-multilib void-repo-nonfree diff --git a/sha256sums.txt b/sha256sums.txt new file mode 100644 index 0000000..1b680bb --- /dev/null +++ b/sha256sums.txt @@ -0,0 +1,65 @@ +8915aaebde94fd0f63f36a00e5863c88d43317995bf52463b975f9c781ba4695 void-live-unofficial-x86_64-5.3.10_1-20191112.iso +d20bb0a17d2db34f99dfa8a6bef31de121de1f0d26e1a576f812887cc3832ba6 void-live-cinnamon-unofficial-x86_64-5.3.10_1-20191112.iso +5fff810f1c6e91d633b77e40ce93c6856cd6d8f30982bcb9b09803606938d466 void-live-i3-unofficial-x86_64-5.3.10_1-20191112.iso +a4bb97050636ae8bcaf4c111e2e08cd1c38c08142dde9b1be7f0e3ef30a15415 void-live-e17-unofficial-x86_64-5.3.10_1-20191112.iso +2a1514b1e229c28c96683b74d1d36cd74b90d67bf8413e0aa043f9fe405135d2 void-live-kde-unofficial-x86_64-5.3.10_1-20191112.iso +f64de572111dbac668578a347ed39f5d6e970f527117118fe7681bdaa1ced16f void-live-lxde-unofficial-x86_64-5.3.10_1-20191112.iso +a557acf23f338b070959ae9e7f0a20bb7dbb83684aeed2ca098c2ed7212c3ff5 void-live-lxqt-unofficial-x86_64-5.3.10_1-20191112.iso +c5317a197965a6694e0734c8ccff441baeff9bf467f5f948a93a08aabb575fbf void-live-mate-unofficial-x86_64-5.3.10_1-20191112.iso +9346a09ee680e12c5b21bb50f35f06cbfa51fd4cb5caa31ced1b2fae788b1465 void-live-unofficial-x86_64-5.3.10_1-20191113.iso +ccfeb30d3b69799a1707685c06bff6bad8cf5a1984cd49649297a93ad88a41c2 void-live-cinnamon-unofficial-x86_64-5.3.10_1-20191113.iso +7b07da99b650dd9947414e5431c6f112fc68e12bc581ae5d0abfec07da87d4e0 void-live-i3-unofficial-x86_64-5.3.10_1-20191113.iso +aab045385ce946b032251338a83d34aacf3fdd4c55f182254250c53f481693db void-live-e17-unofficial-x86_64-5.3.10_1-20191113.iso +2d90ede9858fee8b2c85a52339ac058f88d827b4626686f223ad6575ebdeb175 void-live-kde-unofficial-x86_64-5.3.10_1-20191113.iso +04e2bc456bfd18e18c7545de6cf15b363a00e0633a69c2fa801cb3b5d8ad29c0 void-live-lxde-unofficial-x86_64-5.3.10_1-20191113.iso +09352e87b7f45f9e3f3c47a48f1d771f5dab77f6fc7e8903ee3a7b54a20aae48 void-live-lxqt-unofficial-x86_64-5.3.10_1-20191113.iso +2ddf3253dd4647a4214fb822f791a2df4e8e1f44b6c090255e08f18ae7ae88f9 void-live-mate-unofficial-x86_64-5.3.10_1-20191113.iso +0daec0a7a698f5925b67f4a0fce6d8684a933c5329f0227ea78e862e5395d459 void-live-unofficial-x86_64-5.3.10_1-20191114.iso +95ca4307494f135828f5129fea604cec276cf4abc2031694ce9f478e47ae2c49 void-live-cinnamon-unofficial-x86_64-5.3.10_1-20191114.iso +d66026192e78270ff20eb06fc5937cf44ae55fa626a16a6d963c2e83bcddd718 void-live-i3-unofficial-x86_64-5.3.10_1-20191114.iso +f8002c79224e93141145dabd614f48327ab1b059969d51e8d45bb052d855a321 void-live-e17-unofficial-x86_64-5.3.10_1-20191114.iso +cbd6076ba902f0b5ace34410a6b78888130f5a2aa026123377777c2b240f0034 void-live-kde-unofficial-x86_64-5.3.10_1-20191114.iso +6e914505f22d1adee83d72b1c597bc8c7f782ee7bb4909f00b1e959c0d350a49 void-live-lxde-unofficial-x86_64-5.3.10_1-20191114.iso +569ddb437e2d35d787fb3207e9a85f33f8cda96ab06a7ff834babb58f421a063 void-live-lxqt-unofficial-x86_64-5.3.10_1-20191114.iso +8e745760fb4bd85528100f25ccbd49fa6ffdb03e4aca64c544dd3acb04d51ebb void-live-mate-unofficial-x86_64-5.3.10_1-20191114.iso +83bbeccaf0ffe9238d0ece253816be30a7ebf98a2366bd508bbc34eac4dfb4df void-live-unofficial-x86_64-5.3.10_1-20191115.iso +5a571b0b0196ff42c688e51487833409e4682249b07d8b9aa78f86dc00f2675a void-live-cinnamon-unofficial-x86_64-5.3.10_1-20191115.iso +3f8728561170bdc849df13d2c13b73c1decd65db17f2577105ea670906b3a77d void-live-i3-unofficial-x86_64-5.3.10_1-20191115.iso +1c5fabf99419c18334798e85baa6b56caf521fad152b4cc5a12293799c9446fa void-live-e17-unofficial-x86_64-5.3.10_1-20191115.iso +886cb486053dfac1b0a8d7449ae498f6485f46994b974f846739d1e3df35abaa void-live-kde-unofficial-x86_64-5.3.10_1-20191115.iso +861e65b4c3a66e7cad1218dbab5636cc50e447db6fd3836c85357821e0243828 void-live-lxde-unofficial-x86_64-5.3.10_1-20191115.iso +71738a3f3ab39108a5630e45888fc903b3ee5389913142f77194205f674b1b10 void-live-lxqt-unofficial-x86_64-5.3.10_1-20191115.iso +75ae7c3861421d0658e08f8ff173e49b1a2c82ef43da84ad1d38c95ad6248b3f void-live-mate-unofficial-x86_64-5.3.10_1-20191115.iso +9e34442153ec7887ea757b8561a67405a77ee508435075d81feb58211d474b15 void-live-unofficial-x86_64-5.3.10_1-20191115.iso +98fd0c62094ff9f23e273db2311ce4449361bfeda0fbf05abddd670dd3e96701 void-live-cinnamon-unofficial-x86_64-5.3.10_1-20191115.iso +4b73e0929904c54bbba526ce0069759d5acaf9edba9488dd51b68ae9e5f9baf7 void-live-i3-unofficial-x86_64-5.3.10_1-20191115.iso +8b57f7ec0de614e78a1b0eb267f9063af1618f3045345a78f94abeabf286083d void-live-e17-unofficial-x86_64-5.3.10_1-20191115.iso +3ad03d0fd7f94297c836f711a61f41e9f83f4df23d5641567ae5a034c3f67c92 void-live-kde-unofficial-x86_64-5.3.10_1-20191115.iso +fd732aaac01f1ec1ab7ca716fca9c3ba71ddd3c28613277ed7ebaa2c850ab167 void-live-lxde-unofficial-x86_64-5.3.10_1-20191115.iso +7fc926e296446501aa59744fb328f156abf53ac282b2b23941bcbcb44920d879 void-live-lxqt-unofficial-x86_64-5.3.10_1-20191115.iso +08e12b176ae05effc0f45f75a7b7521c5b3d70dea1d3ca611ed82741050944e2 void-live-mate-unofficial-x86_64-5.3.10_1-20191115.iso +1600c0b3fbc97495e468bbcda621a6986d3a303a2131c79b79c118b3b4cd5394 void-live-unofficial-x86_64-5.3.10_1-20191116.iso +59d9b18b96d5d0cac173435608c17c6a669f22e06c8ba4c10bdf84f845257944 void-live-cinnamon-unofficial-x86_64-5.3.10_1-20191116.iso +d9a941a9b0480948266c09f91af869fe3e4628c352f402881cc49255bd94461c void-live-i3-unofficial-x86_64-5.3.10_1-20191116.iso +b042740d5d6de7b0214d1df2334371f8b5396e0dcd230ba81b65f6bcf99d8060 void-live-e17-unofficial-x86_64-5.3.10_1-20191116.iso +593d0a603f3c8fd2404f7977f366553e05c17f8886c57ea806720cec81b4a06c void-live-kde-unofficial-x86_64-5.3.10_1-20191116.iso +c4afc82e6ee28bd41350d3845da1aef23369bdce0dc9b7b9b8821855a8d9bdab void-live-lxde-unofficial-x86_64-5.3.10_1-20191116.iso +7dd101f1f20ad5d5250c7e4edb2aeff67db337928d4b3e36eebab99458873364 void-live-lxqt-unofficial-x86_64-5.3.10_1-20191116.iso +7b07dc1fcdf72f3b11b3ae0e481eb8fa6c1e4e4d5597b42d1a6989c1b3a7d04f void-live-mate-unofficial-x86_64-5.3.10_1-20191116.iso +3d6e58129563b5da3ae0b543847e1c3e55c2668cde75ccbd92826095cf627025 void-live-unofficial-x86_64-5.3.10_1-20191117.iso +d59d1f76cc3d44bd10dae5c274dadb110611fe45b00ae48195f6c7f7c4cdbe11 void-live-cinnamon-unofficial-x86_64-5.3.10_1-20191117.iso +01e0386c8c31bd7277bfc4c788b0b4dcb9a9eeb018dd813236986af24dd97649 void-live-i3-unofficial-x86_64-5.3.10_1-20191117.iso +aaa6f99229ec369a4b9220be687b3f1b14d6e5fe0018065bc8bc5a627853e4a9 void-live-e17-unofficial-x86_64-5.3.10_1-20191117.iso +32d62e1ce465180875e8f694179272fd4876967b128db9747ac7989b048a44c8 void-live-kde-unofficial-x86_64-5.3.10_1-20191117.iso +e15e3a6ebb09fb8b8b6dd8668a1fa9a14c5ffee9ddd5bdd3b28533b35b221856 void-live-lxde-unofficial-x86_64-5.3.10_1-20191117.iso +d2f18e39de65d2474395322c27dc5403a2c13d97db5043af6de3d306d4605b29 void-live-lxqt-unofficial-x86_64-5.3.10_1-20191117.iso +21bbafea954760ce28c8d3212cdf62fc924313ac59b9d1ea0f85ebae96c4fe6f void-live-mate-unofficial-x86_64-5.3.10_1-20191117.iso +65c5e72988fc1ad6bb7d7893b4f8d3b631e3c61b53ccd5d71027beda95d81626 void-live-unofficial-x86_64-5.3.10_1-20191117.iso +91faddf52fdaeaf7c933cbc39ea5ca0494ba8edc1ac6e7d81fa95e03e77be41d void-live-cinnamon-unofficial-x86_64-5.3.10_1-20191117.iso +3da94ba1c032a0f96be1e093cb1239818c12e5b2d308142f27669792c98ba56b void-live-i3-unofficial-x86_64-5.3.10_1-20191117.iso +04c64f367e8372d9fad9dc37c7338cf961dbb90628060ff025a9b3a32c89f67a void-live-e17-unofficial-x86_64-5.3.10_1-20191117.iso +96ea55586c97df406fc1284db84a75517a358dcac1e2ddaa6b58290180245d4d void-live-kde-unofficial-x86_64-5.3.10_1-20191117.iso +8266c35162fdd8ca5d2187650a35d9e73cb4383b790b810e01b7f7ba1b6d60db void-live-lxde-unofficial-x86_64-5.3.10_1-20191118.iso +b528d0d938b1ac173bd72be13764cb58ef29b2c7755e804b1eb054ead6985096 void-live-lxqt-unofficial-x86_64-5.3.10_1-20191118.iso +3392f911fa4b1f9d09541fac0bd16228e70b7b1a4696d00e3594546065ed7b0a void-live-mate-unofficial-x86_64-5.3.10_1-20191118.iso +3830cda09b0bdb793a4833f9a071b09d14d91b151f70ff6a07c758835f8f3bfb void-live-unofficial-x86_64-5.3.10_1-20191119.iso diff --git a/tom-x64.packages b/tom-x64.packages new file mode 100644 index 0000000..929089b --- /dev/null +++ b/tom-x64.packages @@ -0,0 +1,72 @@ +#GRUB +grub-i386-efi +grub-x86_64-efi + +#BASE PKGS +dialog +cryptsetup +lvm2 +mdadm +ConsoleKit2 + +# X PACKAGES +xorg +xorg-input-drivers +xorg-video-drivers +intel-ucode +setxkbmap +xauth +xrandr +font-misc-misc +terminus-font +dejavu-fonts-ttf +liberation-fonts-ttf +alsa-plugins-pulseaudio + + +#USERLAND PACKAGES +sddm +konsole +bash-completion +pm-utils +nano +git +vim +xdg-utils +alsa-utils +alsa-plugins-pulseaudio +plasma-pa +pavucontrol +inetutils +usbutils +wget +curl +xterm +htop +tuxc +topgrade +octoxbps +ntp +void-repo-multilib +void-repo-nonfree +octoxbps +kdesu +gvfs-afc +gvfs-mtp +gvfs-smb +udisks2 +ntfs-3g +gnome-keyring +NetworkManager +plasma-nm +firefox +kde5 +dolphin +adapta-kde +shotcut +rawtherapee +digikam +olive +telegram-desktop +chromium +flatpak diff --git a/voidbuilds-logo.png b/voidbuilds-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..e7337e63bd5735f6a889d6d2aa2d37ecaeebdf52 GIT binary patch literal 25398 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 error-status.txt + exit 1 +fi sha256sum ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso >> sha256sums.txt +if [ ! -f sha256sums.txt ];then + echo "Missing checksum file, aborting!" + echo "ERR=1" > error-status.txt + exit 1 +fi + if [ ! -d "${BUILDDIR}" ];then mkdir ${BUILDDIR} fi -mv ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso build \ No newline at end of file +mv ${FILENAME}-x86_64-${KERNEL}-${DATE}.iso build