commit ef2a74092d4f87ab5ae35e1753b0e9b961e88c3b Author: HRM_CA Date: Thu Apr 18 16:23:38 2024 +0330 init diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..b063f4c --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,40 @@ +# This workflow will build an Arch Linux rootfs file with the commit on it +name: build parch-rootfs per release +on: + release: + types: + - created + +env: + api_key: ${{ secrets.GITHUB_TOKEN }} + name: ${{ github.event.repository.name }} + release_name: ${{ github.ref_name }} + GH_TOKEN: ${{ github.token }} +jobs: + build: + 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 xz rsync + - name: change pacman config + run: cp -f pacman.conf /etc/ + - name: Change Arch docker mirror + run: reflector -c "US" -f 12 -l 10 -n 12 --save /etc/pacman.d/mirrorlist + - name: making new dir for rootfs + run: mkdir /parch-rootfs + - name: install packages via pacstrap to rootfs + run: pacstrap -K /parch-rootfs $(cat pkglist.txt | tr '\n' ' ') + - name: commpress and upload rootfs to the release + run: | + mkdir /parch-rootfs-output + cd /parch-rootfs-output + export GZIP=-9 + tar --use-compress-program='xz -3e' -cvf parch-rootfs.tar.xz /parch-rootfs > /tmp/log.txt + rm parch-rootfs.tar.xz + gh release upload ${{ github.event.release.tag_name }} /parch-rootfs-output/* -R ${{ github.repository }} diff --git a/pacman.conf b/pacman.conf new file mode 100644 index 0000000..7337268 --- /dev/null +++ b/pacman.conf @@ -0,0 +1,105 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +#HookDir = /etc/pacman.d/hooks/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -L -C - -f -o %o %u +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#NoProgressBar +CheckSpace +#VerbosePkgLists +#ParallelDownloads = 5 + +# 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 +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all official Arch Linux +# packagers with `pacman-key --populate archlinux`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[core-testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +#[extra-testing] +#Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +# If you want to run 32 bit applications on your x86_64 system, +# enable the multilib repositories as required here. + +#[multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[multilib] +#Include = /etc/pacman.d/mirrorlist + +[ppr] +SigLevel = Optional TrustedOnly +Server = https://raw.githubusercontent.com/parchlinux/ppr/main/x86_64/ + +[pcp] +SigLevel = Optional TrustedOnly +Server = https://raw.githubusercontent.com/parchlinux/pcp/main/x86_64/ + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs diff --git a/pkglist.txt b/pkglist.txt new file mode 100644 index 0000000..438f0fe --- /dev/null +++ b/pkglist.txt @@ -0,0 +1,154 @@ +alsa-utils +amd-ucode +arch-install-scripts +bluez +bluez-utils +pipewire +pipewire-pulse +wireplumber +gst-plugin-pipewire +archinstall +b43-fwcutter +base +base-devel +bind +brltty +btrfs-progs +clonezilla +cloud-init +cryptsetup +darkhttpd +ddrescue +dhclient +dhcpcd +diffutils +dmidecode +dmraid +dnsmasq +dosfstools +e2fsprogs +edk2-shell +efibootmgr +espeakup +ethtool +exfatprogs +f2fs-tools +fatresize +firefox +fsarchiver +git +gnu-netcat +gpart +gpm +gptfdisk +grml-zsh-config +grub +hdparm +hyperv +intel-ucode +irssi +iw +iwd +jfsutils +kitty-terminfo +less +lftp +libfido2 +libusb-compat +linux +linux-headers +linux-atm +linux-firmware +linux-firmware-marvell +livecd-sounds +lsscsi +lvm2 +lynx +man-db +man-pages +mc +mdadm +memtest86+ +parch-license-fix +mkinitcpio +mkinitcpio-archiso +mkinitcpio-nfs-utils +modemmanager +mtools +nano +nbd +ndisc6 +nfs-utils +nilfs-utils +nmap +ntfs-3g +nvme-cli +open-iscsi +open-vm-tools +openconnect +openssh +openvpn +partclone +parted +partimage +pcsclite +ppp +pptpclient +pv +python +python-psutil +python-systemd + +reiserfsprogs +rp-pppoe +rsync +rxvt-unicode-terminfo +screen +sdparm +sg3_utils +smartmontools +sof-firmware +squashfs-tools +sudo +syslinux +systemd-resolvconf +tcpdump +terminus-font +testdisk +tmux +tpm2-tss +udftools +usb_modeswitch +usbmuxd +usbutils +vim +virtualbox-guest-utils-nox +vpnc +which +wireless-regdb +wireless_tools +wpa_supplicant +wget +wvdial +xfsprogs +xl2tpd +zsh +archlinux-keyring +openssl-1.1 +openssl + +bash-completion +networkmanager + + + +btop +neofetch-git +ark +unzip +unrar + +os-prober +paru +parch-branding +parch-pacman