source: live-build/trunk/fuentes/scripts/build/lb_clean @ 900

Last change on this file since 900 was 900, checked in by kbut, 3 years ago

add original source

  • Property svn:executable set to *
File size: 3.5 KB
Line 
1#!/bin/sh
2
3## live-build(7) - System Build Scripts
4## Copyright (C) 2006-2012 Daniel Baumann <daniel@debian.org>
5##
6## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
7## This is free software, and you are welcome to redistribute it
8## under certain conditions; see COPYING for details.
9
10
11set -e
12
13# Including common functions
14( . "${LIVE_BUILD}/scripts/build.sh" > /dev/null 2>&1 || true ) || . /usr/lib/live/build.sh
15
16# Read meta config
17if [ "${1}" != "noauto" ] && [ -x auto/clean ]
18then
19        Echo_message "Executing auto/clean script."
20        ./auto/clean "${@}"
21        exit ${?}
22fi
23
24if [ "${1}" = "noauto" ]
25then
26        shift
27fi
28
29# Setting static variables
30DESCRIPTION="$(Echo 'clean up system build directories')"
31HELP=""
32USAGE="${PROGRAM} [--all] [--cache] [--chroot] [--binary] [--purge] [--remove] [--stage] [--source]"
33
34#Arguments "${@}"
35
36# Reading configuration files
37Read_conffiles config/all config/common config/bootstrap config/chroot config/binary config/source
38Set_defaults
39
40# Avoid cases were users accidentally nuke their config/binary
41if [ ! -d config ] && [ "$(basename ${PWD})" = "config" ]
42then
43        Echo_error "%s is not a good Debian Live working directory to clean." "${PWD}"
44        exit 1
45fi
46
47rm -f .lock
48
49if [ -z "${*}" ]
50then
51        ARGUMENTS="--all"
52else
53        ARGUMENTS="${@}"
54fi
55
56for ARGUMENT in ${ARGUMENTS}
57do
58        case "${ARGUMENT}" in
59                --all)
60                        LB=1 "${0}" noauto --chroot
61                        LB=1 "${0}" noauto --binary
62                        LB=1 "${0}" noauto --stage
63                        LB=1 "${0}" noauto --source
64
65                        rmdir --ignore-fail-on-non-empty auto > /dev/null 2>&1 || true
66                        ;;
67
68                --cache)
69                        ${LB_ROOT_COMMAND} rm -rf cache
70                        ;;
71
72                --chroot)
73                        Echo_message "Cleaning chroot"
74                        ${LB_ROOT_COMMAND} umount -f chroot/run > /dev/null 2>&1 || true
75                        ${LB_ROOT_COMMAND} umount -f chroot/sys > /dev/null 2>&1 || true
76                        ${LB_ROOT_COMMAND} umount -f chroot/proc/sys/fs/binfmt_misc > /dev/null 2>&1 || true
77                        ${LB_ROOT_COMMAND} umount -f chroot/proc > /dev/null 2>&1 || true
78                        ${LB_ROOT_COMMAND} umount -f chroot/lib/init/rw > /dev/null 2>&1 || true
79                        ${LB_ROOT_COMMAND} umount -f chroot/dev/shm > /dev/null 2>&1 || true
80                        ${LB_ROOT_COMMAND} umount -f chroot/dev/pts > /dev/null 2>&1 || true
81                        ${LB_ROOT_COMMAND} umount -f chroot/dev > /dev/null 2>&1 || true
82                        ${LB_ROOT_COMMAND} umount -f chroot/var/lib/dpkg > /dev/null 2>&1 || true
83                        ${LB_ROOT_COMMAND} umount -f chroot/root/config > /dev/null 2>&1 || true
84
85                        ${LB_ROOT_COMMAND} umount -f chroot/binary.tmp > /dev/null 2>&1 || true
86                        ${LB_ROOT_COMMAND} umount -f chroot/dev.tmp/pts > /dev/null 2>&1 || true
87
88                        ${LB_ROOT_COMMAND} rm -rf chroot chroot.tmp
89
90                        rm -f chroot.packages.live chroot.packages.install
91                        rm -f chroot.headers
92
93                        rm -f .build/chroot*
94                        ;;
95
96                --binary)
97                        ${LB_ROOT_COMMAND} umount -f binary.tmp > /dev/null 2>&1 || true
98                        rm -rf binary.tmp binary.deb binary.udeb
99                        rm -f binary*.iso
100                        rm -f binary*.img
101                        rm -f binary*.tar.gz
102                        rm -f binary*.zsync*
103                        rm -f binary.sh
104                        rm -f binary.contents binary.packages md5sum.txt
105
106                        rm -rf binary
107                        rm -rf tftpboot
108
109                        rm -f .build/binary*
110                        ;;
111
112                --remove)
113                        LB=1 "${0}" --all
114                        rm -rf cache/packages.*
115                        ;;
116
117                --purge)
118                        LB=1 "${0}" --all
119                        LB=1 "${0}" --cache
120
121                        if [ -e auto/config ]
122                        then
123                                rm -f .build/config
124                        fi
125                        ;;
126
127                --stage)
128                        rm -rf .build
129                        ;;
130
131                --source)
132                        rm -f source*.iso
133                        rm -f source*.img
134                        rm -f source*.tar
135                        rm -f source*.tar.gz
136                        rm -f source*.list
137                        rm -f source-selection.txt
138
139                        rm -rf source
140
141                        rm -f .build/source*
142                        ;;
143
144                -h|--help)
145                        Help
146                        ;;
147
148                -u|--usage)
149                        Usage
150                        ;;
151
152                -v|--version)
153                        echo "${VERSION}"
154                        exit 0
155                        ;;
156
157                *)
158                        Usage
159                        exit 1
160                        ;;
161        esac
162done
Note: See TracBrowser for help on using the repository browser.