· 9 years ago · Dec 15, 2016, 04:04 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 2016.12.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 2016.12.01 2016.12.01
61item 2016.11.01 2016.11.01
62item 2016.10.01 2016.10.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.fi.muni.cz/pub/linux/arch/ fi.muni.cz
572item http://ftp.linux.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://archlinux.cyborg-connect.de/ cyborg-connect.de
678item http://mirror.euserv.net/linux/archlinux/ euserv.net
679item http://mirror.f4st.host/archlinux/ f4st.host
680item http://ftp.fau.de/archlinux/ fau.de
681item http://mirror.fluxent.de/archlinux/ fluxent.de
682item http://mirror.gnomus.de/ gnomus.de
683item http://www.gutscheindrache.com/mirror/archlinux/ gutscheindrache.com
684item http://ftp.gwdg.de/pub/linux/archlinux/ gwdg.de
685item http://mirror.hactar.xyz/ hactar.xyz
686item http://archlinux.honkgong.info/ honkgong.info
687item http://ftp.hosteurope.de/mirror/ftp.archlinux.org/ hosteurope.de
688item http://ftp-stud.hs-esslingen.de/pub/Mirrors/archlinux/ hs-esslingen.de
689item http://archlinux.mirror.iphh.net/ iphh.net
690item http://arch.jensgutermuth.de/ jensgutermuth.de
691item http://mirror.js-webcoding.de/pub/archlinux/ js-webcoding.de
692item http://k42.ch/mirror/archlinux/ k42.ch
693item http://mirror.de.leaseweb.net/archlinux/ leaseweb.net
694item http://mirror.loli.forsale/arch/ loli.forsale
695item http://mirror.metalgamer.eu/archlinux/ metalgamer.eu
696item http://mirror.michael-eckert.net/archlinux/ michael-eckert.net
697item http://mirrors.n-ix.net/archlinux/ n-ix.net
698item http://mirror.netcologne.de/archlinux/ netcologne.de
699item http://mirrors.niyawe.de/archlinux/ niyawe.de
700item http://mirror.pseudoform.org/ pseudoform.org
701item http://ftp.halifax.rwth-aachen.de/archlinux/ rwth-aachen.de
702item http://linux.rz.rub.de/archlinux/ rz.rub.de
703item http://mirror.selfnet.de/archlinux/ selfnet.de
704item http://mirror1.shellbot.com/archlinux/ shellbot.com
705item http://ftp.spline.inf.fu-berlin.de/mirrors/archlinux/ spline.inf.fu-berlin.de
706item http://archlinux.thaller.ws/ thaller.ws
707item http://ftp.tu-chemnitz.de/pub/linux/archlinux/ tu-chemnitz.de
708item http://mirror.ubrco.de/archlinux/ ubrco.de
709item http://ftp.uni-bayreuth.de/linux/archlinux/ uni-bayreuth.de
710item http://ftp.uni-hannover.de/archlinux/ uni-hannover.de
711item http://ftp.uni-kl.de/pub/linux/archlinux/ uni-kl.de
712item http://mirror.united-gameserver.de/archlinux/ united-gameserver.de
713item http://mirror.vfn-nrw.de/archlinux/ vfn-nrw.de
714
715choose selected || goto select_mirror_country
716iseq ${selected} back && goto select_mirror_country ||
717set mirrorurl ${selected}
718goto main
719
720
721:select_mirror_url_GR
722set countryname Greece
723
724menu Arch Linux Netboot: Select Mirror
725item back back
726item
727item --gap Available mirrors in ${countryname}
728item http://ftp.cc.uoc.gr/mirrors/linux/archlinux/ cc.uoc.gr
729item http://foss.aueb.gr/mirrors/linux/archlinux/ foss.aueb.gr
730item http://ftp.ntua.gr/pub/linux/archlinux/ ntua.gr
731item http://ftp.otenet.gr/linux/archlinux/ otenet.gr
732
733choose selected || goto select_mirror_country
734iseq ${selected} back && goto select_mirror_country ||
735set mirrorurl ${selected}
736goto main
737
738
739:select_mirror_url_HK
740set countryname Hong Kong
741
742menu Arch Linux Netboot: Select Mirror
743item back back
744item
745item --gap Available mirrors in ${countryname}
746item http://arch-mirror.wtako.net/ wtako.net
747
748choose selected || goto select_mirror_country
749iseq ${selected} back && goto select_mirror_country ||
750set mirrorurl ${selected}
751goto main
752
753
754:select_mirror_url_HU
755set countryname Hungary
756
757menu Arch Linux Netboot: Select Mirror
758item back back
759item
760item --gap Available mirrors in ${countryname}
761item http://ftp.energia.mta.hu/pub/mirrors/ftp.archlinux.org/ energia.mta.hu
762
763choose selected || goto select_mirror_country
764iseq ${selected} back && goto select_mirror_country ||
765set mirrorurl ${selected}
766goto main
767
768
769:select_mirror_url_IS
770set countryname Iceland
771
772menu Arch Linux Netboot: Select Mirror
773item back back
774item
775item --gap Available mirrors in ${countryname}
776item http://mirror.system.is/arch/ system.is
777
778choose selected || goto select_mirror_country
779iseq ${selected} back && goto select_mirror_country ||
780set mirrorurl ${selected}
781goto main
782
783
784:select_mirror_url_IN
785set countryname India
786
787menu Arch Linux Netboot: Select Mirror
788item back back
789item
790item --gap Available mirrors in ${countryname}
791item http://mirror.cse.iitk.ac.in/archlinux/ cse.iitk.ac.in
792item http://ftp.iitm.ac.in/archlinux/ iitm.ac.in
793
794choose selected || goto select_mirror_country
795iseq ${selected} back && goto select_mirror_country ||
796set mirrorurl ${selected}
797goto main
798
799
800:select_mirror_url_ID
801set countryname Indonesia
802
803menu Arch Linux Netboot: Select Mirror
804item back back
805item
806item --gap Available mirrors in ${countryname}
807item http://mirror.devilzc0de.org/archlinux/ devilzc0de.org
808item http://mirror.poliwangi.ac.id/archlinux/ poliwangi.ac.id
809item http://suro.ubaya.ac.id/archlinux/ suro.ubaya.ac.id
810
811choose selected || goto select_mirror_country
812iseq ${selected} back && goto select_mirror_country ||
813set mirrorurl ${selected}
814goto main
815
816
817:select_mirror_url_IR
818set countryname Iran
819
820menu Arch Linux Netboot: Select Mirror
821item back back
822item
823item --gap Available mirrors in ${countryname}
824item http://repo.sadjad.ac.ir/arch/ sadjad.ac.ir
825
826choose selected || goto select_mirror_country
827iseq ${selected} back && goto select_mirror_country ||
828set mirrorurl ${selected}
829goto main
830
831
832:select_mirror_url_IE
833set countryname Ireland
834
835menu Arch Linux Netboot: Select Mirror
836item back back
837item
838item --gap Available mirrors in ${countryname}
839item http://ftp.heanet.ie/mirrors/ftp.archlinux.org/ heanet.ie
840
841choose selected || goto select_mirror_country
842iseq ${selected} back && goto select_mirror_country ||
843set mirrorurl ${selected}
844goto main
845
846
847:select_mirror_url_IL
848set countryname Israel
849
850menu Arch Linux Netboot: Select Mirror
851item back back
852item
853item --gap Available mirrors in ${countryname}
854item http://mirror.isoc.org.il/pub/archlinux/ isoc.org.il
855
856choose selected || goto select_mirror_country
857iseq ${selected} back && goto select_mirror_country ||
858set mirrorurl ${selected}
859goto main
860
861
862:select_mirror_url_IT
863set countryname Italy
864
865menu Arch Linux Netboot: Select Mirror
866item back back
867item
868item --gap Available mirrors in ${countryname}
869item http://archlinux.openlabto.org/archlinux/ archlinux.openlabto.org
870item http://archlinux.beccacervello.it/archlinux/ beccacervello.it
871item http://mi.mirror.garr.it/mirrors/archlinux/ garr.it
872item http://mirrors.prometeus.net/archlinux/ prometeus.net
873item http://archlinux.students.cs.unibo.it/ students.cs.unibo.it
874
875choose selected || goto select_mirror_country
876iseq ${selected} back && goto select_mirror_country ||
877set mirrorurl ${selected}
878goto main
879
880
881:select_mirror_url_JP
882set countryname Japan
883
884menu Arch Linux Netboot: Select Mirror
885item back back
886item
887item --gap Available mirrors in ${countryname}
888item http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/ ftp.tsukuba.wide.ad.jp
889item http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/ jaist.ac.jp
890
891choose selected || goto select_mirror_country
892iseq ${selected} back && goto select_mirror_country ||
893set mirrorurl ${selected}
894goto main
895
896
897:select_mirror_url_KZ
898set countryname Kazakhstan
899
900menu Arch Linux Netboot: Select Mirror
901item back back
902item
903item --gap Available mirrors in ${countryname}
904item http://mirror.neolabs.kz/archlinux/ neolabs.kz
905
906choose selected || goto select_mirror_country
907iseq ${selected} back && goto select_mirror_country ||
908set mirrorurl ${selected}
909goto main
910
911
912:select_mirror_url_LV
913set countryname Latvia
914
915menu Arch Linux Netboot: Select Mirror
916item back back
917item
918item --gap Available mirrors in ${countryname}
919item http://archlinux.koyanet.lv/archlinux/ koyanet.lv
920
921choose selected || goto select_mirror_country
922iseq ${selected} back && goto select_mirror_country ||
923set mirrorurl ${selected}
924goto main
925
926
927:select_mirror_url_LT
928set countryname Lithuania
929
930menu Arch Linux Netboot: Select Mirror
931item back back
932item
933item --gap Available mirrors in ${countryname}
934item http://mirrors.atviras.lt/archlinux/ atviras.lt
935item http://arch.relevant.lt/ relevant.lt
936
937choose selected || goto select_mirror_country
938iseq ${selected} back && goto select_mirror_country ||
939set mirrorurl ${selected}
940goto main
941
942
943:select_mirror_url_LU
944set countryname Luxembourg
945
946menu Arch Linux Netboot: Select Mirror
947item back back
948item
949item --gap Available mirrors in ${countryname}
950item http://archlinux.mirror.root.lu/ root.lu
951
952choose selected || goto select_mirror_country
953iseq ${selected} back && goto select_mirror_country ||
954set mirrorurl ${selected}
955goto main
956
957
958:select_mirror_url_MK
959set countryname Macedonia
960
961menu Arch Linux Netboot: Select Mirror
962item back back
963item
964item --gap Available mirrors in ${countryname}
965item http://arch.softver.org.mk/archlinux/ arch.softver.org.mk
966item http://mirror.t-home.mk/archlinux/ t-home.mk
967
968choose selected || goto select_mirror_country
969iseq ${selected} back && goto select_mirror_country ||
970set mirrorurl ${selected}
971goto main
972
973
974:select_mirror_url_NL
975set countryname Netherlands
976
977menu Arch Linux Netboot: Select Mirror
978item back back
979item
980item --gap Available mirrors in ${countryname}
981item http://arch.apt-get.eu/ arch.apt-get.eu
982item http://mirror.i3d.net/pub/archlinux/ i3d.net
983item http://mirror.nl.leaseweb.net/archlinux/ leaseweb.net
984item http://ftp.nluug.nl/os/Linux/distr/archlinux/ nluug.nl
985item http://ftp.snt.utwente.nl/pub/os/linux/archlinux/ snt.utwente.nl
986item http://archlinux.mirror.wearetriple.com/ wearetriple.com
987
988choose selected || goto select_mirror_country
989iseq ${selected} back && goto select_mirror_country ||
990set mirrorurl ${selected}
991goto main
992
993
994:select_mirror_url_NC
995set countryname New Caledonia
996
997menu Arch Linux Netboot: Select Mirror
998item back back
999item
1000item --gap Available mirrors in ${countryname}
1001item http://mirror.lagoon.nc/pub/archlinux/ lagoon.nc
1002item http://archlinux.nautile.nc/archlinux/ nautile.nc
1003
1004choose selected || goto select_mirror_country
1005iseq ${selected} back && goto select_mirror_country ||
1006set mirrorurl ${selected}
1007goto main
1008
1009
1010:select_mirror_url_NO
1011set countryname Norway
1012
1013menu Arch Linux Netboot: Select Mirror
1014item back back
1015item
1016item --gap Available mirrors in ${countryname}
1017item http://mirror.archlinux.no/ archlinux.no
1018item http://archlinux.uib.no/ archlinux.uib.no
1019item http://mirror.neuf.no/archlinux/ neuf.no
1020
1021choose selected || goto select_mirror_country
1022iseq ${selected} back && goto select_mirror_country ||
1023set mirrorurl ${selected}
1024goto main
1025
1026
1027:select_mirror_url_PH
1028set countryname Philippines
1029
1030menu Arch Linux Netboot: Select Mirror
1031item back back
1032item
1033item --gap Available mirrors in ${countryname}
1034item http://mirror.rise.ph/archlinux/ rise.ph
1035
1036choose selected || goto select_mirror_country
1037iseq ${selected} back && goto select_mirror_country ||
1038set mirrorurl ${selected}
1039goto main
1040
1041
1042:select_mirror_url_PL
1043set countryname Poland
1044
1045menu Arch Linux Netboot: Select Mirror
1046item back back
1047item
1048item --gap Available mirrors in ${countryname}
1049item http://mirror.chmuri.net/archmirror/ chmuri.net
1050item http://arch.midov.pl/arch/ midov.pl
1051item http://mirror.onet.pl/pub/mirrors/archlinux/ onet.pl
1052item http://piotrkosoft.net/pub/mirrors/ftp.archlinux.org/ piotrkosoft.net
1053item http://ftp.vectranet.pl/archlinux/ vectranet.pl
1054
1055choose selected || goto select_mirror_country
1056iseq ${selected} back && goto select_mirror_country ||
1057set mirrorurl ${selected}
1058goto main
1059
1060
1061:select_mirror_url_PT
1062set countryname Portugal
1063
1064menu Arch Linux Netboot: Select Mirror
1065item back back
1066item
1067item --gap Available mirrors in ${countryname}
1068item http://ftp.rnl.tecnico.ulisboa.pt/pub/archlinux/ rnl.tecnico.ulisboa.pt
1069
1070choose selected || goto select_mirror_country
1071iseq ${selected} back && goto select_mirror_country ||
1072set mirrorurl ${selected}
1073goto main
1074
1075
1076:select_mirror_url_QA
1077set countryname Qatar
1078
1079menu Arch Linux Netboot: Select Mirror
1080item back back
1081item
1082item --gap Available mirrors in ${countryname}
1083item http://mirror.qnren.qa/archlinux/ qnren.qa
1084
1085choose selected || goto select_mirror_country
1086iseq ${selected} back && goto select_mirror_country ||
1087set mirrorurl ${selected}
1088goto main
1089
1090
1091:select_mirror_url_RO
1092set countryname Romania
1093
1094menu Arch Linux Netboot: Select Mirror
1095item back back
1096item
1097item --gap Available mirrors in ${countryname}
1098item http://mirror.archlinux.ro/archlinux/ archlinux.ro
1099item http://archlinux.mirrors.linux.ro/ linux.ro
1100item http://mirrors.m247.ro/archlinux/ m247.ro
1101
1102choose selected || goto select_mirror_country
1103iseq ${selected} back && goto select_mirror_country ||
1104set mirrorurl ${selected}
1105goto main
1106
1107
1108:select_mirror_url_RU
1109set countryname Russia
1110
1111menu Arch Linux Netboot: Select Mirror
1112item back back
1113item
1114item --gap Available mirrors in ${countryname}
1115item http://mirror.aur.rocks/ aur.rocks
1116item http://mirror.rol.ru/archlinux/ rol.ru
1117item http://mirror.yandex.ru/archlinux/ yandex.ru
1118
1119choose selected || goto select_mirror_country
1120iseq ${selected} back && goto select_mirror_country ||
1121set mirrorurl ${selected}
1122goto main
1123
1124
1125:select_mirror_url_RS
1126set countryname Serbia
1127
1128menu Arch Linux Netboot: Select Mirror
1129item back back
1130item
1131item --gap Available mirrors in ${countryname}
1132item http://mirror.pmf.kg.ac.rs/archlinux/ pmf.kg.ac.rs
1133
1134choose selected || goto select_mirror_country
1135iseq ${selected} back && goto select_mirror_country ||
1136set mirrorurl ${selected}
1137goto main
1138
1139
1140:select_mirror_url_SG
1141set countryname Singapore
1142
1143menu Arch Linux Netboot: Select Mirror
1144item back back
1145item
1146item --gap Available mirrors in ${countryname}
1147item http://mirror.0x.sg/archlinux/ 0x.sg
1148item http://download.nus.edu.sg/mirror/arch/ download.nus.edu.sg
1149
1150choose selected || goto select_mirror_country
1151iseq ${selected} back && goto select_mirror_country ||
1152set mirrorurl ${selected}
1153goto main
1154
1155
1156:select_mirror_url_SK
1157set countryname Slovakia
1158
1159menu Arch Linux Netboot: Select Mirror
1160item back back
1161item
1162item --gap Available mirrors in ${countryname}
1163item http://mirror.lnx.sk/pub/linux/archlinux/ lnx.sk
1164item http://tux.rainside.sk/archlinux/ rainside.sk
1165
1166choose selected || goto select_mirror_country
1167iseq ${selected} back && goto select_mirror_country ||
1168set mirrorurl ${selected}
1169goto main
1170
1171
1172:select_mirror_url_SI
1173set countryname Slovenia
1174
1175menu Arch Linux Netboot: Select Mirror
1176item back back
1177item
1178item --gap Available mirrors in ${countryname}
1179item http://archimonde.ts.si/archlinux/ archimonde.ts.si
1180
1181choose selected || goto select_mirror_country
1182iseq ${selected} back && goto select_mirror_country ||
1183set mirrorurl ${selected}
1184goto main
1185
1186
1187:select_mirror_url_ZA
1188set countryname South Africa
1189
1190menu Arch Linux Netboot: Select Mirror
1191item back back
1192item
1193item --gap Available mirrors in ${countryname}
1194item http://archlinux-za.mirror.host1plus.com/ archlinux-za.mirror.host1plus.com
1195item http://ftp.wa.co.za/pub/archlinux/ ftp.wa.co.za
1196item http://mirror.is.co.za/mirror/archlinux.org/ is.co.za
1197item http://mirror.wbs.co.za/archlinux/ wbs.co.za
1198
1199choose selected || goto select_mirror_country
1200iseq ${selected} back && goto select_mirror_country ||
1201set mirrorurl ${selected}
1202goto main
1203
1204
1205:select_mirror_url_KR
1206set countryname South Korea
1207
1208menu Arch Linux Netboot: Select Mirror
1209item back back
1210item
1211item --gap Available mirrors in ${countryname}
1212item http://ftp.kaist.ac.kr/ArchLinux/ ftp.kaist.ac.kr
1213item http://mirror.premi.st/archlinux/ premi.st
1214
1215choose selected || goto select_mirror_country
1216iseq ${selected} back && goto select_mirror_country ||
1217set mirrorurl ${selected}
1218goto main
1219
1220
1221:select_mirror_url_ES
1222set countryname Spain
1223
1224menu Arch Linux Netboot: Select Mirror
1225item back back
1226item
1227item --gap Available mirrors in ${countryname}
1228item http://osl.ugr.es/archlinux/ osl.ugr.es
1229item http://sunsite.rediris.es/mirror/archlinux/ rediris.es
1230
1231choose selected || goto select_mirror_country
1232iseq ${selected} back && goto select_mirror_country ||
1233set mirrorurl ${selected}
1234goto main
1235
1236
1237:select_mirror_url_SE
1238set countryname Sweden
1239
1240menu Arch Linux Netboot: Select Mirror
1241item back back
1242item
1243item --gap Available mirrors in ${countryname}
1244item http://ftp.acc.umu.se/mirror/archlinux/ acc.umu.se
1245item http://archlinux.dynamict.se/ dynamict.se
1246item http://ftp.lysator.liu.se/pub/archlinux/ lysator.liu.se
1247item http://ftp.myrveln.se/pub/linux/archlinux/ myrveln.se
1248item http://ftp.portlane.com/pub/os/linux/archlinux/ portlane.com
1249
1250choose selected || goto select_mirror_country
1251iseq ${selected} back && goto select_mirror_country ||
1252set mirrorurl ${selected}
1253goto main
1254
1255
1256:select_mirror_url_CH
1257set countryname Switzerland
1258
1259menu Arch Linux Netboot: Select Mirror
1260item back back
1261item
1262item --gap Available mirrors in ${countryname}
1263item http://pkg.adfinis-sygroup.ch/archlinux/ adfinis-sygroup.ch
1264item http://archlinux.puzzle.ch/ archlinux.puzzle.ch
1265
1266choose selected || goto select_mirror_country
1267iseq ${selected} back && goto select_mirror_country ||
1268set mirrorurl ${selected}
1269goto main
1270
1271
1272:select_mirror_url_TW
1273set countryname Taiwan
1274
1275menu Arch Linux Netboot: Select Mirror
1276item back back
1277item
1278item --gap Available mirrors in ${countryname}
1279item http://archlinux.cs.nctu.edu.tw/ nctu.edu.tw
1280item http://shadow.ind.ntou.edu.tw/archlinux/ ntou.edu.tw
1281item http://ftp.tku.edu.tw/Linux/ArchLinux/ tku.edu.tw
1282item http://ftp.yzu.edu.tw/Linux/archlinux/ yzu.edu.tw
1283
1284choose selected || goto select_mirror_country
1285iseq ${selected} back && goto select_mirror_country ||
1286set mirrorurl ${selected}
1287goto main
1288
1289
1290:select_mirror_url_TH
1291set countryname Thailand
1292
1293menu Arch Linux Netboot: Select Mirror
1294item back back
1295item
1296item --gap Available mirrors in ${countryname}
1297item http://mirror.adminbannok.com/archlinux/ adminbannok.com
1298
1299choose selected || goto select_mirror_country
1300iseq ${selected} back && goto select_mirror_country ||
1301set mirrorurl ${selected}
1302goto main
1303
1304
1305:select_mirror_url_TR
1306set countryname Turkey
1307
1308menu Arch Linux Netboot: Select Mirror
1309item back back
1310item
1311item --gap Available mirrors in ${countryname}
1312item http://ftp.linux.org.tr/archlinux/ linux.org.tr
1313
1314choose selected || goto select_mirror_country
1315iseq ${selected} back && goto select_mirror_country ||
1316set mirrorurl ${selected}
1317goto main
1318
1319
1320:select_mirror_url_UA
1321set countryname Ukraine
1322
1323menu Arch Linux Netboot: Select Mirror
1324item back back
1325item
1326item --gap Available mirrors in ${countryname}
1327item http://archlinux.ip-connect.vn.ua/ ip-connect.vn.ua
1328item http://mirrors.nix.org.ua/linux/archlinux/ nix.org.ua
1329
1330choose selected || goto select_mirror_country
1331iseq ${selected} back && goto select_mirror_country ||
1332set mirrorurl ${selected}
1333goto main
1334
1335
1336:select_mirror_url_GB
1337set countryname United Kingdom
1338
1339menu Arch Linux Netboot: Select Mirror
1340item back back
1341item
1342item --gap Available mirrors in ${countryname}
1343item http://mirror.bytemark.co.uk/archlinux/ bytemark.co.uk
1344item http://mirror.cinosure.com/archlinux/ cinosure.com
1345item http://mirrors.manchester.m247.com/arch-linux/ manchester.m247.com
1346item http://www.mirrorservice.org/sites/ftp.archlinux.org/ mirrorservice.org
1347item http://arch.serverspace.co.uk/arch/ serverspace.co.uk
1348item http://archlinux.mirrors.uk2.net/ uk2.net
1349
1350choose selected || goto select_mirror_country
1351iseq ${selected} back && goto select_mirror_country ||
1352set mirrorurl ${selected}
1353goto main
1354
1355
1356:select_mirror_url_US
1357set countryname United States
1358
1359menu Arch Linux Netboot: Select Mirror
1360item back back
1361item
1362item --gap Available mirrors in ${countryname}
1363item http://mirrors.abscission.net/archlinux/ abscission.net
1364item http://mirrors.acm.wpi.edu/archlinux/ acm.wpi.edu
1365item http://mirrors.advancedhosters.com/archlinux/ advancedhosters.com
1366item http://mirrors.aggregate.org/archlinux/ aggregate.org
1367item http://archlinux.surlyjake.com/archlinux/ archlinux.surlyjake.com
1368item http://arlm.tyzoid.com/ arlm.tyzoid.com
1369item http://ca.us.mirror.archlinux-br.org/ ca.us.mirror.archlinux-br.org
1370item http://mirrors.cat.pdx.edu/archlinux/ cat.pdx.edu
1371item http://mirror.cc.columbia.edu/pub/linux/archlinux/ cc.columbia.edu
1372item http://cosmos.cites.illinois.edu/pub/archlinux/ cosmos.cites.illinois.edu
1373item http://mirror.cs.pitt.edu/archlinux/ cs.pitt.edu
1374item http://mirror.es.its.nyu.edu/archlinux/ es.its.nyu.edu
1375item http://mirrors.gigenet.com/archlinux/ gigenet.com
1376item http://mirror.grig.io/archlinux/ grig.io
1377item http://www.gtlib.gatech.edu/pub/archlinux/ gtlib.gatech.edu
1378item http://mirror3.hackingand.coffee/arch/ hackingand.coffee
1379item http://mirror2.hackingand.coffee/arch/ hackingand.coffee
1380item http://mirror1.hackingand.coffee/arch/ hackingand.coffee
1381item http://mirror.htnshost.com/archlinux/ htnshost.com
1382item http://arch.mirrors.ionfish.org/ ionfish.org
1383item http://mirror.jmu.edu/pub/archlinux/ jmu.edu
1384item http://mirrors.kernel.org/archlinux/ kernel.org
1385item http://mirror.us.leaseweb.net/archlinux/ leaseweb.net
1386item http://il.mirrors.linaxe.net/archlinux/ linaxe.net
1387item http://mirrors.liquidweb.com/archlinux/ liquidweb.com
1388item http://arch.localmsp.org/arch/ localmsp.org
1389item http://mirror.lty.me/archlinux/ lty.me
1390item http://mirrors.lug.mtu.edu/archlinux/ lug.mtu.edu
1391item http://mirror.math.princeton.edu/pub/archlinux/ math.princeton.edu
1392item http://mirror.metrocast.net/archlinux/ metrocast.net
1393item http://mirror.kaminski.io/archlinux/ mirror.kaminski.io
1394item http://mirror.nexcess.net/archlinux/ nexcess.net
1395item http://mirrors.ocf.berkeley.edu/archlinux/ ocf.berkeley.edu
1396item http://ftp.osuosl.org/pub/archlinux/ osuosl.org
1397item http://arch.mirrors.pair.com/ pair.com
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