diff --git a/iso/airootfs/etc/X11/xorg.conf.d/30-touchpad.conf b/iso/airootfs/etc/X11/xorg.conf.d/30-touchpad.conf new file mode 100644 index 0000000..8912625 --- /dev/null +++ b/iso/airootfs/etc/X11/xorg.conf.d/30-touchpad.conf @@ -0,0 +1,6 @@ +Section "InputClass" + Identifier "MyTouchpad" + MatchIsTouchpad "on" + Driver "libinput" + Option "Tapping" "on" +EndSection diff --git a/iso/airootfs/etc/group b/iso/airootfs/etc/group new file mode 100644 index 0000000..ed7ceed --- /dev/null +++ b/iso/airootfs/etc/group @@ -0,0 +1,16 @@ +root:x:0:root +sys:x:3:bin,liveuser +network:x:90:liveuser +power:x:98:liveuser +adm:x:999:liveuser +wheel:x:998:liveuser +uucp:x:987:liveuser +optical:x:990:liveuser +rfkill:x:983:liveuser +video:x:986:liveuser +storage:x:988:liveuser +audio:x:995:liveuser +users:x:985:liveuser +nopasswdlogin:x:966:liveuser +autologin:x:967:liveuser +liveuser:x:1000: diff --git a/iso/airootfs/etc/gshadow b/iso/airootfs/etc/gshadow new file mode 100644 index 0000000..8bf2275 --- /dev/null +++ b/iso/airootfs/etc/gshadow @@ -0,0 +1,16 @@ +root:::root +sys:!!::liveuser +network:!!::liveuser +power:!!::liveuser +adm:!!::liveuser +wheel:!!::liveuser +uucp:!!::liveuser +optical:!!::liveuser +rfkill:!!::liveuser +video:!!::liveuser +storage:!!::liveuser +audio:!!::liveuser +users:!!::liveuser +nopasswdlogin:!::liveuser +autologin:!::liveuser +liveuser:!:: diff --git a/iso/airootfs/etc/locale.conf b/iso/airootfs/etc/locale.conf index 01ec548..f9c983c 100644 --- a/iso/airootfs/etc/locale.conf +++ b/iso/airootfs/etc/locale.conf @@ -1 +1 @@ -LANG=en_US.UTF-8 +LANG=C.UTF-8 diff --git a/iso/airootfs/etc/makepkg.conf b/iso/airootfs/etc/makepkg.conf new file mode 100644 index 0000000..e2b18f5 --- /dev/null +++ b/iso/airootfs/etc/makepkg.conf @@ -0,0 +1,159 @@ +#!/hint/bash +# +# /etc/makepkg.conf +# + +######################################################################### +# SOURCE ACQUISITION +######################################################################### +# +#-- The download utilities that makepkg should use to acquire sources +# Format: 'protocol::agent' +DLAGENTS=('file::/usr/bin/curl -qgC - -o %o %u' + 'ftp::/usr/bin/curl -qgfC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' + 'http::/usr/bin/curl -qgb "" -fLC - --retry 3 --retry-delay 3 -o %o %u' + 'https::/usr/bin/curl -qgb "" -fLC - --retry 3 --retry-delay 3 -o %o %u' + 'rsync::/usr/bin/rsync --no-motd -z %u %o' + 'scp::/usr/bin/scp -C %u %o') + +# Other common tools: +# /usr/bin/snarf +# /usr/bin/lftpget -c +# /usr/bin/wget + +#-- The package required by makepkg to download VCS sources +# Format: 'protocol::package' +VCSCLIENTS=('bzr::bzr' + 'fossil::fossil' + 'git::git' + 'hg::mercurial' + 'svn::subversion') + +######################################################################### +# ARCHITECTURE, COMPILE FLAGS +######################################################################### +# +CARCH="x86_64" +CHOST="x86_64-pc-linux-gnu" + +#-- Compiler and Linker Flags +#CPPFLAGS="" +CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \ + -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \ + -fstack-clash-protection -fcf-protection" +CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS" +LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" +LTOFLAGS="-flto=auto" +#RUSTFLAGS="-C opt-level=2" +#-- Make Flags: change this for DistCC/SMP systems +MAKEFLAGS="-j$(nproc)" +#-- Debugging flags +DEBUG_CFLAGS="-g" +DEBUG_CXXFLAGS="$DEBUG_CFLAGS" +#DEBUG_RUSTFLAGS="-C debuginfo=2" + +######################################################################### +# BUILD ENVIRONMENT +######################################################################### +# +# Makepkg defaults: BUILDENV=(!distcc !color !ccache check !sign) +# A negated environment option will do the opposite of the comments below. +# +#-- distcc: Use the Distributed C/C++/ObjC compiler +#-- color: Colorize output messages +#-- ccache: Use ccache to cache compilation +#-- check: Run the check() function if present in the PKGBUILD +#-- sign: Generate PGP signature file +# +BUILDENV=(!distcc color !ccache check !sign) +# +#-- If using DistCC, your MAKEFLAGS will also need modification. In addition, +#-- specify a space-delimited list of hosts running in the DistCC cluster. +#DISTCC_HOSTS="" +# +#-- Specify a directory for package building. +#BUILDDIR=/tmp/makepkg + +######################################################################### +# GLOBAL PACKAGE OPTIONS +# These are default values for the options=() settings +######################################################################### +# +# Makepkg defaults: OPTIONS=(!strip docs libtool staticlibs emptydirs !zipman !purge !debug !lto) +# A negated option will do the opposite of the comments below. +# +#-- strip: Strip symbols from binaries/libraries +#-- docs: Save doc directories specified by DOC_DIRS +#-- libtool: Leave libtool (.la) files in packages +#-- staticlibs: Leave static library (.a) files in packages +#-- emptydirs: Leave empty directories in packages +#-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip +#-- purge: Remove files specified by PURGE_TARGETS +#-- debug: Add debugging flags as specified in DEBUG_* variables +#-- lto: Add compile flags for building with link time optimization +# +OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug !lto) + +#-- File integrity checks to use. Valid: md5, sha1, sha224, sha256, sha384, sha512, b2 +INTEGRITY_CHECK=(sha256) +#-- Options to be used when stripping binaries. See `man strip' for details. +STRIP_BINARIES="--strip-all" +#-- Options to be used when stripping shared libraries. See `man strip' for details. +STRIP_SHARED="--strip-unneeded" +#-- Options to be used when stripping static libraries. See `man strip' for details. +STRIP_STATIC="--strip-debug" +#-- Manual (man and info) directories to compress (if zipman is specified) +MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info}) +#-- Doc directories to remove (if !docs is specified) +DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc}) +#-- Files to be removed from all packages (if purge is specified) +PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod) +#-- Directory to store source code in for debug packages +DBGSRCDIR="/usr/src/debug" + +######################################################################### +# PACKAGE OUTPUT +######################################################################### +# +# Default: put built package and cached source in build directory +# +#-- Destination: specify a fixed directory where all packages will be placed +#PKGDEST=/home/packages +#-- Source cache: specify a fixed directory where source files will be cached +#SRCDEST=/home/sources +#-- Source packages: specify a fixed directory where all src packages will be placed +#SRCPKGDEST=/home/srcpackages +#-- Log files: specify a fixed directory where all log files will be placed +#LOGDEST=/home/makepkglogs +#-- Packager: name/email of the person or organization building packages +#PACKAGER="John Doe " +#-- Specify a key to use for package signing +#GPGKEY="" + +######################################################################### +# COMPRESSION DEFAULTS +######################################################################### +# +COMPRESSGZ=(gzip -c -f -n) +COMPRESSBZ2=(bzip2 -c -f) +COMPRESSXZ=(xz -c -z -) +COMPRESSZST=(zstd -c -z -q -) +COMPRESSLRZ=(lrzip -q) +COMPRESSLZO=(lzop -q) +COMPRESSZ=(compress -c -f) +COMPRESSLZ4=(lz4 -q) +COMPRESSLZ=(lzip -c -f) + +######################################################################### +# EXTENSION DEFAULTS +######################################################################### +# +PKGEXT='.pkg.tar.zst' +SRCEXT='.src.tar.gz' + +######################################################################### +# OTHER +######################################################################### +# +#-- Command used to run pacman as root, instead of trying sudo and su +#PACMAN_AUTH=() diff --git a/iso/airootfs/etc/mkinitcpio.d/parch b/iso/airootfs/etc/mkinitcpio.d/parch new file mode 100644 index 0000000..15878c6 --- /dev/null +++ b/iso/airootfs/etc/mkinitcpio.d/parch @@ -0,0 +1,14 @@ +# mkinitcpio preset file for the 'linux' package on archiso + +PRESETS=('default' 'fallback') + +ALL_kver='/boot/vmlinuz-linux' +ALL_config='/etc/mkinitcpio.conf' + +#default_config="/etc/mkinitcpio.conf" +default_image="/boot/initramfs-linux.img" +#default_options="" + +#fallback_config="/etc/mkinitcpio.conf" +fallback_image="/boot/initramfs-linux-fallback.img" +fallback_options="-S autodetect" diff --git a/iso/airootfs/etc/passwd b/iso/airootfs/etc/passwd index 2807d5d..da8dd66 100644 --- a/iso/airootfs/etc/passwd +++ b/iso/airootfs/etc/passwd @@ -1 +1,2 @@ root:x:0:0:root:/root:/usr/bin/zsh +liveuser:x:1000:1000::/home/liveuser:/bin/bash diff --git a/iso/airootfs/etc/sddm.conf.d/autologin.conf b/iso/airootfs/etc/sddm.conf.d/autologin.conf new file mode 100644 index 0000000..2b23ccf --- /dev/null +++ b/iso/airootfs/etc/sddm.conf.d/autologin.conf @@ -0,0 +1,7 @@ +[Autologin] +Relogin=false +User=liveuser +Session=plasma + +[Theme] +Current=breeze-dark diff --git a/iso/airootfs/etc/shadow b/iso/airootfs/etc/shadow index 7edfd69..3692488 100644 --- a/iso/airootfs/etc/shadow +++ b/iso/airootfs/etc/shadow @@ -1 +1,2 @@ root::14871:::::: +liveuser::14871:::::: \ No newline at end of file diff --git a/iso/airootfs/etc/sudoers.d/g_wheel b/iso/airootfs/etc/sudoers.d/g_wheel new file mode 100644 index 0000000..7c499c2 --- /dev/null +++ b/iso/airootfs/etc/sudoers.d/g_wheel @@ -0,0 +1 @@ +%wheel ALL=(ALL) NOPASSWD: ALL diff --git a/iso/airootfs/etc/systemd/system/choose-mirror.service b/iso/airootfs/etc/systemd/system/choose-mirror.service deleted file mode 100644 index b6a3562..0000000 --- a/iso/airootfs/etc/systemd/system/choose-mirror.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=Choose mirror from the kernel command line -ConditionKernelCommandLine=mirror - -[Service] -Type=oneshot -ExecStart=/usr/local/bin/choose-mirror - -[Install] -WantedBy=multi-user.target diff --git a/iso/airootfs/etc/systemd/system/display-manager.service b/iso/airootfs/etc/systemd/system/display-manager.service new file mode 120000 index 0000000..56f1df2 --- /dev/null +++ b/iso/airootfs/etc/systemd/system/display-manager.service @@ -0,0 +1 @@ +/usr/lib/systemd/system/sddm.service \ No newline at end of file diff --git a/iso/airootfs/etc/systemd/system/multi-user.target.wants/NetworkManager.service b/iso/airootfs/etc/systemd/system/multi-user.target.wants/NetworkManager.service new file mode 120000 index 0000000..e874a9b --- /dev/null +++ b/iso/airootfs/etc/systemd/system/multi-user.target.wants/NetworkManager.service @@ -0,0 +1 @@ +/usr/lib/systemd/system/NetworkManager.service \ No newline at end of file diff --git a/iso/airootfs/etc/systemd/system/multi-user.target.wants/choose-mirror.service b/iso/airootfs/etc/systemd/system/multi-user.target.wants/choose-mirror.service deleted file mode 120000 index 2d8d256..0000000 --- a/iso/airootfs/etc/systemd/system/multi-user.target.wants/choose-mirror.service +++ /dev/null @@ -1 +0,0 @@ -../choose-mirror.service \ No newline at end of file diff --git a/iso/airootfs/etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service b/iso/airootfs/etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service new file mode 120000 index 0000000..b78b586 --- /dev/null +++ b/iso/airootfs/etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service @@ -0,0 +1 @@ +/usr/lib/systemd/system/NetworkManager-wait-online.service \ No newline at end of file diff --git a/iso/packages.x86_64 b/iso/packages.x86_64 index 5bbf9d5..1969efa 100644 --- a/iso/packages.x86_64 +++ b/iso/packages.x86_64 @@ -4,6 +4,7 @@ arch-install-scripts archinstall b43-fwcutter base +base-devel bind brltty broadcom-wl @@ -28,7 +29,7 @@ ethtool exfatprogs f2fs-tools fatresize -firefox +falkon fsarchiver git gnu-netcat @@ -40,8 +41,8 @@ grub hdparm hyperv intel-ucode -ipw2100-fw -ipw2200-fw +#ipw2100-fw +#ipw2200-fw irssi iw iwd @@ -52,6 +53,7 @@ lftp libfido2 libusb-compat linux +linux-headers linux-atm linux-firmware linux-firmware-marvell @@ -94,7 +96,7 @@ python-psutil python-systemd qemu-guest-agent refind -reflector +#reflector reiserfsprogs rp-pppoe rsync @@ -131,3 +133,25 @@ xorg-server xorg-twm xorg-xinit zsh +archlinux-keyring +openssl-1.1 +openssl + +#Desktop + +#systemutils +btop +xdg-user-dirs +packagekit-qt5 +neofetch +keepassxc +octopi-git + + +#parchlinuxstuff +calamares +parchlinux-cala-config +os-prober +paru +parch-branding +parch-pacman diff --git a/iso/pacman.conf b/iso/pacman.conf index e2561c0..59d3499 100644 --- a/iso/pacman.conf +++ b/iso/pacman.conf @@ -34,7 +34,7 @@ Color #NoProgressBar CheckSpace #VerbosePkgLists -#ParallelDownloads = 5 +ParallelDownloads = 5 ILoveCandy # 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. @@ -95,11 +95,11 @@ Include = /etc/pacman.d/mirrorlist [ppr] SigLevel = Optional TrustedOnly -Server = https://parch-os.github.io/ppr/$arch +Server = https://parchlinux.github.io/ppr/$arch [pcp] SigLevel = Optional TrustedOnly -Server = https://parch-os.github.io/pcp/$arch +Server = https://parchlinux.github.io/pcp/$arch # An example of a custom package repository. See the pacman manpage for # tips on creating your own repositories. diff --git a/iso/profiledef.sh b/iso/profiledef.sh index e5af1d2..b14333a 100644 --- a/iso/profiledef.sh +++ b/iso/profiledef.sh @@ -5,8 +5,8 @@ iso_name="Parchlinux" iso_label="PARCH_$(date +%Y%m)" iso_publisher="Parch Linux " iso_application="Parch Linux Live/Rescue CD" -gpg_key="BC9DCC3C9A0B047F53065EEBFB8554F927F96E60" -gpg_signer="KomeilParseh " +#gpg_key="BC9DCC3C9A0B047F53065EEBFB8554F927F96E60" +#gpg_signer="KomeilParseh " iso_version="$(date +%Y.%m.%d)" install_dir="arch" buildmodes=('iso')