From e403f83afc8dd3bc8fa6538fc078192c4626971b Mon Sep 17 00:00:00 2001 From: Sohrab Behdani Date: Wed, 10 Jul 2024 00:10:30 +0330 Subject: [PATCH] changed some files --- .github/workflows/build.yaml | 49 ++++++++++++- iso/airootfs/etc/mkinitcpio.conf | 73 +++++++++++++++++++ .../etc/mkinitcpio.conf.d/archiso.conf | 2 - iso/airootfs/etc/mkinitcpio.d/linux.preset | 6 +- iso/airootfs/etc/mkinitcpio.d/parchlinux | 7 ++ iso/airootfs/etc/vconsole.conf | 1 + iso/pacman.conf | 3 +- 7 files changed, 128 insertions(+), 13 deletions(-) create mode 100644 iso/airootfs/etc/mkinitcpio.conf delete mode 100644 iso/airootfs/etc/mkinitcpio.conf.d/archiso.conf create mode 100644 iso/airootfs/etc/mkinitcpio.d/parchlinux create mode 100644 iso/airootfs/etc/vconsole.conf diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index aa3f051..fe8a97e 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -10,8 +10,10 @@ env: name: ${{ github.event.repository.name }} release_name: ${{ github.ref_name }} GH_TOKEN: ${{ github.token }} + HOST: mirror.parchlinux.com jobs: - build: + build-beta: + if: github.event.release.prerelease == true permissions: contents: write runs-on: ubuntu-latest @@ -21,15 +23,54 @@ jobs: steps: - uses: actions/checkout@v3 - name: Install Packages via Pacman - run: pacman -Sy; pacman --noconfirm -S git archiso python python-pygithub github-cli reflector p7zip unzip zip + run: pacman -Sy; pacman --noconfirm -S git archiso python python-pygithub github-cli reflector p7zip openssh sshpass rsync wget - name: Build image run: mkarchiso -v iso/ + - name: remove last iso + run: sshpass -p "${{ secrets.SSH_PASS }}" ssh -o StrictHostKeyChecking=no root@$HOST rm -rf /srv/http/test/ + - name: remove last iso + run: sshpass -p "${{ secrets.SSH_PASS }}" ssh -o StrictHostKeyChecking=no root@$HOST mkdir /srv/http/test/ + - name: rename iso + run: mv "$(ls out/*.iso)" out/Parchlinux-test-latest.iso + - name: upload iso to host + run: sshpass -p "${{ secrets.SSH_PASS }}" rsync -r "$(ls out/*.iso)" root@mirror.parchlinux.com:/srv/http/test/ - name: Upload iso to the release run: | cd ./out mkdir iso_parts # split -d -b 2000M "$(ls *.iso)" iso_parts/"$(ls *.iso)"_part - zip -s 1000m iso_parts/"$(ls *.iso)".zip "$(ls *.iso)" - #7z -v1000m a iso_parts/"$(ls *.iso)".zip "$(ls *.iso)" + #zip -s 2000m iso_parts/"$(ls *.iso)".zip "$(ls *.iso)" + 7z -v1000m a iso_parts/"$(ls *.iso)".zip "$(ls *.iso)" + md5sum iso_parts/* > iso_parts/md5sums.txt + gh release upload ${{ github.event.release.tag_name }} ./iso_parts/* -R ${{ github.repository }} + build: + if: github.event.release.prerelease == false + permissions: + contents: write + runs-on: ubuntu-latest + container: + image: archlinux:latest + options: --privileged + steps: + - uses: actions/checkout@v3 + - name: Install Packages via Pacman + run: pacman -Sy; pacman --noconfirm -S git archiso python python-pygithub github-cli reflector p7zip openssh sshpass rsync wget + - name: Build image + run: mkarchiso -v iso/ + - name: remove last iso + run: sshpass -p "${{ secrets.SSH_PASS }}" ssh -o StrictHostKeyChecking=no root@$HOST rm -rf /srv/http/test/ + - name: remove last iso + run: sshpass -p "${{ secrets.SSH_PASS }}" ssh -o StrictHostKeyChecking=no root@$HOST mkdir /srv/http/test/ + - name: rename iso + run: mv "$(ls out/*.iso)" out/Parchlinux-test-latest.iso + - name: upload iso to host + run: sshpass -p "${{ secrets.SSH_PASS }}" rsync -r "$(ls out/*.iso)" root@mirror.parchlinux.com:/srv/http/test/ + - name: Upload iso to the release + run: | + cd ./out + mkdir iso_parts + # split -d -b 2000M "$(ls *.iso)" iso_parts/"$(ls *.iso)"_part + #zip -s 2000m iso_parts/"$(ls *.iso)".zip "$(ls *.iso)" + 7z -v1000m a iso_parts/"$(ls *.iso)".zip "$(ls *.iso)" md5sum iso_parts/* > iso_parts/md5sums.txt gh release upload ${{ github.event.release.tag_name }} ./iso_parts/* -R ${{ github.repository }} diff --git a/iso/airootfs/etc/mkinitcpio.conf b/iso/airootfs/etc/mkinitcpio.conf new file mode 100644 index 0000000..9f5174a --- /dev/null +++ b/iso/airootfs/etc/mkinitcpio.conf @@ -0,0 +1,73 @@ +# vim:set ft=sh +# MODULES +# The following modules are loaded before any boot hooks are +# run. Advanced users may wish to specify all system modules +# in this array. For instance: +# MODULES=(usbhid xhci_hcd) +MODULES=() + +# BINARIES +# This setting includes any additional binaries a given user may +# wish into the CPIO image. This is run last, so it may be used to +# override the actual binaries included by a given hook +# BINARIES are dependency parsed, so you may safely ignore libraries +BINARIES=(setfont) + +# FILES +# This setting is similar to BINARIES above, however, files are added +# as-is and are not parsed in any way. This is useful for config files. +FILES=() + +# HOOKS +# This is the most important setting in this file. The HOOKS control the +# modules and scripts added to the image, and what happens at boot time. +# Order is important, and it is recommended that you do not change the +# order in which HOOKS are added. Run 'mkinitcpio -H ' for +# help on a given hook. +# 'base' is _required_ unless you know precisely what you are doing. +# 'udev' is _required_ in order to automatically load modules +# 'filesystems' is _required_ unless you specify your fs modules in MODULES +# Examples: +## This setup specifies all modules in the MODULES setting above. +## No RAID, lvm2, or encrypted root is needed. +# HOOKS=(base) +# +## This setup will autodetect all modules for your system and should +## work as a sane default +# HOOKS=(base udev autodetect modconf block filesystems fsck) +# +## This setup will generate a 'full' image which supports most systems. +## No autodetection is done. +# HOOKS=(base udev modconf block filesystems fsck) +# +## This setup assembles a mdadm array with an encrypted root file system. +## Note: See 'mkinitcpio -H mdadm_udev' for more information on RAID devices. +# HOOKS=(base udev modconf keyboard keymap consolefont block mdadm_udev encrypt filesystems fsck) +# +## This setup loads an lvm2 volume group. +# HOOKS=(base udev modconf block lvm2 filesystems fsck) +# +## NOTE: If you have /usr on a separate partition, you MUST include the +# usr and fsck hooks. +HOOKS=(base udev modconf kms memdisk archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs block filesystems keyboard) + +# COMPRESSION +# Use this to compress the initramfs image. By default, zstd compression +# is used. Use 'cat' to create an uncompressed image. +COMPRESSION="zstd" +#COMPRESSION="gzip" +#COMPRESSION="bzip2" +#COMPRESSION="lzma" +#COMPRESSION="xz" +#COMPRESSION="lzop" +#COMPRESSION="lz4" + +# COMPRESSION_OPTIONS +# Additional options for the compressor +#COMPRESSION_OPTIONS=() + +# MODULES_DECOMPRESS +# Decompress kernel modules during initramfs creation. +# Enable to speedup boot process, disable to save RAM +# during early userspace. Switch (yes/no). +#MODULES_DECOMPRESS="yes" diff --git a/iso/airootfs/etc/mkinitcpio.conf.d/archiso.conf b/iso/airootfs/etc/mkinitcpio.conf.d/archiso.conf deleted file mode 100644 index b4b3095..0000000 --- a/iso/airootfs/etc/mkinitcpio.conf.d/archiso.conf +++ /dev/null @@ -1,2 +0,0 @@ -HOOKS=(base udev modconf kms memdisk archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs block filesystems keyboard) -COMPRESSION="xz" diff --git a/iso/airootfs/etc/mkinitcpio.d/linux.preset b/iso/airootfs/etc/mkinitcpio.d/linux.preset index 7f51749..ffcd99b 100644 --- a/iso/airootfs/etc/mkinitcpio.d/linux.preset +++ b/iso/airootfs/etc/mkinitcpio.d/linux.preset @@ -1,9 +1,5 @@ # mkinitcpio preset file for the 'linux' package on archiso - PRESETS=('archiso') - ALL_kver='/boot/vmlinuz-linux' -archiso_config='/etc/mkinitcpio.conf.d/archiso.conf' - +archiso_config='/etc/mkinitcpio.conf' archiso_image="/boot/initramfs-linux.img" - diff --git a/iso/airootfs/etc/mkinitcpio.d/parchlinux b/iso/airootfs/etc/mkinitcpio.d/parchlinux new file mode 100644 index 0000000..a2ed6a9 --- /dev/null +++ b/iso/airootfs/etc/mkinitcpio.d/parchlinux @@ -0,0 +1,7 @@ +# mkinitcpio preset file for the kernel +ALL_kver='/boot/vmlinuz-linux' +#PRESETS=('default' 'fallback') +PRESETS=('default') +default_image="/boot/initramfs-linux.img" +#fallback_image="/boot/initramfs-linux-fallback.img" +#fallback_options="-S autodetect" diff --git a/iso/airootfs/etc/vconsole.conf b/iso/airootfs/etc/vconsole.conf new file mode 100644 index 0000000..733ea9f --- /dev/null +++ b/iso/airootfs/etc/vconsole.conf @@ -0,0 +1 @@ +FONT=ter-132n diff --git a/iso/pacman.conf b/iso/pacman.conf index e3e301b..bd9496d 100644 --- a/iso/pacman.conf +++ b/iso/pacman.conf @@ -38,7 +38,7 @@ CheckSpace # By default, pacman accepts packages signed by keys that its local keyring # trusts (see pacman-key and its man page), as well as unsigned packages. -SigLevel = Required DatabaseOptional +SigLevel = Never LocalFileSigLevel = Optional #RemoteFileSigLevel = Required @@ -69,7 +69,6 @@ LocalFileSigLevel = Optional # repo name header and Include lines. You can add preferred servers immediately # after the header, and they will be used before the default mirrors. - [ppr] SigLevel = Optional TrustedOnly Server = https://raw.githubusercontent.com/parchlinux/ppr/main/x86_64/