Compare commits
36 commits
2024-06-02
...
main
Author | SHA1 | Date | |
---|---|---|---|
ca0d2d0a30 | |||
23b49dc379 | |||
bc01c3c60d | |||
085f89a5d8 | |||
4237588d3a | |||
a776ad4a95 | |||
76f5aa6b6d | |||
a131e380fa | |||
341feaab43 | |||
36fac961c1 | |||
3b8b359356 | |||
7ff8cb4f5c | |||
543e939e02 | |||
7ad4f6b811 | |||
cd81e1ada8 | |||
673fa4c828 | |||
9adc5d14a9 | |||
607eb83050 | |||
07b0d66092 | |||
0f244bceb9 | |||
8559f51d7f | |||
3dde326825 | |||
10579893f9 | |||
04c3084b5e | |||
e8479cd2e1 | |||
94b368a759 | |||
1771a6f5e4 | |||
90d55a8604 | |||
5df46d809f | |||
055cce2cec | |||
c331d57a93 | |||
e301283fb5 | |||
e550c510df | |||
|
79286f1d43 | ||
82d4ad132f | |||
645f0625d5 |
10 changed files with 153 additions and 31 deletions
2
.github/workflows/build.yaml
vendored
2
.github/workflows/build.yaml
vendored
|
@ -21,7 +21,7 @@ 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
|
||||
run: pacman -Syu --noconfirm; pacman --noconfirm -S git archiso python python-pygithub github-cli reflector p7zip
|
||||
- name: Change Arch docker mirror
|
||||
run: reflector -c "US" -f 12 -l 10 -n 12 --save /etc/pacman.d/mirrorlist
|
||||
- name: Build image
|
||||
|
|
43
.gitlab-ci.yml
Normal file
43
.gitlab-ci.yml
Normal file
|
@ -0,0 +1,43 @@
|
|||
stages:
|
||||
- build
|
||||
- deploy
|
||||
|
||||
image: archlinux/archlinux:base-devel
|
||||
|
||||
variables:
|
||||
Desktop: "cosmic"
|
||||
|
||||
build_iso:
|
||||
stage: build
|
||||
script:
|
||||
- ./build.sh
|
||||
- echo "Renaming the output ISO file"
|
||||
- mv out/*.iso out/ParchLinux-$Desktop-latest.iso
|
||||
- echo "Generating MD5 checksum"
|
||||
- md5sum out/ParchLinux-$Desktop-latest.iso > out/md5sum.txt
|
||||
- echo "Build completed. Files generated:"
|
||||
- ls -lh out/
|
||||
artifacts:
|
||||
paths:
|
||||
- out/ParchLinux-$Desktop-latest.iso
|
||||
- out/md5sum.txt
|
||||
rules:
|
||||
- if: $CI_COMMIT_TAG
|
||||
|
||||
deploy_iso:
|
||||
stage: deploy
|
||||
dependencies:
|
||||
- build_iso
|
||||
script:
|
||||
- echo "Installing sshpass and rsync"
|
||||
- pacman -Syu --noconfirm sshpass rsync
|
||||
- echo "Determining the remote directory based on the tag"
|
||||
- if [[ "$CI_COMMIT_TAG" == *"beta"* ]]; then export REMOTE_DIR="/srv/http/beta/$Desktop/"; else export REMOTE_DIR="/srv/http/$Desktop/"; fi
|
||||
- echo "Removing old ISO files from remote directory"
|
||||
- sshpass -p "$PASS" ssh -o StrictHostKeyChecking=no parch@$SSH_ROOT rm -rf "$REMOTE_DIR/"
|
||||
- echo "Creating new directory on remote host"
|
||||
- sshpass -p "$PASS" ssh -o StrictHostKeyChecking=no parch@$SSH_ROOT mkdir -p "$REMOTE_DIR/"
|
||||
- echo "Uploading new ISO via rsync"
|
||||
- sshpass -p "$PASS" rsync -r out/ParchLinux-$Desktop-latest.iso out/md5sum.txt parch@$SSH_ROOT:"$REMOTE_DIR/"
|
||||
rules:
|
||||
- if: $CI_COMMIT_TAG
|
11
README.md
11
README.md
|
@ -1,3 +1,10 @@
|
|||
# Parch Linux iso template
|
||||
# Parch Linux Cosmic
|
||||
|
||||
## Use this template for making releases
|
||||
Cosmic is a DE made by System76 in Rust and Iced.
|
||||
|
||||
|
||||
Parch Linux Cosmic features Cosmic DE with a Touch of Parch Linux itself.
|
||||
|
||||
|
||||
## Note:
|
||||
> currently cosmic is in alpha stage and it is not fully finished, use Parch Linux Cosmic only for testing.
|
||||
|
|
15
build.sh
15
build.sh
|
@ -33,8 +33,7 @@ main() {
|
|||
install
|
||||
echo -e "$Blue### Install complete ###$reset"
|
||||
echo -e "$Green### Start build $reponame with archiso ###$reset"
|
||||
build
|
||||
makezip
|
||||
build
|
||||
fi
|
||||
else
|
||||
echo -e "$Red###OS can't supported###$reset"
|
||||
|
@ -42,19 +41,19 @@ main() {
|
|||
fi
|
||||
|
||||
}
|
||||
|
||||
install() {
|
||||
set -e
|
||||
pacman -Sy; pacman --noconfirm -S --needed git archiso github-cli p7zip
|
||||
pacman -Sy; pacman --noconfirm -S --needed git wget github-cli p7zip reflector rsync
|
||||
wget https://git.parchlinux.com/repo/ppr/-/raw/main/x86_64/archiso-99-1-any.pkg.tar.zst
|
||||
sudo pacman -U archiso-99-1-any.pkg.tar.zst --noconfirm
|
||||
}
|
||||
|
||||
|
||||
build() {
|
||||
set -e
|
||||
mkarchiso -v iso/
|
||||
}
|
||||
makezip() {
|
||||
cd out
|
||||
7z -v500m a "$(ls *.iso)".zip "$(ls *.iso)"
|
||||
md5sum * > md5sums.txt
|
||||
}
|
||||
|
||||
|
||||
main
|
||||
|
|
73
iso/airootfs/etc/mkinitcpio.conf
Normal file
73
iso/airootfs/etc/mkinitcpio.conf
Normal file
|
@ -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 <hook name>' 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"
|
|
@ -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"
|
|
@ -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"
|
||||
|
||||
|
|
7
iso/airootfs/etc/mkinitcpio.d/parchlinux
Normal file
7
iso/airootfs/etc/mkinitcpio.d/parchlinux
Normal file
|
@ -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"
|
|
@ -31,7 +31,6 @@ f2fs-tools
|
|||
fatresize
|
||||
fsarchiver
|
||||
git
|
||||
gnu-netcat
|
||||
gpart
|
||||
gpm
|
||||
gptfdisk
|
||||
|
@ -93,8 +92,6 @@ python
|
|||
python-psutil
|
||||
python-systemd
|
||||
refind
|
||||
#reflector
|
||||
reiserfsprogs
|
||||
rp-pppoe
|
||||
rsync
|
||||
rxvt-unicode-terminfo
|
||||
|
@ -136,18 +133,22 @@ openssl
|
|||
gvfs
|
||||
gvfs-mtp
|
||||
networkmanager
|
||||
android-file-transfer
|
||||
boost
|
||||
sddm
|
||||
|
||||
#Desktop
|
||||
cosmic-epoch-git
|
||||
cosmic
|
||||
|
||||
#Essential Apps
|
||||
nheko
|
||||
firefox
|
||||
|
||||
#systemutils
|
||||
btop
|
||||
xdg-user-dirs
|
||||
neofetch-git
|
||||
fastfetch
|
||||
kernel-install-mkinitcpio
|
||||
|
||||
#ParchLinux Core Packages
|
||||
parch-welcome
|
||||
|
@ -156,6 +157,6 @@ calamares
|
|||
os-prober
|
||||
paru
|
||||
parch-emoji-ios
|
||||
vazirmatn-fonts
|
||||
ttf-vazirmatn
|
||||
parch-branding
|
||||
parch-pacman
|
||||
parch-pacman-systemd
|
||||
|
|
|
@ -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
|
||||
|
||||
|
@ -74,7 +74,7 @@ LocalFileSigLevel = Optional
|
|||
|
||||
[ppr]
|
||||
SigLevel = Optional TrustedOnly
|
||||
Server = https://raw.githubusercontent.com/parchlinux/ppr/main/x86_64/
|
||||
Server = https://git.parchlinux.com/repo/ppr/-/raw/main/x86_64/
|
||||
|
||||
[core]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
@ -96,11 +96,9 @@ Include = /etc/pacman.d/mirrorlist
|
|||
|
||||
[pcp]
|
||||
SigLevel = Optional TrustedOnly
|
||||
Server = https://raw.githubusercontent.com/parchlinux/pcp/main/x86_64/
|
||||
Server = https://git.parchlinux.com/repo/pcp/-/raw/main/x86_64/
|
||||
|
||||
|
||||
[chaotic-aur]
|
||||
SigLevel = Never
|
||||
Server = https://geo-mirror.chaotic.cx/$repo/$arch
|
||||
# An example of a custom package repository. See the pacman manpage for
|
||||
# tips on creating your own repositories.
|
||||
#[custom]
|
||||
|
|
Loading…
Add table
Reference in a new issue