Magellan Linux

Annotation of /smage/branches/alx07x-stable/core/base-files/base-files-0.7.1-r4.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 14266 - (hide annotations) (download)
Tue Jul 7 11:55:30 2020 UTC (3 years, 10 months ago) by niro
Original Path: smage/trunk/core/base-files/base-files-0.7.1-r4.smage2
File size: 2733 byte(s)
auto added: ver bump to 0.7.1-r4
1 niro 14266 # $Id$
2    
3     PNAME="base-files"
4     PVER="0.7.1"
5     PBUILD="r4"
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     }