Skip to content

qemu_boot requires xz-compressed images to live in /tmp #201

Open

Description

@umlaeute

i'm just starting with CustomPiOS, and i'm a bit stumped on how to use qemu_boot.

  1. no help or whatsoever
    it would be really nice if starting qemu_boot.sh without any arguments (or with -h; or with a non-existing file) to output some usage information
  2. it apparently requires the image to be passed either as ZIP-compressed archive or an XZ-compressed image - why is it not possible to use a raw (uncompressed) image, such as created by build_dist
  3. when using a ZIP-compressed archive the image has to be the first entry in the archive (I don't know whether this is also a requirement by rpi-imager, but it would be nice to have this documented)
  4. when using an XZ-compressed image, it must live in /tmp otherwise the uncompressed image won't be found

Activity

  1. changed the title [-]qemu_boot requires a compressed image in /tmp[/-] [+]qemu_boot requires xz-compressed images to live in /tmp[/+] on Aug 31, 2023
  2. umlaeute commented on Aug 31, 2023

    @umlaeute
    ContributorAuthor

    also, from checking the code it seems that the image-name (unless it is a zip-file) must not contain the sequence xz preceded by an arbitrary character:

    IMG_NAME=$(echo $(basename $ZIP_IMG) | sed "s/.xz//")

    e.g.

    $ echo mixzap.img.xz | sed "s/.xz//"
    map.img.xz
    $

    the correct sed-expression would be "s/\.xz$//", but i think a much better way would be to use POSIX parameter expansion:

    IMG_NAME=$(basename "${ZIP_IMG%.xz}")
  3. guysoft commented on Aug 31, 2023

    @guysoft
    Owner

    Hey, you are quite right. I initially wrote qemu_boot as a quick hack and it really has the place to become something more useful and well documented.
    I am not sure how much time I have to do that now. Perhaps adding an if args<0 and to print help would be a good start. I would really welcome a PR if you have time for that.

  4. umlaeute commented on Aug 31, 2023

    @umlaeute
    ContributorAuthor

    i might :-)

    sidenote: shouldn't qemu_boot.sh and qemu_boot64.sh be virtually identical (obviously apart from the CPU/kernel/dtb/...)?

  5. guysoft commented on Sep 2, 2023

    @guysoft
    Owner

    i might :-)

    sidenote: shouldn't qemu_boot.sh and qemu_boot64.sh be virtually identical (obviously apart from the CPU/kernel/dtb/...)?

    Yes, though I update which kernel is used since they changed over time. They could be joined in to one script

  6. umlaeute commented on Sep 7, 2023

    @umlaeute
    ContributorAuthor

    i found https://github.com/bablokb/pi-qemu-helper which seems to be a better alternative to your scripts (as it also supports booting with a GUI)

  7. guysoft commented on Sep 7, 2023

    @guysoft
    Owner

    Cool - if you have some example of what commands to run on a .zip file to get a running emulation we could add that to the wiki.
    Also I am interested too :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions