Modifiying the Init Image - Help adding GPU info to Other data field.
Great project by the way. Through trial and error I have managed to update fog.auto.reg to include some code to pull the GPU info for inventory, however it’s incomplete, I could use some guidance:
Any suggestions on how to build and include pciutils (ie. lspci) in the x64 image(x32 in my case doesn’t matter, who cares about GPUs in x32 machines ) ? Has this been suggested or answered before?
References(outdated and conflicting based on version):
(mods if you are interested I can submit some suggested changes to the wiki, PM me if you are)
cp /var/www/html/fog/service/ipxe/init.xz .
xz -d init.xz
mkdir -p initmountdir
mount -o loop init initmountdir
pico fog.auto.reg (YOU COULD MAKE A COPY AND ADD ANOTHER MENU ENTRY AS SUGGESTED IN THE LINK ABOVE, DANGER MRS. ROBINSON)
Add the following lines(I put them after the last ####=“” statement perhaps not the best place):
other1=$(GPU=$(lspci | grep VGA | cut -d “:” -f3);RAM=$(cardid=$(lspci | grep VGA |cut -d " " -f1);lspci -v -s $cardid | grep " prefetchable"| cut -d “=” -f2);echo $GPU $RAM | base64)
xz -C crc32 init
cp init.xz /var/www/html/fog/service/ipxe/
use init_32.xz instead for 32-bit x86
Notes regarding the wiki suggestions:
gunzip and gzip will not work with these instructions
I believe the /tftpboot/fog/images/ path is not used and should be updated to be /var/www/html/fog/service/ipxe/ (as per our example copied to and mounted in ~/ under the root user)
Thanks so much for this project!
@mmw_canada lspci and lsusb is already built into the FOS Linux image. You should only need to patch fog.auto.reg if you need extra stuff. There is no need to unpack and repack init.xz unless you really want you. I have a tutorial on dynamically patching the init.xz file here: https://forums.fogproject.org/topic/14278/creating-custom-hostname-default-for-fog-man-reg