Giter VIP home page Giter VIP logo

Comments (13)

igo95862 avatar igo95862 commented on August 14, 2024

Probably magick identify is a good tool for this.

from sbctl.

Foxboron avatar Foxboron commented on August 14, 2024

I'd prefer if we managed to write some Go code for this :) I dislike shelling out for tools and this could either be it's own library, find something already implemented or we make it a thing in go-uefi.

https://github.com/Foxboron/go-uefi

from sbctl.

igo95862 avatar igo95862 commented on August 14, 2024

Go based BMP decoder/encoder:

https://pkg.go.dev/golang.org/x/image/bmp

I dislike shelling out for tools

I also dislike spawning processes when a complex output parser is required but image magick exact output can be specified which makes parsing trivial.

from sbctl.

igo95862 avatar igo95862 commented on August 14, 2024

@Foxboron what do you think about temporary solution with magick identify.

It can be an optional dependency. If its not found on the system when a warning will be printed that splash image could not be verified.

from sbctl.

Foxboron avatar Foxboron commented on August 14, 2024

If we are only detecting the filetype pulling imagemagick is a bit much I think, we only really need to peek at 2 bytes in the file to see if it's a BMP (Example). But if you want to try and use more of the output to check towards the accepted image format then It's probably fine :)

from sbctl.

igo95862 avatar igo95862 commented on August 14, 2024

But if you want to try and use more of the output to check towards the accepted image format then It's probably fine

I will do that.

Imagemagick also verifies that the image is valid.

When should image check happen? In GenerateBundle ?

Should it instantly return error or just skip image?

from sbctl.

igo95862 avatar igo95862 commented on August 14, 2024

Maybe also check in bundle command?

from sbctl.

Foxboron avatar Foxboron commented on August 14, 2024

I think we can just do a hard failure in the bundle command when there is a file passed there :) No need for one in GenerateBundle as we should probably assume the values have been validated.

from sbctl.

igo95862 avatar igo95862 commented on August 14, 2024

How should lack of image magick be handled? Maybe print a warning that image could not be verified but proceed?

from sbctl.

Foxboron avatar Foxboron commented on August 14, 2024

If the file extension is not ".bmp" just say it can't be verified. Good enough I think

from sbctl.

igo95862 avatar igo95862 commented on August 14, 2024

I mean the magick command not the magic numbers.

from sbctl.

Foxboron avatar Foxboron commented on August 14, 2024

Yep, I got that :) But a simple fil extension check if fine if imagemagick is not available I think.

from sbctl.

igo95862 avatar igo95862 commented on August 14, 2024

I made initial check function but it far from finished: igo95862@577c182

from sbctl.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.