Magellan Linux

Contents of /smage/trunk/core/base-files/base-files-0.7.1-r3.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 10553 - (show annotations) (download)
Wed Aug 23 14:39:20 2017 UTC (6 years, 8 months ago) by niro
File size: 2733 byte(s)
auto added: ver bump to 0.7.1-r3
1 # $Id$
2
3 PNAME="base-files"
4 PVER="0.7.1"
5 PBUILD="r3"
6
7 PCAT="sys-apps"
8
9 DESCRIPTION="Basic dirs and files for Magellan-Linux."
10 HOMEPAGE="http://www.magellan-linux.de/"
11
12 DEPEND=""
13
14 sminclude mtools
15
16 SRCFILE=""
17 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
18
19 SRC_URI=(
20 mirror://${PNAME}/group
21 mirror://${PNAME}/passwd
22 )
23
24 src_install()
25 {
26 install -d ${SRCDIR}
27 cd ${SRCDIR}
28
29 # creating fhs compat directories
30 local i
31 for i in boot dev etc home media mnt opt proc run root srv sys tmp usr var
32 do
33 mkeepdir /${i} || die
34 done
35
36 # needed by non devtmpfs mounts
37 mkeepdir /dev/shm || die
38
39 # global environment
40 mkeepdir /etc/env.d || die
41
42 # media
43 for i in floppy cdrom
44 do
45 mkeepdir /media/${i} || die
46 mkeepdir /mnt/${i} || die
47 done
48
49 # setup /opt
50 for i in bin doc include info lib man{,/man{1,2,3,4,5,6,7,8}}
51 do
52 mkeepdir /opt/${i} || die
53 done
54
55 # setup /usr
56 mkeepdir /usr/local || die
57 for i in bin etc include lib{,/locale} sbin share src
58 do
59 mkeepdir /usr/${i} || die
60 mkeepdir /usr/local/${i} || die
61 done
62 for i in dict doc info locale man{,/man{1,2,3,4,5,6,7,8}} \
63 nls misc terminfo wallpapers zoneinfo
64 do
65 mkeepdir /usr/share/${i} || die
66 mkeepdir /usr/local/share/${i} || die
67 done
68 # / symlinks to /usr
69 for i in bin lib sbin
70 do
71 mlink usr/${i} /${i} || die
72 done
73
74 # setup /var
75 for i in cache lib{,/{misc,locate}} local log mail opt spool tmp
76 do
77 mkeepdir /var/${i} || die
78 done
79
80 # sysvinit compat
81 for i in rc.d rc.d/init.d rc.d/rc{1,2,3,4,5,6,sysinit}.d
82 do
83 mkeepdir /etc/${i} || die
84 done
85 mkeepdir /usr/lib/dev-state || die
86
87 # new lock goes now to /run
88 mkeepdir /run/lock || die
89
90 # compat symlinks
91 mlink ../run /var/run || die
92 mlink ../run/lock /var/lock || die
93
94 # symlinks
95 mlink rc.d/init.d /etc || die
96 for i in doc info man
97 do
98 mlink share/${i} /usr || die
99 mlink share/${i} /usr/local || die
100 done
101
102 # these needs special rights
103 mchmod 0750 /root || die
104 mchmod 1777 /tmp || die
105 mchmod 1777 /var/tmp || die
106
107 # multilib support
108 if [[ $(mlibdir) != lib ]]
109 then
110 mlink usr/$(mlibdir) /$(mlibdir) || die
111 mkeepdir /usr/$(mlibdir) || die
112 mkeepdir /usr/local/$(mlibdir) || die
113 mlink ../lib/locale /usr/$(mlibdir)/locale || die
114 mlink ../lib/locale /usr/local/$(mlibdir)/locale || die
115 fi
116
117 # shadow passwd/group
118 minstallfile -s group /etc || die
119 minstallfile -s passwd /etc || die
120
121 # always keep this files even, a user could have edited them
122 MCONFIG="/etc/env.d/01base"
123 mclearconfig || die
124 maddconfig 'CONFIG_PROTECT_IGNORE="/etc/group /etc/passwd"' || die
125 }
126
127 preremove()
128 {
129 # protect these files, that they never get removed from the system
130 local CONFIG_IGNORE="group passwd"
131 for i in ${CONFIG_IGNORE}
132 do
133 [[ -e ${MROOT}/etc/${i} ]] && touch ${MROOT}/etc/${i}
134 done
135 }