Skip to content

Commit 10c548f

Browse files
committed
Add CentOS CoreOS (SCOS) & Red Hat Enterprise Linux CoreOS (RHCOS)
1 parent 2fd5f94 commit 10c548f

File tree

4 files changed

+153
-1
lines changed

4 files changed

+153
-1
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@ In addition to being able to host netboot.xyz locally, you can also create your
129129
| Bodhi Linux | https://www.bodhilinux.com | No | Yes |
130130
| CachyOS | https://cachyos.org | No | Yes |
131131
| CentOS | https://centos.org | Yes | No |
132+
| CentOS CoreOS | https://centos.org | Yes | No |
132133
| Debian | https://debian.org | Yes | Yes|
133134
| Devuan | https://devuan.org | Yes | No |
134135
| Elementary OS | https://elementary.io | No | Yes |
@@ -170,6 +171,7 @@ In addition to being able to host netboot.xyz locally, you can also create your
170171
| Q4OS | https://q4os.org | No | Yes |
171172
| Raizo | https://sourceforge.net/projects/live-raizo/ | No | Yes |
172173
| Red Hat Enterprise Linux | https://www.redhat.com | User supplied media | No |
174+
| Red Hat Enterprise Linux CoreOS | https://openshift.com | Yes | No |
173175
| Regolith | https://regolith-linux.org | No | Yes |
174176
| Rocky Linux | https://rockylinux.org/ | Yes | No |
175177
| Septor | https://septor.sourceforge.io | No | Yes |

roles/netbootxyz/defaults/main.yml

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,7 @@ releases:
331331
name: Ubuntu 24.04
332332
- key: ubuntu-24.10
333333
name: Ubuntu 24.10
334-
version: v3.5.2
334+
version: v3.5.3
335335
kali:
336336
base_dir: kali
337337
enabled: true
@@ -442,6 +442,25 @@ releases:
442442
enabled: true
443443
menu: linux
444444
name: Proxmox
445+
rhcos:
446+
base_dir: pub/openshift-v4
447+
enabled: true
448+
menu: linux
449+
mirror: https://mirror.openshift.com
450+
name: Red Hat Enterprise Linux CoreOS
451+
versions:
452+
- code_name: 4.12
453+
name: 4.12 [Extended Support]
454+
- code_name: 4.14
455+
name: 4.14 [Extended Support]
456+
- code_name: 4.16
457+
name: 4.16 [Maintenance Support]
458+
- code_name: 4.17
459+
name: 4.17 [Maintenance Support]
460+
- code_name: 4.18
461+
name: 4.18 [Full Support]
462+
- code_name: 4.19
463+
name: 4.19 [Full Support]
445464
rhel:
446465
enabled: true
447466
menu: linux
@@ -459,6 +478,25 @@ releases:
459478
name: 9 (Latest)
460479
- code_name: 8
461480
name: 8 (Latest)
481+
scos:
482+
base_dir: centos/scos
483+
enabled: true
484+
menu: linux
485+
mirror: https://cloud.centos.org
486+
name: CentOS Stream CoreOS
487+
versions:
488+
- code_name: 9.0.20250222-0
489+
name: 9.0.20250222-0
490+
major_version: 9
491+
- code_name: 9.0.20250411-0
492+
name: 9.0.20250411-0
493+
major_version: 9
494+
- code_name: 9.0.20250510-0
495+
name: 9.0.20250510-0
496+
major_version: 9
497+
- code_name: 10.0.20250628-0
498+
name: 10.0.20250628-0
499+
major_version: 10
462500
slackware:
463501
base_dir: slackware
464502
enabled: true
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
#!ipxe
2+
3+
# Red Hat Enterprise Linux CoreOS (RHCOS)
4+
# https://openshift.com
5+
# https://github.com/coreos/coreos-installer/blob/master/README.md#installing-from-pxe
6+
7+
goto ${menu}
8+
9+
:rhcos
10+
set os {{ releases.rhcos.name }}
11+
set os_arch ${arch}
12+
iseq ${os_arch} x86_64 && set os_arch x86_64 ||
13+
iseq ${os_arch} arm64 && set os_arch aarch64 ||
14+
isset ${install_device} || set install_device /dev/sda
15+
isset ${ignition_url} || set ignition_url skip
16+
menu ${os} - ${os_arch}
17+
item --gap ${os}:
18+
{% for item in releases.rhcos.versions %}
19+
item {{ item.code_name }} ${space} ${os} {{ item.name }}
20+
{% endfor %}
21+
item install_dev ${space} Set install device: ${install_device}
22+
item ignition_config ${space} Set ignition config url: ${ignition_url}
23+
choose --default ${rhcos_version} rhcos_version || goto rhcos_exit
24+
echo ${cls}
25+
iseq ${rhcos_version} ignition_config && goto ignition_config ||
26+
iseq ${rhcos_version} install_dev && goto install_dev ||
27+
goto rhcos_boot ||
28+
goto rhcos_exit
29+
30+
:rhcos_boot
31+
{% for item in releases.rhcos.versions %}
32+
iseq ${core_version} {{ item.code_name }} ||
33+
{% endfor %}
34+
set base_url ${rhcos_mirror}/${os_arch}/dependencies/rhcos
35+
set build_version ${rhcos_version}
36+
imgfree
37+
kernel ${base_url}/${build_version}/latest/rhcos-live-kernel.${os_arch} ip=dhcp rd.neednet=1 coreos.inst.install_dev=${install_device} coreos.inst.ignition_url=${ignition_url} coreos.live.rootfs_url=${base_url}/${build_version}/latest/rhcos-live-rootfs.${os_arch}.img initrd=initrd.magic ${cmdline}
38+
initrd ${base_url}/${build_version}/latest/rhcos-live-initramfs.${os_arch}.img
39+
boot
40+
goto rhcos_exit
41+
42+
:install_dev
43+
echo -n Selected install device will be overwritten,
44+
echo -n please ensure you know what are you doing...
45+
echo -n Please set desired install device: && read install_device
46+
clear menu
47+
goto rhcos
48+
49+
:ignition_config
50+
echo -n Please set Ignition Configuration URL: && read ignition_url
51+
clear menu
52+
goto rhcos
53+
54+
:rhcos_exit
55+
clear menu
56+
exit 0
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
#!ipxe
2+
3+
# CentOS Stream CoreOS (SCOS)
4+
# https://www.centos.org/cloud/
5+
# https://github.com/coreos/coreos-installer/blob/master/README.md#installing-from-pxe
6+
7+
goto ${menu}
8+
9+
:scos
10+
set os {{ releases.scos.name }}
11+
set os_arch ${arch}
12+
iseq ${os_arch} x86_64 && set os_arch x86_64 ||
13+
iseq ${os_arch} arm64 && set os_arch aarch64 ||
14+
isset ${install_device} || set install_device /dev/sda
15+
isset ${ignition_url} || set ignition_url skip
16+
menu ${os} - ${os_arch}
17+
item --gap ${os}:
18+
{% for item in releases.scos.versions %}
19+
item {{ item.code_name }} ${space} ${os} {{ item.name }}
20+
{% endfor %}
21+
item install_dev ${space} Set install device (e.g. /dev/sda): ${install_device}
22+
item ignition_config ${space} Set ignition config url: ${ignition_url}
23+
choose --default ${scos_version} scos_version || goto scos_exit
24+
echo ${cls}
25+
iseq ${scos_version} ignition_config && goto ignition_config ||
26+
iseq ${scos_version} install_dev && goto install_dev ||
27+
goto scos_boot ||
28+
goto scos_exit
29+
30+
:scos_boot
31+
{% for item in releases.scos.versions %}
32+
iseq ${scos_version} {{ item.code_name }} && set scos_major_version {{ item.major_version }} ||
33+
{% endfor %}
34+
set base_url ${scos_mirror}/${scos_base_dir}/${scos_major_version}/prod/streams
35+
set build_version ${scos_version}
36+
imgfree
37+
kernel ${base_url}/${build_version}/${os_arch}/scos-${build_version}-live-kernel.${os_arch} ip=dhcp rd.neednet=1 coreos.inst.install_dev=${install_device} coreos.inst.ignition_url=${ignition_url} coreos.live.rootfs_url=${base_url}/${build_version}/${os_arch}/scos-${build_version}-live-rootfs.${os_arch}.img initrd=initrd.magic ${cmdline}
38+
initrd ${base_url}/${build_version}/${os_arch}/scos-${build_version}-live-initramfs.${os_arch}.img
39+
boot
40+
goto scos_exit
41+
42+
:install_dev
43+
echo -n Selected install device will be overwritten,
44+
echo -n please ensure you know what are you doing...
45+
echo -n Please set desired install device: && read install_device
46+
clear menu
47+
goto scos
48+
49+
:ignition_config
50+
echo -n Please set Ignition Configuration URL: && read ignition_url
51+
clear menu
52+
goto scos
53+
54+
:scos_exit
55+
clear menu
56+
exit 0

0 commit comments

Comments
 (0)