# Maintainer (arch): Sébastien Luttringer # Contributor: Tom Gundersen # Maintainer: Omar Vega Ramos # Contributor: Nicolás Reynolds # Contributor: bill-auger # parabola changes and rationale: # - parabola branding (os-release,motd,icon,logo) # - disable dotnet telemetry (redmine #2894) pkgname=filesystem pkgver=2023.09.18 pkgrel=1 pkgrel+=.parabola1 pkgdesc='Base Parabola GNU/Linux-libre files' arch=('x86_64') arch+=('armv7h' 'i686' 'ppc64le') license=('GPL') url='https://www.parabola.nu' depends=('iana-etc') backup=('etc/crypttab' 'etc/fstab' 'etc/group' 'etc/gshadow' 'etc/host.conf' 'etc/hosts' 'etc/issue' 'etc/ld.so.conf' 'etc/nsswitch.conf' 'etc/passwd' 'etc/profile' 'etc/resolv.conf' 'etc/securetty' 'etc/shadow' 'etc/shells' 'etc/subuid' 'etc/subgid') backup+=('etc/motd') source=('crypttab' 'env-generator' 'fstab' 'group' 'gshadow' 'host.conf' 'hosts' 'issue' 'ld.so.conf' 'locale.sh' 'nsswitch.conf' 'os-release' 'profile' 'passwd' 'resolv.conf' 'securetty' 'shadow' 'shells' 'sysctl' 'sysusers' 'tmpfiles' 'subuid' 'subgid' 'archlinux-logo.svg' 'archlinux-logo.png' 'archlinux-logo-text.svg' 'archlinux-logo-text-dark.svg') source=( ${source[*]//archlinux-logo/parabola-logo} ) source+=('motd') source+=('disable-dotnet-telemetry.sh') # NOTE: the commented files below, are those which should differ from arch sha256sums=('e03bede3d258d680548696623d5979c6edf03272e801a813c81ba5a5c64f4f82' 'ed0cb4f1db4021f8c3b5ce78fdf91d2c0624708f58f36c9cf867f4d93c3bc6da' 'e54626e74ed8fee4173b62a545ab1c3a3a069e4217a0ee8fc398d9933e9c1696' '244f0718ee2a9d6862ae59d6c18c1dd1568651eada91a704574fa527fbac2b3a' '90d879374f77bac47f132164c1e7fc4892e994ff1d1ac376efa0c1c26ea37273' '4d7b647169063dfedbff5e1e22cee77bd1a4183dbcfd5e802e68939da4bbf733' 'd9cd8a77d9e0aa5e90d7f4ed74c8745c17b525e720e28e4c44364150003c35f9' '8b8f24af3454e87b4e316b4978d0de7958a98cc44606aa801d9696d2c21f4385' # issue (branding) 'dad04a370e488aa85fb0a813a5c83cf6fd981ce01883fc59685447b092de84b5' '8ca2d8eef6fb5143c9ef7e9174ccfef59ac7ad2deee243574cd10c763156cc10' 'c8ee7a9faf798caab178ec51afae4146f1efd8a716b7acedf28345b6c75f9697' '359623c74da854d93e7dcc5335f3e3c95c378af75f640fc728596268ce4391a9' # os-release (branding) '8f08231922fe185d3132f9aedded5cd688fb7c482a6f6f272402ded82fa4849a' '5e06477834f51abf42ea4e8dc199632afc6afbfd8c44354685a271e9a48d2c0a' '5557d8e601b17a80d1ea7de78a9869be69637cb6a02fbfe334e22fdf64e61d4c' 'd88be2b45b43605ff31dd83d6a138069b6c2e92bc8989b7b9ab9eba8da5f8c7b' '6e13705ac4d6f69cdba118c6b70c722346fd3c45224133e6bbfe28aca719563c' 'ec289c03aa0d150e90e8287f001c8e6552ab9dd54f450bdb5c2d2254e477965b' '89e43a0b7028f52d5c8e7fb961d962c4b4f4e9595880a6157274ddb2c7c0b6b4' '59877ca8c00192776d06d0c11087083e31e5c5ba6830c4faaa924d858df42f8a' # sysusers (branding) '5d8e61479f0093852365090e84d8d95b1e7fccfab068274ee25863bde6ff3e07' 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' 'd5f0a4f75761afd5ebbc6970ac9aba5be3c28bb660adf7118353a0e018911e68' # parabola-logo.svg 'c6486f4c9456fa62a75727adfcc8f2403a1a9fac29386f942c0678c109cc72e8' # parabola-logo.png '09838fea00c5ceff6e7ed28bb1b6d62feb1e2471df9fe5a4328071ecb9e837f3' # parabola-logo-text.svg 'bc9be3442fab17ac6990814db4c0cc76c2ac6112c70a6c103530f607aa54c11e') # parabola-logo-text-dark.svg sha256sums+=('0018e0387155ee65472f71f0003fcbcb863355d12442150922e7156da12cabad') # motd sha256sums+=('0869a4e09afceabf9dbc3c46622b254e373eda48af71e2936acd0652c7d3518e') # disable-dotnet-telemetry.sh prepare() { # inject OS variant information into os-release local init='SystemD' sed -i "s|@VARIANT@|${CARCH} ${init} Edition|" "${srcdir}"/os-release sed -i "s|@VARIANT_ID@|${CARCH}-${init,,}|" "${srcdir}"/os-release } package() { cd "$pkgdir" # setup root filesystem for d in boot dev etc home mnt usr var opt srv/http run; do install -d -m755 $d done install -d -m555 proc install -d -m555 sys install -d -m0750 root install -d -m1777 tmp # vsftpd won't run with write perms on /srv/ftp # ftp (uid 14/gid 11) install -d -m555 -g 11 srv/ftp # setup /etc and /usr/share/factory/etc install -d etc/{ld.so.conf.d,skel,profile.d} usr/share/factory/etc for f in fstab group host.conf hosts issue ld.so.conf nsswitch.conf \ passwd resolv.conf securetty shells profile subuid subgid; do install -m644 "$srcdir"/$f etc/ install -m644 "$srcdir"/$f usr/share/factory/etc/ done ln -s ../proc/self/mounts etc/mtab for f in gshadow shadow crypttab; do install -m600 "$srcdir"/$f etc/ install -m600 "$srcdir"/$f usr/share/factory/etc/ done touch etc/arch-release touch etc/parabola-release install -m644 "$srcdir"/motd etc/ install -m644 "$srcdir"/locale.sh etc/profile.d/locale.sh install -Dm644 "$srcdir"/os-release usr/lib/os-release # stop-gap fix for https://labs.parabola.nu/issues/2894 install -m644 "$srcdir"/disable-dotnet-telemetry.sh etc/profile.d/disable-dotnet-telemetry.sh # setup /var for d in cache local opt log/old lib/misc empty; do install -d -m755 var/$d done install -d -m1777 var/{tmp,spool/mail} # allow setgid games (gid 50) to write scores install -d -m775 -g 50 var/games ln -s spool/mail var/mail ln -s ../run var/run ln -s ../run/lock var/lock # setup /usr hierarchy for d in bin include lib share/{misc,pixmaps} src; do install -d -m755 usr/$d done for d in {1..8}; do install -d -m755 usr/share/man/man$d done # add lib symlinks ln -s usr/lib lib [[ $CARCH = 'ppc64le' ]] || \ [[ $CARCH = 'x86_64' ]] && { ln -s usr/lib lib64 ln -s lib usr/lib64 } # add bin symlinks ln -s usr/bin bin ln -s usr/bin sbin ln -s bin usr/sbin # setup /usr/local hierarchy for d in bin etc games include lib man sbin share src; do install -d -m755 usr/local/$d done ln -s ../man usr/local/share/man # setup systemd-sysctl install -D -m644 "$srcdir"/sysctl usr/lib/sysctl.d/10-arch.conf # setup systemd-sysusers install -D -m644 "$srcdir"/sysusers usr/lib/sysusers.d/arch.conf # setup systemd-tmpfiles install -D -m644 "$srcdir"/tmpfiles usr/lib/tmpfiles.d/arch.conf # setup systemd.environment-generator install -D -m755 "$srcdir"/env-generator usr/lib/systemd/system-environment-generators/10-arch # add logo install -D -m644 "$srcdir"/parabola-logo{.png,.svg,-text.svg,-text-dark.svg} usr/share/pixmaps }