소스 검색

Merge pull request #193 from antonym/use_official_mirrors

Starts to pull mirror configs into boot.cfg
Antony Messerli 7 년 전
부모
커밋
064220f4f0
10개의 변경된 파일75개의 추가작업 그리고 37개의 파일을 삭제
  1. 4 4
      src/archlinux.ipxe
  2. 42 0
      src/boot.cfg
  3. 4 4
      src/centos.ipxe
  4. 2 3
      src/debian.ipxe
  5. 1 2
      src/devuan.ipxe
  6. 3 3
      src/fedora.ipxe
  7. 6 7
      src/mageia.ipxe
  8. 8 8
      src/opensuse.ipxe
  9. 3 3
      src/slackware.ipxe
  10. 2 3
      src/ubuntu.ipxe

+ 4 - 4
src/archlinux.ipxe

@@ -20,10 +20,10 @@ goto boot
 :boot
 imgfree
 iseq ${arch} i386 && set bootarch i686 || set bootarch x86_64
-set dir archlinux/iso/${arch_version}/arch/boot
-set params initrd=archiso.img archiso_http_srv=http://${mirror}/archlinux/iso/${arch_version}/ archisobasedir=arch verify=y ip=dhcp net.ifnames=0 ${console}
-kernel http://${mirror}/${dir}/${bootarch}/vmlinuz ${params} initrd=archiso.img
-initrd http://${mirror}/${dir}/${bootarch}/archiso.img
+set dir ${archlinux_base_dir}/iso/${arch_version}/arch/boot
+set params initrd=archiso.img archiso_http_srv=http://${archlinux_mirror}/${archlinux_base_dir}/iso/${arch_version}/ archisobasedir=arch verify=y ip=dhcp net.ifnames=0 ${console}
+kernel http://${archlinux_mirror}/${dir}/${bootarch}/vmlinuz ${params} initrd=archiso.img
+initrd http://${archlinux_mirror}/${dir}/${bootarch}/archiso.img
 echo
 echo MD5sums:
 md5sum vmlinuz archiso.img

+ 42 - 0
src/boot.cfg

@@ -1,5 +1,6 @@
 #!ipxe
 
+:global_vars
 # set site name
 set site_name netboot.xyz
 
@@ -24,6 +25,47 @@ set sigs http://${boot_domain}/sigs/
 # set location of latest iPXE
 set ipxe_disk netboot.xyz-undionly.kpxe
 
+##################
+# official mirrors
+##################
+:mirrors
+### ArchLinux
+set archlinux_mirror mirror.rackspace.com
+set archlinux_base_dir archlinux
+
+### CentOS
+set centos_mirror mirror.centos.org
+set centos_base_dir centos
+
+### Debian
+set debian_mirror deb.debian.org
+set debian_base_dir debian
+
+### Devuan
+set devuan_mirror auto.mirror.devuan.org
+set devuan_base_dir devuan
+
+### Fedora
+set fedora_mirror mirror.rackspace.com
+set fedora_base_dir fedora
+
+### Mageia
+set mageia_mirror mirrors.kernel.org
+set mageia_base_dir mageia
+
+### OpenSUSE
+set opensuse_mirror download.opensuse.org
+set opensuse_base_dir distribution/leap
+
+### Slackware
+set slackware_mirror mirror.rackspace.com
+set slackware_base_dir slackware
+
+### Ubuntu
+set ubuntu_mirror archive.ubuntu.com
+set ubuntu_base_dir ubuntu
+
+
 #################################################
 # determine architectures and enable menu options
 #################################################

+ 4 - 4
src/centos.ipxe

@@ -15,8 +15,8 @@ item 6.9 ${os} 6.9
 isset ${osversion} || choose osversion || goto linux_menu
 echo ${cls}
 iseq ${osversion} 6.9 && set dir ${menu}/${osversion}/os/${arch} ||
-set dir ${menu}/${osversion}/os/x86_64
-set repo http://${mirror}/${dir}
+set dir ${centos_base_dir}/${osversion}/os/x86_64
+set repo http://${centos_mirror}/${dir}
 goto boottype
 
 :boottype
@@ -57,8 +57,8 @@ goto boottype
 
 :bootos_images
 imgfree
-kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=${repo} ${params} ${netcfg} ${console} initrd=initrd.img
-initrd http://${mirror}/${dir}/images/pxeboot/initrd.img
+kernel http://${centos_mirror}/${dir}/images/pxeboot/vmlinuz repo=${repo} ${params} ${netcfg} ${console} initrd=initrd.img
+initrd http://${centos_mirror}/${dir}/images/pxeboot/initrd.img
 echo
 echo MD5sums:
 md5sum vmlinuz initrd.img

+ 2 - 3
src/debian.ipxe

@@ -9,7 +9,6 @@ goto ${menu}
 set os Debian
 clear debian_version
 clear older_release
-set debian_mirror ${mirror}
 menu ${os} - ${arch_a} - Image Sig Checks: [${img_sigs_enabled}]
 item --gap Latest Releases
 item stretch ${space} ${os} 9.0 (stretch)
@@ -30,12 +29,12 @@ set debian_mirror archive.debian.org
 echo Setting mirror to ${debian_mirror}
 clear debian_version
 echo -n Please set enter code name of release: ${} && read debian_version
-set dir debian/dists/${debian_version}/main/installer-${arch_a}/current/images/netboot/
+set dir ${debian_base_dir}/dists/${debian_version}/main/installer-${arch_a}/current/images/netboot/
 goto deb_boot_type
 
 :mirrorcfg
 set mirrorcfg mirror/suite=${debian_version}
-set dir debian/dists/${debian_version}/main/installer-${arch_a}/current/images/netboot/
+set dir ${debian_base_dir}/dists/${debian_version}/main/installer-${arch_a}/current/images/netboot/
 goto deb_boot_type
 
 :deb_boot_type

+ 1 - 2
src/devuan.ipxe

@@ -9,7 +9,6 @@ goto ${menu}
 set os Devuan
 clear devuan_version
 clear older_release
-set devuan_mirror auto.mirror.devuan.org
 menu ${os} - ${arch_a} - Image Sig Checks: [${img_sigs_enabled}]
 item --gap Latest Releases
 item jessie ${space} ${os} 1.0 (jessie)
@@ -21,7 +20,7 @@ goto mirrorcfg
 
 :mirrorcfg
 set mirrorcfg mirror/suite=${devuan_version}
-set dir devuan/dists/${devuan_version}/main/installer-${arch_a}/current/images/netboot/
+set dir ${devuan_base_dir}/dists/${devuan_version}/main/installer-${arch_a}/current/images/netboot/
 goto devuan_boot_type
 
 :devuan_boot_type

+ 3 - 3
src/fedora.ipxe

@@ -25,7 +25,7 @@ item Everything ${ova} Everything
 item Server ${ova} Server
 item Workstation ${ova} Workstation
 isset ${sku_type} || choose sku_type || goto fedora
-set dir fedora/releases/${osversion}/${sku_type}/${arch}/os
+set dir ${fedora_base_dir}/releases/${osversion}/${sku_type}/${arch}/os
 set ova ${ova} ${sku_type}
 echo ${cls}
 goto boottype
@@ -52,8 +52,8 @@ goto boot
 
 :boot
 imgfree
-kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=http://${mirror}/${dir} ${params} ${console} initrd=initrd.img
-initrd http://${mirror}/${dir}/images/pxeboot/initrd.img
+kernel http://${fedora_mirror}/${dir}/images/pxeboot/vmlinuz repo=http://${fedora_mirror}/${dir} ${params} ${console} initrd=initrd.img
+initrd http://${fedora_mirror}/${dir}/images/pxeboot/initrd.img
 echo
 echo MD5sums:
 md5sum vmlinuz initrd.img

+ 6 - 7
src/mageia.ipxe

@@ -8,6 +8,7 @@ goto ${menu} ||
 :mageia
 set os Mageia
 menu Mageia - ${arch} - Image Sig Checks: [${img_sigs_enabled}]
+item 6 ${os} 6
 item 5 ${os} 5
 item 4 ${os} 4
 item cauldron ${os} cauldron
@@ -15,14 +16,12 @@ choose version || goto mageia_exit
 goto mageia_boot
 
 :mageia_boot
-set server mirrors.kernel.org
-set mirror http://${server}
-set dir mageia/distrib/${version}/x86_64 && set dir2 isolinux/x86_64 ||
-iseq ${arch} i386 && set dir mageia/distrib/${version}/i586 && set dir2 isolinux/i386 ||
-set automatic method:http,network:dhcp,server:${server},directory:/${dir}
+set dir ${mageia_base_dir}/distrib/${version}/x86_64 && set dir2 isolinux/x86_64 ||
+iseq ${arch} i386 && set dir ${mageia_base_dir}/distrib/${version}/i586 && set dir2 isolinux/i386 ||
+set automatic method:http,network:dhcp,server:${mageia_mirror},directory:/${dir}
 imgfree
-kernel ${mirror}/${dir}/${dir2}/vmlinuz
-initrd ${mirror}/${dir}/${dir2}/all.rdz
+kernel http://${mageia_mirror}/${dir}/${dir2}/vmlinuz
+initrd http://${mageia_mirror}/${dir}/${dir2}/all.rdz
 imgargs vmlinuz automatic=${automatic} vga=788 splash=silent ${console} initrd=all.rdz
 echo
 echo MD5sums:

+ 8 - 8
src/opensuse.ipxe

@@ -2,20 +2,20 @@
 
 # OpenSUSE Operating System
 # http://opensuse.org
-
+set distro opensuse
 menu openSUSE - ${arch} - Image Sig Checks: [${img_sigs_enabled}]
 item 42.3 openSUSE Leap 42.3
 item 42.2 openSUSE Leap 42.2
 item 42.1 openSUSE Leap 42.1
 item tumbleweed openSUSE tumbleweed
 choose version || goto opensuse_exit
-set dir opensuse/distribution/leap/${version}/repo/oss
-iseq ${version} tumbleweed && set mirror download.opensuse.org && set dir ${version}/repo/oss ||
+set dir ${opensuse_base_dir}/${version}/repo/oss
+iseq ${version} tumbleweed && set dir ${version}/repo/oss ||
 
 imgfree
-kernel http://${mirror}/${dir}/boot/x86_64/loader/linux
-initrd http://${mirror}/${dir}/boot/x86_64/loader/initrd
-imgargs linux netsetup=dhcp install=http://${mirror}/${dir} ${params} ${netcfg} ${console} initrd=initrd
+kernel http://${opensuse_mirror}/${dir}/boot/x86_64/loader/linux
+initrd http://${opensuse_mirror}/${dir}/boot/x86_64/loader/initrd
+imgargs linux netsetup=dhcp install=http://${opensuse_mirror}/${dir} ${params} ${netcfg} ${console} initrd=initrd
 echo
 echo MD5sums:
 md5sum linux initrd
@@ -24,8 +24,8 @@ iseq ${img_sigs_enabled} true && goto verify_sigs || goto skip_sigs
 :verify_sigs
 echo
 echo Checking signatures...
-imgverify linux ${sigs}${dir}/boot/x86_64/loader/linux.sig || goto error
-imgverify initrd ${sigs}${dir}/boot/x86_64/loader/initrd.sig || goto error
+imgverify linux ${sigs}${distro}/${dir}/boot/x86_64/loader/linux.sig || goto error
+imgverify initrd ${sigs}${distro}/${dir}/boot/x86_64/loader/initrd.sig || goto error
 echo Signatures verified!
 echo
 :skip_sigs

+ 3 - 3
src/slackware.ipxe

@@ -19,13 +19,13 @@ iseq ${version} other || goto skip_read_version
 echo ${cls}
 echo -n Enter version: ${} && read version
 :skip_read_version
-set dir slackware/slackware${sbits}-${version}
+set dir ${slackware_base_dir}/slackware${sbits}-${version}
 goto boot
 
 :boot
 imgfree
-kernel http://${mirror}/${dir}/kernels/huge.s/bzImage
-initrd http://${mirror}/${dir}/isolinux/initrd.img
+kernel http://${slackware_mirror}/${dir}/kernels/huge.s/bzImage
+initrd http://${slackware_mirror}/${dir}/isolinux/initrd.img
 imgargs bzImage load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 SLACK_KERNEL=huge.s ${params} ${console}
 isset ${debug} && prompt ||
 boot

+ 2 - 3
src/ubuntu.ipxe

@@ -8,7 +8,6 @@ goto ${menu}
 :ubuntu
 set os Ubuntu
 clear ubuntu_version
-set ubuntu_mirror ${mirror}
 menu ${os} - ${arch_a} - Image Sig Checks: [${img_sigs_enabled}]
 item --gap Latest Releases
 item artful ${space} ${os} 17.10 Artful Aardvark
@@ -27,12 +26,12 @@ set ubuntu_mirror old-releases.ubuntu.com
 echo Setting mirror to ${ubuntu_mirror}
 clear ubuntu_version
 echo -n Please set enter code name of release: ${} && read ubuntu_version
-set dir ubuntu/dists/${ubuntu_version}/main/installer-${arch_a}/current/images/netboot/
+set dir ${ubuntu_base_dir}/dists/${ubuntu_version}/main/installer-${arch_a}/current/images/netboot/
 goto deb_boot_type
 
 :mirrorcfg
 set mirrorcfg mirror/suite=${ubuntu_version}
-set dir ubuntu/dists/${ubuntu_version}/main/installer-${arch_a}/current/images/netboot/
+set dir ${ubuntu_base_dir}/dists/${ubuntu_version}/main/installer-${arch_a}/current/images/netboot/
 
 :deb_boot_type
 menu ${os} [${ubuntu_version}] Installer