summaryrefslogtreecommitdiffstats
path: root/abs/core/filesystem/PKGBUILD
blob: ad6270474366a10dc9ec31565ab2e2d1befdf6f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# $Id: PKGBUILD 187026 2013-06-03 11:15:07Z allan $
# Maintainer: Tom Gundersen <teg@jklm.no>

pkgname=filesystem
pkgver=2013.05
pkgrel=3
pkgdesc='Base filesystem'
arch=('i686' 'x86_64')
license=('GPL')
url='http://www.archlinux.org'
groups=('base')
install='filesystem.install'
makedepends=('asciidoc')
depends=('iana-etc')
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')
source=('group' 'issue' 'nsswitch.conf' 'securetty' 'host.conf' 'ld.so.conf'
        'passwd' 'shadow' 'fstab' 'crypttab' 'hosts' 'motd' 'os-release' 'resolv.conf'
        'shells' 'gshadow' 'profile' 'modprobe.d.usb-load-ehci-first' 'archlinux.7.txt'
        'locale.sh')

build() {
	cd ${srcdir}
	a2x -d manpage -f manpage archlinux.7.txt
}

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
	install -d -m555 -g ftp srv/ftp

	# setup /etc
	install -d etc/{ld.so.conf.d,skel,profile.d}
	for f in fstab group host.conf hosts issue ld.so.conf motd nsswitch.conf os-release passwd resolv.conf securetty shells profile; do
		install -m644 ${srcdir}/${f} etc/
	done
	ln -s /proc/self/mounts etc/mtab
	for f in gshadow shadow crypttab; do
		install -m600 ${srcdir}/${f} etc/
	done
	touch etc/arch-release
	install -D -m644 ${srcdir}/modprobe.d.usb-load-ehci-first usr/lib/modprobe.d/usb-load-ehci-first.conf
	install -m755 ${srcdir}/locale.sh etc/profile.d/locale.sh

	# setup /var
	for d in cache/man local opt log/old lib/misc empty; do
		install -d -m755 var/${d}
	done
	install -d -m1777 var/{tmp,spool/mail}
	# allow setgid games to write scores
	install -d -m775 -g games 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 src; do
		install -d -m755 usr/${d}
	done
	for d in $(seq 8); do
		install -d -m755 usr/share/man/man${d}
	done

	#
	# add lib symlinks
	#
	ln -s usr/lib ${pkgdir}/lib
	[[ ${CARCH} = "x86_64" ]] && ( 
		ln -s usr/lib ${pkgdir}/lib64
		ln -s lib ${pkgdir}/usr/lib64
	)

# 	#
# 	# add bin symlinks
# 	#
  	ln -s usr/bin ${pkgdir}/bin
  	ln -s usr/bin ${pkgdir}/sbin
  	ln -s bin ${pkgdir}/usr/sbin

	#
	# install archlinux(7) manpage
	#
	install -D -m644 ${srcdir}/archlinux.7 usr/share/man/man7/archlinux.7

	#
	# 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
}
md5sums=('7b8e40f8f793e60f471511641bb1c9f2'
         '7813c481156f6b280a3ba91fc6236368'
         '9e4533df61f0c82d6b2e2371f7376282'
         '4c4540eeb748bf1f71d631b8c1dcf0b3'
         'f28150d4c0b22a017be51b9f7f9977ed'
         '6e488ffecc8ba142c0cf7e2d7aeb832e'
         '1cfd310dff0804a7d21958487c32a3b1'
         '2ef2429c2c98d0883906aa6f5363be80'
         '693c97f2c9a519bb97a17008e92c2b74'
         '1745349eb24ed21b4cfaa6f423bddb76'
         '7bc65f234dfb6abf24e7c3b03e86f4ff'
         'd41d8cd98f00b204e9800998ecf8427e'
         'b16a4674ccf3a932ff34c6c8393a4f33'
         '6f48288b6fcaf0065fcb7b0e525413e0'
         '22518e922891f9359f971f4f5b4e793c'
         'f45389e116ab0b9e9968287617d27c7d'
         '0b6f835598c7640184e476057b3c7722'
         'a8a962370cd0128465d514e6a1f74130'
         '2e193c4a37245f2323ebe87f1a673563'
         '3807d07215d9116331fe1cf8feeaa0f8')