source: lliurex-maker/trunk/fuentes/new/usr/bin/lliurex-maker @ 2184

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

call function to prepare sources folder

  • Property svn:executable set to *
File size: 3.0 KB
Line 
1#!/bin/bash
2
3#Define build variables
4
5ARCH="i386"
6FLAVOUR=""
7MIRROR=""
8INTERACTIVE="false"
9ACTION=""
10EXTRA_PPAS=""
11EXTRA_MIRRORS=""
12EXTRAARGS=""
13EXTRAENV=""
14
15# Define extra variables
16
17RED='\033[0;31m'
18GREEN='\033[0;32m'
19NC='\033[0m' # No Color
20
21# This include function addPPA
22# This include function cleanExtraSources
23# This include function addExtraMirror
24source /usr/share/lliurex-maker/libs/lliurexMakerUtils
25
26# Functions
27
28usage(){
29        echo "usage"
30        echo -e "\t $(basename $0) build FLAVOUR EXTRAOPTIONS"
31        echo -e "\t $(basename $0) clean"
32        echo -e ""
33        echo -e "\t * EXTRAOPTIONS:"
34        echo -e "\t    -a ARCH | --arch=ARCH"
35        echo -e "\t    -m MIRROR | --arch=MIRROR"
36        echo -e "\t    -p PPA[:Pining_Number] | --ppa=PPA[:Pining_Number]"
37        echo -e "\t    -e url | --extramirror=url"
38        echo -e "\t    -i | --interactive"
39        echo -e "\t "
40}
41
42showResume(){
43        echo -e "\n\n"
44        echo -e "\t${GREEN}**********    Resume    **********${NC}\n"
45        echo -e "    FLAVOUR : $FLAVOUR "
46        echo -e "    MIRROR : $MIRROR "
47        echo -e "    ARCH : $ARCH "
48        echo -e "    PPA : $EXTRA_PPAS "
49        echo -e "\n\t${GREEN}**********************************${NC}"
50}
51       
52showErrors(){
53        if [ $( cat binary.log | grep "^E:" | tee errores | wc -l ) -gt 0 ];then
54                echo -e "\n\t${RED}*******   Errors   **********${NC}\n"
55                cat errores | sed -e "s%^%    %g" 
56                echo -e "\n\t${RED}*****************************${NC}\n"
57        fi     
58}
59
60setEnvironment(){
61
62        if [ ! -e auto ]; then
63                cp -r /usr/share/lliurex-maker/auto .
64        fi
65
66        if [ "$INTERACTIVE" = "true" ]; then
67                EXTRAARGS="--interactive=true "
68        fi
69
70        if [ -n $MIRROR ]; then
71                EXTRAENV="${EXTRAENV}MIRROR=$MIRROR "
72        fi
73        if [ -z $FLAVOUR ]; then
74                echo -e "Error!"
75                echo -e "\tFlavour is needed"
76                exit 0
77        fi
78        export FLAVOUR
79        export MIRROR
80        export ARCH
81}
82
83parseArgs(){
84       
85        while [[ $# > 0 ]]; do
86                key="$1"
87                case $key in
88                        build)
89                                ACTION="build"
90                                FLAVOUR="$2"
91                                shift
92                        ;;
93                        clean)
94                                ACTION="clean"
95                        ;;
96                        -a)
97                                ARCH="$2"
98                                shift
99                        ;;
100                        --arch)
101                                ARCH=${key##--arch=}
102                        ;;
103                        -m)
104                                MIRROR="$2"
105                                shift
106                        ;;
107                        --mirror)
108                                MIRROR=${key##--mirror=}
109                        ;;
110                        -i|--interactive)
111                                INTERACTIVE="true"
112                        ;;
113                        -p)
114                                EXTRA_PPAS="${EXTRA_PPAS} $2"
115                                shift
116                        ;;
117                        --ppa)
118                                EXTRA_PPAS="${EXTRA_PPAS} ${key##--ppa=}"
119                        ;;
120                        -e)
121                                EXTRA_MIRRORS="${EXTRA_MIRRORS} $2"
122                                shift
123                        ;;
124                        --extramirror)
125                                EXTRA_MIRRORS="${EXTRA_MIRRORS} ${key##--extramirror=}"
126                        ;;
127
128                esac
129                shift
130        done
131
132}
133
134parseArgs $@
135
136if [ -z $ACTION ]; then
137        usage
138        exit 0
139fi
140
141case $ACTION in
142        clean)
143                lb clean
144                exit 0
145        ;;
146        build)
147        #continue
148        ;;
149esac
150
151
152# Build iso
153
154setEnvironment
155
156if [ "${EXTRA_PPAS}" != "" ]; then
157        EXTRAARGS="${EXTRAARGS} --archives extra-ppas.list"
158fi
159cleanExtraSources
160lb config ${EXTRAARGS}
161
162
163if [ "$ARCH" = "amd64" ]; then
164        cp -r /usr/share/lliurex-maker/uefi/. config/includes.binary
165fi
166
167# Append ppas
168if [ "${EXTRA_PPAS}" != "" ]; then
169        addPPA 
170fi
171
172if [ "${EXTRA_MIRRORS}" != "" ]; then
173        addExtraMirror
174fi
175
176
177lb build
178
179showResume
180showErrors
181
182if [ -e "binary.hybrid.iso" ]; then
183        mv binary.hybrid.iso lliurex-${FLAVOUR}-${ARCH}.iso
184fi
185
Note: See TracBrowser for help on using the repository browser.