From 7b7230bcc433f591031ff68f0c6c10ff64314ccd Mon Sep 17 00:00:00 2001 From: James Ketrenos Date: Thu, 21 Nov 2019 20:56:20 -0800 Subject: [PATCH] Updated to latest xe-solutions. --- .dockerignore | 4 + assets/entry | 4 +- assets/intel-gpu-info | 571 ++++++++++---------- scripts/build-image.sh | 2 +- scripts/clean-image.sh | 2 +- scripts/devel-test.sh | 2 +- scripts/push-image.sh | 6 +- templates/centos/15-upgrade.in | 6 + templates/centos/25-create-user.in | 20 + templates/ending.in | 2 +- templates/rhel/15-upgrade.in | 6 + templates/rhel/25-create-user.in | 20 + templates/ubuntu/{00-FROM.in => 00-from.in} | 0 13 files changed, 357 insertions(+), 288 deletions(-) create mode 100644 .dockerignore create mode 100644 templates/centos/15-upgrade.in create mode 100644 templates/centos/25-create-user.in create mode 100644 templates/rhel/15-upgrade.in create mode 100644 templates/rhel/25-create-user.in rename templates/ubuntu/{00-FROM.in => 00-from.in} (100%) diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..2e13496 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,4 @@ +.git +templates +scripts +Dockerfile.solution* diff --git a/assets/entry b/assets/entry index 600f11d..e4108d4 100755 --- a/assets/entry +++ b/assets/entry @@ -11,7 +11,9 @@ request=${arguments[0]} arguments=("${arguments[@]:1}") commands=(info help version shell) -commands+=(/assets/commands/*) +for file in assets/commands/*; do + [[ -x "${file}" ]] && commands+=("${file}") +done . /assets/SOLUTION . /assets/MANIFEST diff --git a/assets/intel-gpu-info b/assets/intel-gpu-info index 62c0b6a..fd16a0b 100755 --- a/assets/intel-gpu-info +++ b/assets/intel-gpu-info @@ -4,292 +4,303 @@ # # https://gitlab.freedesktop.org/mesa/mesa/blob/master/docs/license.html # -devices=() -devices+=(0x7121 "I810" "i8xx") -devices+=(0x7123 "I810_DC100" "i8xx") -devices+=(0x7125 "I810_E" "i8xx") -devices+=(0x1132 "I815" "i8xx") -devices+=(0x3577 "I830_M" "Intel(R) 830M") -devices+=(0x2562 "845_G" "Intel(R) 845G") -devices+=(0x3582 "I855_GM" "Intel(R) 852GM/855GM") -devices+=(0x2572 "I865_G" "Intel(R) 865G") -devices+=(0x2582 "I915_G" "Intel(R) 915G") -devices+=(0x258A "E7221_G" "Intel(R) E7221G (i915)") -devices+=(0x2592 "I915_GM" "Intel(R) 915GM") -devices+=(0x2772 "I945_G" "Intel(R) 945G") -devices+=(0x27A2 "I945_GM" "Intel(R) 945GM") -devices+=(0x27AE "I945_GME" "Intel(R) 945GME") -devices+=(0x29B2 "Q35_G" "Intel(R) Q35") -devices+=(0x29C2 "G33_G" "Intel(R) G33") -devices+=(0x29D2 "Q33_G" "Intel(R) Q33") -devices+=(0xA011 "PNV_GM" "Intel(R) Pineview M") -devices+=(0xA001 "PNV_G" "Intel(R) Pineview") -devices+=(0x29A2 "i965" "Intel(R) 965G") -devices+=(0x2992 "i965" "Intel(R) 965Q") -devices+=(0x2982 "i965" "Intel(R) 965G") -devices+=(0x2972 "i965" "Intel(R) 946GZ") -devices+=(0x2A02 "i965" "Intel(R) 965GM") -devices+=(0x2A12 "i965" "Intel(R) 965GME/GLE") -devices+=(0x2A42 "g4x" "Mobile IntelĀ® GM45 Express Chipset") -devices+=(0x2E02 "g4x" "Intel(R) Integrated Graphics Device") -devices+=(0x2E12 "g4x" "Intel(R) Q45/Q43") -devices+=(0x2E22 "g4x" "Intel(R) G45/G43") -devices+=(0x2E32 "g4x" "Intel(R) G41") -devices+=(0x2E42 "g4x" "Intel(R) B43") -devices+=(0x2E92 "g4x" "Intel(R) B43") -devices+=(0x0042 "ilk" "Intel(R) Ironlake Desktop") -devices+=(0x0046 "ilk" "Intel(R) Ironlake Mobile") -devices+=(0x0102 "snb_gt1" "Intel(R) Sandybridge Desktop") -devices+=(0x0112 "snb_gt2" "Intel(R) Sandybridge Desktop") -devices+=(0x0122 "snb_gt2" "Intel(R) Sandybridge Desktop") -devices+=(0x0106 "snb_gt1" "Intel(R) Sandybridge Mobile") -devices+=(0x0116 "snb_gt2" "Intel(R) Sandybridge Mobile") -devices+=(0x0126 "snb_gt2" "Intel(R) Sandybridge Mobile") -devices+=(0x010A "snb_gt1" "Intel(R) Sandybridge Server") -devices+=(0x0152 "ivb_gt1" "Intel(R) Ivybridge Desktop") -devices+=(0x0162 "ivb_gt2" "Intel(R) Ivybridge Desktop") -devices+=(0x0156 "ivb_gt1" "Intel(R) Ivybridge Mobile") -devices+=(0x0166 "ivb_gt2" "Intel(R) Ivybridge Mobile") -devices+=(0x015a "ivb_gt1" "Intel(R) Ivybridge Server") -devices+=(0x016a "ivb_gt2" "Intel(R) Ivybridge Server") -devices+=(0x0402 "hsw_gt1" "Intel(R) Haswell Desktop") -devices+=(0x0412 "hsw_gt2" "Intel(R) Haswell Desktop") -devices+=(0x0422 "hsw_gt3" "Intel(R) Haswell Desktop") -devices+=(0x0406 "hsw_gt1" "Intel(R) Haswell Mobile") -devices+=(0x0416 "hsw_gt2" "Intel(R) Haswell Mobile") -devices+=(0x0426 "hsw_gt3" "Intel(R) Haswell Mobile") -devices+=(0x040A "hsw_gt1" "Intel(R) Haswell Server") -devices+=(0x041A "hsw_gt2" "Intel(R) Haswell Server") -devices+=(0x042A "hsw_gt3" "Intel(R) Haswell Server") -devices+=(0x040B "hsw_gt1" "Intel(R) Haswell") -devices+=(0x041B "hsw_gt2" "Intel(R) Haswell") -devices+=(0x042B "hsw_gt3" "Intel(R) Haswell") -devices+=(0x040E "hsw_gt1" "Intel(R) Haswell") -devices+=(0x041E "hsw_gt2" "Intel(R) Haswell") -devices+=(0x042E "hsw_gt3" "Intel(R) Haswell") -devices+=(0x0C02 "hsw_gt1" "Intel(R) Haswell Desktop") -devices+=(0x0C12 "hsw_gt2" "Intel(R) Haswell Desktop") -devices+=(0x0C22 "hsw_gt3" "Intel(R) Haswell Desktop") -devices+=(0x0C06 "hsw_gt1" "Intel(R) Haswell Mobile") -devices+=(0x0C16 "hsw_gt2" "Intel(R) Haswell Mobile") -devices+=(0x0C26 "hsw_gt3" "Intel(R) Haswell Mobile") -devices+=(0x0C0A "hsw_gt1" "Intel(R) Haswell Server") -devices+=(0x0C1A "hsw_gt2" "Intel(R) Haswell Server") -devices+=(0x0C2A "hsw_gt3" "Intel(R) Haswell Server") -devices+=(0x0C0B "hsw_gt1" "Intel(R) Haswell") -devices+=(0x0C1B "hsw_gt2" "Intel(R) Haswell") -devices+=(0x0C2B "hsw_gt3" "Intel(R) Haswell") -devices+=(0x0C0E "hsw_gt1" "Intel(R) Haswell") -devices+=(0x0C1E "hsw_gt2" "Intel(R) Haswell") -devices+=(0x0C2E "hsw_gt3" "Intel(R) Haswell") -devices+=(0x0A02 "hsw_gt1" "Intel(R) Haswell Desktop") -devices+=(0x0A12 "hsw_gt2" "Intel(R) Haswell Desktop") -devices+=(0x0A22 "hsw_gt3" "Intel(R) Haswell Desktop") -devices+=(0x0A06 "hsw_gt1" "Intel(R) Haswell Mobile") -devices+=(0x0A16 "hsw_gt2" "Intel(R) Haswell Mobile") -devices+=(0x0A26 "hsw_gt3" "Intel(R) Haswell Mobile") -devices+=(0x0A0A "hsw_gt1" "Intel(R) Haswell Server") -devices+=(0x0A1A "hsw_gt2" "Intel(R) Haswell Server") -devices+=(0x0A2A "hsw_gt3" "Intel(R) Haswell Server") -devices+=(0x0A0B "hsw_gt1" "Intel(R) Haswell") -devices+=(0x0A1B "hsw_gt2" "Intel(R) Haswell") -devices+=(0x0A2B "hsw_gt3" "Intel(R) Haswell") -devices+=(0x0A0E "hsw_gt1" "Intel(R) Haswell") -devices+=(0x0A1E "hsw_gt2" "Intel(R) Haswell") -devices+=(0x0A2E "hsw_gt3" "Intel(R) Haswell") -devices+=(0x0D02 "hsw_gt1" "Intel(R) Haswell Desktop") -devices+=(0x0D12 "hsw_gt2" "Intel(R) Haswell Desktop") -devices+=(0x0D22 "hsw_gt3" "Intel(R) Haswell Desktop") -devices+=(0x0D06 "hsw_gt1" "Intel(R) Haswell Mobile") -devices+=(0x0D16 "hsw_gt2" "Intel(R) Haswell Mobile") -devices+=(0x0D26 "hsw_gt3" "Intel(R) Haswell Mobile") -devices+=(0x0D0A "hsw_gt1" "Intel(R) Haswell Server") -devices+=(0x0D1A "hsw_gt2" "Intel(R) Haswell Server") -devices+=(0x0D2A "hsw_gt3" "Intel(R) Haswell") -devices+=(0x0D0B "hsw_gt1" "Intel(R) Haswell") -devices+=(0x0D1B "hsw_gt2" "Intel(R) Haswell") -devices+=(0x0D2B "hsw_gt3" "Intel(R) Haswell") -devices+=(0x0D0E "hsw_gt1" "Intel(R) Haswell") -devices+=(0x0D1E "hsw_gt2" "Intel(R) Haswell") -devices+=(0x0D2E "hsw_gt3" "Intel(R) Haswell") -devices+=(0x0F31 "byt" "Intel(R) Bay Trail") -devices+=(0x0F32 "byt" "Intel(R) Bay Trail") -devices+=(0x0F33 "byt" "Intel(R) Bay Trail") -devices+=(0x0157 "byt" "Intel(R) Bay Trail") -devices+=(0x0155 "byt" "Intel(R) Bay Trail") -devices+=(0x22B0 "chv" "Intel(R) HD Graphics (Cherrytrail)") -devices+=(0x22B1 "chv" "Intel(R) HD Graphics XXX (Braswell)") -devices+=(0x22B2 "chv" "Intel(R) HD Graphics (Cherryview)") -devices+=(0x22B3 "chv" "Intel(R) HD Graphics (Cherryview)") -devices+=(0x1602 "bdw_gt1" "Intel(R) Broadwell GT1") -devices+=(0x1606 "bdw_gt1" "Intel(R) Broadwell GT1") -devices+=(0x160A "bdw_gt1" "Intel(R) Broadwell GT1") -devices+=(0x160B "bdw_gt1" "Intel(R) Broadwell GT1") -devices+=(0x160D "bdw_gt1" "Intel(R) Broadwell GT1") -devices+=(0x160E "bdw_gt1" "Intel(R) Broadwell GT1") -devices+=(0x1612 "bdw_gt2" "Intel(R) HD Graphics 5600 (Broadwell GT2)") -devices+=(0x1616 "bdw_gt2" "Intel(R) HD Graphics 5500 (Broadwell GT2)") -devices+=(0x161A "bdw_gt2" "Intel(R) Broadwell GT2") -devices+=(0x161B "bdw_gt2" "Intel(R) Broadwell GT2") -devices+=(0x161D "bdw_gt2" "Intel(R) Broadwell GT2") -devices+=(0x161E "bdw_gt2" "Intel(R) HD Graphics 5300 (Broadwell GT2)") -devices+=(0x1622 "bdw_gt3" "Intel(R) Iris Pro 6200 (Broadwell GT3e)") -devices+=(0x1626 "bdw_gt3" "Intel(R) HD Graphics 6000 (Broadwell GT3)") -devices+=(0x162A "bdw_gt3" "Intel(R) Iris Pro P6300 (Broadwell GT3e)") -devices+=(0x162B "bdw_gt3" "Intel(R) Iris 6100 (Broadwell GT3)") -devices+=(0x162D "bdw_gt3" "Intel(R) Broadwell GT3") -devices+=(0x162E "bdw_gt3" "Intel(R) Broadwell GT3") -devices+=(0x1902 "skl_gt1" "Intel(R) HD Graphics 510 (Skylake GT1)") -devices+=(0x1906 "skl_gt1" "Intel(R) HD Graphics 510 (Skylake GT1)") -devices+=(0x190A "skl_gt1" "Intel(R) Skylake GT1") -devices+=(0x190B "skl_gt1" "Intel(R) HD Graphics 510 (Skylake GT1)") -devices+=(0x190E "skl_gt1" "Intel(R) Skylake GT1") -devices+=(0x1912 "skl_gt2" "Intel(R) HD Graphics 530 (Skylake GT2)") -devices+=(0x1913 "skl_gt2" "Intel(R) Skylake GT2f") -devices+=(0x1915 "skl_gt2" "Intel(R) Skylake GT2f") -devices+=(0x1916 "skl_gt2" "Intel(R) HD Graphics 520 (Skylake GT2)") -devices+=(0x1917 "skl_gt2" "Intel(R) Skylake GT2f") -devices+=(0x191A "skl_gt2" "Intel(R) Skylake GT2") -devices+=(0x191B "skl_gt2" "Intel(R) HD Graphics 530 (Skylake GT2)") -devices+=(0x191D "skl_gt2" "Intel(R) HD Graphics P530 (Skylake GT2)") -devices+=(0x191E "skl_gt2" "Intel(R) HD Graphics 515 (Skylake GT2)") -devices+=(0x1921 "skl_gt2" "Intel(R) HD Graphics 520 (Skylake GT2)") -devices+=(0x1923 "skl_gt3" "Intel(R) Skylake GT3e") -devices+=(0x1926 "skl_gt3" "Intel(R) Iris Graphics 540 (Skylake GT3e)") -devices+=(0x1927 "skl_gt3" "Intel(R) Iris Graphics 550 (Skylake GT3e)") -devices+=(0x192A "skl_gt4" "Intel(R) Skylake GT4") -devices+=(0x192B "skl_gt3" "Intel(R) Iris Graphics 555 (Skylake GT3e)") -devices+=(0x192D "skl_gt3" "Intel(R) Iris Graphics P555 (Skylake GT3e)") -devices+=(0x1932 "skl_gt4" "Intel(R) Iris Pro Graphics 580 (Skylake GT4e)") -devices+=(0x193A "skl_gt4" "Intel(R) Iris Pro Graphics P580 (Skylake GT4e)") -devices+=(0x193B "skl_gt4" "Intel(R) Iris Pro Graphics 580 (Skylake GT4e)") -devices+=(0x193D "skl_gt4" "Intel(R) Iris Pro Graphics P580 (Skylake GT4e)") -devices+=(0x0A84 "bxt" "Intel(R) HD Graphics (Broxton)") -devices+=(0x1A84 "bxt" "Intel(R) HD Graphics (Broxton)") -devices+=(0x1A85 "bxt_2x6" "Intel(R) HD Graphics (Broxton 2x6)") -devices+=(0x5A84 "bxt" "Intel(R) HD Graphics 505 (Broxton)") -devices+=(0x5A85 "bxt_2x6" "Intel(R) HD Graphics 500 (Broxton 2x6)") -devices+=(0x5902 "kbl_gt1" "Intel(R) HD Graphics 610 (Kaby Lake GT1)") -devices+=(0x5906 "kbl_gt1" "Intel(R) HD Graphics 610 (Kaby Lake GT1)") -devices+=(0x590A "kbl_gt1" "Intel(R) Kabylake GT1") -devices+=(0x5908 "kbl_gt1" "Intel(R) Kabylake GT1") -devices+=(0x590B "kbl_gt1" "Intel(R) Kabylake GT1") -devices+=(0x590E "kbl_gt1" "Intel(R) Kabylake GT1") -devices+=(0x5913 "kbl_gt1_5" "Intel(R) Kabylake GT1.5") -devices+=(0x5915 "kbl_gt1_5" "Intel(R) Kabylake GT1.5") -devices+=(0x5917 "kbl_gt2" "Intel(R) UHD Graphics 620 (Kabylake GT2)") -devices+=(0x5912 "kbl_gt2" "Intel(R) HD Graphics 630 (Kaby Lake GT2)") -devices+=(0x5916 "kbl_gt2" "Intel(R) HD Graphics 620 (Kaby Lake GT2)") -devices+=(0x591A "kbl_gt2" "Intel(R) HD Graphics P630 (Kaby Lake GT2)") -devices+=(0x591B "kbl_gt2" "Intel(R) HD Graphics 630 (Kaby Lake GT2)") -devices+=(0x591D "kbl_gt2" "Intel(R) HD Graphics P630 (Kaby Lake GT2)") -devices+=(0x591E "kbl_gt2" "Intel(R) HD Graphics 615 (Kaby Lake GT2)") -devices+=(0x5921 "kbl_gt2" "Intel(R) Kabylake GT2F") -devices+=(0x5923 "kbl_gt3" "Intel(R) Kabylake GT3") -devices+=(0x5926 "kbl_gt3" "Intel(R) Iris Plus Graphics 640 (Kaby Lake GT3e)") -devices+=(0x5927 "kbl_gt3" "Intel(R) Iris Plus Graphics 650 (Kaby Lake GT3e)") -devices+=(0x593B "kbl_gt4" "Intel(R) Kabylake GT4") -devices+=(0x591C "kbl_gt2" "Intel(R) Amber Lake (Kabylake) GT2") -devices+=(0x87C0 "kbl_gt2" "Intel(R) Amber Lake (Kabylake) GT2") -devices+=(0x87CA "cfl_gt2" "Intel(R) Amber Lake (Coffeelake) GT2") -devices+=(0x3184 "glk" "Intel(R) UHD Graphics 605 (Geminilake)") -devices+=(0x3185 "glk_2x6" "Intel(R) UHD Graphics 600 (Geminilake 2x6)") -devices+=(0x3E90 "cfl_gt1" "Intel(R) UHD Graphics 610 (Coffeelake 2x6 GT1)") -devices+=(0x3E93 "cfl_gt1" "Intel(R) UHD Graphics 610 (Coffeelake 2x6 GT1)") -devices+=(0x3E99 "cfl_gt1" "Intel(R) HD Graphics (Coffeelake 2x6 GT1)") -devices+=(0x3E9C "cfl_gt1" "Intel(R) HD Graphics (Coffeelake 2x6 GT1)") -devices+=(0x3E91 "cfl_gt2" "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)") -devices+=(0x3E92 "cfl_gt2" "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)") -devices+=(0x3E96 "cfl_gt2" "Intel(R) HD Graphics (Coffeelake 3x8 GT2)") -devices+=(0x3E98 "cfl_gt2" "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)") -devices+=(0x3E9A "cfl_gt2" "Intel(R) HD Graphics (Coffeelake 3x8 GT2)") -devices+=(0x3E9B "cfl_gt2" "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)") -devices+=(0x3E94 "cfl_gt2" "Intel(R) HD Graphics (Coffeelake 3x8 GT2)") -devices+=(0x3EA9 "cfl_gt2" "Intel(R) HD Graphics (Coffeelake 3x8 GT2)") -devices+=(0x3EA5 "cfl_gt3" "Intel(R) HD Graphics (Coffeelake 3x8 GT3)") -devices+=(0x3EA6 "cfl_gt3" "Intel(R) HD Graphics (Coffeelake 3x8 GT3)") -devices+=(0x3EA7 "cfl_gt3" "Intel(R) HD Graphics (Coffeelake 3x8 GT3)") -devices+=(0x3EA8 "cfl_gt3" "Intel(R) HD Graphics (Coffeelake 3x8 GT3)") -devices+=(0x3EA1 "cfl_gt1" "Intel(R) UHD Graphics (Whiskey Lake 2x6 GT1)") -devices+=(0x3EA4 "cfl_gt1" "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT1)") -devices+=(0x3EA0 "cfl_gt2" "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT2)") -devices+=(0x3EA3 "cfl_gt2" "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT2)") -devices+=(0x3EA2 "cfl_gt3" "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT3)") -devices+=(0x9B21 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9BA0 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9BA2 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9BA4 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9BA5 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9BA8 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9BAA "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9BAB "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9BAC "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)") -devices+=(0x9B41 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BC0 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BC2 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BC4 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BC5 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BC6 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BC8 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BCA "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BCB "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BCC "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BE6 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x9BF6 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)") -devices+=(0x5A49 "cnl_2x8" "Intel(R) HD Graphics (Cannonlake 2x8 GT0.5)") -devices+=(0x5A4A "cnl_2x8" "Intel(R) HD Graphics (Cannonlake 2x8 GT0.5)") -devices+=(0x5A41 "cnl_3x8" "Intel(R) HD Graphics (Cannonlake 3x8 GT1)") -devices+=(0x5A42 "cnl_3x8" "Intel(R) HD Graphics (Cannonlake 3x8 GT1)") -devices+=(0x5A44 "cnl_3x8" "Intel(R) HD Graphics (Cannonlake 3x8 GT1)") -devices+=(0x5A59 "cnl_4x8" "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)") -devices+=(0x5A5A "cnl_4x8" "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)") -devices+=(0x5A5C "cnl_4x8" "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)") -devices+=(0x5A50 "cnl_5x8" "Intel(R) HD Graphics (Cannonlake 5x8 GT2)") -devices+=(0x5A51 "cnl_5x8" "Intel(R) HD Graphics (Cannonlake 5x8 GT2)") -devices+=(0x5A52 "cnl_5x8" "Intel(R) HD Graphics (Cannonlake 5x8 GT2)") -devices+=(0x5A54 "cnl_5x8" "Intel(R) HD Graphics (Cannonlake 5x8 GT2)") -devices+=(0x8A50 "icl_8x8" "Intel(R) HD Graphics (Ice Lake 8x8 GT2)") -devices+=(0x8A51 "icl_8x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)") -devices+=(0x8A52 "icl_8x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)") -devices+=(0x8A53 "icl_8x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)") -devices+=(0x8A54 "icl_6x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)") -devices+=(0x8A56 "icl_4x8" "Intel(R) UHD Graphics (Ice Lake 4x8 GT1)") -devices+=(0x8A57 "icl_6x8" "Intel(R) HD Graphics (Ice Lake 6x8 GT1.5)") -devices+=(0x8A58 "icl_4x8" "Intel(R) UHD Graphics (Ice Lake 4x8 GT1)") -devices+=(0x8A59 "icl_6x8" "Intel(R) HD Graphics (Ice Lake 6x8 GT1.5)") -devices+=(0x8A5A "icl_6x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)") -devices+=(0x8A5B "icl_4x8" "Intel(R) HD Graphics (Ice Lake 4x8 GT1)") -devices+=(0x8A5C "icl_6x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)") -devices+=(0x8A5D "icl_4x8" "Intel(R) HD Graphics (Ice Lake 4x8 GT1)") -devices+=(0x8A71 "icl_1x8" "Intel(R) HD Graphics (Ice Lake 1x8 GT0.5)") -devices+=(0x4500 "ehl_4x8" "Intel(R) HD Graphics (Elkhart Lake 4x8)") -devices+=(0x4571 "ehl_4x8" "Intel(R) HD Graphics (Elkhart Lake 4x8)") -devices+=(0x4551 "ehl_4x4" "Intel(R) HD Graphics (Elkhart Lake 4x4)") -devices+=(0x4541 "ehl_2x4" "Intel(R) HD Graphics (Elkhart Lake 2x4)") -count=${#devices[*]} -found=0 -intel_devices=($( +# Build list of 8086 devices in from /sys/bus/pci/devices +# +# We create a regexp file we will then pass to grep; we could +# build a string containging the regexps, but the regexp +# would exceed 2048 bytes if there are more than ~200 PCI devices +# +# Since either the content-to-match or the regexps can be read from +# stdin, we need to create at least one file. +# +TMP=$(mktemp) for dir in /sys/bus/pci/devices/*; do [[ -e "${dir}/vendor" ]] || continue - [[ "$(cat ${dir}/vendor)" == "0x8086" ]] && - echo "$(cat ${dir}/device)" -done | sort -u)) + [[ "$(cat ${dir}/vendor)" == "0x8086" ]] && { + device=$(cat ${dir}/device) + device=${device^^} # All upper case + echo "^${device/0X/0x}" # ^ start-of-line (and 0x vs 0X) + } +done | sort -u > "${TMP}" -for device in ${intel_devices[@]}; do - index=0 - while (( ${index} < ${count} )); do - (( "${devices[${index}]}" == "${device}" )) && { - echo "${devices[$((index+2))]}" - found=1 - } - index=$((index+3)) +{ + cat << EOF | grep -f "${TMP}" +0x7121 "I810" "i8xx" +0x7123 "I810_DC100" "i8xx" +0x7125 "I810_E" "i8xx" +0x1132 "I815" "i8xx" +0x3577 "I830_M" "Intel(R) 830M" +0x2562 "845_G" "Intel(R) 845G" +0x3582 "I855_GM" "Intel(R) 852GM/855GM" +0x2572 "I865_G" "Intel(R) 865G" +0x2582 "I915_G" "Intel(R) 915G" +0x258A "E7221_G" "Intel(R) E7221G (i915)" +0x2592 "I915_GM" "Intel(R) 915GM" +0x2772 "I945_G" "Intel(R) 945G" +0x27A2 "I945_GM" "Intel(R) 945GM" +0x27AE "I945_GME" "Intel(R) 945GME" +0x29B2 "Q35_G" "Intel(R) Q35" +0x29C2 "G33_G" "Intel(R) G33" +0x29D2 "Q33_G" "Intel(R) Q33" +0xA011 "PNV_GM" "Intel(R) Pineview M" +0xA001 "PNV_G" "Intel(R) Pineview" +0x29A2 "i965" "Intel(R) 965G" +0x2992 "i965" "Intel(R) 965Q" +0x2982 "i965" "Intel(R) 965G" +0x2972 "i965" "Intel(R) 946GZ" +0x2A02 "i965" "Intel(R) 965GM" +0x2A12 "i965" "Intel(R) 965GME/GLE" +0x2A42 "g4x" "Mobile IntelĀ® GM45 Express Chipset" +0x2E02 "g4x" "Intel(R) Integrated Graphics Device" +0x2E12 "g4x" "Intel(R) Q45/Q43" +0x2E22 "g4x" "Intel(R) G45/G43" +0x2E32 "g4x" "Intel(R) G41" +0x2E42 "g4x" "Intel(R) B43" +0x2E92 "g4x" "Intel(R) B43" +0x0042 "ilk" "Intel(R) Ironlake Desktop" +0x0046 "ilk" "Intel(R) Ironlake Mobile" +0x0102 "snb_gt1" "Intel(R) Sandybridge Desktop" +0x0112 "snb_gt2" "Intel(R) Sandybridge Desktop" +0x0122 "snb_gt2" "Intel(R) Sandybridge Desktop" +0x0106 "snb_gt1" "Intel(R) Sandybridge Mobile" +0x0116 "snb_gt2" "Intel(R) Sandybridge Mobile" +0x0126 "snb_gt2" "Intel(R) Sandybridge Mobile" +0x010A "snb_gt1" "Intel(R) Sandybridge Server" +0x0152 "ivb_gt1" "Intel(R) Ivybridge Desktop" +0x0162 "ivb_gt2" "Intel(R) Ivybridge Desktop" +0x0156 "ivb_gt1" "Intel(R) Ivybridge Mobile" +0x0166 "ivb_gt2" "Intel(R) Ivybridge Mobile" +0x015a "ivb_gt1" "Intel(R) Ivybridge Server" +0x016a "ivb_gt2" "Intel(R) Ivybridge Server" +0x0402 "hsw_gt1" "Intel(R) Haswell Desktop" +0x0412 "hsw_gt2" "Intel(R) Haswell Desktop" +0x0422 "hsw_gt3" "Intel(R) Haswell Desktop" +0x0406 "hsw_gt1" "Intel(R) Haswell Mobile" +0x0416 "hsw_gt2" "Intel(R) Haswell Mobile" +0x0426 "hsw_gt3" "Intel(R) Haswell Mobile" +0x040A "hsw_gt1" "Intel(R) Haswell Server" +0x041A "hsw_gt2" "Intel(R) Haswell Server" +0x042A "hsw_gt3" "Intel(R) Haswell Server" +0x040B "hsw_gt1" "Intel(R) Haswell" +0x041B "hsw_gt2" "Intel(R) Haswell" +0x042B "hsw_gt3" "Intel(R) Haswell" +0x040E "hsw_gt1" "Intel(R) Haswell" +0x041E "hsw_gt2" "Intel(R) Haswell" +0x042E "hsw_gt3" "Intel(R) Haswell" +0x0C02 "hsw_gt1" "Intel(R) Haswell Desktop" +0x0C12 "hsw_gt2" "Intel(R) Haswell Desktop" +0x0C22 "hsw_gt3" "Intel(R) Haswell Desktop" +0x0C06 "hsw_gt1" "Intel(R) Haswell Mobile" +0x0C16 "hsw_gt2" "Intel(R) Haswell Mobile" +0x0C26 "hsw_gt3" "Intel(R) Haswell Mobile" +0x0C0A "hsw_gt1" "Intel(R) Haswell Server" +0x0C1A "hsw_gt2" "Intel(R) Haswell Server" +0x0C2A "hsw_gt3" "Intel(R) Haswell Server" +0x0C0B "hsw_gt1" "Intel(R) Haswell" +0x0C1B "hsw_gt2" "Intel(R) Haswell" +0x0C2B "hsw_gt3" "Intel(R) Haswell" +0x0C0E "hsw_gt1" "Intel(R) Haswell" +0x0C1E "hsw_gt2" "Intel(R) Haswell" +0x0C2E "hsw_gt3" "Intel(R) Haswell" +0x0A02 "hsw_gt1" "Intel(R) Haswell Desktop" +0x0A12 "hsw_gt2" "Intel(R) Haswell Desktop" +0x0A22 "hsw_gt3" "Intel(R) Haswell Desktop" +0x0A06 "hsw_gt1" "Intel(R) Haswell Mobile" +0x0A16 "hsw_gt2" "Intel(R) Haswell Mobile" +0x0A26 "hsw_gt3" "Intel(R) Haswell Mobile" +0x0A0A "hsw_gt1" "Intel(R) Haswell Server" +0x0A1A "hsw_gt2" "Intel(R) Haswell Server" +0x0A2A "hsw_gt3" "Intel(R) Haswell Server" +0x0A0B "hsw_gt1" "Intel(R) Haswell" +0x0A1B "hsw_gt2" "Intel(R) Haswell" +0x0A2B "hsw_gt3" "Intel(R) Haswell" +0x0A0E "hsw_gt1" "Intel(R) Haswell" +0x0A1E "hsw_gt2" "Intel(R) Haswell" +0x0A2E "hsw_gt3" "Intel(R) Haswell" +0x0D02 "hsw_gt1" "Intel(R) Haswell Desktop" +0x0D12 "hsw_gt2" "Intel(R) Haswell Desktop" +0x0D22 "hsw_gt3" "Intel(R) Haswell Desktop" +0x0D06 "hsw_gt1" "Intel(R) Haswell Mobile" +0x0D16 "hsw_gt2" "Intel(R) Haswell Mobile" +0x0D26 "hsw_gt3" "Intel(R) Haswell Mobile" +0x0D0A "hsw_gt1" "Intel(R) Haswell Server" +0x0D1A "hsw_gt2" "Intel(R) Haswell Server" +0x0D2A "hsw_gt3" "Intel(R) Haswell" +0x0D0B "hsw_gt1" "Intel(R) Haswell" +0x0D1B "hsw_gt2" "Intel(R) Haswell" +0x0D2B "hsw_gt3" "Intel(R) Haswell" +0x0D0E "hsw_gt1" "Intel(R) Haswell" +0x0D1E "hsw_gt2" "Intel(R) Haswell" +0x0D2E "hsw_gt3" "Intel(R) Haswell" +0x0F31 "byt" "Intel(R) Bay Trail" +0x0F32 "byt" "Intel(R) Bay Trail" +0x0F33 "byt" "Intel(R) Bay Trail" +0x0157 "byt" "Intel(R) Bay Trail" +0x0155 "byt" "Intel(R) Bay Trail" +0x22B0 "chv" "Intel(R) HD Graphics (Cherrytrail)" +0x22B1 "chv" "Intel(R) HD Graphics XXX (Braswell)" +0x22B2 "chv" "Intel(R) HD Graphics (Cherryview)" +0x22B3 "chv" "Intel(R) HD Graphics (Cherryview)" +0x1602 "bdw_gt1" "Intel(R) Broadwell GT1" +0x1606 "bdw_gt1" "Intel(R) Broadwell GT1" +0x160A "bdw_gt1" "Intel(R) Broadwell GT1" +0x160B "bdw_gt1" "Intel(R) Broadwell GT1" +0x160D "bdw_gt1" "Intel(R) Broadwell GT1" +0x160E "bdw_gt1" "Intel(R) Broadwell GT1" +0x1612 "bdw_gt2" "Intel(R) HD Graphics 5600 (Broadwell GT2)" +0x1616 "bdw_gt2" "Intel(R) HD Graphics 5500 (Broadwell GT2)" +0x161A "bdw_gt2" "Intel(R) Broadwell GT2" +0x161B "bdw_gt2" "Intel(R) Broadwell GT2" +0x161D "bdw_gt2" "Intel(R) Broadwell GT2" +0x161E "bdw_gt2" "Intel(R) HD Graphics 5300 (Broadwell GT2)" +0x1622 "bdw_gt3" "Intel(R) Iris Pro 6200 (Broadwell GT3e)" +0x1626 "bdw_gt3" "Intel(R) HD Graphics 6000 (Broadwell GT3)" +0x162A "bdw_gt3" "Intel(R) Iris Pro P6300 (Broadwell GT3e)" +0x162B "bdw_gt3" "Intel(R) Iris 6100 (Broadwell GT3)" +0x162D "bdw_gt3" "Intel(R) Broadwell GT3" +0x162E "bdw_gt3" "Intel(R) Broadwell GT3" +0x1902 "skl_gt1" "Intel(R) HD Graphics 510 (Skylake GT1)" +0x1906 "skl_gt1" "Intel(R) HD Graphics 510 (Skylake GT1)" +0x190A "skl_gt1" "Intel(R) Skylake GT1" +0x190B "skl_gt1" "Intel(R) HD Graphics 510 (Skylake GT1)" +0x190E "skl_gt1" "Intel(R) Skylake GT1" +0x1912 "skl_gt2" "Intel(R) HD Graphics 530 (Skylake GT2)" +0x1913 "skl_gt2" "Intel(R) Skylake GT2f" +0x1915 "skl_gt2" "Intel(R) Skylake GT2f" +0x1916 "skl_gt2" "Intel(R) HD Graphics 520 (Skylake GT2)" +0x1917 "skl_gt2" "Intel(R) Skylake GT2f" +0x191A "skl_gt2" "Intel(R) Skylake GT2" +0x191B "skl_gt2" "Intel(R) HD Graphics 530 (Skylake GT2)" +0x191D "skl_gt2" "Intel(R) HD Graphics P530 (Skylake GT2)" +0x191E "skl_gt2" "Intel(R) HD Graphics 515 (Skylake GT2)" +0x1921 "skl_gt2" "Intel(R) HD Graphics 520 (Skylake GT2)" +0x1923 "skl_gt3" "Intel(R) Skylake GT3e" +0x1926 "skl_gt3" "Intel(R) Iris Graphics 540 (Skylake GT3e)" +0x1927 "skl_gt3" "Intel(R) Iris Graphics 550 (Skylake GT3e)" +0x192A "skl_gt4" "Intel(R) Skylake GT4" +0x192B "skl_gt3" "Intel(R) Iris Graphics 555 (Skylake GT3e)" +0x192D "skl_gt3" "Intel(R) Iris Graphics P555 (Skylake GT3e)" +0x1932 "skl_gt4" "Intel(R) Iris Pro Graphics 580 (Skylake GT4e)" +0x193A "skl_gt4" "Intel(R) Iris Pro Graphics P580 (Skylake GT4e)" +0x193B "skl_gt4" "Intel(R) Iris Pro Graphics 580 (Skylake GT4e)" +0x193D "skl_gt4" "Intel(R) Iris Pro Graphics P580 (Skylake GT4e)" +0x0A84 "bxt" "Intel(R) HD Graphics (Broxton)" +0x1A84 "bxt" "Intel(R) HD Graphics (Broxton)" +0x1A85 "bxt_2x6" "Intel(R) HD Graphics (Broxton 2x6)" +0x5A84 "bxt" "Intel(R) HD Graphics 505 (Broxton)" +0x5A85 "bxt_2x6" "Intel(R) HD Graphics 500 (Broxton 2x6)" +0x5902 "kbl_gt1" "Intel(R) HD Graphics 610 (Kaby Lake GT1)" +0x5906 "kbl_gt1" "Intel(R) HD Graphics 610 (Kaby Lake GT1)" +0x590A "kbl_gt1" "Intel(R) Kabylake GT1" +0x5908 "kbl_gt1" "Intel(R) Kabylake GT1" +0x590B "kbl_gt1" "Intel(R) Kabylake GT1" +0x590E "kbl_gt1" "Intel(R) Kabylake GT1" +0x5913 "kbl_gt1_5" "Intel(R) Kabylake GT1.5" +0x5915 "kbl_gt1_5" "Intel(R) Kabylake GT1.5" +0x5917 "kbl_gt2" "Intel(R) UHD Graphics 620 (Kabylake GT2)" +0x5912 "kbl_gt2" "Intel(R) HD Graphics 630 (Kaby Lake GT2)" +0x5916 "kbl_gt2" "Intel(R) HD Graphics 620 (Kaby Lake GT2)" +0x591A "kbl_gt2" "Intel(R) HD Graphics P630 (Kaby Lake GT2)" +0x591B "kbl_gt2" "Intel(R) HD Graphics 630 (Kaby Lake GT2)" +0x591D "kbl_gt2" "Intel(R) HD Graphics P630 (Kaby Lake GT2)" +0x591E "kbl_gt2" "Intel(R) HD Graphics 615 (Kaby Lake GT2)" +0x5921 "kbl_gt2" "Intel(R) Kabylake GT2F" +0x5923 "kbl_gt3" "Intel(R) Kabylake GT3" +0x5926 "kbl_gt3" "Intel(R) Iris Plus Graphics 640 (Kaby Lake GT3e)" +0x5927 "kbl_gt3" "Intel(R) Iris Plus Graphics 650 (Kaby Lake GT3e)" +0x593B "kbl_gt4" "Intel(R) Kabylake GT4" +0x591C "kbl_gt2" "Intel(R) Amber Lake (Kabylake) GT2" +0x87C0 "kbl_gt2" "Intel(R) Amber Lake (Kabylake) GT2" +0x87CA "cfl_gt2" "Intel(R) Amber Lake (Coffeelake) GT2" +0x3184 "glk" "Intel(R) UHD Graphics 605 (Geminilake)" +0x3185 "glk_2x6" "Intel(R) UHD Graphics 600 (Geminilake 2x6)" +0x3E90 "cfl_gt1" "Intel(R) UHD Graphics 610 (Coffeelake 2x6 GT1)" +0x3E93 "cfl_gt1" "Intel(R) UHD Graphics 610 (Coffeelake 2x6 GT1)" +0x3E99 "cfl_gt1" "Intel(R) HD Graphics (Coffeelake 2x6 GT1)" +0x3E9C "cfl_gt1" "Intel(R) HD Graphics (Coffeelake 2x6 GT1)" +0x3E91 "cfl_gt2" "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)" +0x3E92 "cfl_gt2" "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)" +0x3E96 "cfl_gt2" "Intel(R) HD Graphics (Coffeelake 3x8 GT2)" +0x3E98 "cfl_gt2" "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)" +0x3E9A "cfl_gt2" "Intel(R) HD Graphics (Coffeelake 3x8 GT2)" +0x3E9B "cfl_gt2" "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)" +0x3E94 "cfl_gt2" "Intel(R) HD Graphics (Coffeelake 3x8 GT2)" +0x3EA9 "cfl_gt2" "Intel(R) HD Graphics (Coffeelake 3x8 GT2)" +0x3EA5 "cfl_gt3" "Intel(R) HD Graphics (Coffeelake 3x8 GT3)" +0x3EA6 "cfl_gt3" "Intel(R) HD Graphics (Coffeelake 3x8 GT3)" +0x3EA7 "cfl_gt3" "Intel(R) HD Graphics (Coffeelake 3x8 GT3)" +0x3EA8 "cfl_gt3" "Intel(R) HD Graphics (Coffeelake 3x8 GT3)" +0x3EA1 "cfl_gt1" "Intel(R) UHD Graphics (Whiskey Lake 2x6 GT1)" +0x3EA4 "cfl_gt1" "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT1)" +0x3EA0 "cfl_gt2" "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT2)" +0x3EA3 "cfl_gt2" "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT2)" +0x3EA2 "cfl_gt3" "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT3)" +0x9B21 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9BA0 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9BA2 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9BA4 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9BA5 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9BA8 "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9BAA "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9BAB "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9BAC "cfl_gt1" "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)" +0x9B41 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BC0 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BC2 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BC4 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BC5 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BC6 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BC8 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BCA "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BCB "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BCC "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BE6 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x9BF6 "cfl_gt2" "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)" +0x5A49 "cnl_2x8" "Intel(R) HD Graphics (Cannonlake 2x8 GT0.5)" +0x5A4A "cnl_2x8" "Intel(R) HD Graphics (Cannonlake 2x8 GT0.5)" +0x5A41 "cnl_3x8" "Intel(R) HD Graphics (Cannonlake 3x8 GT1)" +0x5A42 "cnl_3x8" "Intel(R) HD Graphics (Cannonlake 3x8 GT1)" +0x5A44 "cnl_3x8" "Intel(R) HD Graphics (Cannonlake 3x8 GT1)" +0x5A59 "cnl_4x8" "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)" +0x5A5A "cnl_4x8" "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)" +0x5A5C "cnl_4x8" "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)" +0x5A50 "cnl_5x8" "Intel(R) HD Graphics (Cannonlake 5x8 GT2)" +0x5A51 "cnl_5x8" "Intel(R) HD Graphics (Cannonlake 5x8 GT2)" +0x5A52 "cnl_5x8" "Intel(R) HD Graphics (Cannonlake 5x8 GT2)" +0x5A54 "cnl_5x8" "Intel(R) HD Graphics (Cannonlake 5x8 GT2)" +0x8A50 "icl_8x8" "Intel(R) HD Graphics (Ice Lake 8x8 GT2)" +0x8A51 "icl_8x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)" +0x8A52 "icl_8x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)" +0x8A53 "icl_8x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)" +0x8A54 "icl_6x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)" +0x8A56 "icl_4x8" "Intel(R) UHD Graphics (Ice Lake 4x8 GT1)" +0x8A57 "icl_6x8" "Intel(R) HD Graphics (Ice Lake 6x8 GT1.5)" +0x8A58 "icl_4x8" "Intel(R) UHD Graphics (Ice Lake 4x8 GT1)" +0x8A59 "icl_6x8" "Intel(R) HD Graphics (Ice Lake 6x8 GT1.5)" +0x8A5A "icl_6x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)" +0x8A5B "icl_4x8" "Intel(R) HD Graphics (Ice Lake 4x8 GT1)" +0x8A5C "icl_6x8" "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)" +0x8A5D "icl_4x8" "Intel(R) HD Graphics (Ice Lake 4x8 GT1)" +0x8A71 "icl_1x8" "Intel(R) HD Graphics (Ice Lake 1x8 GT0.5)" +0x4500 "ehl_4x8" "Intel(R) HD Graphics (Elkhart Lake 4x8)" +0x4571 "ehl_4x8" "Intel(R) HD Graphics (Elkhart Lake 4x8)" +0x4551 "ehl_4x4" "Intel(R) HD Graphics (Elkhart Lake 4x4)" +0x4541 "ehl_2x4" "Intel(R) HD Graphics (Elkhart Lake 2x4)" +EOF +} | { + found=0 + while read id sku name; do + found=1 + echo "${name//\"}" done -done -(( $found )) || { - echo "No Intel graphics hardware found." - exit 1 + rm "${TMP}" + + (( $found )) || { + echo "No Intel graphics hardware found." + exit 1 + } } exit 0 diff --git a/scripts/build-image.sh b/scripts/build-image.sh index 5421a99..8d505d2 100755 --- a/scripts/build-image.sh +++ b/scripts/build-image.sh @@ -74,6 +74,6 @@ cat << EOM ${DOCKERFILE} was built and locally tagged as ${CONTAINER}:${TAG} -See 'scripts/push-images' for information on pushing this tag to Harbor. +See 'scripts/push-image.sh' for information on pushing this tag to Harbor. EOM diff --git a/scripts/clean-image.sh b/scripts/clean-image.sh index f98b9fe..c116e66 100755 --- a/scripts/clean-image.sh +++ b/scripts/clean-image.sh @@ -14,4 +14,4 @@ fi export $(sed -nE "s,(^[^#][^=]*).*$,\1,pg" SOLUTION | ${CMD} -d '\n') export $(sed -nE "s,(^[^#][^=]*).*$,\1,pg" MANIFEST | ${CMD} -d '\n') -docker rmi ${REPO_URL}/${CONTAINER}:devel +docker rmi ${REGISTRY_URL}/${CONTAINER}:devel diff --git a/scripts/devel-test.sh b/scripts/devel-test.sh index 568a71f..c80e9c7 100755 --- a/scripts/devel-test.sh +++ b/scripts/devel-test.sh @@ -23,5 +23,5 @@ docker run \ --device=/dev/dri \ -e QSV_DEVICE=${QSV_DEVICE:-/dev/dri/renderD128} \ --volume $(pwd)/media:/media \ - ${REPO_URL}/${CONTAINER}:devel \ + ${REGISTRY_URL}/${CONTAINER}:devel \ test diff --git a/scripts/push-image.sh b/scripts/push-image.sh index 7f3ef0f..27dc880 100755 --- a/scripts/push-image.sh +++ b/scripts/push-image.sh @@ -21,10 +21,10 @@ RELEASE_INFO=${RELEASE_INFO:-N/A} TAG=${TAG:-test-${OS_DISTRO}-${PACKAGE_STREAM}-${RELEASE_INFO}} } -docker tag ${CONTAINER}:${TAG} ${REPO_URL}/${CONTAINER}:${TAG} \ - && docker push ${REPO_URL}/${CONTAINER}:${TAG} \ +docker tag ${CONTAINER}:${TAG} ${REGISTRY_URL}/${CONTAINER}:${TAG} \ + && docker push ${REGISTRY_URL}/${CONTAINER}:${TAG} \ || { - echo "Unable to tag and push image to ${REPO_URL}." + echo "Unable to tag and push image to ${REGISTRY_URL}." exit 1 } diff --git a/templates/centos/15-upgrade.in b/templates/centos/15-upgrade.in new file mode 100644 index 0000000..dcf8301 --- /dev/null +++ b/templates/centos/15-upgrade.in @@ -0,0 +1,6 @@ +# Update package lists, and upgrade to the latest packages +# +# Failure to do this will result in GPG errors later +RUN dnf clean all \ + && dnf -y upgrade + diff --git a/templates/centos/25-create-user.in b/templates/centos/25-create-user.in new file mode 100644 index 0000000..dd03c45 --- /dev/null +++ b/templates/centos/25-create-user.in @@ -0,0 +1,20 @@ +# Create user 'user' and add them to 'wheel' for sudo access and set +# the passwd to 'user' + +FROM xe-base-stage AS xe-user-stage + +RUN dnf install -y sudo + +# NOTE: Requires 'sudo' package to already be installed +RUN groupadd -r user \ + && useradd --no-log-init \ + -s /bin/bash \ + -r -m \ + -g user \ + -G wheel \ + -p $(echo "user" | openssl passwd -stdin) user + +# Set 'wheel' to NOPASSWD for all container users +RUN sed -i -e 's,%wheel.*,%wheel ALL=(ALL) NOPASSWD:ALL,g' /etc/sudoers + +USER user diff --git a/templates/ending.in b/templates/ending.in index 0d1e115..57cdaf2 100644 --- a/templates/ending.in +++ b/templates/ending.in @@ -16,6 +16,6 @@ RUN { \ echo "PACKAGE_STREAM=${PACKAGE_STREAM}" ; \ echo "OS_DISTRO=${OS_DISTRO}" ; \ echo "OS_RELEASE=${OS_RELEASE}" ; \ -} | sudo tee /assets/SOLUTION +} | tee /assets/SOLUTION COPY MANIFEST /assets/ COPY ${DOCKERFILE} /assets/Dockerfile diff --git a/templates/rhel/15-upgrade.in b/templates/rhel/15-upgrade.in new file mode 100644 index 0000000..dcf8301 --- /dev/null +++ b/templates/rhel/15-upgrade.in @@ -0,0 +1,6 @@ +# Update package lists, and upgrade to the latest packages +# +# Failure to do this will result in GPG errors later +RUN dnf clean all \ + && dnf -y upgrade + diff --git a/templates/rhel/25-create-user.in b/templates/rhel/25-create-user.in new file mode 100644 index 0000000..f2fecdd --- /dev/null +++ b/templates/rhel/25-create-user.in @@ -0,0 +1,20 @@ +# Create user 'user' and add them to 'sudo' for sudo access and set +# the passwd to 'user' + +FROM xe-base-stage AS xe-user-stage + +RUN dnf install -y sudo + +# NOTE: Requires 'sudo' package to already be installed +RUN groupadd -r user \ + && useradd --no-log-init \ + -s /bin/bash \ + -r -m \ + -g user \ + -G wheel \ + -p $(echo "user" | openssl passwd -stdin) user + +# Set 'wheel' to NOPASSWD for all container users +RUN sed -i -e 's,%wheel.*,%wheel ALL=(ALL) NOPASSWD:ALL,g' /etc/sudoers + +USER user diff --git a/templates/ubuntu/00-FROM.in b/templates/ubuntu/00-from.in similarity index 100% rename from templates/ubuntu/00-FROM.in rename to templates/ubuntu/00-from.in