Merge ~mwhudson/debian-cd/+git/ubuntu:no-source-isos into ~ubuntu-cdimage/debian-cd/+git/ubuntu:main
- Git
- lp:~mwhudson/debian-cd/+git/ubuntu
- no-source-isos
- Merge into main
Proposed by
Michael Hudson-Doyle
Status: | Merged |
---|---|
Merged at revision: | 398472c0da6ba292299f4998db91344e6438938b |
Proposed branch: | ~mwhudson/debian-cd/+git/ubuntu:no-source-isos |
Merge into: | ~ubuntu-cdimage/debian-cd/+git/ubuntu:main |
Diff against target: |
340 lines (+3/-268) 3 files modified
Makefile (+0/-17) build_all.sh (+3/-4) dev/null (+0/-247) |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Steve Langasek | Approve | ||
Review via email:
|
Commit message
Description of the change
remove most code to do with making source ISOs
To post a comment you must log in.
Revision history for this message
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Michael Hudson-Doyle (mwhudson) wrote : | # |
Yes fair. I took a rather extreme approach for the README, hope that's ok.
Revision history for this message
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Michael Hudson-Doyle (mwhudson) wrote : | # |
So my initial commit got merged despite the needs fixing review? In any case I've just updated this to remove some more references.
Revision history for this message
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Steve Langasek (vorlon) wrote : | # |
On Sun, Feb 11, 2024 at 08:35:58PM -0000, Michael Hudson-Doyle wrote:
> So my initial commit got merged despite the needs fixing review? In any
> case I've just updated this to remove some more references.
Oops! Terrible local review workflow, sorry.
I'll follow through on this now
Revision history for this message
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Steve Langasek (vorlon) wrote : | # |
Yes fair. I took a rather extreme approach for the README, hope that's ok.
> --- a/README
> +++ /dev/null
lol ok fair
Revision history for this message
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Steve Langasek (vorlon) : | # |
review:
Approve
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | diff --git a/Makefile b/Makefile | |||
2 | index e8bc4b3..021bb6c 100644 | |||
3 | --- a/Makefile | |||
4 | +++ b/Makefile | |||
5 | @@ -48,16 +48,10 @@ endif | |||
6 | 48 | ifndef BINDISKINFO | 48 | ifndef BINDISKINFO |
7 | 49 | export BINDISKINFO="$(CAPPROJECT)$(CAPSUBPROJECT) $(DEBVERSION) \"$(CAPCODENAME)\" - $(OFFICIAL) $(FULLARCH) ($$DATE)" | 49 | export BINDISKINFO="$(CAPPROJECT)$(CAPSUBPROJECT) $(DEBVERSION) \"$(CAPCODENAME)\" - $(OFFICIAL) $(FULLARCH) ($$DATE)" |
8 | 50 | endif | 50 | endif |
9 | 51 | ifndef SRCDISKINFO | ||
10 | 52 | export SRCDISKINFO="$(CAPPROJECT)$(CAPSUBPROJECT) $(DEBVERSION) \"$(CAPCODENAME)\" - $(OFFICIAL) Source-$$num ($$DATE)" | ||
11 | 53 | endif | ||
12 | 54 | # ND=No-Date versions for README | 51 | # ND=No-Date versions for README |
13 | 55 | ifndef BINDISKINFOND | 52 | ifndef BINDISKINFOND |
14 | 56 | export BINDISKINFOND="$(CAPPROJECT)$(CAPSUBPROJECT) $(DEBVERSION) \"$(CAPCODENAME)\" - $(OFFICIAL) $(FULLARCH)" | 53 | export BINDISKINFOND="$(CAPPROJECT)$(CAPSUBPROJECT) $(DEBVERSION) \"$(CAPCODENAME)\" - $(OFFICIAL) $(FULLARCH)" |
15 | 57 | endif | 54 | endif |
16 | 58 | ifndef SRCDISKINFOND | ||
17 | 59 | export SRCDISKINFOND="$(CAPPROJECT) $(DEBVERSION) \"$(CAPCODENAME)\" - $(OFFICIAL) Source-$$num" | ||
18 | 60 | endif | ||
19 | 61 | ifndef BINVOLID | 55 | ifndef BINVOLID |
20 | 62 | ifeq ($(ARCH),powerpc) | 56 | ifeq ($(ARCH),powerpc) |
21 | 63 | BINVOLID="$(CAPPROJECT) $(DEBVERSION) ppc" | 57 | BINVOLID="$(CAPPROJECT) $(DEBVERSION) ppc" |
22 | @@ -72,9 +66,6 @@ else | |||
23 | 72 | BINVOLID="$(CAPPROJECT) $(DEBVERSION) $(ARCH)" | 66 | BINVOLID="$(CAPPROJECT) $(DEBVERSION) $(ARCH)" |
24 | 73 | endif | 67 | endif |
25 | 74 | endif | 68 | endif |
26 | 75 | ifndef SRCVOLID | ||
27 | 76 | SRCVOLID="$(CAPPROJECT) $(DEBVERSION) Source $$num" | ||
28 | 77 | endif | ||
29 | 78 | ifndef MKISOFS | 69 | ifndef MKISOFS |
30 | 79 | export MKISOFS=/usr/bin/mkisofs | 70 | export MKISOFS=/usr/bin/mkisofs |
31 | 80 | endif | 71 | endif |
32 | @@ -103,12 +94,10 @@ endif | |||
33 | 103 | ## Internal variables | 94 | ## Internal variables |
34 | 104 | apt=$(BASEDIR)/tools/apt-selection | 95 | apt=$(BASEDIR)/tools/apt-selection |
35 | 105 | list2cds=$(BASEDIR)/tools/list2cds | 96 | list2cds=$(BASEDIR)/tools/list2cds |
36 | 106 | list2src=$(BASEDIR)/tools/list2src | ||
37 | 107 | add_packages=$(BASEDIR)/tools/add_packages | 97 | add_packages=$(BASEDIR)/tools/add_packages |
38 | 108 | add_dirs=$(BASEDIR)/tools/add_dirs | 98 | add_dirs=$(BASEDIR)/tools/add_dirs |
39 | 109 | add_bin_doc=$(BASEDIR)/tools/add-bin-doc | 99 | add_bin_doc=$(BASEDIR)/tools/add-bin-doc |
40 | 110 | scanpackages=$(BASEDIR)/tools/scanpackages | 100 | scanpackages=$(BASEDIR)/tools/scanpackages |
41 | 111 | scansources=$(BASEDIR)/tools/scansources | ||
42 | 112 | add_files=$(BASEDIR)/tools/add_files | 101 | add_files=$(BASEDIR)/tools/add_files |
43 | 113 | set_mkisofs_opts=$(BASEDIR)/tools/set_mkisofs_opts | 102 | set_mkisofs_opts=$(BASEDIR)/tools/set_mkisofs_opts |
44 | 114 | add_secured=$(BASEDIR)/tools/add_secured | 103 | add_secured=$(BASEDIR)/tools/add_secured |
45 | @@ -202,16 +191,10 @@ PrintVars: | |||
46 | 202 | DATE=$${CDIMAGE_DATE:-`date +%Y%m%d`} ; \ | 191 | DATE=$${CDIMAGE_DATE:-`date +%Y%m%d`} ; \ |
47 | 203 | echo BINDISKINFO: ; \ | 192 | echo BINDISKINFO: ; \ |
48 | 204 | echo $(BINDISKINFO) ; \ | 193 | echo $(BINDISKINFO) ; \ |
49 | 205 | echo SRCDISKINFO: ; \ | ||
50 | 206 | echo $(SRCDISKINFO) ; \ | ||
51 | 207 | echo BINDISKINFOND: ; \ | 194 | echo BINDISKINFOND: ; \ |
52 | 208 | echo $(BINDISKINFOND) ; \ | 195 | echo $(BINDISKINFOND) ; \ |
53 | 209 | echo SRCDISKINFOND: ; \ | ||
54 | 210 | echo $(SRCDISKINFOND) ; \ | ||
55 | 211 | echo BINVOLID: ; \ | 196 | echo BINVOLID: ; \ |
56 | 212 | echo $(BINVOLID) ; \ | 197 | echo $(BINVOLID) ; \ |
57 | 213 | echo SRCVOLID: ; \ | ||
58 | 214 | echo $(SRCVOLID) ; \ | ||
59 | 215 | 198 | ||
60 | 216 | default: | 199 | default: |
61 | 217 | @echo "Please refer to the README file for more information" | 200 | @echo "Please refer to the README file for more information" |
62 | diff --git a/README b/README | |||
63 | 218 | deleted file mode 100644 | 201 | deleted file mode 100644 |
64 | index 3be8e05..0000000 | |||
65 | --- a/README | |||
66 | +++ /dev/null | |||
67 | @@ -1,247 +0,0 @@ | |||
68 | 1 | YACS - Yet Another CD Script :-) | ||
69 | 2 | ================================ | ||
70 | 3 | (better known as debian-cd) | ||
71 | 4 | |||
72 | 5 | Copyright 1999-2001 Rapha�l Hertzog <hertzog@debian.org> | ||
73 | 6 | This set of tools is licensed under the General Public License | ||
74 | 7 | version 2 or any later version. You can find it in | ||
75 | 8 | /usr/share/common-licenses/GPL on a Debian GNU system. | ||
76 | 9 | |||
77 | 10 | Thanks to Steve McIntyre <stevem@chiark.greenend.org.uk> for his | ||
78 | 11 | work on slink_cd/debian_cd. Some ideas come from his script. | ||
79 | 12 | |||
80 | 13 | Thanks to all the contributors on the debian-cd mailing list. | ||
81 | 14 | |||
82 | 15 | What is needed? | ||
83 | 16 | =============== | ||
84 | 17 | Software: | ||
85 | 18 | - the apt-get (>= 0.3.11.1) tool | ||
86 | 19 | - apt-utils (for apt-ftparchive) | ||
87 | 20 | - perl (>= 5.004) | ||
88 | 21 | - bash (or another POSIX shell) | ||
89 | 22 | - make | ||
90 | 23 | - mkisofs/mkhybrid (mkisofs also provides the isoinfo binary used by the | ||
91 | 24 | Pseudo Image Kit) | ||
92 | 25 | - the perl Digest::MD5 module | ||
93 | 26 | - lynx (for text version of README.html) and todos from sysutils | ||
94 | 27 | to convert docs to DOS format (although you can rip that out, too) | ||
95 | 28 | Other: | ||
96 | 29 | - lots of free space on your disks | ||
97 | 30 | - a Debian mirror, on a partition where you can write. | ||
98 | 31 | If you can't write on it then you may try to use a symlink farm, | ||
99 | 32 | but it's not the recommended way to build Debian CDs. | ||
100 | 33 | |||
101 | 34 | |||
102 | 35 | ------------------------------- | ||
103 | 36 | - GENERATING DEBIAN CD IMAGES - | ||
104 | 37 | ------------------------------- | ||
105 | 38 | |||
106 | 39 | |||
107 | 40 | For the people that don't have time, here's the quick explanation: | ||
108 | 41 | ================================================================== | ||
109 | 42 | |||
110 | 43 | Edit the CONF.sh and change the PATHs for the mirror and so on. | ||
111 | 44 | $ sensible-editor CONF.sh | ||
112 | 45 | $ . CONF.sh | ||
113 | 46 | $ make distclean | ||
114 | 47 | $ make apt-setup | ||
115 | 48 | $ make list COMPLETE=1 SIZELIMIT1=625000000 SRCSIZELIMIT=665000000 | ||
116 | 49 | $ make official_images | ||
117 | 50 | [ alternatively, if you only want binary images: | ||
118 | 51 | $ make bin-official_images ] | ||
119 | 52 | |||
120 | 53 | However, you really should consider reading further for more information. | ||
121 | 54 | You can also take a look at build_all.sh for an automatized way of building | ||
122 | 55 | CD images. | ||
123 | 56 | |||
124 | 57 | How to build a CD set - step by step | ||
125 | 58 | ==================================== | ||
126 | 59 | |||
127 | 60 | If you haven't already, change to the /usr/share/debian-cd/ directory. | ||
128 | 61 | |||
129 | 62 | The process of building a CD is composed of the following steps: | ||
130 | 63 | |||
131 | 64 | - first configure what is needed in CONF.sh and source it in your shell: | ||
132 | 65 | |||
133 | 66 | $ . CONF.sh | ||
134 | 67 | |||
135 | 68 | The exported environment variables will be used by all the | ||
136 | 69 | tools involved here (Makefiles, perl scripts, shell scripts). | ||
137 | 70 | |||
138 | 71 | If you want to build CD images for more than one arch, you will | ||
139 | 72 | have to build them one after the other (you may use a shell | ||
140 | 73 | script for this). | ||
141 | 74 | |||
142 | 75 | Note that the temporary dir must be on the same device than the | ||
143 | 76 | mirror because debian-cd uses hardlinks for generating an image | ||
144 | 77 | tree. If you can't do this, you'll have to use the symlink farm. | ||
145 | 78 | The symlink farm is explained at the end of this README. | ||
146 | 79 | |||
147 | 80 | Keep in mind that the environment variables will stay in the | ||
148 | 81 | environment after your debian-cd run, and may interfere with | ||
149 | 82 | other program using the same variables (e.g. kernel-package). | ||
150 | 83 | So if you want to be 100% safe, run debian-cd in a | ||
151 | 84 | separate shell that you can leave after you're done. | ||
152 | 85 | |||
153 | 86 | - then we clean everything that may still be there from previous runs: | ||
154 | 87 | |||
155 | 88 | $ make distclean | ||
156 | 89 | |||
157 | 90 | - now we'll check if your mirror is ok (with good Packages files): | ||
158 | 91 | |||
159 | 92 | $ make mirrorcheck | ||
160 | 93 | |||
161 | 94 | - then we initialize the temporary directory used for the build: | ||
162 | 95 | |||
163 | 96 | $ make apt-setup | ||
164 | 97 | |||
165 | 98 | - now you can decide what you want on your CDs | ||
166 | 99 | |||
167 | 100 | $ make list TASK=tasks/debian-2.2 COMPLETE=1 | ||
168 | 101 | |||
169 | 102 | or | ||
170 | 103 | |||
171 | 104 | $ make list TASK=tasks/gnome COMPLETE=0 SIZELIMIT=576716800 | ||
172 | 105 | |||
173 | 106 | or | ||
174 | 107 | |||
175 | 108 | $ export NONFREE=1; make list TASK=tasks/your-task-here COMPLETE=1 | ||
176 | 109 | |||
177 | 110 | or for something like an official image (without non-free) : | ||
178 | 111 | |||
179 | 112 | $ make list COMPLETE=1 SIZELIMIT1=576716800 | ||
180 | 113 | |||
181 | 114 | .... take a look at the file tasks/* to see the options you can have :) | ||
182 | 115 | |||
183 | 116 | You can change the behaviour of this command with the following | ||
184 | 117 | variables: | ||
185 | 118 | - if NONFREE is set, then packages from non-free will be allowed | ||
186 | 119 | (NONFREE must be exported to all sub-shells) | ||
187 | 120 | - if EXTRANONFREE is set, then non-free packages will be included | ||
188 | 121 | on an extra CD (the last CD in fact). Don't use NONFREE and | ||
189 | 122 | EXTRANONFREE at the same time ! | ||
190 | 123 | (EXTRANONFREE must be exported to all sub-shells) | ||
191 | 124 | - if COMPLETE is set, all packages that are not listed in the | ||
192 | 125 | selected task file will be included at the end | ||
193 | 126 | - if SIZELIMIT is set, it will be used as the maximum size that | ||
194 | 127 | we can put into each CD | ||
195 | 128 | - if SIZELIMIT<X> (with <X> beeing a integer) is set, it will be used | ||
196 | 129 | as the maximum size of the X'th binary CD. SIZELIMIT<X> overrides | ||
197 | 130 | SIZELIMIT ... | ||
198 | 131 | |||
199 | 132 | This target calls the target "bin-list" can be used to build only binary | ||
200 | 133 | CDs. | ||
201 | 134 | |||
202 | 135 | - it may be time to add the disks-arch stuff and to make the CDs bootable: | ||
203 | 136 | |||
204 | 137 | $ make bootable | ||
205 | 138 | |||
206 | 139 | This affects only the binary CDs. | ||
207 | 140 | |||
208 | 141 | Size calculation is imprecise for bootable CDs (usually the first CDs | ||
209 | 142 | in the set), so you may need to manually adjust SIZELIMIT* variables | ||
210 | 143 | to account for the size of the booting stuff used. | ||
211 | 144 | |||
212 | 145 | - now, we'll add the binary packages to the temporary tree: | ||
213 | 146 | |||
214 | 147 | $ make packages | ||
215 | 148 | |||
216 | 149 | - if you want to install additional files: | ||
217 | 150 | |||
218 | 151 | $ make bin-extras CD=1 ROOTSRC=/home/ftp/ DIR=goodies/wordperfect | ||
219 | 152 | $ make src-extras CD=3 ROOTSRC=/home/ftp/ DIR=goodies/kernel-2.3 | ||
220 | 153 | |||
221 | 154 | The first will copy /home/ftp/goodies/wordperfect/ to the first binary | ||
222 | 155 | CD. It will be in <root of the cd>/goodies/wordperfect/. You can call | ||
223 | 156 | make extras multiple times if you need more. | ||
224 | 157 | |||
225 | 158 | Please note that the files to be copied should be on the same partition | ||
226 | 159 | than your mirror (unless you use a symlink farm). | ||
227 | 160 | |||
228 | 161 | If you want to do customize your CD even more, you can use the hook | ||
229 | 162 | system. Read more about that below. | ||
230 | 163 | |||
231 | 164 | - We can add an md5sum.txt file on each CD to enable users to check their | ||
232 | 165 | files: | ||
233 | 166 | |||
234 | 167 | $ make md5list | ||
235 | 168 | |||
236 | 169 | This calls the targets 'bin-md5list' and 'src-md5list'. You can | ||
237 | 170 | choose to call only bin-md5list if you're building only binary images. | ||
238 | 171 | |||
239 | 172 | - now we can create the images: | ||
240 | 173 | |||
241 | 174 | $ make images | ||
242 | 175 | |||
243 | 176 | If you don't have enough space for all images, you can generate | ||
244 | 177 | only one image (of the second binary CD for example) with: | ||
245 | 178 | |||
246 | 179 | $ make bin-image CD=2 | ||
247 | 180 | |||
248 | 181 | Of course if you want to build all binary images you'll use: | ||
249 | 182 | |||
250 | 183 | $ make bin-images | ||
251 | 184 | |||
252 | 185 | Note: here we use "make images", but you could as well use | ||
253 | 186 | "make official_images" since the latter is the same as the former | ||
254 | 187 | with some dependencies on targets that you already launched | ||
255 | 188 | (make bootable packages sources). | ||
256 | 189 | |||
257 | 190 | - if you want to generate a MD5SUMS file with the md5sums of the | ||
258 | 191 | images you can do it with: | ||
259 | 192 | |||
260 | 193 | $ make imagesums | ||
261 | 194 | |||
262 | 195 | |||
263 | 196 | Official images | ||
264 | 197 | =============== | ||
265 | 198 | |||
266 | 199 | If you use make official_images you're building CD images that have | ||
267 | 200 | the same properties than official CD images but they still doesn't | ||
268 | 201 | have the name of "Official Images". The name of the images is given | ||
269 | 202 | by setting the OFFICIAL and DEBVERSION environment variable (check | ||
270 | 203 | CONF.sh). | ||
271 | 204 | |||
272 | 205 | Please never ever use the "Official" name for a CD image that you | ||
273 | 206 | built yourself. The only images that can be called "Official" are the | ||
274 | 207 | ones built by Debian itself and which are provided on Debian's | ||
275 | 208 | servers. | ||
276 | 209 | |||
277 | 210 | The default configuration shipped with this package will automatically | ||
278 | 211 | name the images "Unofficial". CD will work exactly in the same way | ||
279 | 212 | with all Debian tools, only the label is different. That means you | ||
280 | 213 | can use build_all.sh to build your "Unofficial" images without modifying | ||
281 | 214 | anything. | ||
282 | 215 | |||
283 | 216 | |||
284 | 217 | Additional targets | ||
285 | 218 | ================== | ||
286 | 219 | |||
287 | 220 | Image format | ||
288 | 221 | ------------ | ||
289 | 222 | |||
290 | 223 | You may want to generate images in ISO 9660 or raw formats. | ||
291 | 224 | |||
292 | 225 | Set the IMAGE_FORMAT variable in CONF.sh. You can choose "iso" for generation | ||
293 | 226 | of .iso (default), or "img" for generation of raw images. | ||
294 | 227 | |||
295 | 228 | |||
296 | 229 | About the symlink farm | ||
297 | 230 | ====================== | ||
298 | 231 | |||
299 | 232 | If you don't have write access on the disk where you have the mirror | ||
300 | 233 | or if for another reason hardlink cannot be used, you can try to | ||
301 | 234 | use a symlink farm. Instead of having real files, your temporary tree | ||
302 | 235 | will be filled with symlinks that mkhybrid will change into files when | ||
303 | 236 | it will build the image. You'll need to use a special options. You | ||
304 | 237 | have 2 lines of options in CONF.sh as examples. | ||
305 | 238 | |||
306 | 239 | I've never tested the symlink farm ... it may well generate unusable | ||
307 | 240 | images. Don't use it for ISO images that will used by many users. | ||
308 | 241 | |||
309 | 242 | Note that you will also need a patched mkhybrid that does support the | ||
310 | 243 | -F option. Have a look here about it : | ||
311 | 244 | http://www.chiark.greenend.org.uk/~stevem/DebianCD/ | ||
312 | 245 | |||
313 | 246 | The mkhybrid package in Debian does support this -F option since | ||
314 | 247 | potato (Debian 2.2). | ||
315 | diff --git a/build_all.sh b/build_all.sh | |||
316 | index b3cedc3..8a7686d 100755 | |||
317 | --- a/build_all.sh | |||
318 | +++ b/build_all.sh | |||
319 | @@ -1,6 +1,6 @@ | |||
320 | 1 | #!/bin/sh | 1 | #!/bin/sh |
321 | 2 | 2 | ||
323 | 3 | # Script to build everything possible : sources and binaries for all archs | 3 | # Script to build images for all archs |
324 | 4 | 4 | ||
325 | 5 | . ./CONF.sh | 5 | . ./CONF.sh |
326 | 6 | 6 | ||
327 | @@ -48,11 +48,10 @@ do | |||
328 | 48 | fi | 48 | fi |
329 | 49 | SIZE_ARGS="$SIZE_ARGS SIZELIMIT${CD}=$FULL_SIZE" | 49 | SIZE_ARGS="$SIZE_ARGS SIZELIMIT${CD}=$FULL_SIZE" |
330 | 50 | done | 50 | done |
331 | 51 | FULL_SIZE=`echo "($DEFSRCSIZE - $size) * 1024 * 1024" | bc` | ||
332 | 52 | echo " ... building the images" | 51 | echo " ... building the images" |
334 | 53 | make bin-list $SIZE_ARGS SRCSIZELIMIT=$FULL_SIZE | 52 | make bin-list $SIZE_ARGS |
335 | 54 | export OUT=$TMP_OUT/$FULLARCH; mkdir -p $OUT | 53 | export OUT=$TMP_OUT/$FULLARCH; mkdir -p $OUT |
337 | 55 | make bin-official_images $SIZE_ARGS SRCSIZELIMIT=$FULL_SIZE | 54 | make bin-official_images $SIZE_ARGS |
338 | 56 | if [ $? -gt 0 ]; then | 55 | if [ $? -gt 0 ]; then |
339 | 57 | echo "ERROR WHILE BUILDING OFFICIAL IMAGES !!" >&2 | 56 | echo "ERROR WHILE BUILDING OFFICIAL IMAGES !!" >&2 |
340 | 58 | if [ "$ATTEMPT_FALLBACK" = "yes" ]; then | 57 | if [ "$ATTEMPT_FALLBACK" = "yes" ]; then |
looks like there are still some references to 'src' and 'source' here that ought to be cleaned up as part of this merge.
$ grep -li src * 2>/dev/null
Makefile
README
$