main.yml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524
  1. ---
  2. ### site configuration ###
  3. site_name: netboot.xyz
  4. boot_domain: boot.netboot.xyz
  5. boot_version: "2.x"
  6. boot_timeout: 300000
  7. time_server: "0.pool.ntp.org"
  8. # signature checking
  9. sigs_menu: false
  10. sigs_enabled: false
  11. # helper app locations
  12. memdisk_location: "http://${boot_domain}/memdisk"
  13. wimboot_location: "http://${boot_domain}/wimboot"
  14. # iPXE upstream repo settings
  15. ipxe_repo: https://github.com/ipxe/ipxe
  16. ipxe_branch: master
  17. ipxe_source_dir: /usr/src/ipxe
  18. netbootxyz_root: /var/www/html
  19. netbootxyz_conf_dir: /etc/netbootxyz
  20. # live os settings
  21. live_endpoint: "https://github.com/netbootxyz"
  22. # generates menus
  23. generate_menus: true
  24. generate_version_file: true
  25. # generates signatures for source files
  26. generate_checksums: true
  27. checksums_filename: "{{ site_name }}-sha256-checksums.txt"
  28. # pciids
  29. pciids_url: https://raw.githubusercontent.com/netbootxyz/pciids/master/pciids.ipxe
  30. # bootloader options
  31. generate_disks: true
  32. generate_disks_legacy: true
  33. generate_disks_efi: true
  34. generate_disks_arm: false
  35. bootloader_https_enabled: true
  36. bootloader_http_enabled: true
  37. bootloader_disks:
  38. - "netboot.xyz"
  39. # custom menus
  40. # custom_github_menus allows for github custom menus
  41. # custom_generate_menus allows for self hosted custom menus to be added
  42. custom_github_menus: true
  43. custom_generate_menus: false
  44. custom_templates_dir: "{{ netbootxyz_conf_dir }}/custom"
  45. # signature generation
  46. generate_signatures: false
  47. sigs_dir: "{{ netbootxyz_root }}/sigs"
  48. sigs_location: "http://${boot_domain}/sigs/"
  49. cert_dir: "/etc/netbootxyz/certs"
  50. ipxe_trust_args: "TRUST={{ ipxe_ca_location }}"
  51. ipxe_ca_url: http://ca.ipxe.org/ca.crt
  52. ipxe_ca_filename: ca-ipxe-org.crt
  53. codesign_cert_filename: codesign.crt
  54. codesign_key_filename: codesign.key
  55. cert_file_filename : ca-netboot-xyz.crt
  56. #bootloader_multiple: true
  57. #bootloader_disks:
  58. # - "netboot.xyz"
  59. # - "netboot.xyz-packet"
  60. ### release values ###
  61. releases:
  62. alpinelinux:
  63. name: "Alpine Linux"
  64. mirror: "http://dl-cdn.alpinelinux.org"
  65. base_dir: "alpine"
  66. enabled: true
  67. menu: "linux"
  68. versions:
  69. - name: "3.11"
  70. code_name: "v3.11"
  71. - name: "Edge (development)"
  72. code_name: "edge"
  73. archlinux:
  74. name: "Arch Linux"
  75. mirror: "mirror.rackspace.com"
  76. base_dir: "archlinux"
  77. enabled: true
  78. menu: "linux"
  79. versions:
  80. - name: "2020.01.01"
  81. code_name: "2020.01.01"
  82. blackarch:
  83. name: "BlackArch"
  84. enabled: true
  85. menu: "linux"
  86. versions:
  87. - name: "current"
  88. code_name: "current"
  89. centos:
  90. name: "CentOS"
  91. mirror: "http://mirror.centos.org"
  92. base_dir: "centos"
  93. enabled: true
  94. menu: "linux"
  95. versions:
  96. - name: "8.0"
  97. code_name: "8.0.1905"
  98. - name: "8.0 Stream"
  99. code_name: "8-stream"
  100. - name: "7.7"
  101. code_name: "7.7.1908"
  102. coreos:
  103. name: "Fedora CoreOS"
  104. mirror: "https://builds.coreos.fedoraproject.org"
  105. base_dir: "prod/streams/testing/builds"
  106. enabled: true
  107. menu: "linux"
  108. versions:
  109. - name: "31"
  110. code_name: "31.20200113.3.1"
  111. debian:
  112. name: "Debian"
  113. mirror: "http://deb.debian.org"
  114. archive_mirror: "http://archive.debian.org"
  115. base_dir: "debian"
  116. enabled: true
  117. menu: "linux"
  118. versions:
  119. stable:
  120. - name: "10.0 (buster)"
  121. code_name: "buster"
  122. - name: "9.0 (stretch)"
  123. code_name: "stretch"
  124. testing:
  125. - name: "bullseye (testing)"
  126. code_name: "bullseye"
  127. - name: "sid (unstable)"
  128. code_name: "sid"
  129. devuan:
  130. name: "Devuan"
  131. mirror: "http://auto.mirror.devuan.org"
  132. base_dir: "devuan"
  133. enabled: false
  134. menu: "linux"
  135. versions:
  136. stable:
  137. - name: "ascii (stable)"
  138. code_name: "ascii"
  139. - name: "1.0 (jessie)"
  140. code_name: "jessie"
  141. testing:
  142. - name: "beowulf (testing)"
  143. code_name: "beowulf"
  144. fedora:
  145. name: "Fedora"
  146. mirror: "http://mirrors.kernel.org"
  147. base_dir: "fedora"
  148. enabled: true
  149. menu: "linux"
  150. versions:
  151. - name: "31"
  152. code_name: "31"
  153. - name: "30"
  154. code_name: "30"
  155. - name: "29"
  156. code_name: "29"
  157. flatcar:
  158. name: "Container Linux by Flatcar"
  159. mirror: ""
  160. enabled: true
  161. menu: "linux"
  162. versions:
  163. - name: "Stable Channel"
  164. code_name: "stable"
  165. - name: "Beta Channel"
  166. code_name: "beta"
  167. - name: "Alpha Channel"
  168. code_name: "alpha"
  169. freebsd:
  170. name: "FreeBSD"
  171. enabled: true
  172. menu: "bsd"
  173. freedos:
  174. name: "FreeDOS"
  175. mirror: "http://www.freedos.org"
  176. base_dir: "download/download"
  177. enabled: true
  178. menu: "dos"
  179. versions:
  180. - name: "1.2 Full Installer"
  181. code_name: "FD12FULL"
  182. - name: "1.2 Lite Installer"
  183. code_name: "FD12LITE"
  184. gentoo:
  185. name: "Gentoo"
  186. mirror: ""
  187. enabled: false
  188. menu: "linux"
  189. versions:
  190. - name: "Minimal CD 20160204 (amd64)"
  191. code_name: "20160204"
  192. ipfire:
  193. name: "IPFire"
  194. mirror: "https://downloads.ipfire.org"
  195. base_dir: "releases/ipfire-2.x"
  196. menu: "linux"
  197. enabled: true
  198. versions:
  199. - name: "2.23 Core 138"
  200. code_name: "2.23-core138"
  201. k3os:
  202. name: "k3OS"
  203. mirror: "https://github.com/rancher/k3os/releases/download/"
  204. enabled: true
  205. menu: "linux"
  206. versions:
  207. - name: "v0.8.0"
  208. code_name: "v0.8.0"
  209. kali:
  210. name: "Kali Linux"
  211. mirror: "http://http.kali.org"
  212. base_dir: "kali"
  213. enabled: true
  214. menu: "linux"
  215. versions:
  216. - name: "Rolling Edition (2019.4)"
  217. code_name: "rolling"
  218. livegrml:
  219. name: "Grml Live Linux"
  220. mirror: "http://download.grml.org"
  221. enabled: true
  222. menu: "live"
  223. versions:
  224. - name: "2018.12 Full"
  225. code_name: "grml-full"
  226. - name: "2018.12 Small"
  227. code_name: "grml-small"
  228. mageia:
  229. name: "Mageia"
  230. mirror: "http://mirrors.kernel.org"
  231. base_dir: "mageia"
  232. enabled: true
  233. menu: "linux"
  234. versions:
  235. - name: "7.1"
  236. code_name: "7.1"
  237. - name: "cauldron"
  238. code_name: "cauldron"
  239. nixos:
  240. name: "NixOS"
  241. enabled: true
  242. menu: "linux"
  243. versions:
  244. - name: "Nixos 19.09"
  245. code_name: "19.09"
  246. - name: "Nixos 19.03"
  247. code_name: "19.03"
  248. openbsd:
  249. name: "OpenBSD"
  250. mirror: "http://ftp.openbsd.org"
  251. base_dir: "pub/OpenBSD"
  252. enabled: true
  253. menu: "bsd"
  254. versions:
  255. - name: "6.6"
  256. code_name: "6.6"
  257. image_ver: "66"
  258. - name: "6.5"
  259. code_name: "6.5"
  260. image_ver: "65"
  261. - name: "6.4"
  262. code_name: "6.4"
  263. image_ver: "64"
  264. - name: "6.3"
  265. code_name: "6.3"
  266. image_ver: "63"
  267. - name: "6.6 Latest Snapshot"
  268. code_name: "snapshots"
  269. image_ver: "66"
  270. opensuse:
  271. name: "OpenSUSE"
  272. mirror: "http://download.opensuse.org"
  273. base_dir: "distribution/leap"
  274. enabled: true
  275. menu: "linux"
  276. versions:
  277. - name: "openSUSE Leap 15.1"
  278. code_name: "15.1"
  279. - name: "openSUSE Leap 15.0"
  280. code_name: "15.0"
  281. - name: "openSUSE Leap 42.3"
  282. code_name: "42.3"
  283. - name: "openSUSE tumbleweed"
  284. code_name: "tumbleweed"
  285. oracle:
  286. name: "Oracle Linux"
  287. mirror: "https://yum.oracle.com"
  288. enabled: true
  289. menu: "linux"
  290. paths:
  291. 7: "/repo/OracleLinux/OL7/latest/x86_64"
  292. 8: "/repo/OracleLinux/OL8/baseos/latest/x86_64"
  293. parrotsec:
  294. name: "Parrot Security"
  295. enabled: true
  296. menu: "linux"
  297. versions:
  298. - name: "Stable Netinstall"
  299. code_name: "stable"
  300. rancheros:
  301. name: "RancherOS"
  302. mirror: "http://releases.rancher.com"
  303. base_dir: "os/latest"
  304. enabled: true
  305. menu: "linux"
  306. versions:
  307. - name: "Latest (20 MB)"
  308. code_name: "latest"
  309. rhel:
  310. name: "Red Hat Enterprise Linux"
  311. enabled: true
  312. menu: "linux"
  313. scientific:
  314. name: "Scientific Linux"
  315. mirror: "http://ftp1.scientificlinux.org"
  316. base_dir: "linux/scientific"
  317. enabled: true
  318. menu: "linux"
  319. versions:
  320. - name: "7.7"
  321. code_name: "7.7"
  322. - name: "7.6"
  323. code_name: "7.6"
  324. - name: "6.10"
  325. code_name: "6.10"
  326. - name: "6.9"
  327. code_name: "6.9"
  328. slackware:
  329. name: "Slackware"
  330. mirror: "http://mirror.rackspace.com"
  331. base_dir: "slackware"
  332. enabled: true
  333. menu: "linux"
  334. versions:
  335. - name: "Current"
  336. code_name: "current"
  337. - name: "14.2"
  338. code_name: "14.2"
  339. - name: "14.1"
  340. code_name: "14.1"
  341. tinycore:
  342. name: "Tiny Core Linux"
  343. mirror: "http://tinycorelinux.net"
  344. enabled: true
  345. menu: "linux"
  346. versions:
  347. - name: "Core [ISO]"
  348. code_name: "Core"
  349. - name: "TinyCore [ISO]"
  350. code_name: "TinyCore"
  351. ubuntu:
  352. name: "Ubuntu"
  353. mirror: "http://archive.ubuntu.com"
  354. archive_mirror: "http://old-releases.ubuntu.com"
  355. base_dir: "ubuntu"
  356. enabled: true
  357. menu: "linux"
  358. versions:
  359. - name: "19.10 Eoan Ermine"
  360. code_name: "eoan"
  361. - name: "19.04 Disco Dingo"
  362. code_name: "disco"
  363. - name: "18.04 LTS Bionic Beaver"
  364. code_name: "bionic"
  365. - name: "16.04 LTS Xenial Xerus"
  366. code_name: "xenial"
  367. # utility values
  368. utilitiespcbios:
  369. avg:
  370. name: "AVG Rescue CD"
  371. enabled: true
  372. type: "memdisk"
  373. version: "160420a12074"
  374. util_path: "http://download.avg.com/filedir/inst/avg_arl_cdi_all_120_160420a12074.iso"
  375. breakin:
  376. name: "Breakin"
  377. enabled: true
  378. type: "direct"
  379. kernel: "${live_endpoint}{{ endpoints.breakin.path }}vmlinuz sshpasswd=breakin startup=breakin initrd=initrd"
  380. initrd: "${live_endpoint}{{ endpoints.breakin.path }}initrd"
  381. caine:
  382. name: "CAINE"
  383. enabled: true
  384. type: "direct"
  385. kernel: "${live_endpoint}{{ endpoints.caine.path }}vmlinuz ip=dhcp boot=casper netboot=http fetch=${live_endpoint}{{ endpoints.caine.path }}filesystem.squashfs initrd=initrd"
  386. initrd: "${live_endpoint}{{ endpoints.caine.path }}initrd"
  387. clonezilla:
  388. name: "Clonezilla"
  389. enabled: true
  390. type: "ipxemenu"
  391. dban:
  392. name: "DBAN"
  393. enabled: true
  394. type: "ipxemenu"
  395. gparted:
  396. name: "GParted"
  397. enabled: true
  398. type: "ipxemenu"
  399. grml:
  400. name: "Grml"
  401. enabled: true
  402. type: "ipxemenu"
  403. memtest:
  404. name: "Memtest"
  405. enabled: true
  406. type: "memtest"
  407. version: "5.01.0"
  408. util_path: "https://boot.netboot.xyz/utils/memtest86-5.01.0"
  409. rescatux:
  410. name: "Rescatux"
  411. enabled: true
  412. type: "direct"
  413. kernel: "${live_endpoint}{{ endpoints.rescatux.path }}vmlinuz boot=live fetch=${live_endpoint}{{ endpoints.rescatux.path }}filesystem.squashfs selinux=1 security=selinux enforcing=0 initrd=initrd"
  414. initrd: "${live_endpoint}{{ endpoints.rescatux.path }}initrd"
  415. supergrub:
  416. name: "SuperGRUB"
  417. enabled: true
  418. type: "memdisk"
  419. version: "2.04s1"
  420. util_path: "http://master.dl.sourceforge.net/project/supergrub2/2.04s1/super_grub2_disk_2.04s1/super_grub2_disk_hybrid_2.04s1.iso"
  421. systemrescue:
  422. name: "System Rescue CD"
  423. enabled: true
  424. type: "ipxemenu"
  425. ubcd:
  426. name: "Ultimate Boot CD (UBCD)"
  427. enabled: true
  428. type: "memdisk"
  429. version: "538"
  430. util_path: "http://mirror.sysadminguide.net/ubcd/ubcd538.iso"
  431. # efi utility values
  432. utilitiesefi:
  433. caine:
  434. name: "CAINE"
  435. enabled: true
  436. type: "direct"
  437. kernel: "${live_endpoint}{{ endpoints.caine.path }}vmlinuz ip=dhcp boot=casper netboot=http fetch=${live_endpoint}{{ endpoints.caine.path }}filesystem.squashfs initrd=initrd"
  438. initrd: "${live_endpoint}{{ endpoints.caine.path }}initrd"
  439. clonezilla:
  440. name: "Clonezilla"
  441. enabled: true
  442. type: "ipxemenu"
  443. gparted:
  444. name: "GParted"
  445. enabled: true
  446. type: "ipxemenu"
  447. grml:
  448. name: "Grml"
  449. enabled: true
  450. type: "ipxemenu"
  451. rescatux:
  452. name: "Rescatux"
  453. enabled: true
  454. type: "direct"
  455. kernel: "${live_endpoint}{{ endpoints.rescatux.path }}vmlinuz boot=live fetch=${live_endpoint}{{ endpoints.rescatux.path }}filesystem.squashfs selinux=1 security=selinux enforcing=0 initrd=initrd"
  456. initrd: "${live_endpoint}{{ endpoints.rescatux.path }}initrd"
  457. systemrescue:
  458. name: "System Rescue CD"
  459. enabled: true
  460. type: "ipxemenu"
  461. bootloaders:
  462. legacy:
  463. - type: "ISO"
  464. ipxe_bin: "ipxe.iso"
  465. output_bin: ".iso"
  466. desc: "Used for CD/DVD, Virtual CDs, DRAC/iLO, VMware, Virtual Box"
  467. - type: "USB"
  468. ipxe_bin: "ipxe.usb"
  469. output_bin: ".usb"
  470. desc: "Used for creation of USB Keys"
  471. - type: "Kernel"
  472. ipxe_bin: "ipxe.lkrn"
  473. output_bin: ".lkrn"
  474. desc: "Used for booting from GRUB/EXTLINUX"
  475. - type: "Floppy"
  476. ipxe_bin: "ipxe.dsk"
  477. output_bin: ".dsk"
  478. desc: "Virtual floppy disk for DRAC/iLO, VMware, Virtual Box, etc"
  479. - type: "DHCP"
  480. ipxe_bin: "ipxe.kpxe"
  481. output_bin: ".kpxe"
  482. desc: "DHCP boot image file, uses built-in iPXE NIC drivers"
  483. - type: "DHCP-undionly"
  484. ipxe_bin: "undionly.kpxe"
  485. output_bin: "-undionly.kpxe"
  486. desc: "DHCP boot image file, use if you have NIC issues"
  487. uefi:
  488. - type: "ISO"
  489. ipxe_bin: "ipxe-efi.eiso"
  490. output_bin: "-efi.iso"
  491. desc: "EFI BIOS, works in Virtual Box EFI mode"
  492. - type: "USB"
  493. ipxe_bin: "ipxe-efi.usb"
  494. output_bin: "-efi.usb"
  495. desc: "Used for creation of USB Keys"
  496. - type: "DHCP"
  497. ipxe_bin: "ipxe.efi"
  498. output_bin: ".efi"
  499. desc: "DHCP EFI boot image file, uses built-in iPXE NIC drivers"
  500. - type: "DHCP-snp"
  501. ipxe_bin: "snp.efi"
  502. output_bin: "-snp.efi"
  503. desc: "EFI w/ Simple Network Protocol, attempts to boot all net devices"
  504. - type: "DHCP-snponly"
  505. ipxe_bin: "snponly.efi"
  506. output_bin: "-snponly.efi"
  507. desc: "EFI w/ Simple Network Protocol, only boots from device chained from"