# Maintainer: Sébastien Luttringer
# Contributor: Tom Gundersen <teg@jklm.no>

pkgname=filesystem
pkgver=2023.01.31
pkgrel=1.5
pkgdesc='Base pacman for android files'
arch=('x86_64' 'aarch64')
license=('GPL')
url='https://archlinux.org'
depends=('iana-etc')
options=(!strip)
backup=('data/etc/group' 'data/etc/gshadow' 'data/etc/host.conf'
        'data/etc/hosts' 'data/etc/issue' 'data/etc/ld.so.conf' 'data/etc/nsswitch.conf'
        'data/etc/passwd' 'data/etc/profile' 'data/etc/resolv.conf' 'data/etc/securetty'
        'data/etc/shadow' 'data/etc/shells' 'data/etc/subuid' 'data/etc/subgid')
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')
sha256sums=('e03bede3d258d680548696623d5979c6edf03272e801a813c81ba5a5c64f4f82'
            '4bc62ac505636e4ac1b79096de41cfd0d0610a4fb17249a7172a66114d86db29'
            'e54626e74ed8fee4173b62a545ab1c3a3a069e4217a0ee8fc398d9933e9c1696'
            'f2bfef6d6d5c70945bfc76c598ce9c6a6428665501c9e944b22985e202406e1b'
            '90d879374f77bac47f132164c1e7fc4892e994ff1d1ac376efa0c1c26ea37273'
            '4d7b647169063dfedbff5e1e22cee77bd1a4183dbcfd5e802e68939da4bbf733'
            'd9cd8a77d9e0aa5e90d7f4ed74c8745c17b525e720e28e4c44364150003c35f9'
            '8789b91c6dccdc338c29442e38d7de420464a26982cf0669136126553d81d29a'
            '84448a9a250ac01158f971b45a0b3cf93983526cc324b2181c5a25c844d38731'
            'ede40050533aa3633aaa79d2a6d0e73bed9fe2142b7bd51eb4d609dca7ca10f9'
            '204a60c05e2e8d09a28ac47e1940d8f7082fd5d096e528bd80febe5fe17f1547'
            '15d4e5d417a1e4eb8249230a9ae58d4e8076839a64033a04130692f62806d1aa'
            '36d3e62637a2fa34177fb071046ef359469a7197b33dd0ebccb5dfd1361c39c3'
            '902183efef1957788f53f6989214c3773c41f01f18a035da63af623c3573ce50'
            'e9c4327b35e0241efb1fe8aea021ed92e4736af76849f7699b7c3d384af8296d'
            'd88be2b45b43605ff31dd83d6a138069b6c2e92bc8989b7b9ab9eba8da5f8c7b'
            '6e13705ac4d6f69cdba118c6b70c722346fd3c45224133e6bbfe28aca719563c'
            '1cbad183d43dd50af928a2cb3f19e6ced87ee27335e9da11bae1ebb36fe3264a'
            '89e43a0b7028f52d5c8e7fb961d962c4b4f4e9595880a6157274ddb2c7c0b6b4'
            'f8de58f2a4be7bd877d38777df2a30c82464c8e1af2cd4ad52d2912a903cab78'
            '25fdd28016a77f76667ae8d554f7fb3010146ba1471496fe63c20174ff354f9d'
            'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
            'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
            '3ffe8ea4e98db43a3ec4dcca55fd4009cd8b8d220f0996aef7a5b427fdf65234'
            '3f48779141b68a81e07fee710a42025d4f67b16240295aa4cf148a7ba99cab3c'
            '601069e6e8920309178c397fd8cebe43410827d01899d31777d13212f0dfacf8'
            '96e3cc81623c0537a19799f9eefa966fe46ff5f28a9dc7af1187990973baa127')

package() {
  cd "$pkgdir"
  install -d -m771 data
  cd data

  # setup root filesystem
  for d in etc home usr var opt; do
    install -d -m755 $d
  done


  # groups: https://cs.android.com/android/platform/superproject/main/+/main:out/soong/.intermediates/bionic/libc/generated_android_ids/gen/generated_android_ids.h;drc=ac8d1d4155472f632356ae8e72ebe9bc68b68ff2;l=13
  # setup /data/etc and /data/usr/share/factory/etc
  install -d etc/{ld.so.conf.d,skel,profile.d} usr/share/factory/etc
  for f in 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; do
    install -m600 "$srcdir"/$f etc/
    install -m600 "$srcdir"/$f usr/share/factory/etc/
  done
  touch etc/arch-release
  install -m644 "$srcdir"/locale.sh etc/profile.d/locale.sh
  install -Dm644 "$srcdir"/os-release usr/lib/os-release

  # 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}

  ln -s spool/mail var/mail

  # 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
  ln -s ../etc usr/etc

  # # add lib symlinks
  [[ $CARCH = 'aarch64' ]] && {
    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

  # # add logo
  # install -D -m644 "$srcdir"/archlinux-logo{.png,.svg,-text.svg,-text-dark.svg} usr/share/pixmaps
}

# vim:set ts=2 sw=2 et:
