mirror of
https://gitdl.cn/https://github.com/chakralinux/core.git
synced 2025-02-04 02:47:17 +08:00
113 lines
3.0 KiB
Bash
113 lines
3.0 KiB
Bash
#
|
|
# Chakra Packages for Chakra, part of chakra-project.org
|
|
#
|
|
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
|
|
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
|
|
|
|
pkgname=filesystem
|
|
pkgver=2011.09
|
|
pkgrel=0.$(date +%Y.%m.%d)
|
|
_codename=Edn
|
|
pkgdesc="Base filesystem"
|
|
arch=('any')
|
|
license=('GPL')
|
|
url="http://www.chakra-project.org"
|
|
groups=('base')
|
|
install=filesystem.install
|
|
depends=('iana-etc' 'bash' 'coreutils')
|
|
backup=(etc/fstab etc/crypttab etc/group etc/hosts etc/ld.so.conf etc/passwd
|
|
etc/shadow etc/gshadow etc/resolv.conf etc/motd etc/nsswitch.conf
|
|
etc/shells etc/host.conf etc/securetty etc/profile etc/issue
|
|
etc/chakra-release)
|
|
source=("http://chakra-project.org/sources/${pkgname}/${pkgname}-${pkgver}-${pkgrel}.tar.xz")
|
|
md5sums=('3d9022e13bb10fbf131d27a6584a58f7')
|
|
|
|
# create tarball: source PKGBUILD && mksource
|
|
|
|
mksource() {
|
|
rm -vRf chakra-${pkgname}
|
|
git clone git://gitorious.org/chakra/chakra-${pkgname}.git
|
|
rm -vRf chakra-${pkgname}/.git
|
|
pushd chakra-${pkgname}
|
|
popd
|
|
tar -cvJf ${pkgname}-${pkgver}-${pkgrel}.tar.xz chakra-${pkgname}/*
|
|
md5sum ${pkgname}-${pkgver}-${pkgrel}.tar.xz
|
|
}
|
|
|
|
package() {
|
|
cd ${srcdir}/chakra-${pkgname}
|
|
|
|
#
|
|
# setup root filesystem
|
|
#
|
|
for d in bin boot dev etc home lib/modules media mnt sbin usr var opt srv/http sys run; do
|
|
install -d -m755 ${pkgdir}/${d}
|
|
done
|
|
|
|
install -d -m555 ${pkgdir}/proc
|
|
install -d -m0750 ${pkgdir}/root
|
|
install -d -m1777 ${pkgdir}/tmp
|
|
# vsftpd won't run with write perms on /srv/ftp
|
|
install -d -m555 -g ftp ${pkgdir}/srv/ftp
|
|
|
|
#
|
|
# setup /etc
|
|
#
|
|
install -d ${pkgdir}/etc/{ld.so.conf.d,skel,profile.d}
|
|
for f in fstab group host.conf hosts issue ld.so.conf motd nsswitch.conf passwd resolv.conf securetty shells profile; do
|
|
install -m644 ${srcdir}/chakra-${pkgname}/${f} ${pkgdir}/etc/
|
|
done
|
|
|
|
for f in gshadow shadow crypttab; do
|
|
install -m600 ${srcdir}/chakra-${pkgname}/${f} ${pkgdir}/etc/
|
|
done
|
|
|
|
install -D -m644 ${srcdir}/chakra-${pkgname}/modprobe.d.usb-load-ehci-first ${pkgdir}/etc/modprobe.d/usb-load-ehci-first.conf
|
|
|
|
#
|
|
# setup /var
|
|
#
|
|
for d in cache/man local opt run log/old lib/misc empty; do
|
|
install -d -m755 ${pkgdir}/var/${d}
|
|
done
|
|
|
|
install -d -m1777 ${pkgdir}/var/{lock,tmp,spool/mail}
|
|
|
|
#
|
|
# allow setgid games to write scores
|
|
#
|
|
install -d -m775 -g games ${pkgdir}/var/games
|
|
ln -s spool/mail ${pkgdir}/var/mail
|
|
|
|
#
|
|
# prevent pacman from removing directory (FS#16886)
|
|
#
|
|
touch ${pkgdir}/var/empty/.keep
|
|
|
|
#
|
|
# setup /usr hierarchy
|
|
#
|
|
for d in bin include lib sbin share/misc src; do
|
|
install -d -m755 ${pkgdir}/usr/${d}
|
|
done
|
|
|
|
for d in $(seq 8); do
|
|
install -d -m755 ${pkgdir}/usr/share/man/man${d}
|
|
done
|
|
|
|
#
|
|
# setup /usr/local hierarchy
|
|
#
|
|
for d in bin etc games include lib man sbin share src; do
|
|
install -d -m755 ${pkgdir}/usr/local/${d}
|
|
done
|
|
|
|
ln -s ../man ${pkgdir}/usr/local/share/man
|
|
|
|
#
|
|
# setup chakra tags
|
|
#
|
|
echo "Chakra Linux release ${pkgver} (${_codename})" > "${pkgdir}/etc/chakra-release"
|
|
sed -i -e "s~Chakra Linux~Chakra Linux (${pkgver} - ${_codename})~g" "${pkgdir}/etc/issue"
|
|
}
|