· 9 years ago · Jan 16, 2017, 02:18 PM
1#!ipxe
2
3
4# Figure out if client is 64-bit capable
5cpuid --ext 29 && set cpuarch x86_64 || set cpuarch i686
6
7# allow only trusted images
8imgtrust
9
10# initial options
11set bootarch ${cpuarch}
12set release 2017.01.01
13set mirrorurl
14set extrabootoptions ip=dhcp net.ifnames=0
15set countrycode
16
17:main
18menu Arch Linux Netboot
19item --gap Settings
20item set_architecture Architecture: ${bootarch}
21item set_release Release: ${release}
22isset ${mirrorurl} && item set_mirror Mirror: ${mirrorurl} || item set_mirror Choose a mirror
23item set_options Boot options: ${extrabootoptions}
24item
25isset ${mirrorurl} && item boot Boot Arch Linux || item --gap Boot Arch Linux
26item shell Drop to iPXE shell
27item reboot Reboot
28item exit Exit iPXE
29isset ${mirrorurl} && choose --default set_options selected || choose --default set_mirror selected || goto shell
30goto ${selected} || goto main
31
32:shell
33echo Type 'exit' to get the back to the menu
34shell
35goto main
36
37:reboot
38reboot
39
40:exit
41exit
42
43:set_architecture
44menu Arch Linux Netboot: Select Architecture
45item back back
46item
47item --gap Available architectures:
48iseq ${cpuarch} x86_64 && item x86_64 x64_64 ||
49item i686 i686
50choose selected || goto main
51iseq ${selected} back && goto main ||
52set bootarch ${selected}
53goto main
54
55:set_release
56menu Arch Linux Netboot: Select Release
57item back back
58item
59item --gap Available releases:
60item 2017.01.01 2017.01.01
61item 2016.12.01 2016.12.01
62item 2016.11.01 2016.11.01
63
64choose selected || goto main
65iseq ${selected} back && goto main ||
66set release ${selected}
67goto main
68
69:set_mirror
70goto select_mirror_country
71
72:select_mirror_country
73menu Arch Linux Netboot: Select Mirror
74item back back
75item
76item --gap Custom Configuration:
77item custom Enter mirror URL
78item
79item --gap Select Mirror By Country:
80
81
82item 00 Global
83
84
85
86item AU Australia
87
88
89
90item AT Austria
91
92
93
94item BY Belarus
95
96
97
98item BE Belgium
99
100
101
102item BA Bosnia and Herzegovina
103
104
105
106item BR Brazil
107
108
109
110item BG Bulgaria
111
112
113
114item CA Canada
115
116
117
118item CL Chile
119
120
121
122item CN China
123
124
125
126item CO Colombia
127
128
129
130item HR Croatia
131
132
133
134item CZ Czech Republic
135
136
137
138item DK Denmark
139
140
141
142item EC Ecuador
143
144
145
146item FI Finland
147
148
149
150item FR France
151
152
153
154item DE Germany
155
156
157
158item GR Greece
159
160
161
162item HK Hong Kong
163
164
165
166item HU Hungary
167
168
169
170item IS Iceland
171
172
173
174item IN India
175
176
177
178item ID Indonesia
179
180
181
182item IR Iran
183
184
185
186item IE Ireland
187
188
189
190item IL Israel
191
192
193
194item IT Italy
195
196
197
198item JP Japan
199
200
201
202item KZ Kazakhstan
203
204
205
206item LV Latvia
207
208
209
210item LT Lithuania
211
212
213
214item LU Luxembourg
215
216
217
218item MK Macedonia
219
220
221
222item NL Netherlands
223
224
225
226item NC New Caledonia
227
228
229
230item NO Norway
231
232
233
234item PH Philippines
235
236
237
238item PL Poland
239
240
241
242item PT Portugal
243
244
245
246item QA Qatar
247
248
249
250item RO Romania
251
252
253
254item RU Russia
255
256
257
258item RS Serbia
259
260
261
262item SG Singapore
263
264
265
266item SK Slovakia
267
268
269
270item SI Slovenia
271
272
273
274item ZA South Africa
275
276
277
278item KR South Korea
279
280
281
282item ES Spain
283
284
285
286item SE Sweden
287
288
289
290item CH Switzerland
291
292
293
294item TW Taiwan
295
296
297
298item TH Thailand
299
300
301
302item TR Turkey
303
304
305
306item UA Ukraine
307
308
309
310item GB United Kingdom
311
312
313
314item US United States
315
316
317
318item VN Vietnam
319
320
321isset ${countrycode} && choose --default ${countrycode} selected || choose selected || goto main
322iseq ${selected} back && goto main ||
323iseq ${selected} custom && goto enter_mirror_url ||
324set countrycode ${selected}
325goto select_mirror_url
326
327:enter_mirror_url
328set countrycode
329echo Enter the mirror URL including the trailing slash.
330echo Example: http://some.host/archlinux/
331echo
332echo -n Mirror URL: ${} && read mirrorurl || goto select_mirror_country
333goto main
334
335:select_mirror_url
336goto select_mirror_url_${countrycode} || goto select_mirror_country
337
338
339
340:select_mirror_url_00
341set countryname Global
342
343menu Arch Linux Netboot: Select Mirror
344item back back
345item
346item --gap Available mirrors in ${countryname}
347item http://mirrors.evowise.com/archlinux/ evowise.com
348item http://mirror.rackspace.com/archlinux/ rackspace.com
349
350choose selected || goto select_mirror_country
351iseq ${selected} back && goto select_mirror_country ||
352set mirrorurl ${selected}
353goto main
354
355
356:select_mirror_url_AU
357set countryname Australia
358
359menu Arch Linux Netboot: Select Mirror
360item back back
361item
362item --gap Available mirrors in ${countryname}
363item http://archlinux.mirror.digitalpacific.com.au/ digitalpacific.com.au
364item http://ftp.iinet.net.au/pub/archlinux/ iinet.net.au
365item http://mirror.internode.on.net/pub/archlinux/ internode.on.net
366item http://ftp.swin.edu.au/archlinux/ swin.edu.au
367item http://archlinux.uberglobalmirror.com/ uber.com.au
368
369choose selected || goto select_mirror_country
370iseq ${selected} back && goto select_mirror_country ||
371set mirrorurl ${selected}
372goto main
373
374
375:select_mirror_url_AT
376set countryname Austria
377
378menu Arch Linux Netboot: Select Mirror
379item back back
380item
381item --gap Available mirrors in ${countryname}
382item http://mirror.digitalnova.at/archlinux/ digitalnova.at
383item http://mirror.easyname.at/archlinux/ easyname.at
384item http://mirror1.htu.tugraz.at/archlinux/ htu.tugraz.at
385
386choose selected || goto select_mirror_country
387iseq ${selected} back && goto select_mirror_country ||
388set mirrorurl ${selected}
389goto main
390
391
392:select_mirror_url_BY
393set countryname Belarus
394
395menu Arch Linux Netboot: Select Mirror
396item back back
397item
398item --gap Available mirrors in ${countryname}
399item http://ftp.byfly.by/pub/archlinux/ byfly.by
400item http://mirror.datacenter.by/pub/archlinux/ datacenter.by
401
402choose selected || goto select_mirror_country
403iseq ${selected} back && goto select_mirror_country ||
404set mirrorurl ${selected}
405goto main
406
407
408:select_mirror_url_BE
409set countryname Belgium
410
411menu Arch Linux Netboot: Select Mirror
412item back back
413item
414item --gap Available mirrors in ${countryname}
415item http://archlinux.cu.be/ archlinux.cu.be
416item http://archlinux.mirror.kangaroot.net/ kangaroot.net
417
418choose selected || goto select_mirror_country
419iseq ${selected} back && goto select_mirror_country ||
420set mirrorurl ${selected}
421goto main
422
423
424:select_mirror_url_BA
425set countryname Bosnia and Herzegovina
426
427menu Arch Linux Netboot: Select Mirror
428item back back
429item
430item --gap Available mirrors in ${countryname}
431item http://burek.archlinux.ba/ global.net.ba
432item http://archlinux.mirror.ba/ mirror.ba
433
434choose selected || goto select_mirror_country
435iseq ${selected} back && goto select_mirror_country ||
436set mirrorurl ${selected}
437goto main
438
439
440:select_mirror_url_BR
441set countryname Brazil
442
443menu Arch Linux Netboot: Select Mirror
444item back back
445item
446item --gap Available mirrors in ${countryname}
447item http://archlinux-br.mirror.host1plus.com/ archlinux-br.mirror.host1plus.com
448item http://archlinux.c3sl.ufpr.br/ c3sl.ufpr.br
449item http://linorg.usp.br/archlinux/ linorg.usp.br
450item http://pet.inf.ufsc.br/mirrors/archlinux/ pet.inf.ufsc.br
451item http://archlinux.pop-es.rnp.br/ pop-es.rnp.br
452
453choose selected || goto select_mirror_country
454iseq ${selected} back && goto select_mirror_country ||
455set mirrorurl ${selected}
456goto main
457
458
459:select_mirror_url_BG
460set countryname Bulgaria
461
462menu Arch Linux Netboot: Select Mirror
463item back back
464item
465item --gap Available mirrors in ${countryname}
466item http://mirror.telepoint.bg/archlinux/ telepoint.bg
467item http://mirrors.uni-plovdiv.net/archlinux/ uni-plovdiv.net
468
469choose selected || goto select_mirror_country
470iseq ${selected} back && goto select_mirror_country ||
471set mirrorurl ${selected}
472goto main
473
474
475:select_mirror_url_CA
476set countryname Canada
477
478menu Arch Linux Netboot: Select Mirror
479item back back
480item
481item --gap Available mirrors in ${countryname}
482item http://mirror.cedille.club/archlinux/ cedille.club
483item http://mirror.csclub.uwaterloo.ca/archlinux/ csclub.uwaterloo.ca
484item http://mirror.frgl.pw/archlinux/ frgl.pw
485item http://mirror.its.dal.ca/archlinux/ its.dal.ca
486item http://muug.ca/mirror/archlinux/ muug.ca
487item http://archlinux.mirror.rafal.ca/ rafal.ca
488
489choose selected || goto select_mirror_country
490iseq ${selected} back && goto select_mirror_country ||
491set mirrorurl ${selected}
492goto main
493
494
495:select_mirror_url_CL
496set countryname Chile
497
498menu Arch Linux Netboot: Select Mirror
499item back back
500item
501item --gap Available mirrors in ${countryname}
502item http://mirror.archlinux.cl/ archlinux.cl
503
504choose selected || goto select_mirror_country
505iseq ${selected} back && goto select_mirror_country ||
506set mirrorurl ${selected}
507goto main
508
509
510:select_mirror_url_CN
511set countryname China
512
513menu Arch Linux Netboot: Select Mirror
514item back back
515item
516item --gap Available mirrors in ${countryname}
517item http://mirrors.163.com/archlinux/ 163.com
518item http://mirrors.cqu.edu.cn/archlinux/ cqu.edu.cn
519item http://mirror.lzu.edu.cn/archlinux/ lzu.edu.cn
520item http://mirrors.neusoft.edu.cn/archlinux/ neusoft.edu.cn
521item http://mirrors.tuna.tsinghua.edu.cn/archlinux/ tuna.tsinghua.edu.cn
522item http://mirrors.ustc.edu.cn/archlinux/ ustc.edu.cn
523item http://mirrors.xjtu.edu.cn/archlinux/ xjtu.edu.cn
524item http://mirrors.zju.edu.cn/archlinux/ zju.edu.cn
525
526choose selected || goto select_mirror_country
527iseq ${selected} back && goto select_mirror_country ||
528set mirrorurl ${selected}
529goto main
530
531
532:select_mirror_url_CO
533set countryname Colombia
534
535menu Arch Linux Netboot: Select Mirror
536item back back
537item
538item --gap Available mirrors in ${countryname}
539item http://mirror.edatel.net.co/archlinux/ edatel.net.co
540item http://www.laqee.unal.edu.co/archlinux/ unal.edu.co
541
542choose selected || goto select_mirror_country
543iseq ${selected} back && goto select_mirror_country ||
544set mirrorurl ${selected}
545goto main
546
547
548:select_mirror_url_HR
549set countryname Croatia
550
551menu Arch Linux Netboot: Select Mirror
552item back back
553item
554item --gap Available mirrors in ${countryname}
555item http://archlinux.iskon.hr/ iskon.hr
556
557choose selected || goto select_mirror_country
558iseq ${selected} back && goto select_mirror_country ||
559set mirrorurl ${selected}
560goto main
561
562
563:select_mirror_url_CZ
564set countryname Czech Republic
565
566menu Arch Linux Netboot: Select Mirror
567item back back
568item
569item --gap Available mirrors in ${countryname}
570item http://mirror.dkm.cz/archlinux/ dkm.cz
571item http://ftp.linux.cz/pub/linux/arch/ fi.muni.cz
572item http://ftp.fi.muni.cz/pub/linux/arch/ fi.muni.cz
573item http://gluttony.sin.cvut.cz/arch/ gluttony.sin.cvut.cz
574item http://mirrors.nic.cz/archlinux/ nic.cz
575item http://ftp.sh.cvut.cz/arch/ sh.cvut.cz
576item http://mirror.vpsfree.cz/archlinux/ vpsfree.cz
577
578choose selected || goto select_mirror_country
579iseq ${selected} back && goto select_mirror_country ||
580set mirrorurl ${selected}
581goto main
582
583
584:select_mirror_url_DK
585set countryname Denmark
586
587menu Arch Linux Netboot: Select Mirror
588item back back
589item
590item --gap Available mirrors in ${countryname}
591item http://mirrors.dotsrc.org/archlinux/ dotsrc.org
592item http://ftp.klid.dk/ftp/archlinux/ klid.dk
593item http://mirror.one.com/archlinux/ one.com
594
595choose selected || goto select_mirror_country
596iseq ${selected} back && goto select_mirror_country ||
597set mirrorurl ${selected}
598goto main
599
600
601:select_mirror_url_EC
602set countryname Ecuador
603
604menu Arch Linux Netboot: Select Mirror
605item back back
606item
607item --gap Available mirrors in ${countryname}
608item http://mirror.cedia.org.ec/archlinux/ cedia.org.ec
609item http://mirror.espoch.edu.ec/archlinux/ espoch.edu.ec
610item http://mirror.uta.edu.ec/archlinux/ uta.edu.ec
611
612choose selected || goto select_mirror_country
613iseq ${selected} back && goto select_mirror_country ||
614set mirrorurl ${selected}
615goto main
616
617
618:select_mirror_url_FI
619set countryname Finland
620
621menu Arch Linux Netboot: Select Mirror
622item back back
623item
624item --gap Available mirrors in ${countryname}
625item http://arch.mirror.far.fi/ far.fi
626
627choose selected || goto select_mirror_country
628iseq ${selected} back && goto select_mirror_country ||
629set mirrorurl ${selected}
630goto main
631
632
633:select_mirror_url_FR
634set countryname France
635
636menu Arch Linux Netboot: Select Mirror
637item back back
638item
639item --gap Available mirrors in ${countryname}
640item http://archlinux.de-labrusse.fr/ archlinux.de-labrusse.fr
641item http://mirror.archlinux.ikoula.com/archlinux/ archlinux.ikoula.com
642item http://archlinux.vi-di.fr/ archlinux.vi-di.fr
643item http://mirror.armbrust.me/archlinux/ armbrust.me
644item http://mirror.gerhard.re/archlinux/ gerhard.re
645item http://mirror.ibcp.fr/pub/archlinux/ ibcp.fr
646item http://mirror.lastmikoi.net/archlinux/ lastmikoi.net
647item http://archlinux.mailtunnel.eu/ mailtunnel.eu
648item http://mir.archlinux.fr/ mir.archlinux.fr
649item http://arch.nimukaito.net/ nimukaito.net
650item http://archlinux.mirrors.ovh.net/archlinux/ ovh.net
651item http://archlinux.mirror.pkern.at/ pkern.at
652item http://archlinux.polymorf.fr/ polymorf.fr
653item http://arch.static.lu/ static.lu
654item http://arch.tamcore.eu/ tamcore.eu
655item http://mirrors.theblazehen.com/archlinux/ theblazehen.com
656item http://mirror.tyborek.pl/arch/ tyborek.pl
657item http://ftp.u-strasbg.fr/linux/distributions/archlinux/ u-strasbg.fr
658item http://arch.yourlabs.org/ yourlabs.org
659
660choose selected || goto select_mirror_country
661iseq ${selected} back && goto select_mirror_country ||
662set mirrorurl ${selected}
663goto main
664
665
666:select_mirror_url_DE
667set countryname Germany
668
669menu Arch Linux Netboot: Select Mirror
670item back back
671item
672item --gap Available mirrors in ${countryname}
673item http://mirror.23media.de/archlinux/ 23media.de
674item http://artfiles.org/archlinux.org/ artfiles.org
675item http://mirror5.bastelfreak.org/archlinux/ bastelfreak.org
676item http://mirrors.cicku.me/archlinux/ cicku.me
677item http://mirror.euserv.net/linux/archlinux/ euserv.net
678item http://mirror.f4st.host/archlinux/ f4st.host
679item http://ftp.fau.de/archlinux/ fau.de
680item http://mirror.fluxent.de/archlinux/ fluxent.de
681item http://mirror.gnomus.de/ gnomus.de
682item http://www.gutscheindrache.com/mirror/archlinux/ gutscheindrache.com
683item http://ftp.gwdg.de/pub/linux/archlinux/ gwdg.de
684item http://mirror.hactar.xyz/ hactar.xyz
685item http://archlinux.honkgong.info/ honkgong.info
686item http://ftp.hosteurope.de/mirror/ftp.archlinux.org/ hosteurope.de
687item http://ftp-stud.hs-esslingen.de/pub/Mirrors/archlinux/ hs-esslingen.de
688item http://archlinux.mirror.iphh.net/ iphh.net
689item http://arch.jensgutermuth.de/ jensgutermuth.de
690item http://mirror.js-webcoding.de/pub/archlinux/ js-webcoding.de
691item http://k42.ch/mirror/archlinux/ k42.ch
692item http://mirror.de.leaseweb.net/archlinux/ leaseweb.net
693item http://mirror.loli.forsale/arch/ loli.forsale
694item http://mirror.metalgamer.eu/archlinux/ metalgamer.eu
695item http://mirror.michael-eckert.net/archlinux/ michael-eckert.net
696item http://mirrors.n-ix.net/archlinux/ n-ix.net
697item http://mirror.netcologne.de/archlinux/ netcologne.de
698item http://mirrors.niyawe.de/archlinux/ niyawe.de
699item http://mirror.pseudoform.org/ pseudoform.org
700item http://ftp.halifax.rwth-aachen.de/archlinux/ rwth-aachen.de
701item http://linux.rz.rub.de/archlinux/ rz.rub.de
702item http://mirror.selfnet.de/archlinux/ selfnet.de
703item http://ftp.spline.inf.fu-berlin.de/mirrors/archlinux/ spline.inf.fu-berlin.de
704item http://archlinux.thaller.ws/ thaller.ws
705item http://archlinux.thelinuxnetworx.rocks/ thelinuxnetworx.rocks
706item http://ftp.tu-chemnitz.de/pub/linux/archlinux/ tu-chemnitz.de
707item http://mirror.ubrco.de/archlinux/ ubrco.de
708item http://ftp.uni-bayreuth.de/linux/archlinux/ uni-bayreuth.de
709item http://ftp.uni-hannover.de/archlinux/ uni-hannover.de
710item http://ftp.uni-kl.de/pub/linux/archlinux/ uni-kl.de
711item http://mirror.united-gameserver.de/archlinux/ united-gameserver.de
712item http://mirror.vfn-nrw.de/archlinux/ vfn-nrw.de
713
714choose selected || goto select_mirror_country
715iseq ${selected} back && goto select_mirror_country ||
716set mirrorurl ${selected}
717goto main
718
719
720:select_mirror_url_GR
721set countryname Greece
722
723menu Arch Linux Netboot: Select Mirror
724item back back
725item
726item --gap Available mirrors in ${countryname}
727item http://ftp.cc.uoc.gr/mirrors/linux/archlinux/ cc.uoc.gr
728item http://foss.aueb.gr/mirrors/linux/archlinux/ foss.aueb.gr
729item http://ftp.ntua.gr/pub/linux/archlinux/ ntua.gr
730item http://ftp.otenet.gr/linux/archlinux/ otenet.gr
731
732choose selected || goto select_mirror_country
733iseq ${selected} back && goto select_mirror_country ||
734set mirrorurl ${selected}
735goto main
736
737
738:select_mirror_url_HK
739set countryname Hong Kong
740
741menu Arch Linux Netboot: Select Mirror
742item back back
743item
744item --gap Available mirrors in ${countryname}
745item http://arch-mirror.wtako.net/ wtako.net
746
747choose selected || goto select_mirror_country
748iseq ${selected} back && goto select_mirror_country ||
749set mirrorurl ${selected}
750goto main
751
752
753:select_mirror_url_HU
754set countryname Hungary
755
756menu Arch Linux Netboot: Select Mirror
757item back back
758item
759item --gap Available mirrors in ${countryname}
760item http://ftp.energia.mta.hu/pub/mirrors/ftp.archlinux.org/ energia.mta.hu
761
762choose selected || goto select_mirror_country
763iseq ${selected} back && goto select_mirror_country ||
764set mirrorurl ${selected}
765goto main
766
767
768:select_mirror_url_IS
769set countryname Iceland
770
771menu Arch Linux Netboot: Select Mirror
772item back back
773item
774item --gap Available mirrors in ${countryname}
775item http://mirror.system.is/arch/ system.is
776
777choose selected || goto select_mirror_country
778iseq ${selected} back && goto select_mirror_country ||
779set mirrorurl ${selected}
780goto main
781
782
783:select_mirror_url_IN
784set countryname India
785
786menu Arch Linux Netboot: Select Mirror
787item back back
788item
789item --gap Available mirrors in ${countryname}
790item http://mirror.cse.iitk.ac.in/archlinux/ cse.iitk.ac.in
791item http://ftp.iitm.ac.in/archlinux/ iitm.ac.in
792
793choose selected || goto select_mirror_country
794iseq ${selected} back && goto select_mirror_country ||
795set mirrorurl ${selected}
796goto main
797
798
799:select_mirror_url_ID
800set countryname Indonesia
801
802menu Arch Linux Netboot: Select Mirror
803item back back
804item
805item --gap Available mirrors in ${countryname}
806item http://mirror.devilzc0de.org/archlinux/ devilzc0de.org
807item http://mirror.poliwangi.ac.id/archlinux/ poliwangi.ac.id
808item http://suro.ubaya.ac.id/archlinux/ suro.ubaya.ac.id
809
810choose selected || goto select_mirror_country
811iseq ${selected} back && goto select_mirror_country ||
812set mirrorurl ${selected}
813goto main
814
815
816:select_mirror_url_IR
817set countryname Iran
818
819menu Arch Linux Netboot: Select Mirror
820item back back
821item
822item --gap Available mirrors in ${countryname}
823item http://repo.sadjad.ac.ir/arch/ sadjad.ac.ir
824
825choose selected || goto select_mirror_country
826iseq ${selected} back && goto select_mirror_country ||
827set mirrorurl ${selected}
828goto main
829
830
831:select_mirror_url_IE
832set countryname Ireland
833
834menu Arch Linux Netboot: Select Mirror
835item back back
836item
837item --gap Available mirrors in ${countryname}
838item http://ftp.heanet.ie/mirrors/ftp.archlinux.org/ heanet.ie
839
840choose selected || goto select_mirror_country
841iseq ${selected} back && goto select_mirror_country ||
842set mirrorurl ${selected}
843goto main
844
845
846:select_mirror_url_IL
847set countryname Israel
848
849menu Arch Linux Netboot: Select Mirror
850item back back
851item
852item --gap Available mirrors in ${countryname}
853item http://mirror.isoc.org.il/pub/archlinux/ isoc.org.il
854
855choose selected || goto select_mirror_country
856iseq ${selected} back && goto select_mirror_country ||
857set mirrorurl ${selected}
858goto main
859
860
861:select_mirror_url_IT
862set countryname Italy
863
864menu Arch Linux Netboot: Select Mirror
865item back back
866item
867item --gap Available mirrors in ${countryname}
868item http://archlinux.openlabto.org/archlinux/ archlinux.openlabto.org
869item http://mi.mirror.garr.it/mirrors/archlinux/ garr.it
870item http://mirrors.prometeus.net/archlinux/ prometeus.net
871item http://archlinux.students.cs.unibo.it/ students.cs.unibo.it
872
873choose selected || goto select_mirror_country
874iseq ${selected} back && goto select_mirror_country ||
875set mirrorurl ${selected}
876goto main
877
878
879:select_mirror_url_JP
880set countryname Japan
881
882menu Arch Linux Netboot: Select Mirror
883item back back
884item
885item --gap Available mirrors in ${countryname}
886item http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/ ftp.tsukuba.wide.ad.jp
887item http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/ jaist.ac.jp
888
889choose selected || goto select_mirror_country
890iseq ${selected} back && goto select_mirror_country ||
891set mirrorurl ${selected}
892goto main
893
894
895:select_mirror_url_KZ
896set countryname Kazakhstan
897
898menu Arch Linux Netboot: Select Mirror
899item back back
900item
901item --gap Available mirrors in ${countryname}
902item http://mirror.neolabs.kz/archlinux/ neolabs.kz
903
904choose selected || goto select_mirror_country
905iseq ${selected} back && goto select_mirror_country ||
906set mirrorurl ${selected}
907goto main
908
909
910:select_mirror_url_LV
911set countryname Latvia
912
913menu Arch Linux Netboot: Select Mirror
914item back back
915item
916item --gap Available mirrors in ${countryname}
917item http://archlinux.koyanet.lv/archlinux/ koyanet.lv
918
919choose selected || goto select_mirror_country
920iseq ${selected} back && goto select_mirror_country ||
921set mirrorurl ${selected}
922goto main
923
924
925:select_mirror_url_LT
926set countryname Lithuania
927
928menu Arch Linux Netboot: Select Mirror
929item back back
930item
931item --gap Available mirrors in ${countryname}
932item http://mirrors.atviras.lt/archlinux/ atviras.lt
933item http://arch.relevant.lt/ relevant.lt
934
935choose selected || goto select_mirror_country
936iseq ${selected} back && goto select_mirror_country ||
937set mirrorurl ${selected}
938goto main
939
940
941:select_mirror_url_LU
942set countryname Luxembourg
943
944menu Arch Linux Netboot: Select Mirror
945item back back
946item
947item --gap Available mirrors in ${countryname}
948item http://archlinux.mirror.root.lu/ root.lu
949
950choose selected || goto select_mirror_country
951iseq ${selected} back && goto select_mirror_country ||
952set mirrorurl ${selected}
953goto main
954
955
956:select_mirror_url_MK
957set countryname Macedonia
958
959menu Arch Linux Netboot: Select Mirror
960item back back
961item
962item --gap Available mirrors in ${countryname}
963item http://arch.softver.org.mk/archlinux/ arch.softver.org.mk
964item http://mirror.t-home.mk/archlinux/ t-home.mk
965
966choose selected || goto select_mirror_country
967iseq ${selected} back && goto select_mirror_country ||
968set mirrorurl ${selected}
969goto main
970
971
972:select_mirror_url_NL
973set countryname Netherlands
974
975menu Arch Linux Netboot: Select Mirror
976item back back
977item
978item --gap Available mirrors in ${countryname}
979item http://arch.apt-get.eu/ arch.apt-get.eu
980item http://mirror.i3d.net/pub/archlinux/ i3d.net
981item http://mirror.nl.leaseweb.net/archlinux/ leaseweb.net
982item http://ftp.nluug.nl/os/Linux/distr/archlinux/ nluug.nl
983item http://ftp.snt.utwente.nl/pub/os/linux/archlinux/ snt.utwente.nl
984item http://archlinux.mirror.wearetriple.com/ wearetriple.com
985
986choose selected || goto select_mirror_country
987iseq ${selected} back && goto select_mirror_country ||
988set mirrorurl ${selected}
989goto main
990
991
992:select_mirror_url_NC
993set countryname New Caledonia
994
995menu Arch Linux Netboot: Select Mirror
996item back back
997item
998item --gap Available mirrors in ${countryname}
999item http://mirror.lagoon.nc/pub/archlinux/ lagoon.nc
1000item http://archlinux.nautile.nc/archlinux/ nautile.nc
1001
1002choose selected || goto select_mirror_country
1003iseq ${selected} back && goto select_mirror_country ||
1004set mirrorurl ${selected}
1005goto main
1006
1007
1008:select_mirror_url_NO
1009set countryname Norway
1010
1011menu Arch Linux Netboot: Select Mirror
1012item back back
1013item
1014item --gap Available mirrors in ${countryname}
1015item http://mirror.archlinux.no/ archlinux.no
1016item http://archlinux.uib.no/ archlinux.uib.no
1017item http://mirror.neuf.no/archlinux/ neuf.no
1018
1019choose selected || goto select_mirror_country
1020iseq ${selected} back && goto select_mirror_country ||
1021set mirrorurl ${selected}
1022goto main
1023
1024
1025:select_mirror_url_PH
1026set countryname Philippines
1027
1028menu Arch Linux Netboot: Select Mirror
1029item back back
1030item
1031item --gap Available mirrors in ${countryname}
1032item http://mirror.rise.ph/archlinux/ rise.ph
1033
1034choose selected || goto select_mirror_country
1035iseq ${selected} back && goto select_mirror_country ||
1036set mirrorurl ${selected}
1037goto main
1038
1039
1040:select_mirror_url_PL
1041set countryname Poland
1042
1043menu Arch Linux Netboot: Select Mirror
1044item back back
1045item
1046item --gap Available mirrors in ${countryname}
1047item http://mirror.chmuri.net/archmirror/ chmuri.net
1048item http://arch.midov.pl/arch/ midov.pl
1049item http://mirror.onet.pl/pub/mirrors/archlinux/ onet.pl
1050item http://piotrkosoft.net/pub/mirrors/ftp.archlinux.org/ piotrkosoft.net
1051item http://ftp.vectranet.pl/archlinux/ vectranet.pl
1052
1053choose selected || goto select_mirror_country
1054iseq ${selected} back && goto select_mirror_country ||
1055set mirrorurl ${selected}
1056goto main
1057
1058
1059:select_mirror_url_PT
1060set countryname Portugal
1061
1062menu Arch Linux Netboot: Select Mirror
1063item back back
1064item
1065item --gap Available mirrors in ${countryname}
1066item http://ftp.rnl.tecnico.ulisboa.pt/pub/archlinux/ rnl.tecnico.ulisboa.pt
1067
1068choose selected || goto select_mirror_country
1069iseq ${selected} back && goto select_mirror_country ||
1070set mirrorurl ${selected}
1071goto main
1072
1073
1074:select_mirror_url_QA
1075set countryname Qatar
1076
1077menu Arch Linux Netboot: Select Mirror
1078item back back
1079item
1080item --gap Available mirrors in ${countryname}
1081item http://mirror.qnren.qa/archlinux/ qnren.qa
1082
1083choose selected || goto select_mirror_country
1084iseq ${selected} back && goto select_mirror_country ||
1085set mirrorurl ${selected}
1086goto main
1087
1088
1089:select_mirror_url_RO
1090set countryname Romania
1091
1092menu Arch Linux Netboot: Select Mirror
1093item back back
1094item
1095item --gap Available mirrors in ${countryname}
1096item http://mirror.archlinux.ro/archlinux/ archlinux.ro
1097item http://archlinux.mirrors.linux.ro/ linux.ro
1098item http://mirrors.m247.ro/archlinux/ m247.ro
1099
1100choose selected || goto select_mirror_country
1101iseq ${selected} back && goto select_mirror_country ||
1102set mirrorurl ${selected}
1103goto main
1104
1105
1106:select_mirror_url_RU
1107set countryname Russia
1108
1109menu Arch Linux Netboot: Select Mirror
1110item back back
1111item
1112item --gap Available mirrors in ${countryname}
1113item http://mirror.aur.rocks/ aur.rocks
1114item http://mirror.rol.ru/archlinux/ rol.ru
1115item http://mirror.yandex.ru/archlinux/ yandex.ru
1116
1117choose selected || goto select_mirror_country
1118iseq ${selected} back && goto select_mirror_country ||
1119set mirrorurl ${selected}
1120goto main
1121
1122
1123:select_mirror_url_RS
1124set countryname Serbia
1125
1126menu Arch Linux Netboot: Select Mirror
1127item back back
1128item
1129item --gap Available mirrors in ${countryname}
1130item http://mirror.pmf.kg.ac.rs/archlinux/ pmf.kg.ac.rs
1131
1132choose selected || goto select_mirror_country
1133iseq ${selected} back && goto select_mirror_country ||
1134set mirrorurl ${selected}
1135goto main
1136
1137
1138:select_mirror_url_SG
1139set countryname Singapore
1140
1141menu Arch Linux Netboot: Select Mirror
1142item back back
1143item
1144item --gap Available mirrors in ${countryname}
1145item http://mirror.0x.sg/archlinux/ 0x.sg
1146item http://download.nus.edu.sg/mirror/arch/ download.nus.edu.sg
1147
1148choose selected || goto select_mirror_country
1149iseq ${selected} back && goto select_mirror_country ||
1150set mirrorurl ${selected}
1151goto main
1152
1153
1154:select_mirror_url_SK
1155set countryname Slovakia
1156
1157menu Arch Linux Netboot: Select Mirror
1158item back back
1159item
1160item --gap Available mirrors in ${countryname}
1161item http://mirror.lnx.sk/pub/linux/archlinux/ lnx.sk
1162item http://tux.rainside.sk/archlinux/ rainside.sk
1163
1164choose selected || goto select_mirror_country
1165iseq ${selected} back && goto select_mirror_country ||
1166set mirrorurl ${selected}
1167goto main
1168
1169
1170:select_mirror_url_SI
1171set countryname Slovenia
1172
1173menu Arch Linux Netboot: Select Mirror
1174item back back
1175item
1176item --gap Available mirrors in ${countryname}
1177item http://archimonde.ts.si/archlinux/ archimonde.ts.si
1178
1179choose selected || goto select_mirror_country
1180iseq ${selected} back && goto select_mirror_country ||
1181set mirrorurl ${selected}
1182goto main
1183
1184
1185:select_mirror_url_ZA
1186set countryname South Africa
1187
1188menu Arch Linux Netboot: Select Mirror
1189item back back
1190item
1191item --gap Available mirrors in ${countryname}
1192item http://archlinux-za.mirror.host1plus.com/ archlinux-za.mirror.host1plus.com
1193item http://ftp.wa.co.za/pub/archlinux/ ftp.wa.co.za
1194item http://mirror.is.co.za/mirror/archlinux.org/ is.co.za
1195item http://mirror.wbs.co.za/archlinux/ wbs.co.za
1196
1197choose selected || goto select_mirror_country
1198iseq ${selected} back && goto select_mirror_country ||
1199set mirrorurl ${selected}
1200goto main
1201
1202
1203:select_mirror_url_KR
1204set countryname South Korea
1205
1206menu Arch Linux Netboot: Select Mirror
1207item back back
1208item
1209item --gap Available mirrors in ${countryname}
1210item http://ftp.kaist.ac.kr/ArchLinux/ ftp.kaist.ac.kr
1211item http://mirror.premi.st/archlinux/ premi.st
1212
1213choose selected || goto select_mirror_country
1214iseq ${selected} back && goto select_mirror_country ||
1215set mirrorurl ${selected}
1216goto main
1217
1218
1219:select_mirror_url_ES
1220set countryname Spain
1221
1222menu Arch Linux Netboot: Select Mirror
1223item back back
1224item
1225item --gap Available mirrors in ${countryname}
1226item http://osl.ugr.es/archlinux/ osl.ugr.es
1227item http://sunsite.rediris.es/mirror/archlinux/ rediris.es
1228
1229choose selected || goto select_mirror_country
1230iseq ${selected} back && goto select_mirror_country ||
1231set mirrorurl ${selected}
1232goto main
1233
1234
1235:select_mirror_url_SE
1236set countryname Sweden
1237
1238menu Arch Linux Netboot: Select Mirror
1239item back back
1240item
1241item --gap Available mirrors in ${countryname}
1242item http://ftp.acc.umu.se/mirror/archlinux/ acc.umu.se
1243item http://archlinux.dynamict.se/ dynamict.se
1244item http://ftp.lysator.liu.se/pub/archlinux/ lysator.liu.se
1245item http://ftp.myrveln.se/pub/linux/archlinux/ myrveln.se
1246item http://ftp.portlane.com/pub/os/linux/archlinux/ portlane.com
1247
1248choose selected || goto select_mirror_country
1249iseq ${selected} back && goto select_mirror_country ||
1250set mirrorurl ${selected}
1251goto main
1252
1253
1254:select_mirror_url_CH
1255set countryname Switzerland
1256
1257menu Arch Linux Netboot: Select Mirror
1258item back back
1259item
1260item --gap Available mirrors in ${countryname}
1261item http://pkg.adfinis-sygroup.ch/archlinux/ adfinis-sygroup.ch
1262item http://archlinux.puzzle.ch/ archlinux.puzzle.ch
1263
1264choose selected || goto select_mirror_country
1265iseq ${selected} back && goto select_mirror_country ||
1266set mirrorurl ${selected}
1267goto main
1268
1269
1270:select_mirror_url_TW
1271set countryname Taiwan
1272
1273menu Arch Linux Netboot: Select Mirror
1274item back back
1275item
1276item --gap Available mirrors in ${countryname}
1277item http://archlinux.cs.nctu.edu.tw/ nctu.edu.tw
1278item http://shadow.ind.ntou.edu.tw/archlinux/ ntou.edu.tw
1279item http://ftp.tku.edu.tw/Linux/ArchLinux/ tku.edu.tw
1280item http://ftp.yzu.edu.tw/Linux/archlinux/ yzu.edu.tw
1281
1282choose selected || goto select_mirror_country
1283iseq ${selected} back && goto select_mirror_country ||
1284set mirrorurl ${selected}
1285goto main
1286
1287
1288:select_mirror_url_TH
1289set countryname Thailand
1290
1291menu Arch Linux Netboot: Select Mirror
1292item back back
1293item
1294item --gap Available mirrors in ${countryname}
1295item http://mirror.adminbannok.com/archlinux/ adminbannok.com
1296item http://mirror.kku.ac.th/archlinux/ kku.ac.th
1297
1298choose selected || goto select_mirror_country
1299iseq ${selected} back && goto select_mirror_country ||
1300set mirrorurl ${selected}
1301goto main
1302
1303
1304:select_mirror_url_TR
1305set countryname Turkey
1306
1307menu Arch Linux Netboot: Select Mirror
1308item back back
1309item
1310item --gap Available mirrors in ${countryname}
1311item http://ftp.linux.org.tr/archlinux/ linux.org.tr
1312
1313choose selected || goto select_mirror_country
1314iseq ${selected} back && goto select_mirror_country ||
1315set mirrorurl ${selected}
1316goto main
1317
1318
1319:select_mirror_url_UA
1320set countryname Ukraine
1321
1322menu Arch Linux Netboot: Select Mirror
1323item back back
1324item
1325item --gap Available mirrors in ${countryname}
1326item http://archlinux.ip-connect.vn.ua/ ip-connect.vn.ua
1327item http://mirrors.nix.org.ua/linux/archlinux/ nix.org.ua
1328
1329choose selected || goto select_mirror_country
1330iseq ${selected} back && goto select_mirror_country ||
1331set mirrorurl ${selected}
1332goto main
1333
1334
1335:select_mirror_url_GB
1336set countryname United Kingdom
1337
1338menu Arch Linux Netboot: Select Mirror
1339item back back
1340item
1341item --gap Available mirrors in ${countryname}
1342item http://mirror.bytemark.co.uk/archlinux/ bytemark.co.uk
1343item http://mirror.cinosure.com/archlinux/ cinosure.com
1344item http://mirrors.manchester.m247.com/arch-linux/ manchester.m247.com
1345item http://www.mirrorservice.org/sites/ftp.archlinux.org/ mirrorservice.org
1346item http://arch.serverspace.co.uk/arch/ serverspace.co.uk
1347item http://archlinux.mirrors.uk2.net/ uk2.net
1348
1349choose selected || goto select_mirror_country
1350iseq ${selected} back && goto select_mirror_country ||
1351set mirrorurl ${selected}
1352goto main
1353
1354
1355:select_mirror_url_US
1356set countryname United States
1357
1358menu Arch Linux Netboot: Select Mirror
1359item back back
1360item
1361item --gap Available mirrors in ${countryname}
1362item http://mirrors.abscission.net/archlinux/ abscission.net
1363item http://mirrors.acm.wpi.edu/archlinux/ acm.wpi.edu
1364item http://mirrors.advancedhosters.com/archlinux/ advancedhosters.com
1365item http://mirrors.aggregate.org/archlinux/ aggregate.org
1366item http://archlinux.surlyjake.com/archlinux/ archlinux.surlyjake.com
1367item http://arlm.tyzoid.com/ arlm.tyzoid.com
1368item http://ca.us.mirror.archlinux-br.org/ ca.us.mirror.archlinux-br.org
1369item http://mirrors.cat.pdx.edu/archlinux/ cat.pdx.edu
1370item http://mirror.cc.columbia.edu/pub/linux/archlinux/ cc.columbia.edu
1371item http://cosmos.cites.illinois.edu/pub/archlinux/ cosmos.cites.illinois.edu
1372item http://mirror.cs.pitt.edu/archlinux/ cs.pitt.edu
1373item http://mirror.es.its.nyu.edu/archlinux/ es.its.nyu.edu
1374item http://mirrors.gigenet.com/archlinux/ gigenet.com
1375item http://mirror.grig.io/archlinux/ grig.io
1376item http://www.gtlib.gatech.edu/pub/archlinux/ gtlib.gatech.edu
1377item http://mirror1.hackingand.coffee/arch/ hackingand.coffee
1378item http://mirror2.hackingand.coffee/arch/ hackingand.coffee
1379item http://mirror3.hackingand.coffee/arch/ hackingand.coffee
1380item http://mirror.htnshost.com/archlinux/ htnshost.com
1381item http://arch.mirrors.ionfish.org/ ionfish.org
1382item http://mirror.jmu.edu/pub/archlinux/ jmu.edu
1383item http://mirrors.kernel.org/archlinux/ kernel.org
1384item http://mirror.us.leaseweb.net/archlinux/ leaseweb.net
1385item http://il.mirrors.linaxe.net/archlinux/ linaxe.net
1386item http://mirrors.liquidweb.com/archlinux/ liquidweb.com
1387item http://arch.localmsp.org/arch/ localmsp.org
1388item http://mirror.lty.me/archlinux/ lty.me
1389item http://mirrors.lug.mtu.edu/archlinux/ lug.mtu.edu
1390item http://mirror.math.princeton.edu/pub/archlinux/ math.princeton.edu
1391item http://mirror.metrocast.net/archlinux/ metrocast.net
1392item http://mirror.kaminski.io/archlinux/ mirror.kaminski.io
1393item http://mirror.nexcess.net/archlinux/ nexcess.net
1394item http://mirrors.ocf.berkeley.edu/archlinux/ ocf.berkeley.edu
1395item http://ftp.osuosl.org/pub/archlinux/ osuosl.org
1396item http://arch.mirrors.pair.com/ pair.com
1397item http://mirror.redsox.cc/pub/archlinux/ redsox.cc
1398item http://mirrors.rit.edu/archlinux/ rit.edu
1399item http://mirrors.rutgers.edu/archlinux/ rutgers.edu
1400item http://mirror.umd.edu/archlinux/ umd.edu
1401item http://mirror.vtti.vt.edu/archlinux/ vtti.vt.edu
1402item http://mirrors.xmission.com/archlinux/ xmission.com
1403item http://mirror.yellowfiber.net/archlinux/ yellowfiber.net
1404
1405choose selected || goto select_mirror_country
1406iseq ${selected} back && goto select_mirror_country ||
1407set mirrorurl ${selected}
1408goto main
1409
1410
1411:select_mirror_url_VN
1412set countryname Vietnam
1413
1414menu Arch Linux Netboot: Select Mirror
1415item back back
1416item
1417item --gap Available mirrors in ${countryname}
1418item http://f.archlinuxvn.org/archlinux/ archlinuxvn.org
1419item http://mirror-fpt-telecom.fpt.net/archlinux/ mirror-fpt-telecom.fpt.net
1420
1421choose selected || goto select_mirror_country
1422iseq ${selected} back && goto select_mirror_country ||
1423set mirrorurl ${selected}
1424goto main
1425
1426
1427:set_options
1428echo -n Boot options: ${} && read extrabootoptions ||
1429goto main
1430
1431:boot
1432echo Booting Arch Linux ${bootarch} ${release} from ${mirrorurl}
1433echo
1434kernel ${mirrorurl}iso/${release}/arch/boot/${bootarch}/vmlinuz || goto failed_download
1435imgverify vmlinuz ${mirrorurl}iso/${release}/arch/boot/${bootarch}/vmlinuz.ipxe.sig || goto failed_verify
1436initrd ${mirrorurl}iso/${release}/arch/boot/intel_ucode.img || goto failed_download
1437imgverify intel_ucode.img ${mirrorurl}iso/${release}/arch/boot/intel_ucode.img.ipxe.sig || goto failed_verify
1438initrd ${mirrorurl}iso/${release}/arch/boot/${bootarch}/archiso.img || goto failed_download
1439imgverify archiso.img ${mirrorurl}iso/${release}/arch/boot/${bootarch}/archiso.img.ipxe.sig || goto failed_verify
1440imgargs vmlinuz initrd=intel_ucode.img initrd=archiso.img archiso_http_srv=${mirrorurl}iso/${release}/ archisobasedir=arch verify=y ${extrabootoptions}
1441boot || goto failed_boot
1442
1443:failed_download
1444echo
1445echo Failed to download a file.
1446goto failed
1447
1448:failed_verify
1449echo
1450echo Failed to verify a file.
1451goto failed
1452
1453:failed_boot
1454echo
1455echo Boot failed.
1456goto failed
1457
1458:failed
1459echo Press a key to return to the menu.
1460prompt
1461imgfree
1462goto main