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

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

rename iso

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